作业帮 > 数学 > 作业

rsa加密解密算法谁能解释一下RSA加密解密算法呢?其中说的e*d=1(mod 是说要(e*d)mod z=1还是说z

来源:学生作业帮 编辑:作业帮 分类:数学作业 时间:2024/11/08 05:45:43
rsa加密解密算法
谁能解释一下RSA加密解密算法呢?
其中说的e*d=1(mod 是说要(e*d)mod z=1还是说z mod (e*d)=1还是其他意思呢?
我的意思是说e*d=1(mod 是说要(e*d)mod z=1还是说z mod (e*d)=1还是其他意思呢?
1978年就出现了这种算法,它是第一个既能用于数据加密
也能用于数字签名的算法.它易于理解和操作,也很流行.算
法的名字以发明者的名字命名:Ron Rivest,AdiShamir 和
Leonard Adleman.但RSA的安全性一直未能得到理论上的证明.
RSA的安全性依赖于大数分解.公钥和私钥都是两个大素数
( 大于 100个十进制位)的函数.据猜测,从一个密钥和密文
推断出明文的难度等同于分解两个大素数的积.
密钥对的产生:选择两个大素数,p 和q .计算:
n = p * q
然后随机选择加密密钥e,要求 e 和 ( p - 1 ) * ( q - 1 )
互质.最后,利用Euclid 算法计算解密密钥d,满足
e * d = 1 ( mod ( p - 1 ) * ( q - 1 ) )
其中n和d也要互质.数e和
n是公钥,d是私钥.两个素数p和q不再需要,应该丢弃,不要让任
何人知道.加密信息 m(二进制表示)时,首先把m分成等长数据
块 m1 ,m2,...,mi ,块长s,其中 2^s