n为q*p乘机
e为加密质数数值
d为解密质数数值,虽然e和d的值可以成对的随意取,但是为了安全,应该将e和d设置的都很长,
其中(e*d)%((p-1)*(q-1)) = 1余数为1,其中p和q为2个足够大的素数
RSA的算法涉及三个参数,n、e1、e2。
其中,n是两个大质数p、q的积,n的二进制表示时所占用的位数,就是所谓的密钥长度。
e1和e2是一对相关的值,e1可以任意取,但要求e1与(p-1)*(q-1)互质;再选择
e2,要求(e2*e1)mod((p-1)*(q-1))=1。
(n及e1),(n及e2)就是密钥对。
RSA加解密的算法完全相同,设A为明文,B为密文,则:A=B^e1 mod
n;B=A^e2 mod n;
e1和e2可以互换使用,即:
A=B^e2 mod n;B=A^e1 mod n;
阅读(5912) | 评论(0) | 转发(0) |