RSA算法是一种公钥加密技术,被认为是最安全的加密方式.它是由Rivest,Shamir和Adleman于1978年发明的,因此命名为 RSA 算法.
算法
RSA算法具有以下特征 :
RSA算法是包含素数的整数在有限域中的一种流行取幂./p>
此方法使用的整数足够大,难以解决.
此算法中有两组密钥:私钥和公钥.
您必须完成以下步骤才能工作关于RSA算法 :
步骤1:生成RSA模数
初始过程从选择两个素数即p和q开始,然后计算他们的产品N,如图所示去;
N = p * q
这里,设N为指定的大数.
第2步:派生数(e)
将数字e视为派生数,该数字应大于1且小于(p-1)和(q-1).主要条件是应该没有(p-1)和(q-1)的公因子,除了1
步骤3:公钥
指定的一对数字 n 和 e 形成RSA公钥并将其公开.
步骤4:私钥
私钥 d 是根据数字p,q和e计算的.数字之间的数学关系如下:<
ed = 1 mod(p-1)(q-1)
上面的公式是扩展欧几里得算法的基本公式,它以p和q作为输入参数.
加密公式
考虑将明文消息发送给公钥为(n,e)的人的发件人.要在给定方案中加密纯文本消息,请使用以下语法 :
C = Pe mod n
解密公式
解密过程非常简单,包括用于系统方法计算的分析.考虑到接收器 C 具有私钥 d ,结果模数将计算为 :
Plaintext = Cd mod n