CN111400773A - 数字签名方法、数字签名装置、系统和存储介质 - Google Patents
数字签名方法、数字签名装置、系统和存储介质 Download PDFInfo
- Publication number
- CN111400773A CN111400773A CN202010174531.8A CN202010174531A CN111400773A CN 111400773 A CN111400773 A CN 111400773A CN 202010174531 A CN202010174531 A CN 202010174531A CN 111400773 A CN111400773 A CN 111400773A
- Authority
- CN
- China
- Prior art keywords
- digital signature
- information
- signed
- signature
- group
- Prior art date
- Legal status (The legal status is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the status listed.)
- Granted
Links
- 238000000034 method Methods 0.000 title claims abstract description 43
- 230000006870 function Effects 0.000 claims description 25
- 238000004590 computer program Methods 0.000 claims description 13
- 238000012795 verification Methods 0.000 claims description 13
- 238000004422 calculation algorithm Methods 0.000 description 7
- 238000004891 communication Methods 0.000 description 6
- 230000008569 process Effects 0.000 description 6
- 238000004364 calculation method Methods 0.000 description 4
- 230000001133 acceleration Effects 0.000 description 2
- 238000010586 diagram Methods 0.000 description 2
- 230000005484 gravity Effects 0.000 description 2
- 230000006872 improvement Effects 0.000 description 2
- 230000001419 dependent effect Effects 0.000 description 1
- 238000012986 modification Methods 0.000 description 1
- 230000004048 modification Effects 0.000 description 1
- 230000003287 optical effect Effects 0.000 description 1
- 238000012545 processing Methods 0.000 description 1
- 238000010079 rubber tapping Methods 0.000 description 1
Images
Classifications
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F21/00—Security arrangements for protecting computers, components thereof, programs or data against unauthorised activity
- G06F21/60—Protecting data
- G06F21/64—Protecting data integrity, e.g. using checksums, certificates or signatures
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F21/00—Security arrangements for protecting computers, components thereof, programs or data against unauthorised activity
- G06F21/60—Protecting data
- G06F21/602—Providing cryptographic facilities or services
Landscapes
- Engineering & Computer Science (AREA)
- Theoretical Computer Science (AREA)
- Computer Security & Cryptography (AREA)
- Software Systems (AREA)
- Computer Hardware Design (AREA)
- General Health & Medical Sciences (AREA)
- Health & Medical Sciences (AREA)
- Physics & Mathematics (AREA)
- General Engineering & Computer Science (AREA)
- General Physics & Mathematics (AREA)
- Bioethics (AREA)
- Information Retrieval, Db Structures And Fs Structures Therefor (AREA)
- Storage Device Security (AREA)
Abstract
本发明公开了一种数字签名方法、装置、系统和存储介质。所述数字签名方法包括:获取一个大于1的整数e,并从预设的哈希函数库中选取一个输出字节为k字的哈希函数H;获得一个指数n≥85的无限非交换群Bn;构造j个所述辫群Bn的米海洛瓦子群Aj;分别从每一所述Mihailova子群Aj中选取1个元素bj,并从辫群Bn中选取任意元素r;根据bj和元素r获得对应的私钥;获得待签名信息m,并从Bn中选取任意元素s,并计算H(m)=h1h2…hk,t=sr‑1,和uj=sbj hjs‑1;利用所述私钥对待签名信息m进行签名,获得待签名信息m的签名为(u1,u2,…,uk,t)。本发明提高数字签名的安全性。
Description
技术领域
本发明涉及信息安全领域,尤其涉及一种数字签名方法、数字签名装置、系统和存储介质。
背景技术
在经典公钥密码算法中,作为安全保障的实际计算困难问题,随着计算机性能的提高其难解性将大大降低。特别地,Shor于1997年提出的著名的Shor量子算法将分别在多项式时间内进行大整数的因数分解和离散对数的计算,这意示着一旦量子计算机予以实现,则基于RSA、ECC、E1Gamal算法等建立的数字签名协议将不再安全。为了能抵抗量子计算攻击,人们一直在寻求建立新的安全可靠的公钥密码技术。
发明内容
本发明的主要目的在于提供一种数字签名方法、数字签名装置、系统和存储介质,旨在解决经典公钥算法面临量子计算机出现的安全问题,提高数字签名的安全。
为实现上述目的,本发明提供一种数字签名方法,包括以下步骤:
获取一个大于1的整数e,并从预设的哈希函数库中选取一个输出字节为k字的哈希函数H;
获得一个指数n≥85的无限非交换群Bn,其中,指数n≥6k;
构造6×i+1个所述辫群Bn的米海洛瓦子群A6×i+1,所述米海洛瓦子群的子群成员问题是不可解的,其中,1≤i≤k;
分别从每一所述米海洛瓦子群Aj中选取1个元素bj,并从辫群Bn中选取任意元素r;
根据bj和元素r获得对应的私钥;
获得待签名信息m,并从Bn中选取任意元素s,并计算H(m)=h1h2…hk,t=sr-1,和uj=sbj hjs-1;
对待签名信息m进行签名,获得待签名信息m的签名为(u1,u2,…,uk,t)。
可选地,所述构造6×i+1个所述辫群Bn的米海洛瓦子群Aj的步骤包括:
获得一个与F2×F2同构的子群Di=<σi 2,σi+1 2,σi+3 2,σi+4 2>,i=1,2,…,n-5;
利用F2×F2的两个元素生成有限呈示群,所述有限呈示群的字问题是不可解的;
再利用所述有限呈示群构造所述子群Di的一个米海洛瓦子群。
可选地,根据bj和元素r获得对应的私钥的步骤包括:
根据bj和元素r获得对应的私钥(b1,b2,…,bk,r)。
可选地,所述根据bj、r、e和H获得对应的公钥的步骤包括:
根据bj、r、e和H获得对应的公钥为(a1,a2,…,ak,H),其中aj=rbj er-1,j=1,2,…,k。
可选地,所述辫群Bn为如下呈示所定义的群:
Bn=<σ1,σ2,…,σn-1|σiσj=σjσi,|i-j|≥2,σiσi+1σi=σi+1σiσi+1,1≤i≤n-2>;
所述辫群Bn的元素均以集合{σ1,σ2,…,σn-1}上代表该元素的具有唯一性的正规形式的字表示。
为实现上述目的,本发明提供一种数字签名方法,所述数字签名方法包括以下步骤:
签名方获取一个大于1的整数e,并从预设的哈希函数库中选取一个输出字节为k字的哈希函数H;
签名方获得一个指数n≥85的无限非交换群Bn,其中,指数n≥6k;
签名方构造6×i+1个所述辫群Bn的米海洛瓦子群A6×i+1,所述米海洛瓦子群的子群成员问题是不可解的,其中,1≤i≤k;
签名方分别从每一所述米海洛瓦子群Aj中选取1个元素bj,并从辫群Bn中选取任意元素r;
签名方根据bj和元素r获得对应的私钥,并根据bj、r、e和H获得对应的公钥;
签名方获得待签名信息m,并从Bn中选取任意元素s,并计算H(m)=h1h2…hk,t=sr-1,和uj=sbj hjs-1;
签名方对待签名信息m进行签名,获得待签名信息m的签名为(u1,u2,…,uk,t);
验证方根据所述签名方发送的待签名信息m和公钥对所述签名进行验证,并在验证通过时接受所述签名。
可选地,所述验证方根据所述签名方发送的待签名信息m和公钥对所述签名进行验证,并在验证通过时接受所述签名的步骤包括:
根据所述待签名信息m计算第二哈希值H(m)=h1h2…hk,和vj=aj hj(j=1,2,…,k),并验证是否有uj e=tvjt-1(j=1,2,…,k);
若是,则验证方接受所述签名。
为实现上述目的,本发明提供一种数字签名装置,所述数字签名装置包括:存储器、处理器及存储在所述存储器上并可在所述处理器上运行的计算机程序,所述计算机程序被所述处理器执行时实现如上所述的方法的步骤。
为实现上述目的,本发明提供一种数字签名系统,所述数字签名系统包括:签名方、验证方及存储在所述签名方和验证方上并可在所述签名方和验证方上运行的计算机程序,所述计算机程序被所述处理器执行时实现如上所述的方法的步骤。
为实现上述目的,本发明提供一种计算机可读存储介质,所述计算机可读存储介质上存储有数字签名程序,所述数字签名程序被处理器执行时实现如上所述的数字签名方法的步骤。
本发明通过从哈希函数库中,选取一个输出字节为k字的哈希函数,获取一个大于1的整数e,然后在无限非交换群Bn中构造多个子群成员问题是不可解的米海洛瓦子群,从米海洛瓦子群中选取元素bj,并从辫群Bn中选取任意元素r,最后根据选取的元素生成对应的公钥和私钥。从而使用私钥对待签名信息进行签名得到对应的签名。通过上述方式本发明中私钥生成的方式中关键元素bj来自无限非交换群Bn以及子群成员问题是不可解的米海洛瓦子群,从而使得无法被破解,能够抵抗量子计算的攻击。
附图说明
图1是本发明实施例方案涉及的硬件运行环境的装置结构示意图;
图2为本发明数字签名方法第一实施例的流程示意图;
图3为本发明数字签名方法第二实施例的流程示意图。
本发明目的的实现、功能特点及优点将结合实施例,参照附图做进一步说明。
具体实施方式
应当理解,此处所描述的具体实施例仅仅用以解释本发明,并不用于限定本发明。
本发明实施例的主要解决方案是:获取一个大于1的整数e,并从预设的哈希函数库中选取一个输出字节为k字的哈希函数H;获得一个指数n≥85的无限非交换群Bn,其中,指数n≥6k;构造6×i+1个所述辫群Bn的米海洛瓦子群A6×i+1,所述米海洛瓦子群的子群成员问题是不可解的,其中,1≤i≤k;分别从每一所述米海洛瓦子群Aj中选取1个元素bj,并从辫群Bn中选取任意元素r;根据bj和元素r获得对应的私钥;获得待签名信息m,并从Bn中选取任意元素s,并计算H(m)=h1h2…hk,t=sr-1,和uj=sbj hjs-1;利用所述私钥对待签名信息m进行签名,获得待签名信息m的签名为(u1,u2,…,uk,t)。
由于现有技术中数字签名算法的安全保障为对应的判定问题的计算困难性,随着计算机性能的提高其难解性将大大降低,一旦量子计算机予以实现,则基于RSA、ECC、E1Gamal算法等建立的数字签名协议将不再安全。
本发明提供一种解决方案,数字签名方法的安全保障是依赖于对应的判定问题的不可解性,可抗包括量子计算攻击的所有已知攻击。
如图1所示,图1是本发明实施例方案涉及的硬件运行环境的装置结构示意图。
本发明实施例签名方和验证方终端可以是PC,也可以是智能手机、平板电脑、便携计算机等具有数据处理功能的终端设备。
如图1所示,该终端可以包括:处理器1001,例如CPU,网络接口1004,用户接口1003,存储器1005,通信总线1002。其中,通信总线1002用于实现这些组件之间的连接通信。用户接口1003可以包括显示屏(Display)、输入单元比如键盘(Keyboard),可选用户接口1003还可以包括标准的有线接口、无线接口。网络接口1004可选的可以包括标准的有线接口、无线接口(如WI-FI接口)。存储器1005可以是高速RAM存储器,也可以是稳定的存储器(non-volatile memory),例如磁盘存储器。存储器1005可选的还可以是独立于前述处理器1001的存储装置。
可选地,终端还可以包括摄像头、RF(Radio Frequency,射频)电路,传感器、音频电路、Wi-Fi模块等等。其中,传感器比如光传感器、运动传感器以及其他传感器。具体地,光传感器可包括环境光传感器及接近传感器,其中,环境光传感器可根据环境光线的明暗来调节显示屏的亮度,接近传感器可在移动终端移动到耳边时,关闭显示屏和/或背光。作为运动传感器的一种,重力加速度传感器可检测各个方向上(一般为三轴)加速度的大小,静止时可检测出重力的大小及方向,可用于识别移动终端姿态的应用(比如横竖屏切换、相关游戏、磁力计姿态校准)、振动识别相关功能(比如计步器、敲击)等;当然,移动终端还可配置陀螺仪、气压计、湿度计、温度计、红外线传感器等其他传感器,在此不再赘述。
本领域技术人员可以理解,图1中示出的终端结构并不构成对终端的限定,可以包括比图示更多或更少的部件,或者组合某些部件,或者不同的部件布置。
如图1所示,作为一种计算机存储介质的存储器1005中可以包括操作系统、网络通信模块、用户接口模块以及数字签名程序。
在图1所示的终端中,网络接口1004主要用于连接后台服务器,与后台服务器进行数据通信;用户接口1003主要用于连接客户端(用户端),与客户端进行数据通信;而处理器1001可以用于调用存储器1005中存储的数字签名程序,并执行以下操作:
获取一个大于1的整数e,并从预设的哈希函数库中选取一个输出字节为k字的哈希函数H;
获得一个指数n≥85的无限非交换群Bn,其中,指数n≥6k;
构造6×i+1个所述辫群Bn的米海洛瓦Mihailova子群A6×i+1,所述Mihailova的子群成员问题是不可解的,其中,1≤i≤k;
分别从每一所述Mihailova子群Aj中选取1个元素bj,并从辫群Bn中选取任意元素r;
根据bj和元素r获得对应的私钥;
获得待签名信息m,并从Bn中选取任意元素s,并计算H(m)=h1h2…hk,t=sr-1,和uj=sbj hjs-1;
利用所述私钥对待签名信息m进行签名,获得待签名信息m的签名为(u1,u2,…,uk,t)。
处理器1001可以用于调用存储器1005中存储的数字签名程序,还执行以下操作:
获得一个与F2×F2同构的子群Di=<σi 2,σi+1 2,σi+3 2,σi+4 2>,i=1,2,…,n-5;
利用F2×F2的两个元素生成有限呈示群,所述有限呈示群的字问题是不可解的;
再利用所述有限呈示群构造所述子群Di的一个米海洛瓦子群。
处理器1001可以用于调用存储器1005中存储的数字签名程序,还执行以下操作:
根据bj和元素r获得对应的私钥为(b1,b2,…,bk,r)。
处理器1001可以用于调用存储器1005中存储的数字签名程序,还执行以下操作:
根据bj、r、e和H获得对应的公钥为(a1,a2,…,ak,H),其中aj=rbj er-1,j=1,2,…,k。
处理器1001可以用于调用存储器1005中存储的数字签名程序,还执行以下操作:
Bn=<σ1,σ2,…,σn-1|σiσj=σjσi,|i-j|≥2,σiσi+1σi=σi+1σiσi+1,1≤i≤n-2>;
所述辫群Bn的元素均以集合{σ1,σ2,…,σn-1}上代表该元素的具有唯一性的正规形式的字表示。
参照图2,本发明第一实施例提供一种数字签名方法,包括以下步骤:
步骤S10,获取一个大于1的整数e,并从预设的哈希函数库中选取一个输出字节为k字的哈希函数H;
步骤S20,获得一个指数n≥85的无限非交换群Bn,其中,指数n≥6k;
步骤S30,构造6×i+1个所述辫群Bn的米海洛瓦Mihailova子群A6×i+1,所述Mihailova的子群成员问题是不可解的,其中,1≤i≤k;
步骤S40,分别从每一所述Mihailova子群Aj中选取1个元素bj,并从辫群Bn中选取任意元素r;
在本实施例中,签名方可以建立一个无限非交换群,当然无限非交换群也可以在其他设备上建立,然后发送给签名方。所述无限非交换群为指数n≥85的辫群Bn,作为数字签名协议的平台,从而满足以下条件:
1)生成元集合上的代表该群的元素的字具有可计算的正规形式;
2)至少是呈指数增长;
3)基于正规形式的群的乘积运算和求逆运算是能行可计算的。
所述指数为n≧6的辫群Bn,并由如下呈示所定义的群:
Bn=<σ1,σ2,…,σn-1|σiσj=σjσi,|i-j|≥2,σiσi+1σi=σi+1σiσi+1,1≤i≤n-2>,
所述群的元素均以集合{σ1,σ2,…,σn-1}上代表该元素的具有唯一性的正规形式的字表示。
当n≧6时,辫群Bn含有一个与F2 F2同构的子群,即两个秩为2的自由群的直积同构的子群:
Gi=<σi 2,σi+1 2,σi+3 2,σi+4 2>,i=1,2,…,n-5
再由两个元素生成的其字问题不可解的有限呈示群H,构造Gi的一个Mihailova子群MGi(H),i=1,2,…,n 5。协议中
Aj=MG6(j-1)+1(H),j=1,2,…,k
下方即为MGi(H)的56个生成元,
σi 2σi+3 2,σi+1 2σi+4 2,Sil,Til,j=1,2,…,27
而27个Sil为(将Sil中的所有σi 2换为σi+3 2,所有σi+1 2换为σi+4 2,即得所有的Til):
本发明签名方选取的辫群Bn的Mihailova子群即为如上建立的Ai。由辫群Bn定义这些Mihailova子群的选取可知,不同的Al和Ak,由于|l-k|≥6,所以它们彼此间的元素的乘法是可交换的,即有:bibh=bhbi(i≠h,i,h=1,2,…,k)。
步骤S50,根据bj和元素r获得对应的私钥;
签名方计算aj=rbj er-1,j=1,2,…,k。签名方的公钥为(a1,a2,…,ak,H),私钥为(b1,b2,…,bk,r);
步骤S60,获得待签名信息m,并从Bn中选取任意元素s,并计算H(m)=h1h2…hk,t=sr-1,和uj=sbj hjs-1;
步骤S70,利用所述私钥对待签名信息m进行签名,获得待签名信息m的签名为(u1,u2,…,uk,t)。
签名方在需要对待签名信息m进行签名时,先从Bn中选取任意元素s,然后计算待签名信息m的哈希值H(m)=h1h2…hk,t=sr-1,和uj=sbj hjs-1,从而得到待签名信息m的签名(u1,u2,…,uk,t)。
在签名完成后,签名验证方(简称验证方)对签名进行验证,如果验证通过则接受签名,否则拒绝签名,具体地,验证方在验证的过程包括:计算待签名信息m的哈希值H(m)=h1h2…hk,和vj=aj hj(j=1,2,…,k),并验证是否有uj e=tvjt-1(j=1,2,…,k),如果等式成立,接受签名,否则拒绝签名。验证的有效性证明:
tvjt-1=sr-1aj hj rs-1
=sr-1(r(bj)er-1)hjrs-1
=sr-1(rbjr-1)ehjrs-1
=sbj ehjs-1=(sbj hjs-1)e=uj e,j=1,2,…,k。
本发明通过从哈希函数库中,选取一个输出字节为k字的哈希函数,获取一个大于1的整数e,然后在无限非交换群Bn中构造多个子群成员问题是不可解的米海洛瓦子群,从米海洛瓦子群中选取元素bj,并从辫群Bn中选取任意元素r,最后根据选取的元素生成对应的公钥和私钥。从而使用私钥对待签名信息进行签名得到对应的签名。通过上述方式本发明中私钥生成的方式中关键元素bj来自无限非交换群Bn以及子群成员问题是不可解的米海洛瓦子群,从而使得无法被破解,能够抵抗量子计算的攻击。
参照图3,本发明第二实施例提供一种数字签名方法,包括以下步骤:
步骤S100,签名方获取一个大于1的整数e,并从预设的哈希函数库中选取一个输出字节为k字的哈希函数H;
步骤S200,签名方获得一个指数n≥85的无限非交换群Bn,其中,指数n≥6k;
步骤S300,签名方构造6×i+1个所述辫群Bn的米海洛瓦Mihailova子群A6×i+1,所述Mihailova子群的子群成员问题是不可解的,其中,1≤i≤k;
步骤S400,签名方分别从每一所述米海洛瓦子群Aj中选取1个元素bj,并从辫群Bn中选取任意元素r;
在本实施例中,签名方可以建立一个无限非交换群,当然无限非交换群也可以在其他设备上建立,然后发送给签名方。所述无限非交换群为指数n≥85的辫群Bn,作为数字签名协议的平台,从而满足以下条件:
1)生成元集合上的代表该群的元素的字具有可计算的正规形式;
2)至少是呈指数增长;
3)基于正规形式的群的乘积运算和求逆运算是能行可计算的。
所述指数为n≧6的辫群Bn,并由如下呈示所定义的群:
Bn=<σ1,σ2,…,σn-1|σiσj=σjσi,|i-j|≥2,σiσi+1σi=σi+1σiσi+1,1≤i≤n-2>,
所述群的元素均以集合{σ1,σ2,…,σn-1}上代表该元素的具有唯一性的正规形式的字表示。
当n≧6时,辫群Bn含有一个与F2×F2同构的子群,即两个秩为2的自由群的直积同构的子群:
Gi=<σi 2,σi+1 2,σi+3 2,σi+4 2>,i=1,2,…,n-5
再由两个元素生成的其字问题不可解的有限呈示群H(参见文献[1]),构造Gi的一个Mihailova子群MGi(H),i=1,2,…,n-5。协议中
Aj=MG6(j-1)+1(H),j=1,2,…,k
下方即为MGi(H)的56个生成元,
σi 2σi+3 2,σi+1 2σi+4 2,Sil,Til,j=1,2,…,27
而27个Sil为(将Sil中的所有σi 2换为σi+3 2,所有σi+1 2换为σi+4 2,即得所有的Til):
本发明签名方选取的辫群Bn的Mihailova子群即为如上建立的Ai。由辫群Bn定义这些Mihailova子群的选取可知,不同的Al和Ak,由于|l-k|≥6,所以它们彼此间的元素的乘法是可交换的,即有:bibh=bhbi(i≠h,i,h=1,2,…,k)。
步骤S500,签名方根据bj和元素r获得对应的私钥,并根据bj、r、e和H获得对应的公钥;
签名方计算aj=rbj er-1,j=1,2,…,k。签名方的公钥为(a1,a2,…,ak,H),私钥为(b1,b2,…,bk,r);
步骤S600,签名方获得待签名信息m,并从Bn中选取任意元素s,并计算H(m)=h1h2…hk,t=sr-1,和uj=sbj hjs-1;
步骤S700,签名方对待签名信息m进行签名,获得待签名信息m的签名为(u1,u2,…,uk,t);
步骤S800,验证方根据所述签名方发送的待签名信息m和公钥对所述签名进行验证,并在验证通过时接受所述签名。
签名方在需要对待签名信息m进行签名时,先从Bn中选取任意元素s,然后计算待签名信息m的哈希值H(m)=h1h2…hk,t=sr-1,和uj=sbj hjs-1,从而得到待签名信息m的签名(u1,u2,…,uk,t)。
在签名完成后,签名验证方(简称验证方)对签名进行验证,如果验证通过则接受签名,否则拒绝签名,具体地,验证方在验证的过程包括:计算待签名信息m的哈希值H(m)=h1h2…hk,和vj=aj hj(j=1,2,…,k),并验证是否有uj e=tvjt-1(j=1,2,…,k),如果等式成立,接受签名,否则拒绝签名。验证的有效性证明:
tvjt-1=sr-1aj hj rs-1
=sr-1(r(bj)er-1)hjrs-1
=sr-1(rbjr-1)ehjrs-1
=sbj ehjs-1=(sbj hjs-1)e=uj e,j=1,2,…,k。
本发明通过从哈希函数库中,选取一个输出字节为k字的哈希函数,获取一个大于1的整数e,然后在无限非交换群Bn中构造多个子群成员问题是不可解的米海洛瓦子群,从米海洛瓦子群中选取元素bj,并从辫群Bn中选取任意元素r,最后根据选取的元素生成对应的公钥和私钥。从而使用私钥对待签名信息进行签名得到对应的签名。通过上述方式本发明中私钥生成的方式中关键元素bj来自无限非交换群Bn以及子群成员问题是不可解的米海洛瓦子群,从而使得无法被破解,能够抵抗量子计算的攻击。
本发明还提供了一种数字签名装置,数字签名装置包括:存储器、处理器及存储在所述存储器上并可在所述处理器上运行的计算机程序,所述计算机程序被所述处理器执行时实现如上任一实施例所述的方法的步骤。
本发明数字签名装置的具体实施例与上述数字签名方法各实施例基本相同,在此不作赘述。
本发明还提供了一种数字签名系统,所述数字签名系统包括:签名方、验证方及存储在所述签名方和验证方上并可在所述签名方和验证方上运行的计算机程序,所述计算机程序被所述处理器执行时实现如权利要求1至7中任一项所述的方法的步骤。
本发明数字签名系统的具体实施例与上述数字签名方法各实施例基本相同,在此不作赘述。
本发明还提供了一种计算机可读存储介质,所述计算机可读存储介质上存储有计算机程序,所述计算机程序被充电芯片执行时实现如上述的数字签名方法的步骤。
本发明可读存储介质的具体实施例与上述数字签名方法各实施例基本相同,在此不作赘述。
需要说明的是,在本文中,术语“包括”、“包含”或者其任何其他变体意在涵盖非排他性的包含,从而使得包括一系列要素的过程、方法、物品或者系统不仅包括那些要素,而且还包括没有明确列出的其他要素,或者是还包括为这种过程、方法、物品或者系统所固有的要素。在没有更多限制的情况下,由语句“包括一个……”限定的要素,并不排除在包括该要素的过程、方法、物品或者系统中还存在另外的相同要素。
上述本发明实施例序号仅仅为了描述,不代表实施例的优劣。
通过以上的实施方式的描述,本领域的技术人员可以清楚地了解到上述实施例方法可借助软件加必需的通用硬件平台的方式来实现,当然也可以通过硬件,但很多情况下前者是更佳的实施方式。基于这样的理解,本发明的技术方案本质上或者说对现有技术做出贡献的部分可以以软件产品的形式体现出来,该计算机软件产品存储在如上所述的一个可读存储介质(如ROM/RAM、磁碟、光盘)中,包括若干指令用以使得一台终端执行本发明各个实施例所述的方法。
以上仅为本发明的优选实施例,并非因此限制本发明的专利范围,凡是利用本发明说明书及附图内容所作的等效结构或等效流程变换,或直接或间接运用在其他相关的技术领域,均同理包括在本发明的专利保护范围内。
Claims (10)
1.一种数字签名方法,其特征在于,所述数字签名方法包括以下步骤:
获取一个大于1的整数e,并从预设的哈希函数库中选取一个输出字节为k字的哈希函数H;
获得一个指数n≥85的无限非交换群Bn,其中,指数n≥6k;
构造6×i+1个所述辫群Bn的米海洛瓦Mihailova子群A6×i+1,所述Mihailova的子群成员问题是不可解的,其中,1≤i≤k;
分别从每一所述Mihailova子群Aj中选取1个元素bj,并从辫群Bn中选取任意元素r;
根据bj和元素r获得对应的私钥;
获得待签名信息m,并从Bn中选取任意元素s,并计算H(m)=h1h2…hk,t=sr-1,和uj=sbj hjs-1;
利用所述私钥对待签名信息m进行签名,获得待签名信息m的签名为(u1,u2,…,uk,t)。
2.如权利要求1所述的数字签名方法,其特征在于,所述构造6×i+1个所述辫群Bn的米海洛瓦子群Aj的步骤包括:
获得一个与F2×F2同构的子群Di=<σi 2,σi+1 2,σi+3 2,σi+4 2>,i=1,2,…,n-5;
利用F2×F2的两个元素生成有限呈示群,所述有限呈示群的字问题是不可解的;
再利用所述有限呈示群构造所述子群Di的一个米海洛瓦子群。
3.如权利要求1所述的数字签名方法,其特征在于,根据bj和元素r获得对应的私钥的步骤包括:
根据bj和元素r获得对应的私钥为(b1,b2,…,bk,r)。
4.如权利要求1所述的数字签名方法,其特征在于,所述根据bj、r、e和H获得对应的公钥的步骤包括:
根据bj、r、e和H获得对应的公钥为(a1,a2,…,ak,H),其中aj=rbj er-1,j=1,2,…,k。
5.如权利要求1所述的数字签名方法,其特征在于,所述辫群Bn为如下呈示所定义的群:
Bn=<σ1,σ2,…,σn-1|σiσj=σjσi,|i-j|≥2,σiσi+1σi=σi+1σiσi+1,1≤i≤n-2>;
所述辫群Bn的元素均以集合{σ1,σ2,…,σn-1}上代表该元素的具有唯一性的正规形式的字表示。
6.一种数字签名方法,其特征在于,所述数字签名方法包括以下步骤:
签名方获取一个大于1的整数e,并从预设的哈希函数库中选取一个输出字节为k字的哈希函数H;
签名方获得一个指数n≥85的无限非交换群Bn,其中,指数n≥6k;
签名方构造6×i+1个所述辫群Bn的米海洛瓦Mihailova子群A6×i+1,所述Mihailova子群的子群成员问题是不可解的,其中,1≤i≤k;
签名方分别从每一所述米海洛瓦子群Aj中选取1个元素bj,并从辫群Bn中选取任意元素r;
签名方根据bj和元素r获得对应的私钥,并根据bj、r、e和H获得对应的公钥;
签名方获得待签名信息m,并从Bn中选取任意元素s,并计算H(m)=h1h2…hk,t=sr-1,和uj=sbj hjs-1;
签名方对待签名信息m进行签名,获得待签名信息m的签名为(u1,u2,…,uk,t);
验证方根据所述签名方发送的待签名信息m和公钥对所述签名进行验证,并在验证通过时接受所述签名。
7.如权利要求6所述的数字签名方法,其特征在于,所述验证方根据所述签名方发送的待签名信息m和公钥对所述签名进行验证,并在验证通过时接受所述签名的步骤包括:
根据所述待签名信息m计算第二哈希值H(m)=h1h2…hk,和vj=aj hj(j=1,2,…,k),并验证是否有uj e=tvjt-1(j=1,2,…,k);
若是,则验证方接受签名。
8.一种数字签名装置,其特征在于,所述数字签名装置包括:存储器、处理器及存储在所述存储器上并可在所述处理器上运行的计算机程序,所述计算机程序被所述处理器执行时实现如权利要求1至5中任一项所述的方法的步骤。
9.一种数字签名系统,其特征在于,所述数字签名系统包括:签名方、验证方及存储在所述签名方和验证方上并可在所述签名方和验证方上运行的计算机程序,所述计算机程序被所述处理器执行时实现如权利要求1至7中任一项所述的方法的步骤。
10.一种计算机可读存储介质,其特征在于,所述计算机可读存储介质上存储有数字签名程序,所述数字签名程序被处理器执行时实现如权利要求1至7中任一项所述的数字签名方法的步骤。
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN202010174531.8A CN111400773B (zh) | 2020-03-12 | 2020-03-12 | 数字签名方法、数字签名装置、系统和存储介质 |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN202010174531.8A CN111400773B (zh) | 2020-03-12 | 2020-03-12 | 数字签名方法、数字签名装置、系统和存储介质 |
Publications (2)
Publication Number | Publication Date |
---|---|
CN111400773A true CN111400773A (zh) | 2020-07-10 |
CN111400773B CN111400773B (zh) | 2022-09-09 |
Family
ID=71436236
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
CN202010174531.8A Expired - Fee Related CN111400773B (zh) | 2020-03-12 | 2020-03-12 | 数字签名方法、数字签名装置、系统和存储介质 |
Country Status (1)
Country | Link |
---|---|
CN (1) | CN111400773B (zh) |
Citations (5)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN101399668A (zh) * | 2007-09-29 | 2009-04-01 | 索尼(中国)有限公司 | 基于辫群的传递数字签名的方法和系统 |
CN103414569A (zh) * | 2013-08-21 | 2013-11-27 | 王威鉴 | 一种建立抗攻击的公钥密码的方法 |
CN106664199A (zh) * | 2015-10-12 | 2017-05-10 | 王晓峰 | 建立抗攻击的安全性公钥密码的方法 |
CN107911209A (zh) * | 2017-12-28 | 2018-04-13 | 深圳大学 | 建立抗量子计算攻击的安全性公钥密码的方法 |
CN109831312A (zh) * | 2019-03-28 | 2019-05-31 | 深圳大学 | 可连接环签名方法、装置、设备以及存储介质 |
-
2020
- 2020-03-12 CN CN202010174531.8A patent/CN111400773B/zh not_active Expired - Fee Related
Patent Citations (5)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN101399668A (zh) * | 2007-09-29 | 2009-04-01 | 索尼(中国)有限公司 | 基于辫群的传递数字签名的方法和系统 |
CN103414569A (zh) * | 2013-08-21 | 2013-11-27 | 王威鉴 | 一种建立抗攻击的公钥密码的方法 |
CN106664199A (zh) * | 2015-10-12 | 2017-05-10 | 王晓峰 | 建立抗攻击的安全性公钥密码的方法 |
CN107911209A (zh) * | 2017-12-28 | 2018-04-13 | 深圳大学 | 建立抗量子计算攻击的安全性公钥密码的方法 |
CN109831312A (zh) * | 2019-03-28 | 2019-05-31 | 深圳大学 | 可连接环签名方法、装置、设备以及存储介质 |
Non-Patent Citations (1)
Title |
---|
隗云等: "基于辫群的签名方案研究", 《信息安全与通信保密》 * |
Also Published As
Publication number | Publication date |
---|---|
CN111400773B (zh) | 2022-09-09 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
CN109347620B (zh) | 样本对齐方法、系统及计算机可读存储介质 | |
CN110505067B (zh) | 区块链的处理方法、装置、设备及可读存储介质 | |
CN108269062B (zh) | 基于h5的电子合同制作方法、装置、设备及介质 | |
US8713323B2 (en) | Codeword-enhanced peer-to-peer authentication | |
JP4818663B2 (ja) | 同種写像ベースの署名の生成および検証のためのシステムおよび方法 | |
US20220131707A1 (en) | Digital Signature Method, Signature Information Verification Method, Related Apparatus and Electronic Device | |
CN109831312B (zh) | 可连接环签名方法、装置、设备以及存储介质 | |
CN109325357B (zh) | 基于rsa的信息值计算方法、设备及可读存储介质 | |
CN112865973A (zh) | 基于格的加密密钥和数字签名的生成方法 | |
CN111161075B (zh) | 区块链交易数据证明监管方法、系统及相关设备 | |
CN114362955A (zh) | 软件代码云端数字签名方法、系统、设备和存储介质 | |
CN117561508A (zh) | 可验证凭证的跨会话颁发 | |
CN111262707B (zh) | 数字签名方法及验证方法、设备、存储介质 | |
WO2021179258A1 (zh) | 数字签名方法、数字签名装置、系统和存储介质 | |
CN111400773B (zh) | 数字签名方法、数字签名装置、系统和存储介质 | |
CN110781503B (zh) | 数据调用方法、装置及计算机可读存储介质 | |
CN110830264B (zh) | 业务数据验证方法、服务器、客户端及可读存储介质 | |
CN116527241A (zh) | 基于椭圆曲线数字签名算法的签名方法、装置及存储介质 | |
CN111130791A (zh) | 数据签名方法、电子设备及计算机可读存储介质 | |
CN114640463B (zh) | 一种数字签名方法、计算机设备及介质 | |
CN114710293B (zh) | 数字签名方法、装置、电子设备及存储介质 | |
CN114070610B (zh) | Api网关鉴权方法、网关设备及可读存储介质 | |
CN113343259B (zh) | 基于sm2的联合签名实现方法、装置、电子设备及存储介质 | |
CN118381660B (zh) | 一种区域现金中心行为零信任体系构建方法与系统 | |
CN115955315B (zh) | 环机密交易的签名验证方法、系统、设备及可读存储介质 |
Legal Events
Date | Code | Title | Description |
---|---|---|---|
PB01 | Publication | ||
PB01 | Publication | ||
SE01 | Entry into force of request for substantive examination | ||
SE01 | Entry into force of request for substantive examination | ||
GR01 | Patent grant | ||
GR01 | Patent grant | ||
CF01 | Termination of patent right due to non-payment of annual fee |
Granted publication date: 20220909 |
|
CF01 | Termination of patent right due to non-payment of annual fee |