一种节点间会话密钥的建立系统及方法

文档序号:7763040阅读:280来源:国知局
专利名称:一种节点间会话密钥的建立系统及方法
技术领域
本发明涉及网络通信技术领域,具体涉及一种用于节点间会话密钥的建立系统及 方法。
背景技术
有线局域网一般为广播型网络,一个节点发出的数据,其它节点都能收到。网络上 的各个节点共享信道,这给网络带来了极大的安全隐患。攻击者只要接入网络进行监听,就 可以捕获网络上所有的数据包。现有国家标准GB/T 15629. 3 (对应IEEE 802. 3或IS0/IEC 8802-3)定义的局域 网LAN并不提供数据保密方法,这样就使得攻击者容易窃取到关键信息。在国际研究领域 里,IEEE所制定的IEEE 802. IAE标准为保护以太网提供数据加密协议,并采用逐跳加密的 安全措施来实现网络节点之间数据的安全传达。这种安全措施给局域网中的交换设备带来 了巨大的计算负担,容易引发攻击者对交换设备的攻击;且数据包从发送节点传递到目的 节点的延时也会增大,降低了网络传输效率。有线局域网的拓扑结构比较复杂,涉及到的节点(这里,终端和交换设备被统称 为节点)数目也比较多,因此网络中的数据通信比较复杂。如果为局域网节点间分配静态 的密钥对来建立节点间会话密钥,其分配和更新过程极为复杂。因此,静态密钥对的方式并 不适合建立节点间会话密钥。

