被配置成导出共享密钥的网络设备的制造方法_3

文档序号:9308942阅读:来源:国知局

【附图说明】
[0063] 本发明的这些和其他方面根据下文描述的实施例是明显的,并且将参考下文描述 的实施例被阐明。在附图中, 图Ia和图Ib是图示了通信网络的示意框图, 图2是图示了生成共享密钥的示意流程图, 图3是图示了生成共享密钥的示意序列图, 图4a_4f表示各种归约算法, 图5是图示了生成共享密钥的另外的示意流程图。
[0064] 应注意,不同的图中具有相同参考数字的项目具有相同的结构特征和相同的功 能,或者是相同的信号。在已说明了这样的项目的功能和/或结构的情况下,没有必要在详 细描述中对其重复说明。
【具体实施方式】
[0065] 尽管本发明能有许多不同形式的实施例,然而附图中示出并且将在本文中详细描 述一个或多个特定的实施例,要理解本公开内容将被看做是对本发明的原理的示范,而并 不打算将本发明限于所示出和描述的特定实施例。
[0066] 图Ia是图示了在设立阶段期间的通信网络100的示意框图。图Ia示出了网络管 理机构160。图Ia还示出了多个网络设备,所示出的是第一网络设备110和第二网络设备 120〇
[0067] 网络设备具有注册阶段和使用阶段。在注册阶段,为参与的网络设备提供身份号 和本地密钥素材。本地密钥素材由网络管理机构160提供。
[0068] 网络管理机构160可以例如以电子服务器的形式来实现,并且可以例如在制造期 间直接与设备相连。网络管理机构160可以稍后提供本地密钥素材,比方说通过互联网提 供。
[0069] 在使用阶段期间,两个(或更多个)网络设备可以通过请求其他网络设备的公开身 份号并将所述公开身份号与它们的本地密钥素材组合来建立共享密钥。
[0070] 配置申请提供了关于网络管理机构160可以如何导出本地密钥素材的全面解释。 在实施例中,网络管理机构实施一种方法,所述方法包括:以电子形式获得私有模数(A)、 公共模数(AO和具有整数系数的双变量多项式(/}),公共模数的二进制表示和私有模数的 二进制表示在至少密钥长度(A)个连续比特上是相同的;生成针对网络设备的本地密钥素 材,包括:以电子形式获得用于网络设备的身份号U),使用多项式操纵设备通过将身份号 代入双变量多项式来从双变量多项式确定单变量多项式,将代入的结果对私有模数取模归 约,并且在网络设备处电子地存储所生成的本地密钥素材。
[0071] 换言之,网络管理机构可以从双变量多项式开始,并通过代入网络设备的身份号 将所述双变量多项式转换成单变量多项式。通过以某些方式挑选归约和系数等,该过程的 安全性可以被改善。最后,对于具体的网络设备,获得存储于其中的具体的单变量多项式。
[0072] 在另外的实施例中,生成针对网络设备的本地密钥素材包括:生成模糊数,并使用 多项式操纵设备将模糊数加到单变量多项式的系数以获得被模糊的单变量多项式,所生成 的本地密钥素材包括被模糊的单变量多项式。
[0073] 为了从单变量多项式生成共享密钥,网络设备可以进行下面的操作:获得另一网 络设备的外部身份号,向其他网络设备发送本地身份号,将外部身份号代入被模糊的单变 量多项式对公共模数取模,并对密钥模数取模归约。公共模数和密钥模数是在注册阶段中 或在注册阶段之前一起被选择的,并且对于所有参与的网络设备而言是相同的。密钥模数 取决于所期望的密钥的尺寸,并且典型地是2的密钥长度次幂。从归约结果对密钥模数取 模开始,可以导出共享密钥。导出密钥可牵涉到密钥导出步骤,以在密钥的比特之中分散和 /或集中熵,比方说密码散列的应用。
[0074] 不幸地,由于挑选双变量多项式的方式,可能发生共享的密钥不完全相同的情况。 这也可以被接受;例如对于ad-hoc网络,一些网络设备不能直接通信可能是没关系的, 类似地,对于低成本或低安全性应用,一定的失败率可能是可接受的。通过使用密钥均衡 (equalize)过程可以增加具有相等密钥的或然率。将描述经常或总是给出相同结果的若 干归约算法。的确,假设有确定共享密钥可能在一小部分情况下失败的事实,则尤为有利的 是,现在可以使用不总是给出完全相同的结果、但是以高概率给出完全相同结果的算法。
[0075] 注意,网络管理机构可以使用具有多于2个变量(双变量)的多变量多项式,比如 说具有3个、4个或甚至更多个变量的多变量多项式。在这种情况下,多个网络节点需要贡 献其身份号以用于导出共享密钥。注意,网络管理机构可以使用非对称多项式,在这种情况 下,网络设备被分到多个组中,共享密钥可能只在每组的至少一个成员贡献其身份号的情 况下才被导出。
,其包括系数麵礙,其中:|:=傳_:鍵。A能够通过进行以下操作来生成与具有标识符n的
#篇这种对多项式的评估需要在小型嵌入式处理器上被高效地实现。具体参 见配置申请的第17-25页,例如关于如何选择参数、根密钥素材和本地密钥素材。
[0077]高效的多项式评估方法是所谓的霍纳(Horner)法,然而事实证明该方法仍然可以 被更进一步优化。多项式评估是通过系数在尺寸大于128比特的大数上来实施的。因此共 有密钥的评估需要在不要求过多存储器来用于中间存储一些大数的情况下进行。此外, 多项式是通过模N被评估的,且应当在不实施任何高成本的除法的情况下被实现。本发明 提供了优化,以便在具有极小存储器(闪存和RAM)的嵌入式微处理器上实现多项式评估,并 且仍然快速实施该多项式评估。
[0078] 对于N的某个具体精细选择接近于__學?。就多项式的次数和密钥长度而言,N 的尺寸有助于保护系统免受攻击。由于N接近于2的幂,模运算可以被表示为与小偏移(如 果偏移不是1或-1)相加以及可能是相乘。一些优化是和N无关的,比如说将最高次迭代 和最低次迭代移出循环,对于每个N的字。
[0079] 图Ib是图示了包括多个网络设备的通信网络100的示意框图;所示出的是第一网 络设备110和第二网络设备120。我们将例证说明第一网络设备110。第二网络设备120 可以相同,或按照相同的原理工作。
[0080] 网络设备110包括收发机130,所述收发机130组合了发送机和接收机以便以有线 或无线形式向第二网络设备120发送和从第二网络设备120接收电子(例如,数字)格式的 消息。可能地,收发机130还被用来接收本地密钥素材,比如从网络管理机构160或其他可 信第三方接收。通过收发机130,接收到另一网络设备的身份号;在本图中是第二网络设备 120的身份号。
[0081] 收发机是发送机与接收机的组合,注意,本地导出共享密钥仅需要接收机。如果需 要或多或少同时在第一设备和第二设备处导出该共享密钥,则发送机可以便利地被用来发 送身份号。
[0082] 网络设备110包括本地密钥素材存储装置144。本地密钥素材存储装置144可以被 实现为本地存储器,例如,非易失性存储器,比如闪速存储器,以便存储本地密钥素材。本地 密钥素材存储装置144还可以被配置成例如经由收发机130从例如网络管理机构160获得 本地密钥素材。本地密钥素材存储装置144被配置成为多项式操纵设备提供所需的参数。 由本地密钥素材存储装置144存储的本地密钥素材包括多项式的表示,用于稍后由第一网 络设备进行的评估。例如,多项式的表示可以是例如按照次数排序的多项式的系数的列表。 然而多项式的表示可以以各种方式被优化;事实证明系数的一些部分对最后结果具有非常 小的影响。通过省去那些不太可能对最终结果具有大影响的计算结果(calculation)来优 化对共享密钥的确定。不仅可以以这种方式优化计算,还可以通过不存储系数的未被使用 的那些部分而优化表示的存储。
[0083] 网络设备110包括多项式操纵设备142,所述多项式操纵设备142被配置成根据 归约算法对外部身份号施加多项式以获得归约结果。归约算法被配置为使得它给出归约结 果,所述归约结果对应于,即,近似于在以下情况下会获得的结果:将第二网络设备的身份 号代入被模糊的单变量多项式,并对结果实施两次归约:首先将代入的结果对公共模数取 模归约,其次对密钥模数取模归约。归约结果一致(correspond),因为它近似其他算法的结 果。
[0084]归约结果常常会等于以下操作的结果,S卩:将第二网络设备的身份号代入与本地 密钥素材相对应的多项式,并对结果实施两次归约:对公共模数取模,然后对密钥模数取 模。不幸地,有时二者可能不同。如果它们确实不同,则差异常常被限于一个或几个最低有 效比特。优选的是,在少于1%的情况下两个值不同,较不优选地在少于10%的情况下两个 值不同。
[0085]注意,使用被模糊的多项式或从两个私有模数导出的多项式具有以下特性:在不 同的设备上获得的归约结果在罕见的情况下也可能不同(参见配置申请)。因此,在一些罕 见的额外情况下另外的差异被引入归约结果中并不被看做是大的额外负担,因为系统将已 经被配备成应对这一现实,例如通过密钥均衡或其他解决方案。
[0086] 网络设备110包括用于从对密钥模数取模归约的结果中导出共享密钥的密钥导 出设备146。例如,密钥导出设备146可以去除一个或多个最低有效比特。密钥导出设备 146还可以施加密钥导出函数。还可能的是,使用第二归约的结果而没有另外的处理。
[0087] 网络设备110包括可选的密钥均衡器148。注意,可能发生的是,在第一网络设备 中导出的共享密钥不等于在第二网络设备中导出的密钥(基于第一网络设备的身份号)。如 果这被认为是不期望的,则可以采取密钥均衡协议。
[0088] 网络设备110包括密码元件150,所述密码元件150被配置成将共享密钥使用于密 码应用。例如,密码元件150可以在将第一网络设备的消息发送至第二网络设备之前用共 享密钥来加密或认证该消息,比如说状态消息。例如,密码元件150可以解密或验证从第二 网络设备接收到的消息的真实性。
[0089] 典型地,设备110和120各自包括微处理器(未被示出),所述微处理器执行存储在 设备110和120上的适当软件,例如,软件可以是已被下载并存储在对应的存储器中的,例 如,在RAM或诸如闪速存储器这样的非易失性存储器(均未被示出)中的。
[0090] 图2是图示了生成共享密钥200的方法的示意流程图。该方法包括:获得210另 一网络设备的外部身份号,向另一网络设备发送220本地身份号,对多项式和接收到的身 份号执行230归约算法,导出250共享密钥,向另一网络设备发送260密钥确认消息,确定 270密钥是否被确认,以及密码应用280。如果在步骤270中密钥没有被确认,则方法在步 骤250中继续,导出新的密钥。例如,
当前第3页1 2 3 4 5 
网友询问留言 已有0条留言
  • 还没有人留言评论。精彩留言会获得点赞!
1