[发明专利]一种分布式密钥生成的算法在审
申请号: | 201910127788.5 | 申请日: | 2019-02-18 |
公开(公告)号: | CN109921900A | 公开(公告)日: | 2019-06-21 |
发明(设计)人: | 张亮;李宁宁;曹辉宁;周海汉 | 申请(专利权)人: | 深圳市优学链科技有限公司 |
主分类号: | H04L9/08 | 分类号: | H04L9/08;H04L9/30;H04L9/32 |
代理公司: | 广东良马律师事务所 44395 | 代理人: | 李良 |
地址: | 518000 广东省深圳市香*** | 国省代码: | 广东;44 |
权利要求书: | 查看更多 | 说明书: | 查看更多 |
摘要: | 本发明公开了一种分布式密钥生成的算法,包括以下步骤:节点用户Pi产生随机数di,将di转化为Pi的公钥diG,并将diG进行广播,并接收其他用户的diG;所有Pi随机生成多个密钥生成多项式系数,并生成拉格朗日插值多项式,每个Pi均计算出多项式值,并发送给i对应的Pi;所有Pi将密钥生成多项式系数转化成密钥格式,得到多项式系数公钥,将系数公钥广播;所有Pi对接收到的多项式值和密钥生成多项式系数公钥进行验证;所有Pi根据接收到其他用户的多项式值和自己计算得到的值,计算分布式用户份额私钥ti;所有Pi根据接收到其他节点用户的发送的公钥diG,计算分布式公钥Q,并将Q向网络进行广播。 | ||
搜索关键词: | 公钥 密钥生成多项式 分布式密钥 节点用户 算法 广播 拉格朗日插值多项式 多项式系数 分布式用户 密钥格式 随机生成 随机数 私钥 转化 并发 发送 验证 网络 | ||
【主权项】:
1.一种分布式密钥生成的算法,其特征在于,包括以下步骤:1)定义区块链上所有节点的数量为n,G为生成公钥所用的算法公式所使用的椭圆曲线点群的基点,区块链上的所有节点用户Pi产生原始随机数di,i为Pi的序号值,并将所述di转化为Pi的公钥diG,并将diG进行广播,同时接收区块链上其他节点用户发送的diG;2)所有Pi随机生成多个密钥生成多项式系数ai,1……ai,k‑1,所述k的取值范围为[1,n],并生成拉格朗日插值多项式,所述多项式的格式为:fi(xi)=di+ai,1xi+…+ai,k‑1xik‑1 (1)xi为公式(1)中Pi的序号值经过哈希运算得到的数值;每一个Pi均计算出每个xi对应的fi(xi)的数值,并将fi(xi)发送给i对应的Pi;3)所有Pi将ai,1……ai,k‑1转化成密钥格式,得到多个多项式系数公钥ai,1G……ai,k‑1G,并将所述多个多项式系数公钥进行广播;4)所有Pi接收到其他所有节点用户发送的fi(xi)和密钥生成多项式系数公钥,并对所述f(xi)和密钥生成多项式系数公钥用以下公式进行验证:fi(xi)G=diG+ai,1xiG+…+ai,k‑1xik‑1G (2)公式(2)中i为其他所有节点用户的序号值;如果验证不通过,请求通不过的其他节点用户重新发送diG、fi(xi)和ai,1G……ai,k‑1G信息给自己;如果验证结果通过,则进行5)和6)的步骤;5)所有Pi根据接收到所述其他所有节点用户的发送的fi(xi)和自己计算得到的fi(xi),计算出分布式用户份额私钥ti,计算公式为:ti=f1(xi)+f2(xi)+…+fn(xi) (3)6)所有Pi根据接收到所述其他所有节点用户的发送的公钥diG,计算出分布式公钥Q,其计算公式为:Q=d1G+d2G+…+dnG (4)并将Q向区块链网络进行广播。
下载完整专利技术内容需要扣除积分,VIP会员可以免费下载。
该专利技术资料仅供研究查看技术是否侵权等信息,商用须获得专利权人授权。该专利全部权利属于深圳市优学链科技有限公司,未经深圳市优学链科技有限公司许可,擅自商用是侵权行为。如果您想购买此专利、获得商业授权和技术合作,请联系【客服】
本文链接:http://www.vipzhuanli.com/patent/201910127788.5/,转载请声明来源钻瓜专利网。