阅读背景:

CA数字证书构成及验证过程及openssl生成证书

来源:互联网 
CA数字证书的构成与生成过程 网站信息+网站公钥 ==== hash算法 == 》 摘要 ===== CA私钥加密 ====== 》数字签名 网站公钥+网站信息+数字签名========== 构成 ===========》数字证书 客户端B访问服务端A证书校验过程 Client B======== 访问 ===========》服务端A(返回给B自己的数字证书) Client B: 1)判别证书有效性,证书有效期,证书颁发机构, 证书是否被吊销(需连通CA校验CRL,CRL有效期,超过有效期浏览器或者服务器会向CA机构连接获取新的CRL)等; 2)根据证书找到对应CA公钥(浏览器保有公钥),解密数字签名获取网站信息网站公钥的hash摘要; 利用相同的hash算法对网站信息网站公钥生成摘要; 两个摘要比较,判别网站信息以及网站公钥是否被篡改; 3)生成随机字符串X,利用A的公钥对X进行加密,并传递给服务端A,服务端A利用私钥对数据进行解密获取X; 4)B与A之间通过X利用对称加密算法对传递数据进行加密与解密。 利用openssl生成证书文件 1)创建密钥 使用openssl工具生成一个RSA私钥 openssl genrsa -des3 -out server.key 4096 注意:生成私钥,需要提供一个至少4位,最多1023位的密码。 2)生成CSR(证书签名请求) openssl req -new -key server.key -out server.csr 说明:需要依次输入国家,地区,城市,组织,组织单位,Common Name和Email。 其中Common Name,可以写自己的名字或者域名,如果要支持https,Common Name应该与域名保持一致,否则会引起浏览器警告。 可以将证书发送给证书颁发机构(CA),CA验证过请求者的身份之后,会出具签名证书,需要花钱。 另外,如果只是内部或者测试需求,也可以使用OpenSSL实现自签名。 3)生成自签名证书 openssl x509 -req -days 7300 -in server.csr -signkey server.key -out server.crt 参考 CA数字证书的构成与生成过程 网站信息+网站公钥 ==== hash算法 == 》 摘要 ====



你的当前访问异常,请进行认证后继续阅读剩余内容。

分享到: