加密与数字证书
一. 网址参考
1. 一文彻底搞懂加密、数字签名和数字证书!(形象)
2. 为什么我们需要数字证书?(包含数字证书的格式,非常详细,有制作数字证书的额外链接)
3. 中间人攻击
5. 一文就让你搞懂 http 和 https 的通信过程及区别
7. 浏览器如何验证HTTPS证书的合法性?(有证书链的例子)
9. Fiddler抓包工具总结(详细)
10. 数字证书结构
11. 彻底搞懂HTTPS的加密原理
二. 实践
1. 查看12306的数字证书,其显示的指纹信息是经过SHA-1加密算法的,与MD5类似
2. 生成自己签名的数字证书, 3步:
1. openssl genrsa 2048 > privatekey.pem (创建 RSA 私有密钥才能创建证书签名请求 (CSR)) 2. openssl req -new -key privatekey.pem -out csr.pem (要创建 CSR,请使用 openssl req 命令,中间会请求输入一系列信息) 3. openssl x509 -req -days 365 -in csr.pem -signkey privatekey.pem -out public.crt (要对证书进行签名,请使用 openssl x509 命令, 即自签名证书)
目录下的文件如下:
csr.pem privatekey.pem public.crt
3. 查看自己签名的数字证书, 用openssl x509命令