一种基于椭圆曲线的分布式门限签名方法与流程

文档序号:12131473阅读:797来源:国知局
一种基于椭圆曲线的分布式门限签名方法与流程

本发明涉及信息安全的技术领域,尤其涉及了一种基于椭圆曲线的分布式门限签名方法。



背景技术:

椭圆曲线签名体制是目前主流的签名方案之一,国际上通用的是ECDSA标准,而国内采用的是SM2标准,目前这两种签名方案在国内都有较大的应用市场。

数字签名是现代信息安全的重要的组成部分,应用数字签名技术可以识别篡改、伪装,还可以有效地防止否认。安全的数字签名在电子公文、电子合同等应用中确定双方身份,是保证信息真实可信的基础。当前常见的数字签名应用机制是通过智能密码钥匙(USBKey)存储密钥信息,在需要签名时,通过中间件配合调用智能密码钥匙完成运算。用户的密钥始终握在自己手中,是智能密码钥匙应用的安全基础。

随着移动互联网的普及,越来越多的签名业务逐步迁移到移动端,用户仅需要通过联网的移动智能设备(手机)就可以完成业务操作,给用户带来的极大的便利。但是传统的智能密码钥匙难以在移动端发挥作用,主要包括如下几方面原因:

●携带不便,用户需要在手机之外携带额外的硬件介质

●硬件接口无法对接,手机端无法提供对接传统Key的USB接口

●中间件开发困难,针对硬件调用的中间件开发难度较大

另外,普通数字签名采用的是签名方独立完成签名的方式,这样的不能够保证私钥被保护,安全隐患比较大。



技术实现要素:

本发明所要解决的技术问题是:目前的普通数字签名采用签名方独立完成签名的方式不能够保证私钥在签名过程的隐秘性。

为解决上述技术问题,本发明提供了一种基于椭圆曲线的分布式门限签名方法,该签名方法包括如下步骤:

S1,参与签名成员将各自的身份标识发送给可信中心,;

S2,可信中心生成公私钥对,并将公钥公布,同时可信中心根据S1中的身份标识生成与参与签名成员人数相等的私钥分量,并将生成的私钥分量分别发给参与签名的成员;

S3,其中一名签名成员发布待签名消息m,并将待签名消息m分享给其他的签名成员;

S4,参与签名成员根据待签名消息m生成签名分量ri,将签名分量ri分享给其他成员;

S5,参与签名成员接收所有成员分享的签名分量ri后,计算出签名r,并生成签名分量si,将签名分量si分享给其他的签名成员;

S6,参与签名成员接收所有成员的签名分量si后,合成签名s,最后得到完整的签名(r,s),输出完整的签名(r,s)。

进一步,所述S2中将公钥公布后,并构造随机的t-1次多项式f(x)=a0+a1x+…+at-1xt-1,其中a0=d,(a1...at-1)为随机数,t≤N,N∈(1,2,3,4,…)。

上述进一步的有益效果:构造的是(N,t)门限签名,通过灵活的设立N和t的值可以方便的实现双方甚至是多方的分布式签名,这样就可以支持单服务器单终端或者单服务器多终端的分布式签名

进一步,所述S2中私钥分量di,di=f(eld),将生成的N个私钥分量di一一对应发给参与签名的N个成员,并且参与签名成员对其他的成员进行保密。

进一步,所述S2中将分私钥分量di发给参与签名的N个成员后,可信中心自动将与d有关的信息全部销毁。

上述进一步的有益效果:各成员之间分布式的拥有私钥分量di,完整的私钥只会在可信中心出现,并且注册完成后立刻销毁,提高了隐秘性。

进一步,所述S4中包括:参与签名成员根据待签名消息m生成随机数ki,根据ki计算ri,将自身的ri分享给其他成员,其中ri=[ki]·G,根据ri计算并且生成签名r,r=(m+x)mod n,或者生成签名r,r=xmod n,mod表示求模运算,·表示点乘。

进一步,所述S5中还包括:参与签名成员接收到其他的成员分享的ri后,参与签名成员随机生成随机数bi,并且参与签名成员通过安全多方计算协议计算参与签名成员计算部分签名分量si,并将si分享给其他的签名成员,其中si=ki-r*dici,ei=t-1mod n;或者参与签名成员通过安全多方计算协议计算参与签名成员计算部分签名分量si,si=ei+r*dici,其中ei=t-1mod n,*表示模乘运算。

上述进一步的有益效果:参与签名成员只完成签名分量即可,最终合成签名的过程也不会出现完整的私钥,保证私钥的绝对安全。

进一步,所述S6中还包括:参与签名成员收到其他成员分享的si后,可以利用安全多方计算协议计算出真正的签名s,其中或者

进一步,所述S6中包括:将完整的签名(r,s)输出,(r,s)为标准的SM2签名报文或者(r,s)为标准的ECDSA签名报文。

上述进一步的有益效果:完美兼容国际标准ECDSA和国密标准SM2。

进一步,N个成员中任意t位成员参与签名运算即可完成签名,t≤N,N∈(1,2,3,4,…)。

有益效果:分布式签名要求至少t个成员同时进行签名,任何一方不能单独完成签名,安全性进一步提升。

本发明的有益效果:采用多方共同完成数字签名,提高了签名的难度,保证了私钥的安全,大大增加了密钥的保密性,同时它可以保证多方在不知道对方密钥分量的情况下,最后合成真正的密钥。

附图说明

