CN1960257A - 一种基于超对数难题和双同余定理的数字签名方法 - Google Patents

一种基于超对数难题和双同余定理的数字签名方法 Download PDF

Info

Publication number
CN1960257A
CN1960257A CNA2006101456479A CN200610145647A CN1960257A CN 1960257 A CN1960257 A CN 1960257A CN A2006101456479 A CNA2006101456479 A CN A2006101456479A CN 200610145647 A CN200610145647 A CN 200610145647A CN 1960257 A CN1960257 A CN 1960257A
Authority
CN
China
Prior art keywords
key
delta
mod
digital signature
calculate
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.)
Pending
Application number
CNA2006101456479A
Other languages
English (en)
Inventor
苏盛辉
Current Assignee (The listed assignees may be inaccurate. Google has not performed a legal analysis and makes no representation or warranty as to the accuracy of the list.)
Individual
Original Assignee
Individual
Priority date (The priority date 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 date listed.)
Filing date
Publication date
Application filed by Individual filed Critical Individual
Priority to CNA2006101456479A priority Critical patent/CN1960257A/zh
Publication of CN1960257A publication Critical patent/CN1960257A/zh
Pending legal-status Critical Current

Links

Landscapes

  • Storage Device Security (AREA)

Abstract

一种基于超对数难题和双同余定理的数字签名方法密码学、计算机科学;利用杠杆函数、超对数难题和双同余定理设计出一个公开密钥数字签名方法,包括密钥生成、数字签名和身份验证三个部分;其用户拥有两个密钥,即一个私钥和一个公钥,且从公钥不能推出私钥;私钥用于生成文件或消息的签名码,公钥用于验证文件或消息的签名码;该方法能有效抵御已有分析手段的攻击,可用于计算机和通信网络中任何文件、数据的签名与验证,以及电子政务、电子商务中的身份鉴定与内容确认。

Description

一种基于超对数难题和双同余定理的数字签名方法
                             (一)技术领域
公开密钥数字签名方法(简称公钥数字签名方法或签名方法)属于密码技术和计算机技术领域,是信息安全的核心技术之一。
                             (二)背景技术
密码技术的发展经历了古典密码技术、对称密码技术和公钥密码技术三个阶段。1976年,美国学者Diffie和Hellman提出公钥密码体制的思想,标志着公钥密码技术的来临。目前,普遍使用的数字签名技术有RSA方案、Rabin方案和ElGamal方案(参见《应用密码学》,美国Bruce Schneier著,吴世忠、祝世雄等译,机械工业出版社,2000年1月,第334-342页)。为了提高安全性,ElGamal方案常在椭圆曲线上实现,此时,它叫ECC方案。另外还有一个DSA签名方案,它是ElGamal签名方案的改进。
上述方法都是美国人发明的。它们的安全性基于大数难于计算的复杂性,即在有限的时间和资源内,对大数进行因式分解或离散对数求解几乎是不可能的。但是,随着计算机运算速度的提高,它们的安全强度有被削弱的可能。
                         (三)发明内容
