HTTPS可以为我们净化网络,给我们提供安全和保障 。

文章插图
可以看出,我们需要引入大家都依赖的第三方,帮助我们确认身份的关键信息 。这时候就该CA(Certificate Authority)机构闪亮登场了,这个中间人做了几件事:
- 签发证书:就像是一个认证一样,证明你就是你,咱们以网页服务为例,中间机构需要确认的首要信息就是这个域名是属于你的,如何向CA证明这个域名是属于你的常见方法又有HTTP-01和DNS-01,简单的来说就是如果你拥有该域名,要么你可以修改该域名的dns记录,要么你有权限让dns指向某台服务器,反正就是你能管理该域名 。认证通过后,向你颁发的证书里就有相关的信息,比如域名以及服务器ip地址等信息,就是为了说明,睢,这张证书的合理工作范畴在该域名和服务器之间,超出了就认为不合法 。
- 向浏览器提供根证书,也就是该机构的通用公钥,所有的由该机构颁发的证书加密的信息,这个根证书都能解密 。
- 向浏览器证明,浏览器当前所连接的服务器,是否是该证书的合法持有者 。
- 用户在浏览器地址栏输入https://sunwei.xyz
- 浏览器会自动下载该网址的服务器证书,这里面会包含该网站的公钥,并且被私钥加密了
- 浏览器用预装的各大CA机构根证书,进行解密,解密成功就意味着这是由CA机构正式颁发的证书,如假包换
- 浏览器拿着解密后的证书信息,将里面的详细信息发送到CA机构,确认当前这个合法的证书,是否被当前正在连接的服务器合法持有 。
- 认证都通过后,浏览器会动态生成对称加密密钥,并用公钥进行另密发送给服务器,双方确认后 。浏览器和服务器将用这副对称密钥进行通讯,全世界有且只有他们俩能听懂他们在说什么 。
HTTPS是怎么工作的

文章插图
从网络OSI七层协议简化版中可以看出,HTTPS属于应用层,那这就意味着运用了HTTPS协议的通讯在进行UDP/TCP连接前,就已经对数据进行了加密操作,如下图:

文章插图
这样也能看出分层架构的好处,各司其职 。再放大到七层协议,可以看到实际发生作用的是Session层:

文章插图
最后附上全景图:

文章插图
全文完
【SSL/TLS 趣话网络安全传输协议HTTPS】
推荐阅读
- Linux系统管理命令:openssl
- 如何在 Go 中使用 TLS 连接 MongoDB
- SSL和TLS部署注意事项
- 怎样判断浏览器浏览器ssl证书是不是生效了?
- 趣话茶马古道及马帮文化
- nginx LNMP环境安装SSL安全证书,全站开启HTTPS访问
- WordPress全站SSL插件:Really Simple SSL
- 如何理解JAVA类装载器ClassLoader?高级开发才懂的技术点
- 在线安全威胁:隐藏在SSL中的加密恶意软件
- SSL VPN基本工作原理介绍
