理论教育 常用的公开密钥算法:RSA、DSA及ECDSA

常用的公开密钥算法:RSA、DSA及ECDSA

时间:2023-10-28 理论教育 版权反馈
【摘要】:在本章第一节第二小节密码学的发展阶段中已经介绍到,Diffie和Hellman在1976年首次提出了公开密钥算法的概念,也正是他们实现了第一个公开密钥算法——Diffie-Hellman算法。因此k就是Alice和Bob独立计算的秘密密钥。从上面的分析可以看到,Diffie-Hellman算法仅限于密钥交换的用途,而不能用于加密或解密,因此该算法通常称为Diffie-Hellman密钥交换。其他的常用公开密钥算法还有数字签名算法、ElGamal算法等。如果需要加密,则必须将其他的加密算法和DSA联合使用。

常用的公开密钥算法:RSA、DSA及ECDSA

这里简单地介绍Diffie-Hellman算法

在本章第一节第二小节密码学的发展阶段中已经介绍到,Diffie和Hellman在1976年首次提出了公开密钥算法的概念,也正是他们实现了第一个公开密钥算法——Diffie-Hellman算法。Diffie-Hellman算法的安全性源于在有限域上计算离散对数比计算指数更为困难。

Diffie-Hellman算法的思路是:首先必须公布两个公开的整数n和g,其中,n是大素数,g是模n的本原元。当Alice和Bob要做秘密通信时,则执行以下步骤。

(1)Alice秘密选取一个大的随机数x(x<n),计算X=gxmodn,并且将X发送给Bob。

(2)Bob秘密选取一个大的随机数y(y<n),计算Y=gymodn,并且将Y发送给Alice。

(3)Alice计算k=Yxmodn。(www.daowen.com)

(4)Bob计算k'=Xymodn。

这里k和k'都等于gxymodn。因此k就是Alice和Bob独立计算的秘密密钥。

从上面的分析可以看到,Diffie-Hellman算法仅限于密钥交换的用途,而不能用于加密或解密,因此该算法通常称为Diffie-Hellman密钥交换。这种密钥交换的目的在于使两个用户安全地交换一个秘密密钥,以便用于以后的报文加密。

其他的常用公开密钥算法还有数字签名算法(Digital Signature Algorithm,DSA)、ElGamal算法等。与RSA算法、ElGamal算法不同的是,DSA是数字签名标准(Digital Signature Standard,DSS)的一部分,只能用于数字签名,不能用于加密。如果需要加密,则必须将其他的加密算法和DSA联合使用。

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

我要反馈