第十二章 证书服务和公钥基 础设施( PKI )
信息安全的四大要素 机密性 — 保证电子商务、电子政务、办公自 动化、个人隐私中涉及的大量保密信息在网络 上传输的过程中不被窃取。 完整性 — 保证电子商务、电子政务中涉及的 交易信息不被中途篡改或通过重复发送进行虚 假交易。
身份鉴别 — 网上交易的双方很可能素昧平 生,相隔千里,因此方便而可靠地确认对方 身份的方式是交易的前提。 不可否认性 — 保证信息是由签名者自己 签名发送的,签名者不能否认或难以否认。 信息安全的解决方案 ——PKI 公钥体系
PKI 之动机 公钥技术 如何提供数字签名功能 如何实现不可否认服务 公钥和身份如何建立联系 为什么要相信这是某个人的公钥 公钥如何管理 方案:引入证书 (certificate) 通过证书把公钥和身份关联起来
PKI(Public Key Infrastructure) 定义: 用公钥原理和技术实施和提供安全服务的具 有普适性的安全基础设施
PKI 的组成 一个完整的 PKI 应该包括 认证机构 (CA) 证书库 证书注销 密钥备份和恢复 客户端软件
PKI 基本组件 RA(Registration Authority) 把用户的身份和它的密钥绑定起来 —— 建立 信任关系 CA(Certificate Authority) 发证 证书库 / 目录 保存证书,供公开访问
PKI 中的证书 证书 (certificate) ,有时候简称为 cert PKI 适用于异构环境中,所以证书的格式在所 使用的范围内必须统一 证书是一个机构颁发给一个安全个体的证明, 所以证书的权威性取决于该机构的权威性 一个证书中,最重要的信息是个体名字、个体 的公钥、机构的签名、算法和用途 最常用的证书格式为 X.509 v3
X.509 证书示意图
CA(Certificate Authority) 职责 接受用户的请求 ( 由 RA 负责对用户的身份信息进行验证 ) 用自己的私钥签发证书 提供证书查询 接受证书注销请求 提供证书注销表 各个组件和功能示意图 健壮的数据 库系统 无缝的目录接口 CA 硬件 管理和运 行平台 安全的审计 密钥 PKI
CA 层次结构 对于一个运行 CA 的大型权威机构而言,签发证 书的工作不能仅仅由一个 CA 来完成 它可以建立一个 CA 层次结构 根 CA 中间 CA
CA 层次结构的建立 根 CA 具有一个自签名的证书 根 CA 依次对它下面的 CA 进行签名 层次结构中叶子节点上的 CA 用于对安全个体进 行签名 对于个体而言,它需要信任根 CA ,中间的 CA 可 以不必关心 ( 透明的 ) ;同时它的证书是由底层的 CA 签发的
在 CA 的机构中,要维护这棵树 在每个节点 CA 上,需要保存两种 cert (1) Forward Certificates: 其他 CA 发给它的 certs (2) Reverse Certificates: 它发给其他 CA 的 certs
使用服务器证书 一个服务器证书是你的服务器的一个电 子 ID ,它可让你的服务器执行两个重要 的功能来确保通信的安全:为用户标识 自己和加密传送到这些用户的信息。 SSL 加密需要一个服务器证书被绑定到你的 网站中。该证书包含有 “ Keys ” ,在你的网 站和请求安全信息的用户间建立一个安 全连接时,需要用到这些 keys 。
客户证书映射 客户端的证书和服务端的是等价的。客 户证书是一个数字 ID ,该 ID 是用来向你 的 Web 服务器标识一个客户的,并且可 让你的服务器使用客户证书映射。客户 证书映射将一个客户的证书映射为一个 Windows 用户帐号,并且可以自动认证 和允许带有这些证书和正确帐号的用户 进行访问。
exmaple 例如,一个称为 Vicky 的用户拥有一个客户证书, 她点击了一个到该公司网站的雇员信息部分的 连接,她的浏览器就会将其证书信息放到其服 务器请求的头部,服务器就会检索该证书的一 个映射。如果用户的证书是正确的,并且映射 到一个有效的 Windows 用户帐号,而且该帐号 允许访问这些内容, Vicky 就会被自动地认证, 请求的数据也会出现在她的浏览器中。
服务器上安装证书服务 在 “ 控制面板 ” 中运行 “ 添加或删除程序 ” ,切换到 “ 添 加 / 删除 Windows 组件 ” 页,在 “ Windows 组件向导 ” 对话框中,选中 “ 证书服务 ” 选项,接下来 选择 CA 类型, 选择 “ 独立根 CA ” ,然后为该 CA 服务器起个名字, 设置证书的有效期限 指定证书数据库和证书数据库日志的位置后
申请数字证书 一 制作请求文件 运行 IIS ,在站点上,属性,目录安全性, 服务器证书,然后按照这个向导做下去, 在最后一步,它会要求你将信息保存到 一个文本文件,保存成一个文本文件。 服务器文件
二提交申请 申请证书, 选 择高级申请,选择 “ 使用 base64 编码的 PKCS #10 文件提交一个证书申请,或使 用 base64 编码的 PKCS #7 文件更新证 书申请 ” ,将那个文本文件的内容粘贴到 第一个文本框中。 文件
颁发 IIS 网站证书 虽然完成了 IIS 网站证书的申请后,但这时它还处 于挂起状态,需要颁发后才能生效。 在 “ 控制面板 → 管理工具 ” 中,运行 “ 证书颁发机构 ” 程序。 在 “ 证书颁发机构 ” 左侧窗口中展开目录,选中 “ 挂 起的申请 ” 目录 在右侧窗口找到刚才申请的证书,鼠标右键点击 该证书,选择 “ 所有任务 → 颁发 ” 。
把证书保存到文件 点击 “ 颁发的证书 ” 目录,打开刚刚颁发 成功的证书,在 “ 证书 ” 对话框中切换到 “ 详细信息 ” 标签页。点击 “ 复制到文件 ” 按 钮,弹出证书导出对话框,一路下一步, 在 “ 要导出的文件 ” 栏中指定文件名,最后 点击 “ 完成 ” 。
导入证书 运行 IIS ,在站点上,属性,目录安全性, 服务器证书,然后按照这个向导做下去, 把刚才的文件导入进去 服务器文件
作业 1 简述 pki 的概念, 基本组成部分, 实际应用 2 如何利用证书服务提高局域网的安全性