发明内容
为了解决背景技术中存在的上述技术问题,本发明提供了一种用于节点间会话密 钥的建立系统及方法,该方法中,局域网合法节点之间可以灵活建立及更新它们之间的密 钥,以建立起它们之间的安全连接。本发明的技术解决方案是—种节点间会话密钥的建立系统,该系统包括两种类型的设备,分别用终端设备 和连接设备表示;其中,连接设备在网络中可以不断级联,终端设备只能通过连接设备连接 到网络中,任何设备均不能通过终端设备接入网络;连接设备中选定或者指定一个特定连 接设备作为这些连接设备中的核心连接设备;所有的连接设备均需要和该核心连接设备建 立安全连接;所有的终端设备都和直接相连的连接设备(该连接设备即为离终端设备最近 的连接设备)建立安全连接;该系统中,任何的两个终端设备之间均可通过直接相连的连 接设备以及核心连接设备建立两者之间的安全连接。以系统中第一终端设备STA-A、第二终端设备STA-B为例进行说明,第一终端设备 STA-A与第一连接设备SWl直接相连,第二终端设备STA-B与第二连接设备SW2直接相连, 该系统中连接设备SW-Center是核心连接设备;则所述第一连接设备SWl以及第二连接设 备SW2分别与核心连接设备SW-Center存在安全连接,所述第一连接设备SWl与第一终端 设备STA-A存在安全连接,所述第二连接设备SW2与第二终端设备STA-B存在安全连接;第一终端设备STA-A和第二终端设备STA-B之间会话密钥的建立是由第一终端设备STA-A 发出请求后,第一连接设备SWl与第二连接设备SW2各自生成一个随机数,秘密通告给对 方,并利用这两个随机数计算得到一个共同的密钥,分别将密钥秘密通告给第一终端设备 STA-A和第二终端设备STA-B,最终确保第一终端设备STA-A和第二终端设备STA-B建立一 致的共享密钥,完成安全连接的建立。一种节点间会话密钥的建立方法,其包括以下步骤1]第一终端设备STA-A与第一连接设备SWl之间、第一连接设备SWl与核心连接 设备SW-Center之间、核心连接设备SW-Center与第二连接设备SW2之间、第二连接设备 SW2与第二终端设备STA-B之间建立安全连接;2]第一终端设备STA-A发送密钥请求分组Ml给第一连接设备SWl ;请求第一连接 设备SWl协助建立第一终端设备STA-A与第二终端设备STA-B之间的共享密钥;3]第一连接设备SWl收到密钥请求分组Ml后发送第一密钥协商请求分组M2给核 心连接设备SW-Center ;第一连接设备SWl通过第一密钥协商请求分组M2将自己生成的随 机数作为第一连接设备询问随机数,秘密通告给核心连接设备SW-Center ;4]核心连接设备SW-Center收到第一密钥协商请求分组M2后发送第二密钥协商 请求分组M3给第二连接设备SW2 ;核心连接设备SW-Center通过第二密钥协商请求分组M3 将得到的第一连接设备询问随机数,秘密通告给第二连接设备SW2 ;5]第二连接设备SW2收到第二密钥协商请求分组M3后发送密钥通告分组M4给 第二终端设备STA-B ;第二连接设备SW2通过密钥通告分组M4将利用第一连接设备询问随 机数以及自己生成的第二连接设备询问随机数计算得到的密钥秘密通告给第二终端设备 STA-B ;6]第二终端设备STA-B收到密钥通告分组M4后发送密钥通告响应分组M5给第二 连接设备SW2,告知第二连接设备SW2已收到密钥信息;7]第二连接设备SW2收到密钥通告响应分组M5后发送第二密钥协商响应分组M6 给核心连接设备SW-Center ;第二连接设备SW2通过第二密钥协商响应分组M6即可将自己 生成的第二连接设备询问随机数秘密通告给核心连接设备SW-Center ;8]核心连接设备SW-Center收到第二密钥协商响应分组M6后发送第一密钥协商 响应分组M7给第一连接设备SWl ;核心连接设备SW-Center通过第一密钥协商响应分组M7 将得到的第二连接设备询问随机数秘密通告给第一连接设备SWl ;9]第一连接设备SWl收到第一密钥协商响应分组M7后发送密钥响应分组M8给 第一终端设备STA-A ;第一连接设备SWl通过密钥响应分组M8将利用自己生成的第一连 接设备询问随机数及第二连接设备询问随机数计算得到的密钥秘密通告给第一终端设备 STA-A ;10]第一终端设备STA-A接收密钥响应分组M8,完成与第二终端设备STA-B之间 的会话密钥的建立。上述的节点间会话密钥的建立方法,其具体包括以下步骤1]第一终端设备STA-A与第一连接设备SWl之间、第一连接设备 与核心连接 设备SW-Center之间、核心连接设备SW-Center与第二连接设备SW2之间、第二连接设备 SW2与第二终端设备 -B之间建立安全连接
1. 1]第一终端设备STA-A与第一连接设备SWl之间建立具有第一共享密钥KEYi^1 的安全连接;所述第一连接设备SWl是指从第一终端设备STA-A到第二终端设备STA-B的 数据包经过的第一个连接设备;1. 2]第一连接设备SWl与核心连接设备SW-Center之间建立具有第二共享密钥 KEY1^center的安全连接;所述核心连接设备SW-Center是一个特定的连接设备,所有其他的 连接设备都需要建立和核心连接设备SW-Center之间的安全连接;1. 3]第二连接设备SW2与核心连接设备SW-Center之间建立具有第三共享密钥 KEY2^center的安全连接;所述第二连接设备SW2是指从第一终端设备STA-A到第二终端设备 STA-B的数据包经过的最后一个连接设备;1. 4]第二连接设备SW2与第二终端设备STA-B之间建立具有第四共享密钥KEYB_2 的安全连接;2]第一终端设备STA-A发送密钥请求分组Ml给第一连接设备SWl,所述密钥请求 分组Ml包括表示第二终端设备STA-B标识的IDsta_b字段;3]第一连接设备SWl收到密钥请求分组Ml后,生成第一连接设备SWl的询问随机 数Nonce·,构造第一密钥协商请求分组M2发送给核心连接设备SW-Center,所述第一密钥 协商请求分组M2包括IDsta_a字段、IDsta_b字段、E1 (Noncesffl)字段以及消息验证码MICl字 段,其中取^字段表示第一终端设备STA-A的标识;取^字段表示第二终端设备STA-B 的标识^(Nonceswi)字段表示询问资料数据,由第一连接设备SWl利用与核心连接设备 Sff-Center之间的第二共享密钥KEY1^te对第一连接设备SWl的询问随机数Noncesw1加密 后的数据;MICl字段表示消息完整性验证码,第一连接设备SWl与核心连接设备SW-Center 之间的第二共享密钥KEYKente,对该第一密钥协商请求分组M2中本字段外的其他字段通过 杂凑函数计算得到的杂凑值;4]核心连接设备SW-Center收到第一密钥协商请求分组M2后,进行如下处理4. 1]利用与第一连接设备SWl之间的第二共享密钥KEY1^entw验证MICl是否正 确,若不正确,则丢弃该分组;否则,执行4. 2];4. 2]利用与第一连接设备SWl之间的第二共享密钥KEYmnto解密E1 (Nonce·)字 段得到第一连接设备SWl的询问随机数Nonceswi ;4. 3]构造第二密钥协商请求分组M3发送给第二连接设备SW2,所述第二密钥协商 请求分组M3包括IDsta_a字段、IDsta_b字段、E2 (Noncesffl)字段以及消息验证码MIC2字段,其 中=E2(Nonceswi)字段表示询问资料数据,由核心连接设备SW-Center利用与第二连接设备 SW2之间的第三共享密钥KEY2_CentCT对第一连接设备SWl的询问随机数Noncesffl加密后的数 据;MIC2字段表示消息完整性验证码,由核心连接设备SW-Center利用与第二连接设备SW2 之间的第三共享密钥KEY2_CentCT对第二密钥协商请求分组M3中本字段外的其他字段通过杂 凑函数计算得到的杂凑值;5]第二连接设备SW2收到第二密钥协商请求分组M3后,进行如下处理5. 1]利用与核心连接设备SW-Center之间的第三共享密钥KEY2_。entCT验证MIC2是 否正确,若不正确,则丢弃该分组;否则,执行5. 2];5. 2]利用与核心连接设备Sff-Center之间的第三共享密钥KEY2_Center解密 E2(Noncesffl)字段得到第一连接设备SWl的询问随机数Nonceswi ;
5. 3]生成第二连接设备SW2的询问随机数Noncesw2,通过单向函数F (N0nCeswl, Noncesff2)计算得到结果作为第一终端设备STA-A和第二终端设备STA-B之间的会话密钥 KEYa_b ;5. 4]构造密钥通告分组M4发送给第二终端设备STA-B,所述密钥通告分组M4包 括IDsta_a字段、E3(KEYa_b)字段以及消息验证码MIC3字段,其中E3(KEYA_B)字段表示密钥资 料数据,由第二连接设备SW2利用与第二终端设备STA-B之间的第四共享密钥KEYb_2对会 话密钥KEYA_B加密后的数据;MIC3字段表示消息完整性验证码,由第二连接设备SW2利用与 第二终端设备STA-B之间的第四共享密钥KEYb_2对密钥通告分组M4中本字段外的其他字 段通过杂凑函数计算得到的杂凑值;6]第二终端设备STA-B收到密钥通告分组M4后,进行如下处理6. 1]利用与第二连接设备SW2之间的第四共享密钥KEYb_2验证MIC3是否正确,若 不正确,则丢弃该分组,否则,执行6. 2];6. 2]利用与第二连接设备SW2之间的第四共享密钥KEYB_2解密E3(KEYA_B)字段得 到第二终端设备STA-B和第一终端设备STA-A之间的会话密钥KEYa_b ;6. 3]构造密钥通告响应分组M5发送给第二连接设备SW2,所述密钥通告响应分组 M5包括IDsta_a字段和消息验证码MIC4字段,其中MIC4字段表示消息完整性验证码,由第 二终端设备STA-B利用与第二连接设备SW2之间的第四共享密钥KEYb_2对该密钥通告响应 分组M5中本字段外的其他字段通过杂凑函数计算得到的杂凑值;7]第二连接设备SW2收到密钥通告响应分组M5后,进行如下处理7. 1]验证密钥通告响应分组M5中的IDSTA_A字段和之前发送的密钥通告分组M4中 对应字段值是否一致,若不一致,则丢弃该分组;否则,执行7. 2];7. 2]利用与第二终端设备STA-B之间的第四共享密钥KEYB_2验证MIC4是否正确, 若不正确,则丢弃该分组,否则,执行7. 3];7. 3]构造第二密钥协商响应分组M6发送给核心连接设备SW-Center,所述第二密 钥协商响应分组M6包括IDsta_a字段、IDsta_b字段、E4(Noncesw2)字段以及消息验证码MIC5 字段,其中=E4(Noncesw2)字段表示询问资料数据,由第二连接设备SW2利用与核心连接设 备SW-Center之间的第三共享密钥KEY2_CentCT对第二连接设备SW2的询问随机数Noncesw2加 密后的数据;MIC5字段表示消息完整性验证码,由第二连接设备SW2利用与核心连接设备 Sff-Center之间的第三共享密钥KEY2_eentCT对第二密钥协商响应分组M6中本字段外的其他 字段通过杂凑函数计算得到的杂凑值;8]核心连接设备SW-Center收到第二密钥协商响应分组M6后,进行如下处理8. 1]验证第二密钥协商响应分组M6中的IDsta_a字段、IDSTA_B字段和之前发送的 第二密钥协商请求分组M3中对应字段值是否一致,若都一致,则执行8. 2];否则,丢弃该分 组;8. 2]利用与第二连接设备SW2之间的第三共享密钥KEY2_CentCT验证MIC5是否正 确,若不正确,则丢弃该分组,否则,执行8. 3];8. 3]利用与第二连接设备SW2之间的第三共享密钥KEY2_CentCT解密E4 (Noncesw2)字 段,即可得到第二连接设备SW2的询问随机数Noncesw2 ;8.4]构造第一密钥协商响应分组M7发送给第一连接设备SW1,所述第一密钥协商响应分组M7包括IDsta_a字段、IDsta_b字段、E5 (Noncesff2)字段以及消息验证码MIC6字段,其 中E5(N0nCeSW2)字段表示询问资料数据,由核心连接设备SW-Center利用与第一连接设备 Sffl之间的第二共享密钥KEY1^ente对第二连接设备SW2的询问随机数Noncesff2加密后的数 据;MIC6字段表示消息完整性验证码,由核心连接设备SW-Center利用与第一连接设备SWl 之间的第二共享密钥KEY1Iente,对第一密钥协商响应分组M7中本字段外的其他字段通过杂 凑函数计算得到的杂凑值;9]第一连接设备SWl收到第一密钥协商响应分组M7后,进行如下处理9. 1]验证第一密钥协商响应分组M7中的IDSTA_A字段、IDSTA_B字段和之前发送的 第一密钥协商请求分组M2中对应字段值是否一致,若都一致,则执行9. 2];否则,丢弃该分 组;9. 2]利用与核心连接设备SW-Center之间的第二共享密钥KEYhcento验证MIC6是 否正确,若不正确,则丢弃该分组,否则,执行9. 3];9. 3]利用与核心连接设备SW-Center之间的第二共享密钥KEY^ento解密 E5 (Noncesff2)字段得到第二连接设备SW2的询问随机数Noncesw2,通过单向函数F (Noncesffl, Noncesff2)计算即可得到第一终端设备STA-A和第二终端设备STA-B之间的会话密钥 KEYa_b ;9. 4]构造密钥响应分组M8发送给第一终端设备STA-A,所述密钥响应分组M8包 括IDsta_b字段、E6(KEYa_b)字段以及消息验证码MIC7字段,其中E6(KEYa_b)字段表示密钥资 料数据,由第一连接设备SWl利用与第一终端设备STA-A之间的第一共享密钥KEYiw对会 话密钥KEYA_B加密后的数据;MIC7字段表示消息完整性验证码,由第一连接设备SWl利用与 第一终端设备STA-A之间的第一共享密钥KEYiw对密钥响应分组M8中本字段外的其他字 段通过杂凑函数计算得到的杂凑值;10]第一终端设备STA-A收到密钥响应分组M8后,进行如下处理10. 1]验证密钥响应分组M8中的IDsta_b字段和之前发送的密钥请求分组Ml中对 应字段值是否一致,若一致,则执行10. 2];否则,丢弃该分组;10. 2]利用与第一连接设备SWl之间的第一共享密钥KEYp1验证MIC7是否正确, 若不正确,则丢弃该分组,否则执行10. 3];10. 3]利用与第一连接设备SWl之间的第一共享密钥KEYp1解密E6(KEYA_B)字段 得到与第二终端设备STA-B之间的会话密钥KEYA_B,建立第一终端设备STA-A和第二终端设 备STA-B之间会话密钥。上述第一终端设备STA-A生成一个消息新鲜性标识,所述密钥请求分组Ml、第一 密钥协商请求分组M2、第二密钥协商请求分组M3、密钥通告分组M4、密钥通告响应分组M5、 第二密钥协商响应分组M6、第一密钥协商响应分组M7以及密钥响应分组M8均包括消息 新鲜性标识,所述第二连接设备SW2收到密钥通告响应分组M5后,需验证该分组中的消息 新鲜性标识与其之前接收的第二密钥协商请求分组M3中的是否一致;所述核心连接设备 Sff-Center收到第二密钥协商响应分组M6后,需验证该分组中的消息新鲜性标识与其之前 接收的第一密钥协商请求分组M2中的是否一致;第一连接设备SWl收到第一密钥协商响应 分组M7后,需验证该分组中的消息新鲜性标识与其之前接收的密钥请求分组Ml中的是否 一致;第一终端设备STA-A收到密钥响应分组M8后,需验证该分组中的消息新鲜性标识与其之前发送的密钥请求分组Ml中的否一致。上述消息新鲜性标识为时钟、顺序号或随机数。上述密钥请求分组Ml、第一密钥协商请求分组M2、第二密钥协商请求分组M3以及 密钥通告分组M4分别生成各自的消息新鲜性标识;所述密钥通告响应分组M5携带的消息 新鲜性标识与密钥通告分组M4中对应标识一致,所述第二密钥协商响应分组M6携带的消 息新鲜性标识与第二密钥协商请求分组M3中对应标识一致,所述第一密钥协商响应分组 M7携带的消息新鲜性标识与第一密钥协商请求分组M2中对应标识一致,所述密钥响应分 组M8携带的消息新鲜性标识与密钥请求分组Ml中对应标识一致,所述第二连接设备SW2 收到密钥通告响应分组M5后,需验证该分组中的标识值与之前发送的密钥通告分组M4中 的标识值是否一致;核心连接设备SW-Center收到第二密钥协商响应分组M6后,需验证该 分组中的标识值与之前发送的第二密钥协商请求分组M3中的标识值是否一致;所述第一 连接设备SWl收到第一密钥协商响应分组M7后,需验证该分组中的标识值与之前发送的第 一密钥协商请求分组M2中的标识值是否一致;所述第一终端设备STA-A收到密钥响应分组 M8后,需验证该分组中的标识值与之前发送的密钥请求分组Ml中的标识值是否一致。上述消息新鲜性标识为时钟、顺序号或随机数。一种节点间会话密钥的建立方法,其特征在于第一连接设备(SWl)以及第二连 接设备(SW2)分别与核心连接设备(SW-Center)建立安全连接,第一连接设备(SWl)与第 一终端设备(STA-A)建立安全连接,第二连接设备(SW2)与第二终端设备(STA-B)建立安 全连接;第一终端设备(STA-A)发出建立第一终端设备(STA-A)和第二终端设备(STA-B) 之间会话密钥的请求,第一连接设备(SWl)与第二连接设备(SW2)各自生成一个随机数秘 密通告给对方,并利用该两随机数计算得到一致的会话密钥,该会话密钥由第二连接设备 (SW2)秘密通告给第二终端设备(STA-B),由第一连接设备(SWl)秘密通告给第一终端设备 (STA-A),使第一终端设备(STA-A)和第二终端设备(STA-B)建立一致的会话密钥,完成会 话密钥的建立。本发明的优点是核心连接设备SW-Center只需要保存与网络中的交换设备之间 的密钥,无需建立与用户终端之间的密钥;每一个交换设备只需要保存与相邻交换设备之 间的密钥以及与核心连接设备SW-Center之间的密钥;每一个用户终端只需要保持与相邻 交换设备之间的密钥。第一终端设备STA-A和第二终端设备STA-B之间的会话密钥是由第 一连接设备SWl和第二连接设备SW2利用双方临时生成的随机数Nonceswi和Noncesw2计算 得到的,然后由第二连接设备SW2秘密通告给第二终端设备STA-B ;由第一连接设备SWl秘 密通告给第一终端设备STA-A。该建立过程灵活,无需用户参与配置即可实现节点间会话密 钥的建立,保证了后续节点间的通信的机密性。


