流程理解如下:
- 向CA权威证书机构,申请ssl证书(绑定信息,如域名公司信息等)
- 在服务器上使用ssl证书(nginx 443端口使用证书)
server {
listen 443;
server_name xxxx.com;
index index.php index.htm index.html;
ssl on;
ssl_certificate /xxxx/21460427.pem;
ssl_certificate_key /xxxx/21457.key;
接下来通讯开始:
- 浏览器A向服务器S 发请求
- 服务器将ssl证书公钥,传给浏览器
- 浏览器将证书向CA请求,认证证书是否是正版,服务器是否是本人
- 认证成功后,浏览器生成对称加密的密码,把请求信息和密码公钥用服务器发来的证书公钥加密,传给服务器
- 服务器用私钥解开浏览器传来的信息,得到数据和浏览器发来的公钥密码
6.接下来服务器开始返回信息,用浏览器的公钥密码加密数据,传给浏览器 - 浏览器用自己的私钥解密,得到数据
- 开始重复6、7操作

网友评论