[发明专利]基于椭圆曲线密码的传感器网络密钥管理方法有效
申请号: | 201310069755.2 | 申请日: | 2013-03-05 |
公开(公告)号: | CN103124213A | 公开(公告)日: | 2013-05-29 |
发明(设计)人: | 丁勇;丁继强;官秀国 | 申请(专利权)人: | 丁勇 |
主分类号: | H04L9/30 | 分类号: | H04L9/30;H04L9/08 |
代理公司: | 桂林市持衡专利商标事务所有限公司 45107 | 代理人: | 陈跃琳 |
地址: | 541004 广西壮族自治区*** | 国省代码: | 广西;45 |
权利要求书: | 查看更多 | 说明书: | 查看更多 |
摘要: | |||
搜索关键词: | 基于 椭圆 曲线 密码 传感器 网络 密钥 管理 方法 | ||
1.一种基于椭圆曲线密码的传感器网络密钥管理方法,其特征是包括如下步骤:
(1)在全局初始化阶段确定以下参数,即
①一个选择好的全局的阶为大素数q的椭圆曲线密码群<G,+>及其生成元g;
②全局的哈希函数H和一个全局的对称加密算法E;
③每个节点都预存储一个全局可信任证书中心的公钥PCA;
④节点A的公私钥对(xA∈RZq*,yA=xAg),用CertA表示包含节点A公钥的证书,该证书由证书中心颁发;
⑤节点B的公私钥对(xB∈RZq*,yB=xBg),用CertB表示包含节点B公钥的证书,该证书由证书中心颁发;
上述符号RZq*表示从集合Zq*中随机选取一个数;
(2)节点A随机选取一个整数kA∈RZq*,并计算u=kAg;再选择一个随机数RA;然后将消息RA||CertA||u发送给节点B;
(3)节点B接收到消息后,首先使用公钥PCA验证CertA并提取节点A的公钥yA;若验证失败,则拒绝通信,协议失败;
(4)若验证成功,节点B随机选取一个整数kB∈RZq*,并计算v=kBg,再选择一个随机数RB;然后依次计算KBA2=kByA、KAB2=xBu、v=kBgrB=H(RA||RB||KBA2||KAB2||v)、wB=rB mod q、以及sB=kB+wBxBmod q;
(5)节点B将消息RA||RB||CertB||v||SB发送给节点A;
(6)节点A接收到消息以后,首先使用公钥PCA验证CertA并提取A的公钥yA;若验证失败,则拒绝通信,协议失败;
(7)若验证成功,则节点A比较接收到的RA与先前自己发送的RA是否相同;若不相同,则拒绝通信,协议失败;
(8)若相同,则节点A计算KBA1=xAv、KAB1=kAyB、rB=H(RA||RB||KBA1||KAB1||v)、wB=rB mod q、以及v'=sBg-wByB,然后比较v'=v是否成立;若不成立,则拒绝通信,协议失败;
(9)若成立,则节点A将K=KBA1||KAB1作为双方共享的根密钥;然后节点A以K为密钥,将加密消息HMACK(RB||u)发送给节点B;
(10)节点B接收到消息后,先使用K’=KBA2||KAB2,并同样计算HMACK'(RB||u);后比较HMACK'(RB||u)和自己接收到的HMACK(RB||u)两个结果是否相等;若不相等,则拒绝通信,协议失败;
(11)若相等,则将K’=KBA2||KAB2作为双方协商共享的根密钥;协议完成。
2.一种基于椭圆曲线密码的传感器网络密钥管理方法,其特征是包括如下步骤:
(1)在全局初始化阶段确定以下参数,即
①一个选择好的全局的阶为大素数q的椭圆曲线密码群<G,+>及其生成元g;
②全局的哈希函数H和一个全局的对称加密算法E;
③每个节点都预存储一个全局可信任证书中心的公钥PCA;
④节点A的公私钥对(xA∈RZq*,yA=xAg),用CertA表示包含节点A公钥的证书,该证书由证书中心颁发;
⑤节点B的公私钥对(xB∈RZq*,yB=xBg),用CertB表示包含节点B公钥的证书,该证书由证书中心颁发;
上述符号RZq*表示从集合Zq*中随机选取一个数;
(2)节点A随机选取一个整数kA∈RZq*,并计算u=kAg;再选择一个随机数RA;然后将消息RA||CertA||u发送给节点B;
(3)节点B接收到消息后,首先使用公钥PCA验证CertA并提取节点A的公钥yA;若验证失败,则拒绝通信,协议失败;
(4)若验证成功,节点B随机选取一个整数kB∈RZq*,并计算v=kBg,再选择一个随机数RB;然后依次计算KBA2=kByA、KAB2=xBu、v=kBgrB=H(RA||RB||KBA2||KAB2||v)、wB=rB mod q、以及sB=kB+wBxBmod q;
(5)节点B将消息RA||RB||CertB||v||SB发送给节点A;
(6)节点A接收到消息以后,首先使用公钥PCA验证CertA并提取A的公钥yA;若验证失败,则拒绝通信,协议失败;
(7)若验证成功,则节点A比较接收到的RA与先前自己发送的RA是否相同;若不相同,则拒绝通信,协议失败;
(8)若相同,则节点A计算KBA1=xAv、KAB1=kAyB、rB=H(RA||RB||KBA1||KAB1||v)、wB=rB mod q、以及v'=sBg-wByB,然后比较v'=v是否成立;若不成立,则拒绝通信,协议失败;
(9)若成立,则节点A将K=KBA1||KAB1作为双方共享的根密钥;然后节点A以K为根密钥,衍生出一个机密性保护密钥KC和完整性保护密钥KI,将加密消息发送给节点B;
(10)节点B接收到消息后,先使用K’=KBA2||KAB2,并同样计算以K’为根密钥,衍生出的一个机密性保护密钥K’C和完整性保护密钥K’I;后计算,并比较和自己接收到的是否相等;若不相等,则拒绝通信,协议失败;若相等,节点B用机密性保护密钥K’C解密得到(RA||RB||u)',比较(RA||RB||u)'和自己存储下来的(RA||RB||u)是否完全一致,若不一致,则拒绝通信,协议失败;若一致,节点B计算并组织消息发送给节点A;此时节点B认为协议成功,将在后续通信中使用机密性保护密钥K’C和完整性保护密钥K’I保护双方通信数据;
(11)节点A接收到消息后,计算,并比较和自己接收到的是否相等;若不相等,则拒绝通信,协议失败;若相等,节点A用机密性保护密钥KC解密得到(RB||RA||u)',并比较(RB||RA||u)'和自己存储下来的(RB||RA||u)是否完全一致,若不一致,则拒绝通信,协议失败;若一致,则节点A认为协议成功,将在后续通信中使用机密性保护密钥K'C和完整性保护密钥K'I保护双方通信数据。
该专利技术资料仅供研究查看技术是否侵权等信息,商用须获得专利权人授权。该专利全部权利属于丁勇,未经丁勇许可,擅自商用是侵权行为。如果您想购买此专利、获得商业授权和技术合作,请联系【客服】
本文链接:http://www.vipzhuanli.com/pat/books/201310069755.2/1.html,转载请声明来源钻瓜专利网。
- 上一篇:有弹环腔和软环箍的轮胎
- 下一篇:提高大熊猫采精效率的直肠按摩电刺激采精方法