[发明专利]基于区块链的对称群组密钥协商方法有效
申请号: | 201910291921.0 | 申请日: | 2019-04-12 |
公开(公告)号: | CN110011795B | 公开(公告)日: | 2021-07-30 |
发明(设计)人: | 张启坤;张彦华;王锐芳;李永娇;袁俊岭;李志刚;李健勇;甘勇;张蓓蕾 | 申请(专利权)人: | 郑州轻工业学院 |
主分类号: | H04L9/08 | 分类号: | H04L9/08;H04L9/32;H04L29/06 |
代理公司: | 郑州优盾知识产权代理有限公司 41125 | 代理人: | 栗改 |
地址: | 450002 *** | 国省代码: | 河南;41 |
权利要求书: | 查看更多 | 说明书: | 查看更多 |
摘要: | |||
搜索关键词: | 基于 区块 对称 密钥 协商 方法 | ||
1.一种基于区块链的对称群组密钥协商方法,其特征在于,其步骤如下:
步骤一:群组信息交换网络域内的密钥生成中心KGC和终端成员相互广播消息生成各自的公/私钥对:
A)密钥生成中心KGC随机选择私钥,并利用加法群的生成元计算公钥从而得系统的公/私钥对;
B)密钥生成中心KGC对域内的所有终端成员ui进行身份认证,并签名,其中,1≤i≤n,n为密钥生成中心KGC内终端成员的个数;
C)终端成员ui通过密钥生成中心KGC的签名的消息计算终端成员自身的公/私钥对;其中;
步骤二:终端成员之间进行群组密钥的计算:
D)终端成员ui之间相互广播IP地址和公钥对组成的信息,基于IP地址的大小,对信息进行排序得到群组所有成员的序对集合;
E)序对集合中的第一个终端成员作为第一个节点将群组密钥参数组成的消息封装到第一个区块并传递给下一节点,依次循环直到最后一个节点的前一节点;
F)最后一个节点收到其前一节点发送的消息计算自身的群组密钥并把群组密钥参数组成的消息封装到第n个区块并广播给其他节点;其他节点根据第n个区块中的群组密钥参数计算各自的群组密钥;
所述步骤二进行群组密钥的计算的方法为:
(1)每个参与群组密钥协商的终端成员ui广播其IP地址和公钥对组成的信息给群组其他终端成员uj;其中,1≤i≤n,1≤j≤n,j≠i,IPi为终端成员ui的IP地址,为终端成员ui的公钥;
(2)其他任一终端成员uj收到终端成员ui广播的信息后,基于IP地址的大小,对信息进行排序,并保存其前一节点的信息和其后一节点的信息且所有终端成员的IP地址和公钥对的消息排序后的顺序集合为其中,IPj-1为终端成员uj-1的IP地址,为终端成员uj-1的IP地址的公钥,IPj+1为终端成员uj+1的IP地址,为终端成员uj+1的IP地址的公钥,Ord表示群组所有终端成员IP地址和公钥对的序对集合;
(3)序对集合Ord中的第一个终端成员即第一个节点u1作为密钥协商发起者,选取一个随机数计算其群组密钥参数M1=m1g1、区块头h1,1=H2(M1)、群组密钥参数和数字签名然后,节点u1将信息封装到第一个区块,根据其存储的后一个节点u2的IP地址IP2的值,将第一个区块作为区块链中的交易信息发送给节点u2;其中,H2(·)为散列函数;
(4)节点u2收到节点u1发送的消息后,节点u2将其IP地址与第一个区块封装的IP地址进行对比分析,如果两个IP地址相同;节点u2验证等式是否成立验证节点u1的身份,如果等式成立,节点u2计算其区块头h2,1=H1(h1,1,H2(h1,2),H2(Sig1));节点u2选取一个随机数计算群组密钥参数M2=m2g1、群组密钥参数和数字签名节点u2将信息封装成第二个区块,并将第二个区块发送给其下一个节点;其中,e(·)是可计算的双线性映射函数公式,g1为加法群G1的生成元;
(5)后续节点操作和节点u2相似,当节点uk从节点uk-1收到第k-1个区块的消息后,节点uk比较其IP地址是否和收到区块中的IP地址相同,如果两个IP相同,节点uk验证等式是否成立,如果等式成立,节点uk计算中间变量hk,1=H1(hk-1,1,H2(hk-1,2),H2(Sigk-1))作为区块头;节点uk选取一个随机数计算群组密钥参数Mk=mig1、群组密钥参数和数字签名然后,节点uk将消息封装成第k个区块,并将第k个区块的信息发给下一个节点uk+1;这里,3≤k<n;
(6)当群组中的最后一个节点un收到节点un-1的消息后,节点un比较其IP地址是否和第n-1个区块中的IP相同,如果两个IP相同,节点un验证等式是否成立,如果等式成立,节点un计算中间变量hn,1=H1(hn-1,1,H2(hn-1,2),H2(Sign-1))作为区块头;节点un选取两个随机数计算中间变量群组密钥参数Mn=mng1、群组密钥参数f1=tnM1,f2=tnM2,...,fn=tnMn、群组密钥参数群组密钥参数和数字签名节点un将信息封装成第n个区块;节点un计算群组密钥并把第n个区块的消息广播给群组中其他成员;其中,null表示空字符,表示节点un计算的群组密钥;
(7)群组中每个节点uk收到来自节点un广播的消息后;节点uk验证等式是否成立,如果等式成立,节点uk计算中间变量和最后可计算出群组密钥这里,1≤k≤n-1,αk和βk是节点uk计算群组密钥过程中需要的中间变量;
步骤三:群组密钥正确性验证:
H)群组中的各终端成员通过双线性映射自证实所计算的群组密钥是否正确。
该专利技术资料仅供研究查看技术是否侵权等信息,商用须获得专利权人授权。该专利全部权利属于郑州轻工业学院,未经郑州轻工业学院许可,擅自商用是侵权行为。如果您想购买此专利、获得商业授权和技术合作,请联系【客服】
本文链接:http://www.vipzhuanli.com/pat/books/201910291921.0/1.html,转载请声明来源钻瓜专利网。
- 上一篇:密码机密钥属性的测试方法
- 下一篇:证书更新方法、装置、计算机设备和存储介质