PKI(Public?Key?Infrastructure?的缩写)即"公开密钥体系",是一个利用现代密码学的公钥密码技术、并在开放的Internet网络环境中提供数据加密以及数字签名服务的、统一的技术框架。常用的公开密钥算法有RSA、DSA和Diffie?Hellman等。公开密钥体系概述 1976年,Whitfield Diffie和Martin Hellman提出了公开密钥理论,奠定了PKI体系的基础。PKI(Public Key Infrastructure 的缩写)即"公开密钥体系",是一个利用现代密码学的公钥密码技术、并在开放的Internet网络环境中提供数据加密以及数字签名服务的、统一的技术框架。常用的公开密钥算法有RSA、DSA和Diffie Hellman等。使用公开密钥算法(又叫非对称加密算法)的用户同时拥有公钥和私钥。私钥不能通过公钥计算出来。私钥由用户自己持有,公钥可以明文发送给任何人,公开密钥理论解决了对称加密系统的密钥交换问题。 公开密钥体系原理 公钥加密/私钥解密完成对称算法密钥的交换:公开密钥算法的速度比对称算法慢得多,并且由于任何人都可以得到公钥,公开密钥算法对选择明文攻击很脆弱,因此公钥加密/私钥解密不适用于数据的加密传输。为了实现数据的加密传输,公开密钥算法提供了安全的对称算法密钥交换机制,数据使用对称算法加密传输。两个用户(A和B)使用公开密钥理论进行密钥交换的过程如下: 公开密钥体系安全性分析 PKI密钥交换和身份验证的安全性依赖于PKI使用的公开密钥算法、对称加密算法和消息摘要算法。当前使用的公开密钥算法的安全性大都基于大数分解的难度。从一个公钥和密文中恢复出明文的难度等价于分解两个大素数的乘积。当前可以完成的大数分解的位数是140位。对于当前市场上广泛使用的1024位的RSA公开密钥算法来说,它被破解的可能性是微乎其微的。对于