PKI

1976年,Whitfield Diffie和Martin Hellman提出了公钥理论,为PKI系统奠定了基础。

PKI(公共密钥基础设施的简称),即“公共密钥系统”,是使用现代密码公钥密码术并在开放的因特网环境中提供数据加密和数字签名服务的统一技术框架。

常见的公钥算法是RSA,DSA和Diffie Hellman。

使用公钥算法的用户(也称为非对称加密算法)具有公钥和私钥。

无法从公钥计算私钥。

私钥由用户自己持有,并且公钥可以以纯文本形式发送给任何人。

公钥理论解决了对称加密系统的密钥交换问题。

公钥加密/私钥解密完成了对称算法密钥的交换:公钥算法比对称算法慢得多,而且由于任何人都可以获得公钥,公钥算法很容易受到明文攻击的影响,所以公钥加密/私钥解密不适用于加密的数据传输。

为了实现数据的加密传输,公钥算法提供了安全的对称算法密钥交换机制,并且使用对称算法对数据进行加密和传输。

使用公钥理论的两个用户(A和B)之间的密钥交换过程如下:PKI密钥交换和认证的安全性取决于PKI使用的公钥算法,对称加密算法和消息摘要算法。

当前使用的公钥算法的安全性主要基于大数分解的难度。

从公钥和密文恢复明文的难度相当于分解两个大素数的乘积。

当前可以完成的大量分解的比特数是140比特。

对于当今市场上广泛使用的1024位RSA公钥算法,被破解的可能性可以忽略不计。

对于128位密钥,即使世界上的计算机同时执行组攻击,解密128位密钥所需的时间也是一个天文数字。

对于消息摘要算法,单向散列函数的设计非常成熟。

市场上广泛使用的MD5和SHA算法的哈希值分别为128和160,足以防止所有群体攻击的尝试。

从这个角度来看,PKI机制是一种成熟而安全的技术。

基于PKI技术,已经开发了许多安全协议。

其中最着名和最广泛使用的是SSL和SET协议。

SSL(安全套接字)协议利用PKI技术进行身份认证,数据加密算法和密钥协议,并解决了身份验证,加密传输和密钥分发等问题。

SSL被每个人广泛接受和使用,是一种通用的安全协议。

所有基于TCP / IP的网络应用程序都可以在SSL协议上运行。

SET安全电子交易协议采用公钥密码系统和X.509数字证书标准,主要用于确保BtoC模式下支付信息的安全性。

SET协议是PKI框架的典型实现,并且不断升级和改进。

大多数外国银行和信用卡组织都采用了SET协议。

TOP