HTTP和HTTPS

2018-12-05  本文已影响0人  gattonero

http和https的差别

谈到https和http的差别,首先直观上我们可以看到主流浏览器都会给出https和http协议的标识,从中可以明显感觉到https是一种相对安全的协议。

那么安全的具体含义是什么呢,其实https本身并不是一个独立的协议,而是由http和加密协议组成的(例如SSL/TLS协议)。


HTTP协议和HTTPS协议

https连接的建立过程

从中我们看出,https使用加密协议确保了数据传输过程中的安全性,起到了防监听,防篡改,防伪装的作用,那么加密协议在https连接的建立过程怎样起作用的?

https连接的建立过程

上面是一个图示过程,我们一步步分析
第一步,第二步:前面两步没有问题,因为存在许多符合规范的加密协议,客户端与服务器先要确定一个加密协议。

第三步:服务器需要给出CA证书,我们只需要知道这个证书包含了服务器的公钥,相关信息和签名,并且可以通过这些信息证明服务器的有效性,具体这个证书是如何颁发给服务器的,见下文。

第四步:客户端根据CA证书验证证书和公钥的有效性

第五步:客户端随机生成一个用于对称加密的秘钥,用服务器给的公钥进行加密,传送到服务器(即使被截获也无法破译,因为黑客不知道服务器的私钥)

第六步:服务器用私钥解析出该对称加密秘钥,然后用该秘钥对要发送的数据进行加密

连接建立之后服务器可以和客户端之间互相发送通过对称秘钥加密的数据,由于第三者不知道秘钥,自然也就无法破译TCP数据包中的请求,连接的安全性就得到了保证

相关问题

参考:
https://www.geeksforgeeks.org/whats-difference-http-https/
https://www.cnblogs.com/handsomeBoys/p/6556336.html
http://www.ruanyifeng.com/blog/2016/08/http.html
http://www.ruanyifeng.com/blog/2016/08/migrate-from-http-to-https.html
http://www.ruanyifeng.com/blog/2011/02/seven_myths_about_https.html

上一篇下一篇

猜你喜欢

热点阅读