RSA加密算法是一种非对称加密算法,因为加密与解密的秘钥不是同一个。RSA是由Ron Rivest,Adi Shamir,Leonard Adleman三人在1977年共同提出的。
RSA的可靠性来源于:对极大整数做因数分解的难度。换言之,对一极大整数做因数分解愈困难,RSA 算法愈可靠。
以下是维基百科上关于RSA算法的过程:
1.公钥私钥的产生:
首先需要先通过密码学伪随机数生成器产生公钥和私钥,私钥自己留存,公钥可以给任何人。其他人通过公钥加密信息,发送给自己,自己拿私钥解密信息,即使中途该信息被拦截,没有私钥也不能解密。
如果你通过公钥加密明文之后,明文丢失了,那么你将不能还原明文内容,因为没有私钥。数字签名中,通过私钥加密,确保是本人发送的,而不是被伪造的。
2.加密解密信息的过程:
三横线代表同余符号,属于数论范畴