03_数字证书实验

发布时间 2023-03-26 11:36:32作者: cyny666

《信息安全综合实践》实验报告

数字证书

一、实验目的
  1. 了解密码技术的应用
  2. 学习OpenSSL 的相关命令及应用, 了解数字证书的管理
  3. 了解数字证书的应用
二、实验内容
内容 实验结果
1) OpenSSL加解密 - [ ] 失败 - [√ ] 成功
2) OpenSSL证书管理 - [ ] 失败 - [ √] 成功
三、相关命令(24分)
  1. 文件摘要命令
    openssl dgst -sha256 test

  2. 文件加解密命令
    加密:生成私钥openssl genrsa -out user.key 1024
    生成相应公钥:openssl genrsa -in user.key 1024 -pubout -out user_pub,key
    加密:openssl rsault -encrypt -in test -inkey user_pub.key -pubin -out test.en
    解密:openssl rsautl -decrypt -in test.en -inkey user.key -out test.de

  3. 证书管理命令

  • 签发CA根证书
    openssl genpkey -algorithm RSA -out cakey.pem -aes256
    openssl req -new -key cakey.pem -out cacsr.pem
    openssl x509 -req -in cacsr.pem -signkey cakey.pem -out cacert.pem

  • 签发客户证书
    openssl genrsa -out client.key 4096
    openssl req -new -key client.key -out client.csr
    openssl ca -in client.csr -out client.crt -cert cacert.crt -keyfile cakey.key

  • 撤销客户证书
    openssl ca -keyfile private/cakey.pem -cert cacert.pem -revoke certs/01.pem

  • 查看证书撤销列表
    openssl ca -gencrl -out client.crl -cert cacert.pem -keyfile private/cakey.pem
    openssl crl -in client.crl -text -noout

四、分析和思考(66分)
  1. 在OpenSSL的文件对称加密、非对称加密以及文件摘要中你分别采用的是何种算法,密钥长度各是多少?请利用openssl speed命令或其它命令测试这三种算法的速度(可设计测试方案),对结果进行分析,并总结不同算法的特点及各自用途。(16分)
    对称加密采用的算法是AES,密钥长度为256位
    非对称加密采用的算法是RSA,密钥长度为2048位
    文件摘要采用的算法是SHA-256,摘要长度为256位
    AES的速度分析:
    RSA的速度分析:
    sha的速度分析:
    AES在不同块大小的数据上都有着较快的速度,同时具有可靠的安全性和广泛的应用,可适用于对大量数据进行高效加密的场景。
    RSA算法具有更高的安全性和更灵活的密钥管理,但是在加密和解密大量数据时速度较慢。适用于对安全性要求较高,但数据量比较小的场景。
    SHA算法是一种哈希算法,算法速度相对较快,适用于快速计算数据摘要的场景。

  2. 查看浏览器内置证书及某常用网页的SSL证书,各选一个说明证书的下列信息,给出相应截图(各给至少2个截图)。(10分)



    字段 常用网页SSL证书 浏览器内置证书
    证书所有方 store.steampowered.com AAA Certificate Services
    证书发行方 DigiCert SHA2 Extended Validation Server CA AAA Certificate Services
    证书用途 证明身份 证明身份、确保软件来自发布者
    证书有效期 不晚于2023/12/18 GMT+8 07:59:59 20040101到20290101
    签名算法 PKCS #1,带有 RSA 加密的 SHA-256 sha1rsa
    密钥用途 用来完成加密和解密 用来完成加密和解密
    增强型密钥用途(如有) 客户端身份验证、代码签名、加密文件系统
  3. 请分别贴图展示证书签发的结果和证书内容(不超过4张图片),并分析在证书管理中可能存在的2-3个安全威胁,并给出防范建议。(20分)
    签发结果:
    证书内容:
    安全威胁:1.RSA数字证书密钥存在被破解的可能性
    2.证书过期会使服务器无法与客户端进行通信。
    3.攻击者可以通过伪造证书来进行中间人攻击。
    安全建议:1.保护私钥,对私钥进行加密保护,防止未经授权的人员获取。
    2.及时更新证书,避免证书过期。可以使用证书管理工具来监视证书过期日期。

  4. 请分别贴图展示CRL列表签发的结果和CRL列表内容(2张图片)。试分析在证书撤销列表CRL机制中可能存在的2-3个安全威胁,并给出防范建议。(20分)


    安全威胁:1.CRL将为被撤销的证书列入crl中,如果客户端相信这个crl,就会拒绝有效的证书。
    2.CRL过期:CRl如果过期客户端就无法及时得知证书的撤销状态。应该设置合适的过期时间并及时更新CRL文件。
    3 Crl未及时更新,导致吊销的证书仍然有效。
    防范建议:1.使用数字签名对CRL文件进行签名:确保CRL文件的真实性。签名公钥可以放进证书中,以便客户端验证CRL文件的真实性。
    2.及时更新CRL文件:可以使用CRL管理工具来监视CRL过期日期,并在crl过期前自动更新CRL文件。

五、实验总结(收获和心得)(5分)

对于openssl关于证书的管理有了深刻的认识,以及对于其中一些危险有了初步的了解。

六、尚存问题或疑问、建议(5分)

对于证书管理工具如何管理证书比较好奇