本发明是对“新要素公开密钥密码***”(专利号:ZL01110163.6)的又一个引申,所以,两者的某些数学前提以及产生公开密钥与私有密钥的方案都是类似的。
数字签名技术用于计算机网络和通信网络中双方身份的确认、保证传输内容的不可抵赖性、以及电子商务、金融交易和文件签发中身份的鉴别。
本发明希望我们国家在公钥加密与数字签名领域能够拥有自己的核心技术,以确保国家的信息安全、经济安全和主权安全,同时提高我国防范金融欺诈的技术手段。
本节内容略去了对有关性质和结论的证明,如果需要补上,我们将立即呈交。
3.1两个基本概念
3.1.1互素序列的定义与性质
定义:如果A1、A2、…、An为n个互不相同、两两互素、且大于1的正整数,则称这样的正整数序列为互素序列,简记为{Ai}。
性质:对于任意的正整数m(1≤m≤n),从互素序列{Ai}中任选m个元素组成子集{Ax1、Ax2、…、Axm),则子集的连乘积G=(Ax1*Ax2*…*Axm)是唯一确定的,即G与子集{Ax1、Ax2、…、Axm)一一对应。
证明略。
注意:在本文中,{Ai}是序列{A1、A2、…、An)的简写,{Ci}是序列{C1、C2、…、Cn)的简写。{l(i)}是n个杠杆函数值{l(1)、l(2)、…、l(n))的简写。
符号“*”代表乘法。“A*B”有时简写成“A B”。“mod”代表求余。“gcd”代表最大公约数。 代表S不能整除Q。“←”代表赋值。“≡”代表两边对M求余相等,即模等。
令|x|代表x mod M的阶,‘﹁ ’代表比特的求反运算。
3.1.2杠杆函数
在本发明中,仍需要杠杆函数的概念。设l(.)是由整数到整数的单射函数,其定义域为{1,2,…,n},值域为{5,6,…,n+4)。
在ZL01110163.6加密方法中,当从公钥推导私钥或破译密文时,需考虑{l(i)}的全排列数n!,当n足够大时,穷举{l(i)}的全排列是不可行的;但从私钥和密文恢复明文时只需考虑{l(i)}的累加和,在n的多项式时问内有解。因此,若以密文为支点,则l(.)是“公开”一端计算量大,“私有”一端计算量小。我们称具有上述性质的l(.)为杠杆函数。
3.2数字签名的技术方案
本发明是一利基于杠杆函数和超递增序列的公钥数字签名方法,简称REESSEl+数字签名方法,根据该方法,可制造数字签名芯片,或开发数字签名软件等。因此,本发明是一种生产数字签名产品所必须遵循的基本原理与技术方案,而不是物理产品本身。
本数字签名方案,由密钥生成、数字签名和身份验证等三部分组成。
3.2.1数字签名与身份验证操作
假设用户U欲通过网络向用户V发送一个具有自己数字签名的文件或消息F,其操作过程如下:
密钥生成:首先,用户U应该去第3方权威机构(CA认证中心或数字证书中心)领取一对由密钥生成部件输出的私钥(Private Key)与公钥(Public Key),私钥必须由用户U自己保管,不得外泄;公钥则允许以公钥证书的形式向外界公开发放,以便于使用。
数字签名操作:用户U在运行数字签名部件的机器上用自己的私钥对文件或消息F进行签名,得到签名码,并把文件F连同签名码发送给用户V。
身份验证操作:用户V从CA中心获得用户U的公钥证书,在运行身份验证部件的机器上对接收到的文件F和其签名码进行验证,以鉴定签名码是否为用户U所为、文件F在传输过程中是否已被修改。
3.2.2密钥生成部分
密钥生成部分供CA认证中心使用,用来产生一对私钥和公钥。
假设S、T、
Figure A20061014564700051
Figure A20061014564700052
是两两互素的整数,其中T≥2n
Figure A20061014564700054
是一个非大数,其实现方法是:
(1)随机产生项数为n的超递增序列{A1,A2,…,An),计算 G = Π i = 1 n A i
(2)找到一个正素数M使得gcd(S,M-1)=1、 且q|(M-1)
这里,q≤n+4为任意素数
(3)选择δ使得(δ,M-1)=1、且
Figure A20061014564700057
(4)计算 α ← δ δ n , W←G-1(αδ-1)1/S、β←δ(δ+1)WS γ ← δ W n mod M
(5)产生两两不同的值l(1)、l(2)、…、l(n)∈{iδ(mod M-1)|i=5,6,…,n+4}
(6)计算非互素序列{C1,C2,…,Cn|Ci≡AiWl(i)(mod M)对于i=1,2,…,n)。最后,以({Ai}、{l(i)}、W、δ、
Figure A200610145647000510
Figure A200610145647000511
)作为私钥,以({Ci}、α、β、γ)作为公钥,S、T、M共用。
3.2.3数字签名
发送方即签名方以自己的私钥({Ai}、{l(i)}、W、δ、 )作为签名密钥。设F为待签文件或消息,Hash为单向散列函数。
(1)令消息摘要H=Hash(F),其二进制形式为b1b2…bn
(2)计算 k 1 ← Σ i = 1 n b i l ( i ) , G 0 ← Π i = 1 n A i - b i
(3)选择Q<M使得
Figure A200610145647000516
计算R满足Q≡(R G0)SHδ(mod M)
(4)计算 U ← ( R W k 1 - 1 δ δ ( δ + 1 ) ) QT mod M ,
Figure A200610145647000518
则转至(3)。算法执行后,得到数字签名码(Q、U),其可随文件F一起发送给验证者。
注意,Q不能被重复生成。
根据双同余定理,在签名中,无需V≡(R-1WG1)QUδλ(mod M),其中 G 1 = Π i = 1 n A i b i , λ满足 λS ≡ ( ( δ + 1 ) SU + Σ i = 0 n - 1 ( δQ ) n - 1 - i W i ) ( δQ - W ) ( mod M - 1 ) , 这表明
Figure A200610145647000521
3.2.4身份验证
接收方以发送方的公开密钥({Ci}、α、β、γ)作为验证密钥。设F为待签文件或消息,(Q、U)为其签名码。
(1)令消息摘要H=Hash(F),其二进制形式为b1b2…bn
(2)计算 G ^ ← Π i = 1 n C i b i mod M
(3)计算 X ← ( αH Q - 1 ) QUT α Q n T , Y ← ( G ^ QT U - 1 ) US β UT γ T mod M
(4)若X≡Y且Q没有被重复,则签名者身份有效且F未被修改,否则,签名者身份无效或F在传输中已被修改。
算法执行后,可以达到鉴别签名真伪、防发送者抵赖和抗攻击者修改的目的。下面证明:若(Q、U)是一个真实的签名码,则有X≡Y(mod M)。
从密钥生成算法知: α ≡ δ δ n ≡ δ ( WG 0 G 1 ) S ( mod M ) , β≡δ(δ+1)WS(mod M)、 γ ≡ δ W n ( mod M ) .
令V≡(R-1WG1)QUδλ(mod M)。因为λ满足 λS ≡ ( ( δ + 1 ) SU + Σ i = 0 n - 1 ( δQ ) n - 1 - i W 1 ) ( δQ - W ) ( mod M - 1 ) , 可以令
Figure A20061014564700066
这里k是一个整数,那么
Q QU V S ≡ ( R G 0 ) SQU H QU δ QU ( R - 1 W G 1 ) QUS δ λS
≡ ( W G 0 G 1 ) QUS δ QU H QU δ λS
≡ α QU H QU δ ( ( δ + 1 ) SU + Σ ( δQ ) n - 1 - i W i ) ( δQ - W )
≡ ( αH ) QU δ - ( δ + 1 ) WSU δ δ ( δ + 1 ) QUS δ ( δQ ) n - W n
≡ ( αH ) QU β - U δ δ ( δ + 1 ) QUS α Q n γ - 1 ( mod M ) .
移项得VS≡(αHQ-1)QUαQnβ-Uγ-1δδ(δ+1)QUS(mod M)。因此,有
V ST ≡ ( α HQ - 1 ) QUT α Q n T β - UT γ - T δ δ ( δ + 1 ) QUST
≡ Xβ - UT γ - T δ δ ( δ + 1 ) QUST ( mod M ) .
U U V T ≡ ( R W k 1 - 1 δ δ ( δ + 1 ) ) QUT ( R - 1 W G 1 ) QUT δ λT
≡ ( W k 1 G 1 ) QUT δ δ ( δ + 1 ) QUT δ λT
Figure A200610145647000616
≡ G ^ QUT δ δ ( δ + 1 ) QUT ( mod M ) .
移项得 V T ≡ ( G ^ QT U - 1 ) U δ δ ( δ + 1 ) QUT ( mod M ) . 因此
V ST ≡ ( G ^ QT U - 1 ) US δ δ ( δ + 1 ) QUST ( mod M ) .
根据双同余定理,有
V ST ≡ X β - UT γ - T δ δ ( δ + 1 ) QUST ≡ ( G ^ QT U - 1 ) US δ δ ( δ + 1 ) QUST .
X ≡ ( G ^ QT U - 1 ) US β UT γ T ≡ Y ( mod M ) .
3.3本数字签名方法的安全性
通过分析,基于超对数难题和双同余定理的公钥数字签名方法具有相当高的安全性,当它与加密方法配合使用时能满足实际应用的需要。
超对数难题:令p为素数、c为常数、x未知,则解方程xx≡c(mod p)是比解gx≡c(mod p)更困难的。因此,xx≡c(mod p)问题被称之为超对数难题。
3.4优点和积极效果
3.4.1安全性较高
在目前所用的RSA、ElGamal等数字签名方案中,利用了大数难于计算的问题,随着计算机速度的提高,它们的安全性将受到影响。而本数字签名方法是利用了超对数难题xx≡c(modp)以及l(.)函数的不确定性,只是在被穷举时才考虑计算机的运算速度,所以,具备更高的安全性。
3.4.2运算速度较快
在本数字签名方法中,无论是签名还是验证,主要涉及素域上的模乘运算和模幂运算。由于模数M较小且模幂运算的个数非常有限,因此,运算速度将会较快。
3.4.3对国家安全有利
互联网是一种开放网,在上面传输的信息必须进行加密和签名。由于我国政府、国防、金融、税务等重要部门业已使用互联网作为通信工具,所以,信息安全关系到国家安全和经济安全。但是,泱泱一个大国的信息安全不能建立在外来的密码算法基础之上,因此,研究我们自己的公开密钥加密与签名算法显得势在必行和具有重大意义。
                           (四)具体实施方式