图1为本发明的一种基于椭圆曲线的分布式门限签名方法示意图;

图2为本发明的一种基于椭圆曲线的分布式门限签名方法流程图。

具体实施方式

以下结合附图对本发明的原理和特征进行描述,所举实例只用于解释本发明,并非用于限定本发明的范围。

实施例一:

如图1和图2所示,一种基于椭圆曲线的分布式门限签名方法,该签名方法包括如下步骤:

下面所提及的可信中心是指运行在高度安全的环境下的一台服务器或一组服务器;签名成员的身份标识,下面所提到的用户身份标识均是指在一个安全域(或信息系统应用范围内),能够唯一标识用户身份的,比如手机号、邮箱、ip地址、微博账号、微信号、QQ号、银行账号、各种应用账号等。

S1,参与签名的N个成员将各自的身份标识eldi发送给可信中心i∈[1,N],N∈(1,2,3,4,…);

S2,可信中心根据S1中的身份标识eldi生成公私钥对(d,p),并将公钥p公布,并构造随机的t-1次多项式f(x)=a0+a1x+…+at-1xt-1,其中a0=d,(a1...at-1)为随机数,t≤N,N∈(1,2,3,4,…),同时可信中心生成N个私钥分量di

S3,可信中心将S2中生成的N个私钥分量di,di=f(eld),将生成的N个私钥分量di一一对应发给参与签名的N个成员,并且参与签名成员对其他的成员进行保密,同时可信中心自动将与d有关的信息全部销毁;

S4,其中一个签名成员开始发布待签名消息m,并将待签名消息m分享给其他的签名成员;

S5,根据代签名消息m生成随机数ki,根据ki计算ri,将自身的ri分享给其他成员,其中ri=[ki]·G,根据ri计算并且生成签名r,r=(m+x)mod n,mod表示求模运算,·表示点乘;

S6,参与签名成员接收到其他的成员分享的ri后,参与签名成员随机生成随机数bi,参与签名成员利用随机数bi通过安全多方计算协议计算且参与签名成员计算部分签名分量si,并将si分享给其他的签名成员,其中si=ki-r*dici,ei=t-1mod n,*表示模乘运算;

S7,参与签名成员收到其他成员分享的si后,可以利用安全多方计算协议计算出真正的签名s,其中或者

S8,将完整的签名(r,s)输出,(r,s)为标准的SM2签名报文,并签名(r,s)与S2中的公钥p进行验签。

N个成员中任意t位成员参与签名运算即可完成签名,t≤N,N∈(1,2,3,4,…)。

构造的是(N,t)门限签名,通过灵活的设立N和t的值可以方便的实现双方甚至是多方的分布式签名,这样就可以支持单服务器单终端或者单服务器多终端的分布式签名各成员之间分布式的拥有私钥分量di,完整的私钥只会在可信中心出现,并且注册完成后立刻销毁,提高了隐秘性。

实施例二

如图1和图2所示,一种基于椭圆曲线的分布式门限签名方法,该签名方法包括如下步骤:

S1,参与签名的N个成员将各自的身份标识eldi发送给可信中心i∈[1,N],N∈(1,2,3,4,…);

S2,可信中心根据S1中的身份标识eldi生成公私钥对(d,p),并将公钥p公布,并构造随机的t-1次多项式f(x)=a0+a1x+…+at-1xt-1,其中a0=d,(a1...at-1)为随机数,t≤N,N∈(1,2,3,4,…),同时可信中心生成N个私钥分量di

S3,可信中心将S2中生成的N个私钥分量di,di=f(eld),将生成的N个私钥分量di一一对应发给参与签名的N个成员,并且参与签名成员对其他的成员进行保密,同时可信中心自动将与d有关的信息全部销毁;

S4,其中一个成员开始发布待签名消息m,其并将待签名消息m分享给其他的签名成员;

S5,根据代签名消息m生成随机数ki,根据ki计算ri,将自身的ri分享给其他成员,其中ri=[ki]·G,根据ri计算并且生成签名r,其中r=xmod n,mod表示求模运算,·表示点乘;

S6,参与签名成员接收到其他的成员分享的ri后,参与签名成员随机生成随机数bi,参与签名成员利用随机数bi通过安全多方计算协议计算且参与签名成员计算部分签名分量si,并将si分享给其他的签名成员,其中si=ei+r*dici,ei=t-1mod n,*表示模乘运算;

S7,参与签名成员收到其他成员分享的si后,可以利用安全多方计算协议计算出真正的签名s,

S8,将完整的签名(r,s)输出,(r,s)为标准的ECDSA签名报文,并签名(r,s)与S2中的公钥p进行验签。

N个成员中任意t位成员参与签名运算即可完成签名,t≤N,N∈(1,2,3,4,…)。

在本说明书中,对上述术语的示意性表述不必须针对的是相同的实施例或示例。而且,描述的具体特征、结构、材料或者特点可以在任一个或多个实施例或示例中以合适的方式结合。此外,在不相互矛盾的情况下,本领域的技术人员可以将本说明书中描述的不同实施例或示例以及不同实施例或示例的特征进行结合和组合。

以上所述仅为本发明的较佳实施例,并不用以限制本发明,凡在本发明的精神和原则之内,所作的任何修改、等同替换、改进等,均应包含在本发明的保护范围之内。

当前第1页1 2 3 
网友询问留言 已有0条留言
  • 还没有人留言评论。精彩留言会获得点赞!
1