[发明专利]一种基于ECDSA的双重门限签名方法有效
申请号: | 202010164377.6 | 申请日: | 2020-03-11 |
公开(公告)号: | CN111245617B | 公开(公告)日: | 2022-07-05 |
发明(设计)人: | 徐凡;马聪 | 申请(专利权)人: | 杭州泛链科技有限公司 |
主分类号: | H04L9/08 | 分类号: | H04L9/08;H04L9/32 |
代理公司: | 杭州求是专利事务所有限公司 33200 | 代理人: | 贾玉霞 |
地址: | 310012 浙江省杭州*** | 国省代码: | 浙江;33 |
权利要求书: | 查看更多 | 说明书: | 查看更多 |
摘要: | |||
搜索关键词: | 一种 基于 ecdsa 双重 门限 签名 方法 | ||
1.一种基于ECDSA的双重门限签名方法,其特征在于,该方法具体包括如下步骤:
S1:生成母公钥及孙私钥;定义(i,j)用来表示某个节点,i代表该节点所在的大组,而j代表该节点在该大组中的序号,(α,β)用来表示另一个节点,α代表这个节点所在的大组,而β代表这个节点在该大组中的序号;i=1,2......,n;j=1,2......,m;α=1,2......,n;β=1,2......,m;xG为基于椭圆曲线上定义的广义乘法;
具体如下:
S1.1:每个节点选择随机数d(i,j),计算d(i,j)G并广播,其中,G为椭圆曲线基点;
S1.2:每个节点选择随机数a(i,j,k),k=1,2……,t-1,生成t-1次多项式
f(i,j)(x)=d(i,j)+a(i,j,1)x+a(i,j,2)x2+…+a(i,j,t-1)xt-1
S1.3:每个节点计算并广播a(i,j,k)G和f(i,j)(ID(α))G,k=1,2......,t-1;
S1.4:每个节点计算f(i,j)(ID(α)),并把f(i,j)(ID(α))用安全信道发送给所有组别为α的节点,发送过程中当遇到自己发送给自己的情况,则直接将值保存;其中,ID(·)为大组的特殊编号;
S1.5:每个节点验证其他节点的值是否满足下式,若存在不成立的式子,则说明有节点发送了错误的信息,整个流程终止,若所有式子均成立,则继续S1.6;
S1.6:每个节点验证其他节点的值是否满足下式,若存在不成立的式子,则说明有节点发送了错误的信息,整个流程终止,若所有式子均成立,则继续S1.7;
其中,
其中,A表示从1~n这n个自然数中任意取t个元素得到的若干个集合;
S1.7:每个节点选择随机数a(i,j,α,l),l=1,2……,u-1,生成n个u-1次多项式
f(i,j,α)(x)=f(i,j)(ID(α))+a(i,j,α,1)x+a(i,j,α,2)x2+…+a(i,j,α,u-1)xu-1
S1.8:每个节点计算并广播a(i,j,α,l)G和f(i,j,α)(N(α,β))G,l=1,2……,u-1;其中,N(i,j)表示每个节点的特殊编号;
S1.9:每个节点对于每一个(α,β)计算f(i,j,α)(N(α,β)),并用安全信道发送给对应的节点(α,β),发送过程中当遇到自己发送给自己的情况,则直接将值保存;其中,f(i,j,α)(N(α,β))的计算方式如下:
S1.10:每个节点验证其他节点的值是否满足下式,若存在不成立的式子,则说明有节点发送了错误的信息,整个流程终止,若所有式子均成立,则继续S1.11;
S1.11:每个节点分别计算孙公钥和母公钥,其中
孙公钥的计算过程如下:
每个节点首先按照下式计算自己的孙私钥s(α,β),并妥善保管,然后每个节点再计算孙公钥PK(i,j)=s(i,j)G并广播;
其中母公钥的计算公式如下:
S2:合成签名,其中,(i,j)用来表示某个节点,i代表该节点所在的大组,而j代表该节点在该大组中的序号,(α,β)用来表示另一个节点,α代表这个节点所在的大组,而β代表这个节点在该大组中的序号;根据方案描述的应用场景,签名时只需要t个组别,每个组别提供u个节点就能完成签名,因此这4个参数的取值范围发生了变化,i=1,2......,t;j=1,2......,u;α=1,2......,t;
S2.1:每个节点生成随机数
S2.2:每个节点按照下式计算s′(i,j)
s′(i,j)=bjbis(i,j)
其中,
S2.3:各节点参与安全多方乘法计算,输入为和s′(i,j),得到的输出为v′(i,j);
S2.4:每个节点选择随机数p(i,j,q),q=1,2……,tu-1;生成如下tu-1次多项式
f(i,j)(x)=v′(i,j)+p(i,j,1)x+p(i,j,2)x2+…+p(i,j,tu-1)xtu-1
S2.5:每个节点计算f(i,j)(N(α,β)),并通过安全信道发送给相应编号的节点;发送过程中当遇到自己发送给自己的情况,则直接将值保存;
S2.6:每个节点计算f(i,j)(N(α,β))G并广播;
S2.7:每个节点计算v′(i,j)G以及p(i,j,q)G并广播,q=1,2……,tu-1;
S2.8:每个节点验证其他节点的值是否满足下式,若存在不成立的式子,则说明有节点发送了错误的信息,整个流程终止,若所有式子均成立,则继续S2.9;
S2.9:每个节点按照下式计算并保存v(i,j)
S2.10:每个节点计算v(i,j)G并广播;
S2.11:每个节点验证其他节点的值是否满足下式,若存在不成立的式子,则说明有节点发送了错误的信息,整个流程终止,若所有式子均成立,则继续S2.12;
S2.12:每个节点选择随机数c(i,j,q),q=1,2……,tu-1,生成如下tu-1次多项式
S2.13:每个节点计算g(i,j)(N(α,β))并通过安全信道发送给相应编号的节点;发送过程中当遇到自己发送给自己的情况,则直接将值保存;
S2.14:每个节点计算g(i,j)(N(α,β)G并广播;
S2.15:每个节点计算以及c(i,j,q)G并广播,q=1,2……,tu-1;
S2.16:每个节点验证其他节点的值是否满足下式,若存在不成立的式子,则说明有节点发送了错误的信息,整个流程终止,若所有式子均成立,则继续S2.16;
S2.17:每个节点按照下式计算r-1(i,j)
S2.18:每个节点计算r-1(i,j)G并广播;
S2.19:每个节点验证其他节点的值是否满足下式,若存在不成立的式子,则说明有节点发送了错误的信息,整个流程终止,若所有式子均成立,则继续S2.20;
S2.20:每个节点选择随机数w′(i,j),并选择随机数e(i,j,q),q=1,2……,tu-1;生成如下tu-1次多项式
h(i,j)(x)=w′(i,j)+e(i,j,1)x+e(i,j,2)x2+…+e(i,j,tu-1)xtu-1
S2.21:每个节点计算h(i,j)(N(α,β)),并通过安全信道发送给相应编号的节点;发送过程中当遇到自己发送给自已的情况,则直接将值保存;
S2.22:每个节点计算h(i,j)(N(α,β))G并广播;
S2.23:每个节点计算w′(i,j)G以及e(i,j,q)G并广播;
S2.24:每个节点验证其他节点的值是否满足下式,若存在不成立的式子,则说明有节点发送了错误的信息,整个流程终止,若所有式子均成立,则继续S2.25;
S2.25:每个节点按照下式计算w(i,j)
S2.26:每个节点参与安全多方乘法计算,输入为r-1(i,j)和w′(i,j),得到输出为r′-1w′(i,j),并广播;
S2.27:每个节点按照下式计算r-1w
S2.28:每个节点按照下式计算r(i,j)
r(i,j)=w(i,j)(r-1w)-1
S2.29:每个节点计算r(i,j)G并广播;
S2.30:每个节点验证其他节点的值是否满足下式,若存在不成立的式子,则说明有节点发送了错误的信息,整个流程终止,若所有式子均成立,则继续S2.31;
S2.31:每个节点通过下式计算rG,并将rG的横坐标记为Rx
其中
S2.32:每个节点通过下式计算sig(i,j)
sig(i,j)=r-1(i,j)tx+v(i,j)Rx
其中,tx表示需要签名的信息;
S2.33:每个节点验证其他节点的值是否满足下式,若存在不成立的式子,则说明有节点发送了错误的信息,整个流程终止,若所有式子均成立,则继续S2.34;
sig(α,β)G=txr-1(α,β)G+Rxv(α,β)G
S2.34:每个节点通过下式计算获得主签名的一部分
其中
S2.35:通过S2.31计算得到的rG和S2.34计算得到的sig获得正式签名(rG,sig)。
该专利技术资料仅供研究查看技术是否侵权等信息,商用须获得专利权人授权。该专利全部权利属于杭州泛链科技有限公司,未经杭州泛链科技有限公司许可,擅自商用是侵权行为。如果您想购买此专利、获得商业授权和技术合作,请联系【客服】
本文链接:http://www.vipzhuanli.com/pat/books/202010164377.6/1.html,转载请声明来源钻瓜专利网。
- 上一篇:一种具有蓄热发热功能的高空绝缘子串电力检修装置
- 下一篇:悬挂式洗手器