双证书体系keyusage扩展——Outlook使用证书发送加密签名邮件

网络认证第十二讲作业

为冀州等地区用户提供了全套网页设计制作服务,及冀州网站建设行业解决方案。主营业务为成都网站设计、网站制作、冀州网站设计,以传统方式定制建设网站,并提供域名空间备案等一条龙服务,秉承以专业、用心的态度为用户提供真诚的服务。我们深信只要达到每一位用户的要求,就会得到认可,从而选择与我们长期合作。这样,我们也可以走得更远!

一.作业要求
测试邮件客户端软件(如Outlook、Foxmail等)是否支持key usage扩展
二.使用工具
OpenSSL,OutLook,FoxMail
三.实验过程

  1. 使用OpenSSL生成证书
    (1). 首先生成私钥pravate.pem
    在命令行中键入:genrsa -des3 -out private.pem 2048,使用RSA算法生成2048位私钥,并使用3DES算法来加密key。
    双证书体系key usage扩展——Outlook使用证书发送加密签名邮件
    输入DES的加密密钥之后,生成private.pem文件
    双证书体系key usage扩展——Outlook使用证书发送加密签名邮件
    (2). 生成带有扩展的证书
    实验要求测试邮件客户端是否支持key usage扩展,所以生成两个证书加以区分测试。cacert2.crt的key usage扩展为Digital Signature, Non-Repudiation, Key Encipherment (e0),证书可以用来加密和签名;cacert3.crt的key usage扩展为Digital Signature, Non-Repudiation,没有了加密功能,只能用来签名。
    在openssl.cnf文件中修改[v3_req]的keyUsage字段内容:
    cacert2.crt的配置 → keyusage= nonRepudiation, digitalSignature, keyEncipherment
    cacert3.crt的配置 → keyusage= nonRepudiation, digitalSignature
    双证书体系key usage扩展——Outlook使用证书发送加密签名邮件

在命令行中键入:req -new -x509 -days 3650 -key private.pem -out cacert2.crt -config openssl.cnf -extensions v3_req,生成带有扩展的证书。同理,修改cnf配置文件后生成cacert3。
双证书体系key usage扩展——Outlook使用证书发送加密签名邮件
证书生成时要求输入证书信息,包括国家、组织名称、邮箱等,在此处输入的邮箱地址要与之后登陆测试的邮箱地址一致。
生成证书如下图所示,图左为cacert2.crt带有keyEncipherment加密功能的证书,图右为cacert3.crt不可用于加密的证书:
双证书体系key usage扩展——Outlook使用证书发送加密签名邮件
(3). 生成pfx文件
使用pkcs12将证书和对应的私钥信息进行打包,以口令保护私钥,生成pfx文件,以便将证书导入计算机的“个人”证书中,并在邮件客户端配置。
在命令行中键入:pkcs12 -export -out cacert2.pfx -inkey private.pem -in cacert2.crt
双证书体系key usage扩展——Outlook使用证书发送加密签名邮件
输入之前用于3DES算法用于加密私钥的密钥,验证通过后,再设置导出私钥的口令。分别生成cacert2.pfx和cacert3.pfx文件。
双证书体系key usage扩展——Outlook使用证书发送加密签名邮件

  1. 测试OutLook是否支持key usage扩展
    为了在OutLook中配置个人证书,首先要在浏览器中,将证书导入“个人”,并在“受信任的根证书颁发机构”中信任自己生成证书的颁发者。
    双证书体系key usage扩展——Outlook使用证书发送加密签名邮件
    (1). keyusage= nonRepudiation, digitalSignature, keyEncipherment
    首先选择cacert2.crt(带有Key Encipherment可用于加密的证书)配置OutLook,该证书既可以用于签名也可以用于加密,如下图所示:
    双证书体系key usage扩展——Outlook使用证书发送加密签名邮件
    然后发送加密签名测试邮件,收件人“xx的is”地址为“xxxxx@is.xx.xx”,事先已经在联系人中配置好该收件人的证书。在发送时选择加密和签署,如下图所示:

    双证书体系key usage扩展——Outlook使用证书发送加密签名邮件
    收件人“xx的is”成功收到并打开该邮件,而且该邮件是被加密和签名过的,如下图所示:
    双证书体系key usage扩展——Outlook使用证书发送加密签名邮件
    (2). keyusage= nonRepudiation, digitalSignature
    再从OutLook配置中更换证书,选择cacert3.crt(没有Key Encipherment不可用于加密的证书)。选择签名证书时,弹出了两个可选证书,其中包括cacert3.crt,该证书可用于签名。
    双证书体系key usage扩展——Outlook使用证书发送加密签名邮件
    然而再选择加密证书,弹出选择证书中只有一个证书,无法选择cacert3.crt,可看出OutLook已经识别出来cacert3.crt不带有keyEncipherment的Key Usage扩展,所以无法用于加密。
    双证书体系key usage扩展——Outlook使用证书发送加密签名邮件
    再尝试发送加密并签名的邮件,无法发送邮件,提示没有可用于加密的证书。

    尝试发送只签名不加密的邮件,可以发送成功。

四.实验结论
本次实验测试了OutLook客户端。
OutLook支持Key Usage扩展,当证书Key Usage扩展带有nonRepudiation, digitalSignature, keyEncipherment时,证书可以用于发送加密并签名的邮件,而不带keyEncipherment时,OutLook无法使用证书发送加密邮件。
FoxMail 7.2版本并不支持数字证书配置,更无从谈起是否支持Key Usage扩展了。但是该客户端拥有加密邮件的功能,保证了邮件机密性,却无法保证邮件的真实性完整性。可见OutLook在邮件安全方面做得比FoxMail全面并专业。


新闻名称:双证书体系keyusage扩展——Outlook使用证书发送加密签名邮件
链接分享:http://scyanting.com/article/jpejjo.html