RSA 加密算法
一、前言
RSA 加密算法是一种非对称加密算法。在公开密钥加密和电子商业中 RSA 被广泛使用。RSA 是 1977 年由罗纳德·李维斯特(Ron Rivest)、阿迪·萨莫尔(Adi Shamir)和伦纳德·阿德曼(Leonard Adleman)一起提出的。当时他们三人都在麻省理工学院工作。RSA 就是他们三人姓氏开头字母拼在一起组成的。
二、准备工作
1、找出两个质数 𝑝 和 𝑞
2、𝑛=𝑝×𝑞
3、𝜙(𝑛)=(𝑝−1)(𝑞−1)
4、公钥 𝑒 :在 1<𝑒<𝜙(𝑛) 中找一个整数
* 𝑒 和 𝜙(𝑛) 互质
5、私钥 𝑑 :通过 𝑒⋅𝑑≡1𝑚𝑜𝑑𝜙(𝑛)得到
三、加密函数
给定 𝑛 与公钥 𝑒
加密函数为: y ≡ x e m o d n y\equiv x^emod\;n y≡xemodn
四、解密函数
给定私钥 𝑑 及密文 𝑦 和 𝑛
解密函数为: x ≡ y d m o d n