CN101902330A - 一种加速rsa私钥寻找的算法 - Google Patents
一种加速rsa私钥寻找的算法 Download PDFInfo
- Publication number
- CN101902330A CN101902330A CN2009101841056A CN200910184105A CN101902330A CN 101902330 A CN101902330 A CN 101902330A CN 2009101841056 A CN2009101841056 A CN 2009101841056A CN 200910184105 A CN200910184105 A CN 200910184105A CN 101902330 A CN101902330 A CN 101902330A
- Authority
- CN
- China
- Prior art keywords
- private key
- algorithm
- formula
- utilize
- percent
- 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
Links
Landscapes
- Storage Device Security (AREA)
Abstract
本发明公开一种信息安全领域的RSA体系私钥加速生成方法。1、已知p+q时,利用欧拉指标函数t和L=t%e、u*L=w*e-1来改变w求得最小的u,再利用d=[(x*e+u)*t+1]/e来改变x求得私钥d;停止条件是n、e和d通过任意明文加解密测试。这是算法主要用途。2、未知p+q时,利用v=(p+q)%e,c=(n+1)%e和u*(c-v)=w*e-1来确定u和v所有组合;再对u、v每组合利用d=z*e+[u*(n+1-v)+1]来改变z搜索d;停止条件同(1)。其中z可以利用z=-x*y+(u*y+n*x+x-v*x)来加速搜寻工作。寻找d的复杂度为O(n0.5)u、x、y、z等为非负整数。
Description
技术领域
本发明涉及一种信息安全加密的私钥加速生成算法,尤其是RSA算法私钥的生成过程加速。
背景技术
RSA即非对称密钥加密体系的一种加解密方法,其利用素数的特性来进行加密和解密。其技术特征如下:
对于两个素数p和q,其乘积记为n,即n=pq,令t=(p-1)(q-1)。
另外在找两个素数d和e,使得0<e<d<n,同时使得d、e均与p、q互素,且与t互素。如果d和e满足下式:
d*e=1(modt)(1)
则对于任意的明文M<n,均可以通过下式得到密文C:
Me=C(mod n)(2)
同时,可以通过下式从密文C得到明文M:
Cd=M(mod n)(3)
此时,以n和e可以作为公钥发布给任意人,而n和d作为私钥保存。
从n和e推导出d通常被认为是不可能,因而各种暴力寻找的方法都是从分解n入手,现在2048位的RSA算法还被公认为安全的。大素数分解的复杂度在理论上被认为是等同于RSA的安全性。
本专利寻找一种途径以便从n和e来试图推导出d,在知道p和q的时候能够非常迅速地推导出d,这是本专利的主要用途;而其也是可用于一种对RSA强度的评价方式。事实证明,本专利阐述的方法属 于O(n0.5),这表明RSA仍然是可靠的,但是RSA不是NP完全的,也不是多项式安全的。
下面两个公式后面可能会用到,这里用%来表示mod运算:
(A*B)%N=((A%N)*B)%N=((A%N)*(B%N))%N (4)
(A+B)%N=((A%N)+B)%N=((A%N)+(B%N))%N (5)
这两个公式可以根据取模数的性质得到,这里涉及到的符号均为正整数。
我们假设%运算对于A%B=C可以等价为:
A=k*B+C (6)
数学论述中常把k记为gcd,我们假设其为满足上式的整数。
发明内容
本发明提出一种加速寻找d的方法,能够结合作为n和e的关系,利用取模的性质和内在要求。在知道p和q的情况下可以快速推导出d;在p和q未知的情况下可以通过穷举来推知d。
本发明的原理为:
对于(1)式,我们可以利用(6)式的表述方法,将其表述为待定系数的形式:
d*e=k*t+1=k(p-1)(q-1)+1=k*n-k*(p+q)+k+1(1’)
我们可以把e从等式左边移去,即在等式右边除以e。由于上述变量均要求是整数,即要求等式右边是e的倍数,即:
[k*(n-(p+q)+1)+1]%e=0(7)
(7)式表明,如果我们知道p+q,是可以推导出k的取值规律的。利用(5)式和(6)式,我们可以得到(7)式可以化为:
{(k%e)*[(n+1)%e-(p+q)%e]+1}%e=0(8)
其中(k%e)为不大于e的整数,(n+1)%e为不大于e的常数,对于我们所是已知参数。p、q是两个素数,其和是合数,对于我们来说是一个未知数,(p+q)%e小于e。对于利用RSA实现的软件来说,如果为了生成d,可以保留t和利用(p+q)%e的值即可加速d的生成过程。
令u=k%e,v=(p+q)%e,c=(n+1)%e,这意味着:
[u*(c-v)+1]%e=0(9)
因此可以得到:
u*(c-v)=w*e-1(10)
利用(10)式,我们可以在知道p和q的时候确定u和v同时得到w。若p和q不可知,仍然可以利用u、v、c均小于e,且均为整数的内在属性,我们可以数值求解的方法得到可能的u和v。一般是改变w求得u和c-v,如果c<v的时候给c加e后再进行运算。
可以得到这个推导过程的复杂度上限为O(e2),由于e小于n且理论上不定,这个算法的复杂度上限为O(n2)。如果e比较小(事实上也是如此),我们可以很快推导出上述几个参数。然后把u和v带入
d=(x*e+u)*(n+1-v-y*e)+1(11)
=-x*y*e+(u*y+n*x+x-v*x)*e+u*(n+1-v)+1
=z*e+[u*(n+1-v)+1]
其中x、y均为相关取模运算的根,为整数。z为整数,e较小的时候可以穷举v,即可视u*(n+1-v)+1为已知。(11)式表明,我们只要利用某个已知常数和e即可探索到d的值,此时只要满足d加解密过程即可,且z还满足某个关系式z=-x*y+(u*y+n*x+x-v*x),能够更快地进行搜寻。
如果p+q事先已知,事情就演化为根据n、e、p和q求k,由(9)式可以求得u从而很快求得d,只 要下面公式中k取最小即可:
d=[k(n-(p+q)+1)+1]/e (12)
一般为了计算中利于加密或者解密过程的计算,选择很小的e或者d来进行,其中有以e<d居多,这意味着虽然我们从e推导u和v的过程复杂度上限是二次项的,但是计算过程并不复杂,选择较大的e可以避免这个情况。由(11)式可以看出,由于x一般取0,得到全部u、v的复杂度为O(e),得到d的时间复杂度为O(ez)=O(ey+v)=O(p+q)≈O(n0.5),这个表明RSA并不是多项式安全的,但是对于目前来说RSA还是相对安全的。
从上面的分析可以看出,可以利用本专利提出的方法,在已知p+q的情况下来加速生成RSA的私钥,或者在已知私钥的时候计算公钥。对于某些要求快速生成私钥的特殊场合意义非常大。
具体实施方式
如果p+q已知,可以利用(10)式直接推导出u,k=x*e+u,一般来说x等于0,u即为k,带入(12)式就可以求得d。
如果不知道p+q,则利用(10)式确定u和v,再利用(11)式来推导d,其中z可以用z=-x*y+(u*y+n*x+x-v*x)来加速。对每一个d进行解密验证,满足M和C之间关系的d就是私钥,这个过程的复杂度为O(n0.5),目前来说还是比较难计算的。
Claims (1)
1.一种用于加速RSA私钥生成过程的算法,其特点在于:
已知p+q的时候,利用L=t%e,u*L=w*e-1来改变w求得最小的u,再利用d=[(x*e+u)*t+1]/e来改变x求得d;停止对x搜索的条件是n、e和d通过任意明文加解密测试。其中t=n-(p+q)+1;而u、w和x均为非负整数,且均小于e。其他确定u和x的方法不改变本专利的特性。
未知p+q的时候,利用c=(n+1)%e和u*(c-v)=w*e-1来确定u和v所有的组合。再穷尽这些u和v的组合,利用d=z*e+[u*(n+1-v)+1]来改变z搜索d;停止的条件是n、e和d通过任意明文加解密测试。其中z可以利用z=-x*y+(u*y+n*x+x-v*x)来加速搜寻工作;其他停止条件和加速条件不改变本专利的特性。
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN2009101841056A CN101902330A (zh) | 2009-08-25 | 2009-08-25 | 一种加速rsa私钥寻找的算法 |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN2009101841056A CN101902330A (zh) | 2009-08-25 | 2009-08-25 | 一种加速rsa私钥寻找的算法 |
Publications (1)
Publication Number | Publication Date |
---|---|
CN101902330A true CN101902330A (zh) | 2010-12-01 |
Family
ID=43227554
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
CN2009101841056A Pending CN101902330A (zh) | 2009-08-25 | 2009-08-25 | 一种加速rsa私钥寻找的算法 |
Country Status (1)
Country | Link |
---|---|
CN (1) | CN101902330A (zh) |
Cited By (2)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN104537282A (zh) * | 2014-12-04 | 2015-04-22 | 中国电子科技集团公司第二十二研究所 | 一种基于加密闪盘和大数据运算技术的授权使用方法 |
CN112202562A (zh) * | 2017-12-27 | 2021-01-08 | 数安时代科技股份有限公司 | Rsa密钥生成方法、计算机设备及介质 |
-
2009
- 2009-08-25 CN CN2009101841056A patent/CN101902330A/zh active Pending
Cited By (4)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN104537282A (zh) * | 2014-12-04 | 2015-04-22 | 中国电子科技集团公司第二十二研究所 | 一种基于加密闪盘和大数据运算技术的授权使用方法 |
CN104537282B (zh) * | 2014-12-04 | 2017-10-27 | 中国电子科技集团公司第二十二研究所 | 一种基于加密闪盘和大数据运算技术的授权使用方法 |
CN112202562A (zh) * | 2017-12-27 | 2021-01-08 | 数安时代科技股份有限公司 | Rsa密钥生成方法、计算机设备及介质 |
CN112202562B (zh) * | 2017-12-27 | 2024-02-27 | 数安时代科技股份有限公司 | Rsa密钥生成方法、计算机设备及介质 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
CN106953722B (zh) | 一种全同态加密的密文查询方法和系统 | |
Singh et al. | Performance evaluation of RSA and elliptic curve cryptography | |
KR101107565B1 (ko) | 영 지식 증명 암호화 방법 및 장치 | |
US20150019868A1 (en) | Public encryption method based on user id | |
US8385541B2 (en) | Method of performing elliptic polynomial cryptography with elliptic polynomial hopping | |
CN101938463A (zh) | 安全地评估对加密信号施加的函数的方法 | |
EP2854330A2 (en) | System and method for multivariate public key encryption/decryption | |
Liu et al. | Image encryption technology based on fractional two-dimensional discrete chaotic map accompanied with menezes-vanstone elliptic curve cryptosystem | |
CN101902330A (zh) | 一种加速rsa私钥寻找的算法 | |
Katti et al. | Secure pseudo-random bit sequence generation using coupled linear congruential generators | |
Zaibi et al. | A new design of dynamic S-Box based on two chaotic maps | |
Ryu et al. | A Study on Partially Homomorphic Encryption | |
Amlarethinam et al. | Enhancing security level for public key cryptosystem using MRGA | |
Tomida et al. | Keyword searchable encryption with access control from a certain identity-based encryption | |
CN108551390A (zh) | 一种无须安全信道的带关键词搜索公钥加密方法 | |
KR101517947B1 (ko) | 중간키를 이용한 전력분석공격 방어방법 | |
Zenner | Why IV setup for stream ciphers is difficult | |
Feng et al. | A secure obfuscator for encrypted blind signature functionality | |
Han et al. | New multivariate-based certificateless hybrid signcryption scheme for multi-recipient | |
Hromada et al. | Using GeMSS128 in a ring signature scheme | |
Bouchkaren et al. | CAES Cryptosystem: Advanced Security Tests and Results. | |
George et al. | Add-on security level for public key cryptosystem using magic rectangle with column/row shifting | |
CN102385627B (zh) | 公钥加密系统中析取范式的查询方法 | |
Padhye | On DRSA Public Key Cryptosystem. | |
Creado et al. | Probabilistic Encryption--A Comparative Analysis against RSA and ECC |
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 |
Application publication date: 20101201 |