10实验二数字证书应用Word格式.docx
《10实验二数字证书应用Word格式.docx》由会员分享,可在线阅读,更多相关《10实验二数字证书应用Word格式.docx(18页珍藏版)》请在冰豆网上搜索。
如图10-1-1所示,通过协议分析器对HTTP会话的解析中可以确定,在无认证模式下,服务器与客户端的Web通信过程是以明文实现的。
2.单向认证(仅服务器需要身份认证)
(1)CA(主机A)安装证书服务
主机A依次选择“开始”|“设置”|“控制面板”|“添加或删除程序”|“添加/删除Windows组件”,选中组件中的“证书服务”,此时出现“Microsoft证书服务”提示信息,单击“是”,然后单击“下一步”。
在接下来的安装过程中依次要确定如下信息:
⏹CA类型(选择独立根CA)
⏹CA的公用名称(userGXCA,其中G为组编号(1-32),X为主机编号(A-F),如第2组主机D,其使用的用户名应为user2D)
⏹证书数据库设置(默认)
在确定上述信息后,系统会提示要暂停Internet信息服务,单击“是”,系统开始进行组件安装。
安装过程中,在弹出的“所需文件”对话框中指定“文件复制来源”为C:
\ExpNIS\Encrypt-Lab\Tools\WindowsCA\i386即可(若安装过程中出现提示信息,请忽略该提示继续安装)。
「注」若安装过程中出现“Windows文件保护”提示,单击“取消”按钮,选择“是”继续;
在证书服务安装过程中若网络中存在主机重名,则安装过程会提示错误;
安装证书服务之后,计算机将不能再重新命名,不能加入到某个域或从某个域中删除;
要使用证书服务的Web组件,需要先安装IIS(本系统中已安装IIS)。
在启动“证书颁发机构”服务后,主机A便拥有了CA的角色。
(2)服务器(主机B)证书申请
「注」服务器向CA进行证书申请时,要确保在当前时间CA已经成功拥有了自身的角色。
⏹提交服务器证书申请
服务器在“开始”|“程序”|“管理工具”中打开“Internet信息服务(IIS)管理器”,通过“Internet信息服务(IIS)管理器”左侧树状结构中的“Internet信息服务”|“计算机名(本地计算机)”|“网站”|“默认网站”打开默认网站,然后右键单击“默认网站”,单击”属性”。
在“默认网站属性”的“目录安全性”页签中单击“安全通信”中的“服务器证书”,此时出现“Web服务器证书向导”,单击“下一步”。
在“选择此网站使用的方法”中,选择“新建证书”,单击“下一步”。
选择“现在准备证书请求,但稍后发送”,单击“下一步”。
填入有关证书申请的相关信息,单击“下一步”。
在“证书请求文件名”中,指定证书请求文件的文件名和存储的位置(默认c:
\certreq.txt)。
单击“下一步”直到“完成”。
⏹通过Web服务向CA申请证书
服务器在IE浏览器地址栏中输入“http:
//CA的IP/certsrv/”并确认。
服务器依次单击“申请一个证书”|“高级证书申请”|“使用base64编码...提交一个申请”进入“提交一个证书申请或续订申请”页面。
打开证书请求文件certreq.txt,将其内容全部复制粘贴到提交证书申请页面的“保存的申请”文本框中,然后单击“提交”,并通告CA已提交证书申请,等待CA颁发证书。
⏹CA为服务器颁发证书
在服务器提交了证书申请后,CA在“管理工具”|“证书颁发机构”中单击左侧树状结构中的“挂起的申请”项,会看到服务器提交的证书申请。
右键单击服务器提交的证书申请,选择“所有任务”|“颁发”,为服务器颁发证书(这时“挂起的申请”目录中的申请立刻转移到“颁发的证书”目录中,双击查看为服务器颁发的证书)。
通告服务器查看证书。
(3)服务器(主机B)安装证书
⏹服务器下载、安装由CA颁发的证书
通过CA“证书服务主页”|“查看挂起的证书申请的状态”|“保存的申请证书”,进入“证书已颁发”页面,分别点击“下载证书”和“下载证书链”,将证书和证书链文件下载到本地。
在“默认网站”|“属性”的“目录安全性”页签中单击“服务器证书”按钮,此时出现“Web服务器证书向导”,单击“下一步”。
选择“处理挂起的请求并安装证书”,单击“下一步”。
在“路径和文件名”中选择存储到本地计算机的证书文件,单击“下一步”。
在“SSL端口”文本框中填入“443”,单击“下一步”直到“完成”。
此时服务器证书已安装完毕,可以单击“目录安全性”页签中单击“查看证书”按钮,查看证书的内容,回答下面问题。
证书信息描述:
。
颁发者:
打开IE浏览器点击“工具”|“Internet选项”|“内容”|“证书”,在“受信任的根证书颁发机构”页签中查看名为userGX的颁发者(也就是CA的根证书),查看其是否存在
⏹服务器下载、安装CA根证书
右键单击certnew.p7b证书文件,在弹出菜单中选择“安装证书”,进入“证书导入向导”页面,单击“下一步”按钮,在“证书存储”中选择“将所有的证书放入下列存储”,浏览选择“受信任的根证书颁发机构”|“本地计算机”如图10-1-2所示。
图10-1-2
CA根证书存储
单击“下一步”按钮,直到完成。
再次查看服务器证书,回答下列问题:
再次通过IE浏览器查看“受信任的根证书颁发机构”,查看名为userGX的颁发者(也就是CA的根证书),查看其是否存在
(3)Web通信
服务器在“默认网站”|“属性”的“目录安全性”页签“安全通信”中单击“编辑”按钮,选中“要求安全通道SSL”,并且“忽略客户端证书”(不需要客户端身份认证),单击“确定”按钮使设置生效。
客户端重启IE浏览器,在地址栏输入http:
//服务器IP/并确认,此时访问的Web页面出现如图10-1-3所示信息。
图10-1-3
页面信息
客户端启动协议分析器,设置过滤条件:
仅捕获客户端与服务器间的会话通信,并开始捕获数据。
客户端在IE浏览器地址栏中输入“https:
//服务器IP/”并确认,访问服务器Web服务。
此时会出现“安全警报”对话框提示“即将通过安全连接查看网页”,单击“确定”,又出现“安全警报”对话框询问“是否继续?
”,单击“是”。
此时客户端即可以访问服务器Web页面了。
访问成功后,停止协议分析器捕获,并在会话分类树中找到含有客户端与服务器IP地址的会话。
在协议解析页面可观察到,服务器与客户端的Web通信过程是以密文实现的,如图10-1-4所示。
图10-1-4
客户端与服务器间信息加密通信
3.双向认证(服务器和客户端均需身份认证)
(1)服务器要求客户端身份认证
服务器在“默认网站”|“属性”的“目录安全性”页签中单击“编辑”按钮,选中“要求安全通道SSL”,并且“要求客户端证书”,单击“确定”按钮使设置生效。
(2)客户端访问服务器
//服务器IP”访问服务器Web服务。
此时弹出“安全警报”对话框,提示“即将通过安全连接查看网页”,单击“确定”,又弹出“安全警报”对话框询问“是否继续?
出现“选择数字证书”对话框,但是没有数字证书可供选择。
单击“确定”,页面出现提示“该页要求客户证书”。
(3)客户端(主机C)证书申请
「注」客户端向CA进行证书申请时,要确保在当前时间CA已经成功拥有了自身的角色。
⏹登录CA服务主页面
客户端在确认CA已经启动了“证书颁发机构”服务后,通过IE浏览器访问http:
//CA的IP/certsrv/,可以看到CA证书服务的主页面。
⏹客户端提交证书申请
在主页面“选择一个任务”中单击“申请一个证书”,进入下一页面。
在证书类型页面中选择“Web浏览器证书”,进入下一页面。
在“Web浏览器证书-识别信息”页面中按信息项目填写自己的相关信息,下表是一个填写实例。
信息
填写内容
姓名
userGX,其中G为组编号(1-32),X为主机编号(A-F),如第2组主机F,其使用的用户名为user2F
电子邮件
userGX@CServer.Netlab
公司
Netlab
部门
PKI
市/县
Changchun
省
Jilin
国家(地址)
CN
上述信息填写完毕后,单击“提交”按钮提交识别信息,当页面显示“证书挂起”信息时,说明CA已经收到用户的证书申请,但是用户必须等待管理员颁发证书。
单击页面右上角的“主页”回到证书服务主页面。
在“选择一个任务”中单击“查看挂起的证书申请的状态”进入下一页面,会看到“Web浏览器证书(提交申请时间)”。
单击自己的证书申请,这时会看到证书的状态依然是挂起状态。
接下来请CA为客户端颁发证书。
⏹CA为客户端颁发证书
通告客户端查看证书。
⏹客户端下载、安装证书链
客户端重新访问CA证书服务主页面,单击“查看挂起的证书申请的状态”,然后单击自己的证书申请。
此时页面显示“证书已颁发”。
单击“安装此证书”,对于弹出的“安全性警告”对话框选择“是”,这时页面显示信息“您的新证书已经成功安装”。
(4)客户端查看颁发证书
客户端单击IE浏览器的“工具”|“Internet选项”|“内容”|“证书”,会在“个人”页签中看到同组主机CA颁发给自己的证书,如图10-1-5所示。
图10-1-5
IE浏览器证书
(5)客户端再次通过https访问服务器
客户端重新运行IE浏览器并在地址栏中输入“https:
//服务器IP/bbs”并确认,访问服务器的Web服务。
此时出现“安全警报”对话框提示“即将通过安全连接查看网页”,单击“确定”,又出现“安全警报”对话框询问“是否继续?
出现“选择数字证书”对话框,选择相应的数字证书,单击“确定”。
出现“安全信息”提示“是否显示不安全的内容”,单击“否”。
此时,客户端即可以访问服务器的Web服务。
(二)安全电子邮件
实验角色说明如下:
实验主机
实验角色
主机A、D
CA(证书颁发机构)
主机B、E
邮件用户1
主机C、F
邮件用户2
1.主机B、C创建邮件账户
具体创建方法参照附录A—OutlookExpress配置方法。
通过单击“发送和接收”按钮或Ctrl+M快捷键,测试邮件账户是否创建成功。
2.邮件用户(主机B、C)申请电子邮件保护证书
(1)邮件用户在IE浏览器地址栏中输入“http:
//CA的IP/certsrv/”并确认,访问CA的证书申请页面。
(2)邮件用户通过“申请一个证书”|“高级证书申请”|“创建并向此CA提交一个申请”,申请一张电子邮件保护证书。
在“识别信息”中填入相关信息。
在填写识别信息时,姓名填写userGX,其中其中G表示所属实验组号(1-32),X表示主机编号(A-F),如第2组主机D姓名为user2D;
电子邮件地址必须是本机OutlookExpress使用的邮件地址userGX@CServer.Netlab。
在“需要的证书类型”中选择“电子邮件保护证书”。
在“密钥选项”中选中“标记密钥为可导出”,其它选项保持默认设置,然后提交信息。
(3)CA为邮件用户颁发电子邮件保护证书。
(4)邮件用户通过CA“证书服务主页”|“查看挂起的证书申请的状态”|“安装证书”将数字证书安装好。
3.邮件用户设置OutlookExpress
依次单击“开始”|“程序”|“OutlookExpress”,通过OutlookExpress“工具”|“帐户”|“邮件”|“属性”,打开“属性”选项卡,单击“安全”页签,在“签署证书”中单击“选择”按钮,出现“选择默认帐户数字ID”对话框,选择安装好的数字证书,单击“确定”|“确定”|“关闭”使设置生效。
4.发送签名电子邮件(未加密)
(1)邮件用户创建新邮件
单击OutlookExpress中的“创建邮件”,在“收件人”栏写入对方(另外一个邮件用户)的邮件地址,主题和内容任意,先不要发送。
(2)使用数字证书为邮件签名
单击新邮件的“工具”|“数字签名”为邮件签名,此时会在收件人后面出现一个签名的小标志。
(3)发送邮件
单击新邮件的“发送”按钮将邮件发出。
(4)邮件用户接收到对方(另外一个邮件用户)的邮件并查看签名
单击OutlookExpress的“发送/接收”按钮,接收对方发来的邮件。
当打开对方发来的邮件时,可看到邮件有数字签名的标识和提示信息。
单击“继续”按钮即可阅读到邮件的内容。
5.发送加密电子邮件
(1)邮件用户使用包含对方数字签名的邮件获得对方的数字证书
邮件用户打开收到的有对方签名的电子邮件。
单击此邮件的“文件”|“属性”|“安全”,单击“查看证书”按钮将数字标识添加到通讯簿中,此时对方的数字证书即被添加到自己的通讯簿中。
打开IE浏览器,在“工具”|“Internet选项”|“内容”|“证书”|“其他人”中,查看刚添加的数字证书(确定证书存在)。
(2)邮件用户创建新邮件并加密
邮件用户单击OutlookExpress中的“创建邮件”按钮,在“收件人”栏中写入对方的邮件地址,主题和内容任意。
单击新邮件的“工具”|“加密”为邮件加密,此时会在收件人后面出现一个加密的小标志。
单击“发送”按钮发送邮件。
(3)接收对方的加密邮件并阅读该邮件
打开收到的加密邮件时,会看到“安全警告”的提示信息,单击“继续”即可阅读到此邮件的内容。
6.邮件用户验证邮件的加密作用
(1)导出证书
邮件用户单击IE浏览器的“工具”|“Internet选项”|“内容”|“证书”,确认在“个人”页签中存在CA颁发给自己的证书。
在“个人”页签中选中CA颁发给自己的证书,单击“导出”,此时出现“证书导出向导”,单击“下一步”。
在“导出私钥”中选择“是,导出私钥”,单击“下一步”。
“导出文件格式”选择默认设置,单击“下一步”。
输入密码并确认密码,单击“下一步”。
在“要导出的文件”中为导出的证书指定文件名和路径,单击“下一步”直到“完成”,此时“证书导出向导”提示“导出成功”,单击“确定”。
此时可以在指定的位置上看到指定文件名的.pfx格式的证书备份文件。
(2)删除证书后查看加密邮件
主机B、主机C向对方发送加密邮件。
主机B、主机C单击OutlookExpress的“发送/接收”确认接收到对方的加密邮件后,不打开邮件阅读。
在IE浏览器的“工具”|“Internet选项”|“内容”|“证书”选项卡的“个人”页签中选中刚备份的证书,单击“删除”出现提示信息“不能解密用证书加密的数据,要删除证书吗?
”,单击“是”将此证书删除。
主机B、主机C到OutlookExpress中阅读对方发来的加密邮件,会看到信息“对邮件加密时出错”而无法阅读邮件。
(3)导入证书后查看加密邮件。
邮件用户到指定位置找到证书的备份文件,双击备份文件出现“证书导入向导”,单击“下一步”。
在“要导入的文件”中指定要导入的备份文件,单击“下一步”。
输入密码,单击“下一步”。
在“证书存储”中,选择“将所有证书放入下列存储”,单击“浏览”,选择“个人”,单击“确定”|“下一步”直到“完成”。
“证书导入向导”提示“导入成功”,此时又可以在IE浏览器的“工具”|“Internet选项”|“内容”|“证书”会在“个人”页签中看到CA颁发给自己的证书。
主机B、主机C到OutlookExpress中阅读刚才无法阅读的加密邮件,当打开加密邮件时,会看到“安全警告”的提示信息,单击“继续”后,即可阅读到此邮件的内容。
四、考核方式
实验过程的考核点主要包括:
操作过程正确、配置结果正确、解决问题的能力等。
实验报告的考核点主要包括:
报告格式规范、语言规范、实验过程记录正确、实验体会深刻、思考题回答正确等。
五、思考题
1.如果用户将根证书删除,用户证书是否还会被信任?
2.对比两次协议分析器捕获的会话有什么差异?
3.向对方发送加密邮件时应使用谁的密钥?
是密钥对中的公钥还是私钥?
附:
实验原理
一.PKI简介
PKI是PublicKeyInfrastructure的缩写,通常译为公钥基础设施。
称为“基础设施”是因为它具备基础设施的主要特征。
PKI在网络信息空间的地位与其他基础设施在人们生活中的地位非常类似。
电力系统通过延伸到用户端的标准插座为用户提供能源;
PKI通过延伸到用户的接口为各种网络应用提供安全服务,包括身份认证、识别、数字签名、加密等。
一方面PKI对网络应用提供广泛而开放的支撑;
另一方面,PKI系统的设计、开发、生产及管理都可以独立进行,不需要考虑应用的特殊性。
目前,安全的电子商务就是采用建立在PKI基础上的数字证书,通过对要传输的数字信息进行加密和签名来保证信息传输的机密性、真实性、完整性和不可否认性(又称非否认性),从而保证信息的安全传输和交易的顺利进行。
PKI已成为电子商务应用系统、乃至电子政务系统等网络应用的安全基础和根本保障。
PKI的主要目的是通过自动管理密钥和证书,为用户建立起一个安全的网络运行环境,使用户可以在多种应用环境下方便的使用加密和数字签名技术,从而保证网上数据的完整性、机密性、不可否认性。
数据的完整性是指数据在传输过程中不能被非法篡改;
数据的机密性是指数据在传输过程中,不能被非授权者偷看;
数据的不可否认性是指参加某次通信交换的一方事后不可否认本次交换曾经发生过。
二.证书申请
1.PKI组件
PKI主要包括认证中心CA、注册机构RA、证书服务器、证书库、时间服务器和PKI策略等。
(1)CA
CA是PKI的核心,是PKI应用中权威的、可信任的、公正的第三方机构。
CA用于创建和发布证书,它通常为一个称为安全域的有限群体发放证书。
创建证书的时候,CA系统首先获取用户的请求信息,其中包括用户公钥(公钥一般由用户端产生,如电子邮件程序或浏览器等),CA将根据用户的请求信息产生证书,并用自己的私钥对证书进行签名。
其他用户、应用程序或实体将使用CA的公钥对证书进行验证。
如果一个CA系统是可信的,则验证证书的用户可以确信,他所验证的证书中的公钥属于证书所代表的那个实体。
CA还负责维护和发布证书废除列表CRL。
当一个证书,特别是其中的公钥因为其他原因无效时,CRL提供了一种通知用户和其他应用程序的中心管理方式。
CA系统生成CRL以后,可以放到LDAP(轻量级目录访问协议)服务器中供用户查询或下载,也可以放置在Web服务器的合适位置,以页面超级连接的方式供用户直接查询或下载。
CA的核心功能就是发放和管理数字证书,具体描述如下:
∙接收验证最终用户数字证书的申请。
∙确定是否接受最终用户数字证书的申请。
∙向申请者颁发或拒绝颁发数字证书。
∙接收、处理最终用户的数字证书更新请求。
∙接收最终用户数字证书的查询、撤销。
∙产生和发布证书吊销列表(CRL)。
∙数字证书的归档。
∙密钥归档。
∙历史数据归档。
根CA证书,是一种特殊的证书,它使用CA自己的私钥对自己的信息和公钥进行签名。
(2)RA
RA负责申请者的登记和初始鉴别,在PKI体系结构中起承上启下的作用,一方面向CA转发安全服务器传输过来的证书申请请求,另一方面向LDAP服务器和安全服务器转发CA颁发的数字证书和证书撤消列表。
(3)证书服务器
证书服务器负责根据注册过程中提供的信息生成证书的机器或服务。
(4)证书库
证书库是发布证书的地方,提供证书的分发机制。
到证书库访问可以得到希望与之通信的实体的公钥和查询最新的CRL。
它一般采用LDAP目录访问协议,其格式符合X.500标准。
(5)时间服务器
提供单调增加的精确的时间源,并且安全的传输时间戳,对时间戳签名以验证可信时间值的发布者。
(6)PKI策略
PKI安全策略建立和定义了一个组织信息安全方面的指导方针,同时也定义了密码系统使用的处理方法和原则。
它包括一个组织怎样处理密钥和有价值的信息,根据风险的级别定义安全控制的级别。
一般情况下,在PKI中有两种类型的策略:
一是证书策略,用于管理证书的使用,比如,可以确认某一CA是在Internet上的公有CA,还是某一企业内部的私有CA;
另外一个就是CPS(CertificatePracticeStatement证书操作管理规范)。
一些商业证书发放机构(CCA)或者可信的第三方操作的PKI系统需要CPS。
这是一个包含如何在实践中增强和支持安全策略的一些操作过程的详细文档。
它包括CA是如何建立和运作的,证书是如何发行、接收和废除的,密钥是如何产生、注册的,以及密钥是如何存储的,用户是如何得到它的等等。
现在为防止CPS泄露太多的信息,准备使用一种新的文件类型,即PKI信息披露规范PDS。
三.证书应用
数字证书是由权威、公正的第三方CA机构所签发的符合X.509标准的权威的电子文档。
1.数据加密
数字证书技术利用一对互相匹配的密钥进行加密、解密。
当你申请证书的时候,会得到一个私钥和一个数字证书,数字证书中包含一个公钥。
其中公钥可以发给他人使用,而私钥你应该保管好、不能泄露给其他人,否则别人将能用它以你的名义签名。
当发送方向接收方发送一份保密文件时,需要使用对方的公钥对数据加密,接收方收到文件后,则使用自己的私钥解密,如果没有私钥就不能解密文件,从而保证数据的安全保密性。
这种加密是不可逆的,即使已知明文、密文和公钥也无法推导出私钥。
2.数字签名
数字签名是数字证书的重要应用之一,所谓数字签名是指证书用户使用自己的私钥对原始数据的哈希变换后所得消息摘要进行加密所得的数据。
信息接收者使用信息发送者的证书对附在原始信息后的数字签名进行解密后获得消息摘要,并对收到的原始数据采用相同的杂凑算法计算其消息摘要,将二者进行对比,即可校验原始信息是