RSA的数学原理
1、互质关系:两个数a和b没有除1外的其他公约数,则a与b互质。
2、求欧拉函数:与正整数n互质且小于正整数n的正整数的个数。
3、欧拉定理:正整数a与n互质,则a^ψ(n) ≡1(mod n)恒成立,即:a的ψ(n)次幂除以n,余数恒为1。
RSA的特点
1、便于理解,使用广泛。是第一个能同时用于加密和数字签名的算法,也易于理解和操作。
2、缺点与不足:加密和解密花费时间长、速度慢,只适合对少量数据进行加密。
RSA的安全性
RSA的安全性依赖于大数据的分解,但是否等同于大数分解一直未能得到理论上的证明,因为没有证明破解RSA就一定需要作大数分解。假设存在一种无须分解大数的算法,那它肯定可以修改成为大数分解算法,RSA 的一些变种算法已被证明等价于大数分解。
对极大整数做因数分解的难度决定了RSA算法的可靠性。换言之,对一极大整数做因数分解愈困难,RSA算法愈可靠。假如有人找到一种快速因数分解的算法的话,那么用RSA加密的信息的可靠性就肯定会极度下降。