用于认证电子通信系统中的节点的方法和装置的制造方法_3

文档序号:8396107阅读:来源:国知局
系统300可以接收的认证请求130A。主机系统300可以 选择生成要求135,并且将其传送到节点100A,以使得其使用IF200A生成其固有ID,即 ID1201A和ID2202A(在有关实施例中,可以基于不同的生成要求或预定算法来生成这些ID 中的每一个)。节点100A可以使用ID1201A和R210作为函数&220的输入,以产生IDC-I 220A。节点100A可以将IDC-I220A传送到主机系统300。
[0048] 主机系统300可以使用IDC-I220A和ID1311A(后者是芯片的110A固有ID的主 机系统的本地副本)作为对4<320的输入,以产生EV324。如果ID1311A与ID1201A相 同,则EV324将等于R210。如以上结合图2A所讨论的那样,R210可以由主机系统300 本地存储或生成,或可以由主机系统300从外部源获得。相应地,存在节点100A为认证的 指示,并且主机系统300可以生成对应认证成功消息140A。
[0049] 随后,主机系统300可以使用EV324和ID2312A作为对第二可逆函数f2330的输 入,从而f2(ID2312A,EV324)生成被称为IDC-II330A的第二标识码的输出。函数f2330可 以是与具有对应逆4^30函数的&220相似的函数。IDC-II330A值可以发送到节点100A。 与IDC-I220A相似,可以使用本领域公知的技术在发送之前对第二标识码IDC-II330A进 行加密。除了生成并且发送IDC-II330A之外,主机系统300还可以执行结合图2A所描述 的认证功能。替代地,主机系统300可以保持认证确定,直到已经进行其它认证功能(例如, 在主机系统300没有随机数R210的本地副本的情况下)。
[0050] 继续参照图2B,节点100A可以从主机系统300接收IDC-II330A。节点100A可 以使用逆f,230函数以提取EV240值(其中,EV代表"所提取的值")。在确定EV240的 值中,节点 100A可以使用f2H(IDC-II330A,R210)或f2H(IDC-II330A,ID2202A)。如果 节点100A和主机系统300都是认证的,则在第一情况下,EV240将是等于ID1201A的值,而 在第二情况下,EV240将是等于R210的值。因此,节点100A可以执行检查244,以对EV 240与ID2202A或与R210进行比较。节点100A可以执行这两个检查,但这不是必须的。如 果检查244是成功的(S卩,如果存在匹配),则节点100A可以做出认证确定180a:主机系统 300是认证的。否则,其可以确定主机系统300并非认证的,并且其可以结束180其与主机 系统300的通信。这种功能提供针对非认证主机系统300的节点100A保护,从而即使主机 系统300确定节点100A为认证的,节点100A也不一定必须信任主机系统300,并且可以关 于其是否应与另一节点(例如节点100B)进行通信而进行其自身的确定。
[0051] 图2C描述图1-图2B中所描述的通信系统101的替选实施例。通信系统101可以 包括结合图1-图2B所描述的组件和功能,并且可以包含在此所描述的附加或替选组件和 功能。主机系统300可以响应于来自节点100A的对认证的请求130A而传送生成要求135。 响应于生成要求135,节点100A可以使用IF200A(和/或芯片110A的其它IF)以及预定 算法(其可以是生成要求135)来生成固有ID即ID1201A、ID2202A和ID3203A。替代地, 可以使用一个IF200A响应于三个不同的生成要求135而单独生成这三个固有ID。主机系 统300可以具有记录中所存储的包括ID1311A、ID2312A和ID3313A的这些ID的对应副本 (或可以另外具有对其的访问)。如果主机系统300和节点100A都是认证的,则主机系统 的300所保存的固有ID的所存储的副本将匹配节点100A/芯片110A所生成的固有ID。
[0052] 节点100A可以通过使用fJIDUOlA,R210)来生成IDC-I220A,并且将其发送 到主机系统300。主机系统300可以执行结合图2A所描述的认证功能。替代地,或外加 地,主机系统300可以生成IDC-II330A,并且将其发送到节点100A,如结合图2B所描述 的那样。替代地,或外加地,节点100A可以于在检查244中确定匹配时使用第三可逆函数 f3250生成具有R210和ID3203A的输入的第三码IDC-III250A。主机系统300可以接收 IDC-III250A,并且连同ID3313A或主机系统的300的本地副本或R210 -起将其用作对 逆函数^<350的输入,从而(如果节点100A是认证的,则)f, (IDC-III250A,ID3313A)生 成等于R210的主机系统的300的本地副本的EV340 (其中,EV代表"所提取的值"),并且 (如果节点 100A是认证的,则)f34 (IDC-III250A,ID3313A)生成等于ID3313A的EV340。 取决于对f,350的输入,主机系统300可以执行检查344以对EV340与R210的其本地 副本或与ID3313A或与二者进行比较(但这并非必须的)。如果检查344的结果是肯定的 (即存在匹配),则主机系统300可以生成认证成功信号140A,并且将其发送到节点100A, 否则,可以生成认证失败信号141A,并且将其发送到节点100A。
[0053] 现参照图1-图2C,(例如,通过做出请求130B并且接收认证成功消息140B或认 证失败消息141B),主机系统300和节点100B可以进行主机系统300和节点100A所进行的 相同认证和/或通信请求和批准/拒绝过程,以认证节点100B,并且对于节点100B以认证 主机系统300。在节点100B得以认证时,主机系统300可以把传达两个节点的成功标识的 许可批准信号150发送到这两个节点100A和节点100B。
[0054] 在这两个节点100A和节点100B都被批准对通信的许可之后,它们可以开始使用 工业标准安全加密通信协议来彼此进行通信。
[0055] 在一个或多个节点100之间的所建立的通信期间,系统101的任何第一节点(例 如节点100A或节点100B)可以请求主机系统300重新认证第一节点正与之通信的第二节 点。在此情况下,主机系统300可以从第二节点请求标识。此时,上述整个认证和/或通信 请求可以再一次出现。
[0056] 图2D示出图1和图2A-图2C的通信系统101的示例性实施例,并且还描述节点 100A和主机系统300的附加细节。根据图2D中所描述的实施例,通过使用其构成SRAM或 DRAM单元的某种独特属性,存储器域或体115A的节点100A固有特征IF200A可以用于使 用大型板载存储器系统(如缓存或随机存取存储器)来生成对应固有ID。芯片110A的不 同部分(如存储器的不同体或域115A)上的同一生成要求135可以优选地生成三个不同的 独特ID(例如ID1201A、ID2202A、ID3203A)。存储器域/体115A可以包括可以用于生成包 括例如ID1201A、ID2202A和ID3203A的对应固有ID的项120A。
[0057] 在从节点100A接收到通信请求时,主机系统300可以询问其数据库400,并且重获 与节点100A关联的记录404。记录404可以具有包含节点100A的固有ID的副本的多个 项,每个项与不同生成要求135关联。记录404可以具有例如具有对应生成要求135的项 404A。记录400的很多项中的项404的选择可以基于主机系统300和节点100A都已知的 预定算法。项404A可以例如与ID即ID1311A、ID2312A和ID3313A对应(也描述于图2C 中)。与项404A关联的生成要求135可以由主机系统300传送到节点100A。
[0058] 现通常参照图2A-图2C,函数4220、&330和f3250均可以是包括X0R函数或偏移 函数(例如比特移位运算)的可逆函数。对于每个这样的函数,只要其结果和其各输入之 一是已知的,就可以使用对应逆函数来确定另外输入。通过将输出乘以或加上常数值可以 进一步修改该函数的输出。逆函数和均可以分别是&220、&330和 f3250的除法的逆函数,并且可以还包括例如由同一常数值进行的除法或减法。
[0059] 在替选实施例中,主机系统300所提供的生成要求135或其一部分可以用于从预 定义的函数的集合动态地选择函数4220、&330和f3250。预定义的函数可以是对于主机系 统300以及系统101的各节点100中的每一个都可用的。
[0060] 在替选实施例中,函数4220、&330和f3250可以是相同的函数。
[0061] 再次参照图1-图2C,根据本公开替选实施例,可以通过以下方式来执行主机系统 300进行的认证:芯片110A可以生成IDC-I220A值(即fJIDUOlA,!? 210)的乘积),并且 将其发送到主机系统300。主机系统300可以通过使用fVSZO从所发送的IDC-I220A值 提取R210的值,如上所述,其中,所提取的值是EV324。主机300可以然后使用ID2312A 和IDC-I220A的值生成IDC-II330A值。因此,可以根据f2(ID2312A,IDC-I220A)(其也 可以描述为4(1〇2312八,4? 210,ID1201A)))形成IDC-II 330A。该替选IDC-II 330A值 可以发送回到节点100A。
[0062] 节点100A可以从所发送的IDC-II330A值提取EV240值,以使用IDC-I220A和 R210作为对的输入来验证主机系统300,并且然后根据f3(EV240,R210)生成 IDC-III250A。替选IDC-III250A可以发送到主机系统300。
[0063] 主机系统300可以使用具有IDC-III250A和EV324的输入的从所发送 的值提取EV3340值,并且使用它来针对ID3313A的值而在检查344中认证节点100A。
[0064] 相应地,ID1201A、ID2202A和R 210的组合可以使用仅两个ID来生成足够的不同 消息(即fJIDUOlA,!?210)、&(102202八,4? 210,ID1201A))、f3(ID2202A,R 210)),其 难以为了获取关于单个ID的信息而反向工程。
[0065] 再次参照图1-图2C,根据本公开附加实施例,节点100A可以如下认证主机系统 300。节点100A可以对主机系统300发送认证请求130A,其可以是对主机系统300将加密 码发送到节点100A从而节点100A可以认证主机系统300的请求。主机系统300或节点 100A可以选择对应生成要求135并且将其传送到彼此。主机系统300所发送的加密码可 以是例如由主机系统300使用A220所生成的具有(使用主机系统300所保存/获得的R 210的副本的)R210和ID1311A(其为来自与芯片110A和所传送的要求135对应的记录的 主机系统300所询问的节点100A上的芯片110A的固有ID的副本)的输入的IDC-I220A 的副本。主机系统300可以将该加密码传送到节点100A,并且可以在传送之前通过散列算 法来处理它。节点100A可以自身使用采用(使用由节点100A所保存/获得的R210的 副本的)R210和ID1201A(使用所协定的加密要求135所生成的芯片110A的固有ID的副 本)的输入的4220来生成IDC-I220A。节点100A可进一步使用散列算法对IDC-I220A 进行加密,散列算法可以是主机系统300和节点100A都具有访问并且协调以使用的散列算 法。在从主机系统300接收到加密码时,节点100A可以对加密码与节点100A上所生成的 IDC-I220A或与其散列值进行比较。如果比较指示匹配,则节点100A可以认证主机300,并 且基于认证而执行附加功能(未示出)。在该实施例中,节点100A不必将从加密要求推导 的任何码发送到主机系统300。
[0066] 图3描述便于结合图1-图2D所描述的功能的在图2A-图2C中所描述的程序351 的示例性实施例。程序351可以实施为在通信系统101中的节点上操作的计算机程序,或 其可以实施在多个节点100上。在多节点实施例中,程序351可以包括在例如主机系统300 上操作的组件351A和例如在节点100A上操作
当前第3页1 2 3 4 5 
网友询问留言 已有0条留言
  • 还没有人留言评论。精彩留言会获得点赞!
1