| | | Windows 2000 公钥基础结构详解 | | 2002-08-23·
· ··天极论坛
| 1 2 3 4 5 6 7 8 下一页
引言
Microsoft Windows 2000 将一个综合的公钥基础结构 (PKI) 引入到 Windows 平台。这利用和扩展了Windows 公钥 (PK) 加密服务(该服务是过去几年中引入的),提供了一整套服务和管理工具,以创建、部署和管理基于 PK 的应用程序。它允许应用程序开发人员利用 Windows NT 的共享机密安全机制或基于 PK 的安全机制,作为其相应的安全机制。同时,企业还因此能够基于统一工具和策略机制,来管理该环境和应用程序。
本文最后对 Windows 2000 中 PKI 作了概述。
概念
加密技术是一门保护数据的科学。加密算法从数学上将输入“明文”数据与“加密密钥”结合起来,生成加密数据(暗记文)。虽然有了一个好的加密算法,但要逆转加密过程,并将仅以暗记文开始的数据反推成明文数据,从计算角度上是不可行的;此转换过程还需要其他数据,即“解密密钥”。
传统上,“密钥(或对称密钥)加密”、加密与解密密钥是相同的,因而可以共享敏感数据。对于想要使用密钥加密进行通信的双方,只有安全地交换加密/解密密钥后,才能相互交换加密数据。
而“PK 加密”基本属性则是,加密和解密使用不同的密钥。用公钥加密密钥进行的加密是“单向”功能;明文虽然可以很容易地转变为暗记文,但加密密钥却与解密过程无关。要将暗记文转回到明文,则需要解密密钥(与加密密钥有关,但不相同)。因此,对于 PK 加密来说,每个用户都有一对密钥,由一个“公钥”和一个“私钥”组成。在公钥可用的前提下,可以让其他人将加密数据发给您,而该数据只能用您的私钥来解密。相似地,可用您的私钥来转换数据,这样,其他人就会验证出该数据是由您发送的。第二种功能是数字签名的基础,下面将对它进行论述。
PK 加密中,公钥与私钥是分开的,由此产生了很多新技术。最重要的新技术有:数字签名、分布式身份验证、使用公钥的密钥协议,以及未预设共享机密情况下进行的批量数据加密。
有许多人们熟知的 PK 加密算法。其中一些算法是通用的,如 RSA (Rivest-Shamir-Adleman) 和 ECC (Elliptic Curve Cryptography),因为它们能支持以上所有操作。其他算法则仅支持这些功能的一个子集。一些示例中包括数字签名算法 — 即 DSA,是美国政府的数字签名标准(FIPS 186)的一部分,该算法仅用于数字签名;还包括 Diffie-Hellman (D-H),它用于私钥协议。
以下几段简要论述了 PK 加密的主要用途。这些内容是以 Bob 和 Alice 两个用户为例,来讲述这些操作的。它假定 Bob 和 Alice 可以交换信息,但没有任何预设的共享的机密。
数字签名 也许,公钥加密最引人注目的特征就是创建和验证“数字签名”。它以数学转换为基础;该转换将私钥与待“签名”的数据结合在一起,这样:
只有拥有私钥的人才有可能创建数字签名。
任何能访问此相应公钥的人均能验证该数字签名。
对已签名的数据进行的任何修改(即使只修改了大型文件的一位)都会使数字签名无效。
数字签名本身就是数据,因此可将其与所保护的签名数据一起传输。例如,Bob 可以创建一个给 Alice 的电子邮件消息,并把签名与消息文本一起发送,用它给 Alice 提供验证消息来源所需的信息。此外,数字签名还提供了一种方法,以验证数据在从源到目标的传送过程中,没有被篡改过(无论是意外的还是蓄意的)。因此,数字签名可用来提供一个能高度保障数据完整性的机制。
身份验证
可用 PK 加密来提供可靠的分布式“身份验证”服务。“实体身份验证”可以保证:数据发件人就是收件人所认为的那个实体。验证的一种方法是:数据接收人 Alice 向数据发送人 Bob 发送一个质询,该质询是用 Bob 的公钥进行加密的。Bob 对此质询进行解密,并把它发回给 Alice,证明他有与 Alice 发布质询所用公钥相关联的私钥。另一种方法是:Alice 向 Bob 发送一个明文质询。Bob 将该质询与其他信息(已有数字签名)结合起来。然后,Alice 就用 Bob 的公钥来验证该签名,并证实 Bob 有与此关联的私钥。该质询能够使该消息是唯一的,并可防止有敌意的第三方利用答复进行攻击。这两种情况都称为“证明所有权”协议,因为发送人在此过程中证明自己有特定的私钥。
使用公钥的密钥协议
PK 加密的另一个功能是,它允许双方就使用公共的非安全通信网络的共享机密达成一致。实际就是 Bob 和 Alice 每人都生成一个随机数,分别形成了共享机密密钥的一半。然后,Bob 用 Alice 的公钥,对自己的那一半机密进行加密,再把机密发送给 Alice;而 Alice 则用 Bob 的公钥对自己的那一半机密进行加密,再把机密发送给 Bob。双方都可以将对方发来的消息进行解密,将共享机密中不是自己生成的那一半提取出来,然后将两个一半密码结合起来,生成共享机密。协议完成后,共享的机密就可以用于保障其他通信的安全了。
1 2 3 4 5 6 7 8 下一页 | | | 感谢
访问天极网,如果您觉得该文章涉及版权问题,请看这里!
|
|