1.算法特点
用户和其他N个人通信,只需获得公开的N个加密密钥(公钥),每个通信方保管好自己的解密密钥(私钥),这大大简化了密钥管理,既可用于加密,也可用于数字签名。但公钥算法也有它的缺点,那就是效率非常低,比常用的对称密码算法慢上一两个数量级都有可能,所以它不适合经常为大量的原始信息进行加密。通常使用对称密码算法对原始信息进行加解密,然后发送方通过接收方公钥对对称算法密钥进行加密,发送给接收方。
迄今为止已经设计出许多公钥密码算法,如基于整数因子分解问题的RSA、基于有限域中离散对数问题的EIGamal、基于椭圆曲线上离散对数问题的ECC等。