8.4 常用非对称加密算法—ElGamal

在非对称加密算法中,几乎所有的算法都是基于数学问题而建立的:RSA算法基于大数因子分解数学难题,而ElGamal算法和ECC算法则基于离散对数问题。与典型非对称加密算法RSA算法相比,ElGamal算法则被称为常用非对称加密算法。

8.4.1 简述

1985年,Taher ElGamal提出了一种基于离散对数问题的非对称加密算法,该算法即可用于加密,又可用于数字签名,是除了RSA算法外最具有代表性的公钥加密算法之一。Taher ElGamal用自己的名字定义了这种算法—ElGamal算法。

由于ElGamal算法具有较好的安全性,因此得到了广泛的应用。著名的美国数字签名标准(Digital Signature Standard, DSS)就是采用了ElGamal签名方案的一种变形—DSA(Digital Signature Algorithm)。ElGamal的一个不足之处是它的密文会成倍扩张。