第4章 公钥密码

对称算法具有安全性高、加解密速度快的优点,在许多领域得到了广泛的应用,但是它也存在一些缺点:

● 由于系统的保密性主要取决于密钥的安全性,在进行保密通信前,双方必须通过安全的信道传送所用密钥,对于相距较远的用户可能要付出巨大的代价,甚至难以实现。

● 随着网络规模的扩大,密钥的管理成为一个难点。假设有n方参与通信,若n方都采用同一个对称密钥,一旦密钥被破解,整个体系就会崩溃;若两两分别采用不同的对称密钥,则需要nn-1)/2个密钥,密钥数与参与通信人数的平方成正比,使大系统的密钥管理极为困难。

● 无法解决对消息的窜改、否认等问题。

公钥算法则完全克服了上述缺点。公钥加密算法的出现是现代密码学诞生的标志之一,其加密和解密过程使用不同的密钥,而且,由解密密钥很容易计算出加密密钥,而由加密密钥很难甚至无法计算出解密密钥,加密密钥公开,任何人均可使用加密密钥来加密消息,但只有拥有解密密钥的人才能解密消息。比较著名的公钥密码算法有:RSA、背包密码、McEliece密码、Rabin、椭圆曲线、EIGamal算法以及我国学者提出的有限自动机密码。