明文 M 加密 Mᵉ mod n = C
密文 C 解密 Cᵈ mod n = M
证明:Cᵈ mod n=( Mᵉ mod n)ᵈ mod n= Mᵉᵈ mod n= mod n= (
*M) mod n
⇒ =1⇒根据同余定理,
≡1(mod n)
步骤 | 说明 | 描述 | 解释 |
1 | 选择一对不相等且足够大的质数 | p,q | 欧拉函数φ(n)是(小于n的正整数中与n互质的数)的数目。如果n是质数,则φ(n)=n-1 如果n可以分解成2个互质的整数之积,那么n的欧拉函数等于这两个因子的欧拉函数之积。 即若n=p*q,且p,q互质,则φ(n)=φ(p*q) =φ(p) *φ(q)=(p-1)(q-1) |
2 | 计算p,q的乘积 | n=p*q | |
3 | 计算n的欧拉函数 | φ(n)=(p-1)*(q-1) | |
4 | 选一个与φ(n)互质的整数e | 1<e<φ(n) | gcd(e, φ(n))=1 |
5 | 计算出e对于φ(n)的模反元素d | ed mod φ(n)=1 | 如果两个正整数e和φ(n)互质,那么一定可以找到一个整数d,使得ed-1被φ(n)除,或者说ed除以p(n)所得余数为1。 此时,d就叫做e的模反元素。 ed-1=kφ(n) ⇒ ed modφ(n)=1⇒ ed≡1(modφ(n)) #同余 |
6 | 公钥 | KU=(e,n) | / |
7 | 私钥 | KR=(d,n) | / |