本文目录一览:
- 1、rsa加密解密算法
- 2、能否依靠云计算的强大计算能力破解RSA加密算法?
- 3、如果p=np,那么rsa加密算法系统能够在多项式时间内被破解
- 4、为何能分解大整数n即意味着破解rsa算法?
- 5、RSA密码体制抗破解的原理是什么?
- 6、德国密码学家破解了RSA加密系统,这意味着什么?
rsa加密解密算法
1978年就出现了这种算法,它是第一个既能用于数据加密
也能用于数字签名的算法。它易于理解和操作,也很流行。算
法的名字以发明者的名字命名:Ron Rivest, AdiShamir 和
Leonard Adleman。但RSA的安全性一直未能得到理论上的证明。
RSA的安全性依赖于大数分解。公钥和私钥都是两个大素数
( 大于 100个十进制位)的函数。据猜测,从一个密钥和密文
推断出明文的难度等同于分解两个大素数的积。
密钥对的产生:选择两个大素数,p 和q 。计算:
n = p * q
然后随机选择加密密钥e,要求 e 和 ( p - 1 ) * ( q - 1 )
互质。最后,利用Euclid 算法计算解密密钥d, 满足
e * d = 1 ( mod ( p - 1 ) * ( q - 1 ) )
其中n和d也要互质。数e和
n是公钥,d是私钥。两个素数p和q不再需要,应该丢弃,不要让任
何人知道。 加密信息 m(二进制表示)时,首先把m分成等长数据
块 m1 ,m2,..., mi ,块长s,其中 2^s = n, s 尽可能的大。对
应的密文是:
ci = mi^e ( mod n ) ( a )
解密时作如下计算:
mi = ci^d ( mod n ) ( b )
RSA 可用于数字签名,方案是用 ( a ) 式签名, ( b )
式验证。具体操作时考虑到安全性和 m信息量较大等因素,一般是先
作 HASH 运算。
RSA 的安全性。
RSA的安全性依赖于大数分解,但是否等同于大数分解一直未能得到理
论上的证明,因为没有证明破解RSA就一定需要作大数分解。假设存在
一种无须分解大数的算法,那它肯定可以修改成为大数分解算法。目前,
RSA的一些变种算法已被证明等价于大数分解。不管怎样,分解n是最显
然的攻击方法。现在,人们已能分解140多个十进制位的大素数。因此,
模数n必须选大一些,因具体适用情况而定。
RSA的速度:
由于进行的都是大数计算,使得RSA最快的情况也比DES慢上100倍,无论
是软件还是硬件实现。速度一直是RSA的缺陷。一般来说只用于少量数据
加密。
RSA的选择密文攻击:
RSA在选择密文攻击面前很脆弱。一般攻击者是将某一信息作一下伪装
(Blind),让拥有私钥的实体签署。然后,经过计算就可得到它所想要的信
息。实际上,攻击利用的都是同一个弱点,即存在这样一个事实:乘幂保
留了输入的乘法结构:
( XM )^d = X^d *M^d mod n
前面已经提到,这个固有的问题来自于公钥密码系统的最有用的特征
--每个人都能使用公钥。但从算法上无法解决这一问题,主要措施有
两条:一条是采用好的公钥协议,保证工作过程中实体不对其他实体
任意产生的信息解密,不对自己一无所知的信息签名;另一条是决不
对陌生人送来的随机文档签名,签名时首先使用One-Way HashFunction
对文档作HASH处理,或同时使用不同的签名算法。在中提到了几种不
同类型的攻击方法。
RSA的公共模数攻击。
若系统中共有一个模数,只是不同的人拥有不同的e和d,系统将是危险
的。最普遍的情况是同一信息用不同的公钥加密,这些公钥共模而且互
质,那末该信息无需私钥就可得到恢复。设P为信息明文,两个加密密钥
为e1和e2,公共模数是n,则:
C1 = P^e1 mod n
C2 = P^e2 mod n
密码分析者知道n、e1、e2、C1和C2,就能得到P。
因为e1和e2互质,故用Euclidean算法能找到r和s,满足:
r * e1 + s * e2 = 1
假设r为负数,需再用Euclidean算法计算C1^(-1),则
( C1^(-1) )^(-r) * C2^s = P mod n
另外,还有其它几种利用公共模数攻击的方法。总之,如果知道给定模数
的一对e和d,一是有利于攻击者分解模数,一是有利于攻击者计算出其它
成对的e’和d’,而无需分解模数。解决办法只有一个,那就是不要共享
模数n。
RSA的小指数攻击。 有一种提高
RSA速度的建议是使公钥e取较小的值,这样会使加密变得易于实现,速度
有所提高。但这样作是不安全的,对付办法就是e和d都取较大的值。
RSA算法是第一个能同时用于加密和数字签名的算法,也易于理解和操作。
RSA是被研究得最广泛的公钥算法,从提出到现在已近二十年,经历了各
种攻击的考验,逐渐为人们接受,普遍认为是目前最优秀的公钥方案之一。
RSA的安全性依赖于大数的因子分解,但并没有从理论上证明破译RSA的难
度与大数分解难度等价。即RSA的重大缺陷是无法从理论上把握它的保密性
能如何,而且密码学界多数人士倾向于因子分解不是NPC问题。
RSA的缺点主要有:
A)产生密钥很麻烦,受到素数产生技术的限制,因而难以做到一次
一密。B)分组长度太大,为保证安全性,n 至少也要 600 bits
以上,使运算代价很高,尤其是速度较慢,较对称密码算法慢几个数量级;
且随着大数分解技术的发展,这个长度还在增加,不利于数据格式的标准化。
目前,SET(Secure Electronic Transaction)协议中要求CA采用2048比特长
的密钥,其他实体使用1024比特的密钥。
能否依靠云计算的强大计算能力破解RSA加密算法?
如果你将一个整数的二进制位数作为一个输入参数n的话,那么破解RSA的算法复杂度还没有办法降到O(2^n)以下,因此迄今为止所有的算法都不是“以多项式为复杂度”的有效算法。
而云计算只是扩大计算机计算的速度,这种速度的扩大仅仅是常数级的,也就是在运算时间中乘上一个a/b,这个数可能很小,但是一旦增大n,那么乘上的这个常数所减少的时间就会变得非常渺小。
如果p=np,那么rsa加密算法系统能够在多项式时间内被破解
这个很复杂,首先楼主要搞清楚P / NP是什么?一般说N/NP就不得不提到npc和npc-hard
P: Polynomial SolvableNP: Non-determinstic Polynomial Solvable
1)词语解释:Polynomial 【数】多项式的;
由平方,立方等常数次方或者更小的运算符和+,-,*,/等构成的式子及其这种式子的和Non-deterministic:
非确定性的;Turing-machine: 图灵机; 英国数学家图灵提出的计算模型,
一个两端无限长的由小格子组成的带子,每个格子可以存储一个数,一个可以在带子左右移动的游标或者指针或者不如叫磁头(head),
磁头可读或修改格子里的数。 下面默认说的是确定性图灵机,和非确定性图灵机功能上等价Algorithm: 算法。
给定一个问题的描述作为输入,图灵机求解的过程。 此过程有可能无限步长,则图灵机永远不会停止,除非被外部力量终止。Polynomial
algorithm: 多项式算法。 如果给定问题输入的长度,常量n,
为何能分解大整数n即意味着破解rsa算法?
因为如果n可以被因数分解,d就可以算出,也就意味着私钥被破解。
可是,大整数的因数分解,是一件非常困难的事情。目前,除了暴力破解,还没有发现别的有效方法。
对极大整数做因数分解的难度决定了RSA算法的可靠性。换言之,对一极大整数做因数分解愈困难,RSA算法愈可靠。
假如有人找到一种快速因数分解的算法,那么RSA的可靠性就会极度下降。但找到这样的算法的可能性是非常小的。今天只有短的RSA密钥才可能被暴力破解。到2008年为止,世界上还没有任何可靠的攻击RSA算法的方式。
只要密钥长度足够长,用RSA加密的信息实际上是不能被解破的。
RSA算法简介:
RSA算法是一种加密算法,广泛应用于现在的信息加密传输等领域,它的狭义应用流程如下:
现在加如你需要传送某一串信息M(这里简化为数字)给一些人,利用RSA算法加密以后你可以得到一个密文C,然后你将密文C传送给你需要传达的人,而对方有一个密钥D,对方可以比较容易地利用密钥D将密文C解密得到需要的信息M。
那么这里为了传输信息的保密,我们就要尽可能保证密文C不会被其它人解密,也就是尽可能无法让旁人得到D的值。
RSA密码体制抗破解的原理是什么?
RSA密码体制抗破解的原理是:利用Euclid 算法计算解密密钥d, 满足de≡1(mod φ(n))。其中n和d也要互质。数e和n是公钥,d是私钥。两个素数p和q不再需要,应该丢弃,不要让任何人知道。
现在常规的密码破解方式有两种,分别是暴力破解和字典破解。通常的破解软件你还可以设置字符集(比如选择是否算上符号,大小写字母和数字等)。用这种方式只要密码不超过能破译的长度范围,在一定时间下是一定能破解出来的,唯一缺点就是速度太慢。
为提高保密强度
RSA密钥至少为500位长,一般推荐使用1024位。这就使加密的计算量很大。为减少计算量,在传送信息时,常采用传统加密方法与公开密钥加密方法相结合的方式,即信息采用改进的DES或IDEA对话密钥加密,然后使用RSA密钥加密对话密钥和信息摘要。对方收到信息后,用不同的密钥解密并可核对信息摘要。
德国密码学家破解了RSA加密系统,这意味着什么?
RSA是RonRivest、AdiShamir和LeonardAdleman于共同提出的加密算法。该算法利用大的少数分解困难的特性,大的少数成绩很难分解,所以这个密码很难破解。解密密码需要很多计算。克劳斯彼得施诺是德国法兰克福大学数学和计算机科学系教授,是著名的数学家和密码学家,Schnorr签名算法是以他的名字命名的。
上述“解密RSA加密系统”的论文尚未正式发表。另一位国内密码学家表示,已经有一些学者在论文中找到了一些漏洞,论文结论是“目前很难说,可能不太可信”。(舒诺尔)年纪大了。在信息安全要求较高的许多领域,RSA不对称加密算法被大量使用。MIT应用数学教授PeterShor在接受《自然》杂志采访时表示:“是否有可以代替RSA的密码系统,在双边计算机时代是否安全?”被问及。德国密码学家施诺在预印本网站上发表论文说自己破解了RSA加密系统。这件事引起了密码学界和双边密码界的广泛关注。其名字来源于三位作者的名字头。该算法利用大的小数分解的困难特性,因此解密密码需要很多计算。目前,对信息安全要求较高的许多领域广泛采用RSA不对称加密算法,可以说是当今信息技术的基石之一。
据调查,勒索软件攻击仍然有利可图,组织最严密的集团每个受害者可以赚到数百万美元,因此,很多网络犯罪分子想把这些攻击兑换成现金,但没有能力自行编码和分发。这就是勒索软件服务(RaaS)的作用。这种联盟计划为低级攻击者提供分发和管理勒索软件活动的功能,勒索软件背后的开发者在每个恐吓受害者的解密密钥补偿中进行划分。
宏恶意软件一直是黑客们的热门选择。微软多年来一直使用防恶意软件检查界面(AMSI)来删除宏恶意软件,但成功删除用VBA编写的宏脚本的努力最终将攻击者推入了名为XLM的旧宏语言。该语言与1992年与Excel 4.0一起出现。XLM在1993年被VBA取代,但部分客户仍然使用XLM,因此Excel仍然支持它。