HTTPS
HTTP协议是明文传输的,并且不能验证对方的身份,而且不能保证数据的完整性。而当我们在网络上进行购物电子交易时,电子网银转账时,这种方式就显得很不安全了。如果黑客截取了我们和服务器端的通信数据,那么黑客就能获取我们的一些敏感信息了。
在此基础上加入SSL协议,SSL协议加在了传输层和应用层之间。在加入了SSL协议后,HTTPS相比HTTP更加的安全,其对数据的传输进行了加密处理,并且能验证通信双方的身份,还保证了数据传输过程的完整性。这样,即使黑客截取了我们和服务器之间的通信数据,它也获取不到任何有用的信息。
需要说明的是,SSL协议是独立于 HTTP 的协议,所以不光是 HTTP 协议,其他运行在应用层的 SMTP和 Telnet 等协议均可配合 SSL 协议使用。可以说 SSL 是当今世界上应用最为广泛的网络安全技术。

SSL协议的工作过程
首先,这需要服务器拥有SSL证书,SSL证书是需要向第三方CA机构申请的,现在大部分的SSL证书都是要付费申请的。
我们拿 baidu.com为例:百度首先利用公钥密码体制生成一对公私钥,私钥自己保存着,然后将公钥和baidu.com的一些身份信息发送给第三方可信任CA机构,CA机构收到百度的申请之后,将执行一些必要的步骤,以确信请求确实由百度发送而来,并且这些信息是正确的。然后,认证中心对百度发来的公钥和百度的身份信息进行数字签名,生成数字证书,然后发送给百度。数字证书里面包含了百度的公钥、百度的身份信息 和 第三方CA机构的数字签名。
那么百度拥有了SSL数字证书之后,我们和百度之间是如何工作的呢?
客户端访问 https://www.baidu.com ,要求与百度Web服务器建立SSL连接
百度Web服务器接收到客户端请求后,会将网站的证书信息发送给客户端
客户端收到百度的证书信息后,通过证书上第三方可信任机构CA的签名,验证证书的真假。
验证真实性之后,客户端的浏览器与百度Web服务器开始协商SSL连接的安全等级,也就是信息加密的等级。
客户端的浏览器根据双方同意的安全等级,建立会话密钥对,然后利用网站证书中的公钥将会话密钥对的公钥进行加密,并发送给百度Web服务器
百度Web服务器利用自己的私钥解密出会话密钥对的公钥。所以现在我们有了百度的公钥,百度也有了我们浏览器会话密钥对的公钥
浏览器和百度Web服务器分别利用对方的公钥对数据进行加密传输。
参考链接:HTTPS协议工作原理(SSL数字证书)
HTTPS协议通过SSL协议提供加密处理和身份验证,确保数据传输安全。SSL证书由第三方CA机构验证并发放,客户端通过证书验证服务器身份,协商安全等级并建立会话密钥,实现安全通信。

被折叠的 条评论
为什么被折叠?



