理论教育 RSA体制及其在安全协议中的应用

RSA体制及其在安全协议中的应用

时间:2023-10-28 理论教育 版权反馈
【摘要】:1977年,美国麻省理工学院的三名密码学者R.Rivest、A.Shamir和L.Adleman提出了一种用数论构造的、基于大合数因子分解困难性的公开密钥密码,它也是迄今为止理论上最为成熟完善的公钥密码体制,简称为RSA体制。由于RSA既可用于加密,又可用于数字签名,而且安全易懂,因此已成为目前应用最广泛的公开密钥密码算法。许多国家标准化组织都已接受RSA作为标准。我国商用密码体系中使用SM2替换RSA算法。RSA体制是一种分组密码系统。

RSA体制及其在安全协议中的应用

1977年,美国麻省理工学院的三名密码学者R.Rivest、A.Shamir和L.Adleman提出了一种用数论构造的、基于大合数因子分解困难性的公开密钥密码,它也是迄今为止理论上最为成熟完善的公钥密码体制,简称为RSA体制。由于RSA既可用于加密,又可用于数字签名,而且安全易懂,因此已成为目前应用最广泛的公开密钥密码算法。许多国家标准化组织都已接受RSA作为标准。我国商用密码体系中使用SM2替换RSA算法。

建立RSA公开密钥密码系统时,用户选取一对不同的大素数p和q,令n=p q。用户公布n,但将q和p保密。然后,选取正整数d,使其满足gcd(d,Φ(n))=1,此处,Φ(n)是欧拉函数,且Φ(n)=(p-1)(q-1)。最后,根据公式ed≡1(modΦ(n))计算出e。用户公布e但将d保密。

RSA体制是一种分组密码系统。加密时,首先将明文表示成0~n-1之间的整数。如果明文太长,可将其变为n进制形式,即令M=M0+M1n+…+Ms-1ns-1+Msns,然后分别加密(M0,M1,…,Ms),得出密文(C0,C1,…,Cs)。加密公式是

如果已知密钥d,解密是很容易的,只需计算(www.daowen.com)

即可恢复明文M。

应用RSA方法时必须注意一些细节,如避免弱密钥、不在不同用户之间共享模n等。另外,为了抵抗“p-1分解算法”式的攻击,要求在构造RSA模n=p q时选择p和q应使p-1和q-1含有大的素因子。一般的方法是选择两个大素数p1和q1,使得p=2p1+1和q=2q1+1也是素数。

免责声明:以上内容源自网络,版权归原作者所有,如有侵犯您的原创版权请告知,我们将尽快删除相关内容。

我要反馈