图1为本发明所提供的节点间会话密钥建立过程示意图。
具体实施例方式在网络中,所有的连接设备都与网络中的核心连接设备SW-Center之间通过预分 发或其他安全机制已建立安全连接,即已具有共享的密钥;所有的终端设备仅与相邻的连接设备之间通过预分发或其他安全机制已建立安全连接,即已具有共享的密钥(此处所述 安全连接的建立机制本发明中不予限制和定义)。以第一终端设备STA-A与第二终端设备STA-B之间的会话密钥建立为例进行说 明,SW。entCT为网络中的核心连接设备,第一连接设备SWl是指从第一终端设备STA-A到第 二终端设备STA-B的数据包经过的第一个连接设备,第二连接设备SW2是指从第一终端设 备STA-A到第二终端设备STA-B的数据包经过的最后一个连接设备。第一终端设备STA-A 与第一连接设备SWl之间已建立安全连接,具有的第一共享密钥记为KEYiw ;第一连接设备 Sffl与核心连接设备SW-Center之间已建立安全连接,具有的第二共享密钥记为KEYhtente ; 第二连接设备SW2与核心连接设备SW-Center之间已建立安全连接,具有的第三共享密钥 记为KEY2_CentCT ;第二终端设备STA-B与第二连接设备SW2之间已建立安全连接,具有的第四 共享密钥记为KEYb_2。图1以第一终端设备STA-A和第二终端设备STA-B之间建立会话密钥的步骤为例 来说明本发明所提供的用于节点间会话密钥的建立方法的具体方案如下1)第一终端设备STA-A发送密钥请求分组Ml给第一连接设备SWl ;该密钥请求分组Ml主要包含
权利要求
一种节点间会话密钥的建立系统,其特征在于该系统包括终端设备和连接设备,所述终端设备包括发起端终端设备以及接收端终端设备,所述连接设备包括核心连接设备、在发起端终端设备与核心连接设备之间链路上的发起端连接设备以及在接收端终端设备与核心连接设备之间链路上的接收端连接设备;所述发起端终端设备用于发出会话密钥建立请求后,由发起端连接设备和接收端连接设备各自生成一个随机数,发起端连接设备将生成的随机数秘密通告给接收端连接设备,接收端连接设备将生成的随机数秘密通告给发起端连接设备,发起端连接设备和接收端连接设备利用这两个随机数计算得到一致的会话密钥,该会话密钥被秘密通告给接收端终端设备与发起端终端设备,使得发起端终端设备与接收端终端设备得到一致的会话密钥以完成会话密钥的建立。
2.根据权利要求1所述的节点间会话密钥的建立系统,其特征在于所述发起端连接设备包括第一连接设备(SWl),所述接收端连接设备包括第二连接设 备(SW2),所述发起端终端设备包括第一终端设备(STA-A),所述接收端终端设备包括第二 终端设备(STA-B);所述第一连接设备(SWl)以及第二连接设备(SW2)分别与核心连接设 备(SW-Center)存在安全连接,所述第一连接设备(SWl)与第一终端设备(STA-A)存在安 全连接,所述第二连接设备(SW2)与第二终端设备(STA-B)存在安全连接;第一终端设备(STA-A)用于发出会话密钥建立请求后,第一连接设备(SWl)生成一 个随机数秘密通告给第二连接设备(SW2),第二连接设备(SW2)生成一个随机数秘密通告 给第一连接设备(SWl),第二连接设备(SW2)和第一连接设备(SWl)利用这两个随机数计 算得到一致的会话密钥,该会话密钥被秘密由第二连接设备(SW2)通告给第二终端设备 (STA-B),由第一连接设备(SWl)通告给第一终端设备(STA-A),使第一终端设备(STA-A)和 第二终端设备(STA-B)建立一致的会话密钥,完成会话密钥的建立。
3.一种节点间会话密钥的建立方法,其特征在于其包括以下步骤1]第一终端设备(STA-A)与第一连接设备(SWl)之间、第一连接设备(SWl)与核心连 接设备(SW-Center)之间、核心连接设备(SW-Center)与第二连接设备(SW2)之间、第二连 接设备(SW2)与第二终端设备(STA-B)之间建立安全连接;2]第一终端设备(STA-A)发送密钥请求分组(Ml)给第一连接设备(SWl);请求第一连 接设备(SWl)协助建立第一终端设备(STA-A)与第二终端设备(STA-B)之间的共享密钥;3]第一连接设备(SWl)收到密钥请求分组(Ml)后发送第一密钥协商请求分组(M2) 给核心连接设备(SW-Center);第一连接设备(SWl)通过第一密钥协商请求分组(M2)将第 一连接设备(SWl)生成的随机数作为第一连接设备询问随机数,秘密通告给核心连接设备 (Sff-Center);4]核心连接设备(SW-Center)收到第一密钥协商请求分组(M2)后发送第二密钥协商 请求分组(M3)给第二连接设备(SW2);核心连接设备(SW-Center)通过第二密钥协商请求 分组(M3)将得到的第一连接设备询问随机数,秘密通告给第二连接设备(SW2);5]第二连接设备(SW2)收到第二密钥协商请求分组(M3)后发送密钥通告分组(M4)给 第二终端设备(STA-B);第二连接设备(SW2)通过密钥通告分组(M4)将利用第一连接设备 询问随机数以及第二连接设备(SW2)生成的第二连接设备询问随机数计算得到的会话密 钥秘密通告给第二终端设备(STA-B);。6]第二终端设备(STA-B)收到密钥通告分组(M4)后发送密钥通告响应分组(M5)给第 二连接设备(SW2),告知第二连接设备(SW2)已收到会话密钥;。7]第二连接设备(SW2)收到密钥通告响应分组(M5)后发送第二密钥协商响应分 组(M6)给核心连接设备(SW-Center);第二连接设备(SW2)通过第二密钥协商响应分组 (M6)将第二连接设备(SW2)生成的第二连接设备询问随机数秘密通告给核心连接设备 (Sff-Center);。8]核心连接设备(SW-Center)收到第二密钥协商响应分组(M6)后发送第一密钥协商 响应分组(M7)给第一连接设备(SWl);核心连接设备(SW-Center)通过第一密钥协商响应 分组(M7)将得到的第二连接设备询问随机数秘密通告给第一连接设备(SWl);。9]第一连接设备(SWl)收到第一密钥协商响应分组(M7)后发送密钥响应分组(M8)给 第一终端设备(STA-A);第一连接设备(SWl)通过密钥响应分组(M8)将利用第一连接设备 (Sffl)生成的第一连接设备询问随机数及第二连接设备询问随机数计算得到的会话密钥秘 密通告给第一终端设备(STA-A);。10]第一终端设备(STA-A)接收密钥响应分组(M8),完成与第二终端设备(STA-B)之 间的会话密钥的建立。
4.根据权利要求3所述的节点间会话密钥的建立方法,其特征在于其具体包括以下 步骤。1]第一终端设备(STA-A)与第一连接设备(SWl)之间、第一连接设备(SWl)与核心连 接设备(SW-Center)之间、核心连接设备(SW-Center)与第二连接设备(SW2)之间、第二连 接设备(SW2)与第二终端设备(STA-B)之间建立安全连接。1. 1]第一终端设备(STA-A)与第一连接设备(SWl)之间建立具有第一共享密钥 (KEYp1)的安全连接;所述第一连接设备(SWl)是指从第一终端设备(STA-A)到第二终端设 备(STA-B)的数据包经过的第一个连接设备;。1.2]第一连接设备(SWl)与核心连接设备(SW-Center)之间建立具有第二共享密钥 (KEY1^center)的安全连接;。1.3]第二连接设备(SW2)与核心连接设备(SW-Center)之间建立具有第三共享密钥 (KEY2^center)的安全连接;所述第二连接设备(SW2)是指从第一终端设备(STA-A)到第二终 端设备(STA-B)的数据包经过的最后一个连接设备;。1.4]第二连接设备(SW2)与第二终端设备(STA-B)之间建立具有第四共享密钥 (KEYb_2)的安全连接;。2]第一终端设备(STA-A)发送密钥请求分组(Ml)给第一连接设备(SWl),所述密钥请 求分组(Ml)包括表示第二终端设备(STA-B)标识的IDsta_b字段;。3]第一连接设备(SWl)收到密钥请求分组(Ml)后,生成第一连接设备(SWl)的询问随 机数Nonceswi ;构造第一密钥协商请求分组(M2)发送给核心连接设备(SW-Center),所述第 一密钥协商请求分组(M2)包括IDSTA_A字段、IDSTA_B字段、E1 (Nonceswi)字段以及消息验证码 MICl字段,其中IDsta_a字段表示第一终端设备STA-A的标识;IDsta_b字段表示第二终端设 备(STA-B)的标识屯(Nonceswi)字段表示询问资料数据,由第一连接设备(SWl)利用与核 心连接设备(SW-Center)之间的第二共享密钥(KEYhtentJ对第一连接设备(SWl)的询问随 机数Nonceswi加密后的数据;MICl字段表示消息完整性验证码,第一连接设备(SWl)与核心连接设备(SW-Center)之间的第二共享密钥(KEYhtentJ对该第一密钥协商请求分组(M2) 中本字段外的其他字段通过杂凑函数计算得到的杂凑值;4]核心连接设备(SW-Center)收到第一密钥协商请求分组(M2)后,进行如下处理`4. 1]利用与第一连接设备(SWl)之间的第二共享密钥(KEYnentJ验证MICl是否正确,若不正确,则丢弃该分组;否则,执行4. 2];`4. 2]利用与第一连接设备(SWl)之间的第二共享密钥(KEYhtentJ解密E1 (Nonceswi)字 段得到第一连接设备(SWl)的询问随机数Nonceswi ;`4.3]构造第二密钥协商请求分组(M3)发送给第二连接设备(SW2),所述第二密钥协商 请求分组(M3)包括IDSTA_A字段、IDSTA_B字段、E2 (Nonceswi)字段以及消息验证码MIC2字段,其 中=E2(Nonceswi)字段表示询问资料数据,由核心连接设备(SW-Center)利用与第二连接设 备(SW2)之间的第三共享密钥(KEY2_CentJ对第一连接设备(SWl)的询问随机数(Noncesffl) 加密后的数据;MIC2字段表示消息完整性验证码,由核心连接设备(SW-Center)利用与第 二连接设备(SW2)之间的第三共享密钥(KEY2_CentJ对第二密钥协商请求分组(M3)中本字 段外的其他字段通过杂凑函数计算得到的杂凑值;5]第二连接设备(SW2)收到第二密钥协商请求分组(M3)后,进行如下处理`5.1]利用与核心连接设备(SW-Center)之间的第三共享密钥(KEY2_CentJ验证MIC2是 否正确,若不正确,则丢弃该分组;否则,执行5. 2];`5.2]利用与核心连接设备(SW-Center)之间的第三共享密钥(KEY2_Cent J解密 E2(Noncesffl)字段得到第一连接设备(SWl)的询问随机数Nonceswi ;`5.3]生成第二连接设备(SW2)的询问随机数Noncesw2,通过单向函数F(N0nCeswl, Noncesff2)计算得到结果作为第一终端设备(STA-A)和第二终端设备(STA-B)之间的会话密 钥 KEYa_b ;`5.4]构造密钥通告分组(M4)发送给第二终端设备(STA-B),所述密钥通告分组(M4) 包括IDsta-a字段、E3(KEYa_b)字段以及消息验证码MIC3字段,其中E3(KEYA_B)字段表示密 钥资料数据,由第二连接设备(SW2)利用与第二终端设备(STA-B)之间的第四共享密钥 (KEYb_2)对会话密钥KEYa_b加密后的数据;MIC3字段表示消息完整性验证码,由第二连接设 备(SW2)利用与第二终端设备(STA-B)之间的第四共享密钥(KEYb_2)对密钥通告分组(M4) 中本字段外的其他字段通过杂凑函数计算得到的杂凑值;6]第二终端设备(STA-B)收到密钥通告分组(M4)后,进行如下处理`6.1]利用与第二连接设备(SW2)之间的第四共享密钥(KEYb_2)验证MIC3是否正确,若 不正确,则丢弃该分组,否则,执行6. 2];`6. 2]利用与第二连接设备(SW2)之间的第四共享密钥(KEYb_2)解密E3(KEYa_b)字段得 到第二终端设备(STA-B)和第一终端设备(STA-A)之间的会话密钥KEYA_B ;`6.3]构造密钥通告响应分组(M5)发送给第二连接设备(SW2),所述密钥通告响应分组 (M5)包括IDsta_a字段和消息验证码MIC4字段,其中MIC4字段表示消息完整性验证码,由 第二终端设备(STA-B)利用与第二连接设备(SW2)之间的第四共享密钥(KEYb_2)对该密钥 通告响应分组(M5)中本字段外的其他字段通过杂凑函数计算得到的杂凑值;7]第二连接设备(SW2)收到密钥通告响应分组(M5)后,进行如下处理`7.1]验证密钥通告响应分组(M5)中的IDSTA_A字段和之前发送的密钥通告分组(M4)中对应字段值是否一致,若不一致,则丢弃该分组;否则,执行7. 2];[7. 2]利用与第二终端设备(STA-B)之间的第四共享密钥(KEYb_2)验证MIC4是否正确, 若不正确,则丢弃该分组,否则,执行7. 3];[7.3]构造第二密钥协商响应分组(M6)发送给核心连接设备(SW-Center),所述第二密 钥协商响应分组(M6)包括IDSTA_A字段、IDSTA_B字段、E4 (Noncesw2)字段以及消息验证码MIC5 字段,其中=E4(Noncesw2)字段表示询问资料数据,由第二连接设备(SW2)利用与核心连接 设备(SW-Center)之间的第三共享密钥(KEY2_CentJ对第二连接设备(SW2)的询问随机数 Noncesw2加密后的数据;MIC5字段表示消息完整性验证码,由第二连接设备(SW2)利用与核 心连接设备(SW-Center)之间的第三共享密钥(KEY2_。entJ对第二密钥协商响应分组(M6) 中本字段外的其他字段通过杂凑函数计算得到的杂凑值;[8]核心连接设备(SW-Center)收到第二密钥协商响应分组(M6)后,进行如下处理[8.1]验证第二密钥协商响应分组(M6)中的IDSTA_A字段、IDSTA_B字段和之前发送的第 二密钥协商请求分组(M3)中对应字段值是否一致,若都一致,则执行8. 2];否则,丢弃该分 组;[8. 2]利用与第二连接设备(SW2)之间的第三共享密钥(KEY2_CentJ验证MIC5是否正 确,若不正确,则丢弃该分组,否则,执行8. 3];[8. 3]利用与第二连接设备(SW2)之间的第三共享密钥(KEY2_CentJ解密E4(Noncesw2)字 段,即可得到第二连接设备(SW2)的询问随机数Noncesw2 ;[8.4]构造第一密钥协商响应分组(M7)发送给第一连接设备(SWl),所述第一密钥协商 响应分组(M7)包括IDSTA_A字段、IDSTA_B字段、E5 (Noncesw2)字段以及消息验证码MIC6字段, 其中E5(N0nCeSW2)字段表示询问资料数据,由核心连接设备(SW-Center)利用与第一连接 设备(SWl)之间的第二共享密钥(KEY^te)对第二连接设备(SW2)的询问随机数Noncesw2 加密后的数据;MIC6字段表示消息完整性验证码,由核心连接设备(SW-Center)利用与第 一连接设备(SWl)之间的第二共享密钥(KEYKmtw)对第一密钥协商响应分组(M7)中本字 段外的其他字段通过杂凑函数计算得到的杂凑值;[9]第一连接设备(SWl)收到第一密钥协商响应分组(M7)后,进行如下处理[9.1]验证第一密钥协商响应分组(M7)中的IDSTA_A字段、IDSTA_B字段和之前发送的第 一密钥协商请求分组(M2)中对应字段值是否一致,若都一致,则执行9. 2];否则,丢弃该分 组;[9. 2]利用与核心连接设备(SW-Center)之间的第二共享密钥(KEYhtentJ验证MIC6是 否正确,若不正确,则丢弃该分组,否则,执行9. 3];[9. 3]利用与核心连接设备(SW-Center)之间的第二共享密钥(KEY1^entJ解 密E5 (Noncesff2)字段得到第二连接设备(SW2)的询问随机数Noncesw2,通过单向函数 F(Noncesffl,Noncesff2)计算即可得到第一终端设备(STA-A)和第二终端设备(STA-B)之间的 会话密钥KEYa_b ;[9.4]构造密钥响应分组(M8)发送给第一终端设备(STA-A),所述密钥响应分组(M8) 包括IDsta-b字段、E6(KEYa_b)字段以及消息验证码MIC7字段,其中E6(KEYA_B)字段表示密 钥资料数据,由第一连接设备(SWl)利用与第一终端设备(STA-A)之间的第一共享密钥 (KEYp1)对会话密钥KEYa_b加密后的数据;MIC7字段表示消息完整性验证码,由第一连接设备(SWl)利用与第一终端设备(STA-A)之间的第一共享密钥(KEYp1)对密钥响应分组(M8) 中本字段外的其他字段通过杂凑函数计算得到的杂凑值;10]第一终端设备(STA-A)收到密钥响应分组(M8)后,进行如下处理·10. 1]验证密钥响应分组(M8)中的IDSTA_B字段和之前发送的密钥请求分组(Ml)中对 应字段值是否一致,若一致,则执行10. 2];否则,丢弃该分组;·10. 2]利用与第一连接设备(SWl)之间的第一共享密钥(KEYf1)验证MIC7是否正确, 若不正确,则丢弃该分组,否则执行10. 3];·10. 3]利用与第一连接设备(SWl)之间的第一共享密钥(KEYp1)解密E6(KEYa_b)字段 得到与第二终端设备(STA-B)之间的会话密钥KEYA_B,建立第一终端设备(STA-A)和第二终 端设备(STA-B)之间会话密钥。
5.根据权利要求3或4所述的节点间会话密钥的建立方法,其特征在于所述第一终端设备(STA-A)生成一个消息新鲜性标识,所述密钥请求分组(Ml)、第一 密钥协商请求分组(M2)、第二密钥协商请求分组(M3)、密钥通告分组(M4)、密钥通告响应 分组(M5)、第二密钥协商响应分组(M6)、第一密钥协商响应分组(M7)以及密钥响应分组 (M8)均包括消息新鲜性标识,所述第二连接设备(SW2)收到密钥通告响应分组(M5)后,需 验证该分组中的消息新鲜性标识与其之前接收的第二密钥协商请求分组(M3)中的是否一 致;所述核心连接设备(SW-Center)收到第二密钥协商响应分组(M6)后,需验证该分组中 的消息新鲜性标识与其之前接收的第一密钥协商请求分组(M2)中的是否一致;第一连接 设备(SWl)收到第一密钥协商响应分组(M7)后,需验证该分组中的消息新鲜性标识与其 之前接收的密钥请求分组(Ml)中的是否一致;第一终端设备(STA-A)收到密钥响应分组 (M8)后,需验证该分组中的消息新鲜性标识与其之前发送的密钥请求分组(Ml)中的否一 致。
6.根据权利要求5所述的节点间会话密钥的建立方法,其特征在于所述消息新鲜性 标识为时钟、顺序号或随机数。
7.根据权利要求3或4所述的节点间会话密钥的建立方法,其特征在于所述密钥请 求分组(Ml)、第一密钥协商请求分组(M2)、第二密钥协商请求分组(M3)以及密钥通告分 组(M4)分别生成各自的消息新鲜性标识;所述密钥通告响应分组(M5)携带的消息新鲜性 标识与密钥通告分组(M4)中对应标识一致,所述第二密钥协商响应分组(M6)携带的消息 新鲜性标识与第二密钥协商请求分组(M3)中对应标识一致,所述第一密钥协商响应分组 (M7)携带的消息新鲜性标识与第一密钥协商请求分组(M2)中对应标识一致,所述密钥响 应分组(M8)携带的消息新鲜性标识与密钥请求分组(Ml)中对应标识一致,所述第二连接 设备(SW2)收到密钥通告响应分组(M5)后,需验证该分组中的标识值与之前发送的密钥通 告分组(M4)中的标识值是否一致;核心连接设备(SW-Center)收到第二密钥协商响应分组 (M6)后,需验证该分组中的标识值与之前发送的第二密钥协商请求分组(M3)中的标识值 是否一致;所述第一连接设备(SWl)收到第一密钥协商响应分组(M7)后,需验证该分组中 的标识值与之前发送的第一密钥协商请求分组(M2)中的标识值是否一致;所述第一终端 设备(STA-A)收到密钥响应分组(M8)后,需验证该分组中的标识值与之前发送的密钥请求 分组(Ml)中的标识值是否一致。
8.根据权利要求7所述的节点间会话密钥的建立方法,其特征在于所述消息新鲜性标识为时钟、顺序号或随机数。
9. 一种节点间会话密钥的建立方法,其特征在于第一连接设备(SWl)以及第二连接 设备(SW2)分别与核心连接设备(SW-Center)建立安全连接,第一连接设备(SWl)与第一 终端设备(STA-A)建立安全连接,第二连接设备(SW2)与第二终端设备(STA-B)建立安全 连接;第一终端设备(STA-A)发出建立第一终端设备(STA-A)和第二终端设备(STA-B)之 间会话密钥的请求,第一连接设备(SWl)与第二连接设备(SW2)各自生成一个随机数秘 密通告给对方,并利用该两随机数计算得到一致的会话密钥,该会话密钥由第二连接设备 (SW2)秘密通告给第二终端设备(STA-B),由第一连接设备(SWl)秘密通告给第一终端设备 (STA-A),使第一终端设备(STA-A)和第二终端设备(STA-B)建立一致的会话密钥,完成会 话密钥的建立。
全文摘要
本发明提供了一种用于节点间会话密钥的建立系统及方法,该方法中,局域网合法节点之间可以灵活建立及更新它们之间的密钥,以建立起它们之间的安全连接,该系统包括终端设备和连接设备,所述终端设备包括发起端终端设备以及接收端终端设备,所述连接设备包括核心连接设备、在发起端终端设备与核心连接设备之间链路上的发起端连接设备以及在接收端终端设备与核心连接设备之间链路上的接收端连接设备。本发明建立过程灵活,无需用户参与配置即可实现节点间会话密钥的建立,保证了后续节点间的通信的机密性。
文档编号H04L9/08GK101964708SQ20101051862
公开日2011年2月2日 申请日期2010年10月25日 优先权日2010年10月25日
发明者李琴, 杜志强, 葛莉, 铁满霞 申请人:西安西电捷通无线网络通信股份有限公司
网友询问留言 已有0条留言
  • 还没有人留言评论。精彩留言会获得点赞!
1