大家好,又见面了,我是你们的朋友全栈君。
本文只是说一下RSA加密的流程,对于其他的不做过多的介绍!...首先找到两个大素数 p,q
计算n = p*q , = φ(n)(p-1)*(q-1),其中φ(n)表示的是n的欧拉函数值
任意选择一个满足要求的证书e,满足1 < e <φ(n),并且gcd(φ(n)...,e)==1
计算d,满足(d*e)%φ(n) ==1,即d是e在模φ(n)下的乘法逆元,因为e和φ(n)互质,所以他的乘法逆元一定存在
以{e,n}为共钥,{d,n}是私钥
下面我问来举个例子:...假设我们已经知道明文是19;
我们选定两个素数p=7,q=19;
so n=p*q = 119 ,φ(n) = (p-1)*(q-1) = 96;
我们选择满足条件的e = 5,我们就能很简单的知道...根据上面的推导,我们知道在RSA中又六个变量,p,q,n,φ(n),e,d
其中e和n是公开的,其中最关键的就是d,因为如果d泄露的话,就相当于私钥泄露了!