rsa的加密和解密原理 RSA算法的功能?
RSA算法的功能?
RSA算法是一种公钥加密机制,它使用不同的加密密钥和解密密钥。从已知的加密密钥推导解密密钥在计算上是不可行的。
RSA由Ron Rivest、ADI Shamir和Leonard Adleman于1977年提出。他们三个都在麻省理工学院工作。RSA是他们姓氏首字母的组合。它的原理是:根据数论,找到两个大素数相对简单,但对它们的乘积进行因式分解却极为困难,因此乘积可以作为加密密钥公开。
简述RSA算法中密钥的产生,数据加密和解密的过程,并简单说明RSA算法安全性的原理?
RSA方法的工作原理如下:
1)任意选择两个不同的大素数P和Q,计算乘积R=P*Q;
2)任意选择一个大整数e,e与(P-1)*(Q-1)互质,整数e作为加密密钥。
注意:E的选择很容易。例如,所有大于P和Q的素数都可用。
3)确定解密密钥D:D*e=1 mod(P-1)*(Q-1)D可以很容易地从e、P和Q计算出来。
4)5)通过C=PE mod R(e是幂)将明文P(假设P是小于R的整数)加密到密文C
RSA算法的具体过程?
RSA算法非常简单,概括如下:求两个素数P和Q,取n=P*Q,取t=(P-1)*(Q-1),取任意数E,满足E<T要求,取d*E%t==1表示E和t的互质(即最大公因数为1)N d E设置消息数m(m<N)set C=(m**d)%N得到加密消息C set m=(C**E)%N然后m==m完成C的解密。注:**表示幂,上述两个公式中的D和E可以互换。在对称加密中:两个数字组成一个公钥,可以告诉其他人;两个数字组成一个私钥,由e保管,没有人知道。发送给他人的信息是用E加密的,只要别人能用d来解密,就证明信息是你发送的,这就构成了一种签名机制。当有人给你发信息时,使用d加密,这样只有你有e才能解密。RSA的安全性在于,对于大数n,没有有效的分解方法,因此当nd已知时不能得到e;同样地,当ne已知时也不能得到d。RSA算法简单而优雅,但计算速度相对较慢。一般情况下,RSA并不是直接用于加密所有的信息。最常见的情况是随机生成一个对称加密密钥,然后使用对称加密算法对信息进行加密,然后使用RSA对刚才的加密密钥进行加密。最后,应该注意的是,小于1024位的当前n被证明是不安全的。在自己使用时,不要使用小于1024位的RSA,最好使用2048位。
rsa的加密和解密原理 简述rsa加密算法原理 rsa算法加密和解密过程
版权声明:本文内容由互联网用户自发贡献,本站不承担相关法律责任.如有侵权/违法内容,本站将立刻删除。