CN101902330A - 一种加速rsa私钥寻找的算法 - Google Patents

一种加速rsa私钥寻找的算法 Download PDF

Info

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
Application number
CN2009101841056A
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 CN2009101841056A priority Critical patent/CN101902330A/zh
Publication of CN101902330A publication Critical patent/CN101902330A/zh
Pending legal-status Critical Current

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算法私钥的生成过程加速。 
背景技术
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)来加速搜寻工作;其他停止条件和加速条件不改变本专利的特性。
CN2009101841056A 2009-08-25 2009-08-25 一种加速rsa私钥寻找的算法 Pending CN101902330A (zh)

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)

* Cited by examiner, † Cited by third party
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密钥生成方法、计算机设备及介质

Cited By (4)

* Cited by examiner, † Cited by third party
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