基于超对数难题和双同余定理的公钥数字签名方法的特点是它能够让每一用户得到两个密钥,一个密钥可以公开,一个密钥只能私人拥有。这样,就不会担心密钥在传递过程中泄密了。当约定通信者在网上传输信息时,发送者使用自己的私有密钥对文件或消息进行数字签名,接收者收到文件和签名码后使用发送者的公开密钥对其进行验证。
每个用户可以到指定的CA(Certificate Authentication)认证中心取得两个密钥。CA认证中心是对用户进行登记且对密钥进行产生、分发和管理的一个机构。它利用3.2.2节的密钥生成方法产生用户的公开密钥与私有密钥。
本数字签名方法可以用逻辑电路芯片或程序语言来实现,它包括两部分:(1)根据密钥生成方法开发出芯片或程序,由CA认证中心使用;(2)根据3.2.3、3.2.4节的数字签名与身份验证方法开发出芯片或程序,由一般用户使用。

Claims (1)

1、一种基于超对数难题和双同余定理的数字签名方法,由密钥生成、数字签名和身份验证三个部分组成,密钥生成部分用来产生用户的一个私有密钥和一个公开密钥(即私钥和公钥),数字签名部分供发送方使用自己的私钥对文件或消息产生签名码,身份验证部分供接收方使用发送方的公钥来验证签名码,假设S、T、
Figure A2006101456470002C1
是两两互素的整数,其中T≥2n
Figure A2006101456470002C3
Figure A2006101456470002C4
是一个非大数,其特征在于
●密钥生成部分采用了下列步骤:
(1)随机产生项数为n的超递增序列{A1,A2,…,An},计算 G = Π i - 1 n A i
(2)找到一个正素数M使得gcd(S,M-1)=1、
Figure A2006101456470002C6
且q|(M-1)
这里,q≤n+4为任意素数
(3)选择δ使得(δ,M-1)=1、且
(4)计算α=←δδn、W←G-1(αδ-1)1/S、β←δ(δ+1)WS和γ←δWn mod M
(5)产生两两不同的值l(1)、l(2)、…、l(n)∈{iδ(mod M-1)|i=5,6,…,,2+4}
(6)汁算非互素序列{C1,C2,…,Cn|Ci≡AiWl(i)(mod M)对于i=1,2,…,n}
结束后,以({Ai}、{l(i)}、W、δ、
Figure A2006101456470002C10
)作为私钥,以({Ci}、α、β、γ)作为公钥,S、T、M共用;
●数字签名部分采用了下列步骡:
发送方以自己的私钥({Ai}、{l(i)}、W、δ、 作为签名密钥,设Hash为单向散列函数,针对文件F
(1)令消息摘要H=Hash(F),其二进制形式为b1b2…bn
(2)计算 k 1 ← Σ i = 1 n b i l ( i ) , G 0 ← Π i = 1 n A i - b i
(3)选择不重复的Q<M使得
Figure A2006101456470002C13
Figure A2006101456470002C14
计算R满足Q≡(R G0)SHδ(mod M)
(4)计算 U ← ( R W k 1 - 1 δ δ ( δ + 1 ) ) QT mod M ,
则转至(3)最后,得到签名码(Q、U),其可附在文件F后面发送给接收方;
●身份验证部分采用了下列步骤:
接收方以发送方的公钥({Ci}、α、β、γ)作为验证密钥,针对文件F和签名码(Q、U)
(1)令消息摘要H=Hash(F),其二进制形式为b1b2…bn
(2)计算 G ^ ← Π i = 1 n C i b i mod M
(3)计算 X ← ( α HQ - 1 ) QUT α Q n T , Y ← ( G ^ QT U - 1 ) US β UT γ T mod M
(4)若X≡Y且Q没有被重复,则签名者身份有效且F未被修改,
否则,签名者身份无效或F在传输中已被修改。
CNA2006101456479A 2006-11-23 2006-11-23 一种基于超对数难题和双同余定理的数字签名方法 Pending CN1960257A (zh)

Priority Applications (1)

Application Number Priority Date Filing Date Title
CNA2006101456479A CN1960257A (zh) 2006-11-23 2006-11-23 一种基于超对数难题和双同余定理的数字签名方法

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
CNA2006101456479A CN1960257A (zh) 2006-11-23 2006-11-23 一种基于超对数难题和双同余定理的数字签名方法

Publications (1)

Publication Number Publication Date
CN1960257A true CN1960257A (zh) 2007-05-09

Family

ID=38071761

Family Applications (1)

Application Number Title Priority Date Filing Date
CNA2006101456479A Pending CN1960257A (zh) 2006-11-23 2006-11-23 一种基于超对数难题和双同余定理的数字签名方法

Country Status (1)

Country Link
CN (1) CN1960257A (zh)

Cited By (5)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN101072099B (zh) * 2007-06-22 2010-06-16 苏盛辉 一种基于非均匀超递增序列的公钥加密方法
CN101753310A (zh) * 2009-12-28 2010-06-23 苏盛辉 基于多变量排列难题和超对数难题的数字签名方法
WO2011063744A1 (zh) * 2009-11-30 2011-06-03 ***通信集团公司 一种eap认证中的标识认证方法、***和设备
CN101369888B (zh) * 2008-10-07 2013-07-24 苏盛辉 一种基于非均匀超递增序列的数字签名方法
CN104601600B (zh) * 2015-02-17 2019-04-23 苏盛辉 基于非对称身份的恶意程序防控方法

Cited By (6)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN101072099B (zh) * 2007-06-22 2010-06-16 苏盛辉 一种基于非均匀超递增序列的公钥加密方法
CN101369888B (zh) * 2008-10-07 2013-07-24 苏盛辉 一种基于非均匀超递增序列的数字签名方法
WO2011063744A1 (zh) * 2009-11-30 2011-06-03 ***通信集团公司 一种eap认证中的标识认证方法、***和设备
CN101753310A (zh) * 2009-12-28 2010-06-23 苏盛辉 基于多变量排列难题和超对数难题的数字签名方法
CN101753310B (zh) * 2009-12-28 2015-07-29 苏盛辉 基于多变量排列难题和超对数难题的数字签名方法
CN104601600B (zh) * 2015-02-17 2019-04-23 苏盛辉 基于非对称身份的恶意程序防控方法

Similar Documents

Publication Publication Date Title
Cohen et al. Handbook of elliptic and hyperelliptic curve cryptography
Joye et al. Efficient generation of prime numbers
CN1144418C (zh) 用于鉴别第一实体和第二实体的方法和装置
JP2001510912A (ja) 直接埋め込み方式による高速楕円曲線暗号化の方法と装置
WO2005099150A2 (en) Public key cryptographic methods and systems
RU2533693C2 (ru) Кодирование точек эллиптической кривой
Koblitz et al. Another look at “provable security”. II
CN101753310B (zh) 基于多变量排列难题和超对数难题的数字签名方法
Lin et al. Effective generalized equations of secure hyperelliptic curve digital signature algorithms
CN1960257A (zh) 一种基于超对数难题和双同余定理的数字签名方法
Augot et al. A fast provably secure cryptographic hash function
CN111865555A (zh) 一种基于k-Lin假设的同态加密方法
CN101267300A (zh) 基于互素序列和杠杆函数的多变量公钥加密方法
CN101072099B (zh) 一种基于非均匀超递增序列的公钥加密方法
CN101369888B (zh) 一种基于非均匀超递增序列的数字签名方法
CN101296076A (zh) 一种基于ecc的数字签名方案
Yang et al. A provably secure and efficient strong designated verifier signature scheme
CN102307102B (zh) 一种基于超对数难题的轻量级数字签名方法
JP2007041461A (ja) 楕円曲線暗号におけるスカラー倍計算方法およびスカラー倍計算装置
CN102064938A (zh) 一种基于多变量与不确定性的公钥加密方法
CN1885769B (zh) 数字摘要生成装置和方法,以及ca签名***和方法
CN1832402A (zh) 一种基于杠杆函数和超递增序列的数字签名方法
CN107483206A (zh) 一种快速的量子安全的非对称加密方法
CN102347840B (zh) 一种基于互素序列和杠杆函数的公钥加密方法
Shams et al. Cryptosystem an Implementation of RSA using Verilog

Legal Events

Date Code Title Description
C06 Publication
PB01 Publication
C10 Entry into substantive examination
SE01 Entry into force of request for substantive examination
C02 Deemed withdrawal of patent application after publication (patent law 2001)
WD01 Invention patent application deemed withdrawn after publication

Open date: 20070509