分类: WINDOWS
2008-03-31 22:59:54
PKI 实验
文件:
PKI 实验.pdf
大小:
1222KB
下载:
下载
作者:liheng
Email:liheng_2006@hotmail.com
看到很多老师把自己做的实验,放到论坛上与大家分享,嘿嘿~~~~~~~~~~~看着自己也有点手痒了,今天我也就来尝试着来贴一次帖子。希望大家多捧场哦,嘿嘿~~~~~~~~~~~~今天我做的实验是:用 PKI(public key infrastructure ,公钥基础设施) 来保证电子邮件的安全。
当你在网络上发送信息时,例如通过 Internet ,这些信息可能会被未经过授权而获取、篡改或执行各种不同类型的攻击行为。而 PKI 可以确保电子邮件、电子商务交易、文件发送等各类信息的发送安全性。
PKI 提供以下功能,来保证信息的安全:
1.) 加密 (Encryption)发送的信息。
2.) 验证信息的真实性与完整性。
PKI 根据公开密钥密码学来提供信息加密与身份验证的功能。而用户需要有一组密钥来支持这些功能:
1.) 公开密钥 (public key) 用户可以将他的公开密钥发送给其他用户。
2.) 私有密钥 (private key) 私有密钥是访用户私有的,且存储在此用户的计算机内,只有自己能够访问。
本次实验的目的如下:
1.) 用户 Bob 利用自己的私有密钥将电子邮件数字签名。
2.) 通过网络将邮件传给用户 Alice.
3.) Alice 利用 Bob 的公开密钥来验证此封电子邮件。
4.) 当 Alice 验证邮件确实是 Bob 发过来的以后,再回复一封邮件给 Bob,并对邮件进行签名和加密。
以上 Alice 必须先取得 Bob 的公开密钥后,才可以利用此密钥来验证电子邮件是否由 Bob 所发送,并确认此邮件是否被动过手脚。而由于只有 Bob 拥有 Bob的私有密钥,因此只有 Bob 才可以对些封电子邮件进行数字签名。说到这里,大家一定觉得很迷惑,到底“数字签名”是如何产生的?又如何用来验证身份的呢?下面我就概要的介绍一下:
1.) Bob 的电子邮件经过“消息散列算法”的运算处理后,产生一个消息摘要,它就好像是“数字指纹”。
2.) Bob 的计算机利用 Bob 的私有密钥将这个消息摘要加密,加密后结果就称为“数字签名”。
3.) Bob 的计算机将原邮件与数字签名一并发送给 Alice.
4.) Alice 的计算机将收到的邮件与数字签名分开处理:
电子邮件重新经过“消息散列算法”的运算处理后,产生一个新的消息摘要。
数字签名经过“公开密钥加密算法”的解密处理后,可推算出原来的消息摘要。
5.)新的消息摘要与推算出的消息摘要应该相同,否则表示这封电子邮件被动过手脚或并非由 Bob 发送来的。
用户除了必须拥有公开公钥一私有密钥外,还必须得申请证书或数字识别码,才可以使用公开密钥与私有密钥来执行信息加密与身份验证的动作。证书就好像你所持有的“驾驶执照”一样,有汽车(密钥)后,还必须得要有驾驶执照(证书)才能开车。而负责发放证书的机构称为“证书认证机构(CA)”。
用户的公开密钥与私有密钥是如何产生的呢?当用户在申请证书时,必须输入申请信息,例如姓名、地址、电子邮件等,这些信息会被发送到一个称为 CSP(Cryptographic service provider)的程序,这个程序已经安装在用户的计算机内或是用户计算机可访问的设备内。
CSP 会自动建立一对密钥,也就是一个公开密钥与一个私有密钥。CSP 会将私有密钥存储到用户计算机的注册表中,然后将证书申请信息与公开密钥一并发送到 CA 。CA 检查这些申请信息后,它会利用 CA 自己的私有密钥将要发放的证书加以签名,然后发放此证书。用户收到证书后,将证书安装到他的计算机内。
证书内包含了拥有证书者的姓名、地址、电子邮件帐号、公开密钥、证书有效期限、发放证书的 CA、CA 的数字签名等信息。
说了这么多,我想大家一定烦了,现在就来开始我的实验吧,首先需要搭建一个 CA (证书颁发机构)。开始啦: