何为HTTPS和TLS/SSL
HTTPS是以安全为目标的 HTTP 通道,在HTTP的基础上通过传输加密和身份认证保证了传输过程的安全性
TLS/SSL又称传输层安全性协议 TLS及其前身安全套接层 SSL是一种安全协议
HTTPS与TSL/SSL的关系
而HTTPS与TLS/SSL可以理解为HTTPS = HTTP + TLS/SSL,HTTP作为互联网上应用最为广泛的一种网络协议,可以使得浏览器更高效,然而,其也暴露了一些弊端,若是黑客截取了web浏览器与服务器之间地传输报文就可以直接获取到其中的信息。因此就需要一种以安全为目的HTTP通道,而这个安全版的HTTP就是HTTPS。而实现HTTPS安全性的关键便是TSL/SSL。
TSL/SSL功能的原理
TSL/SSL的功能实现主要依赖于三类算法:散列函数Hash,对称加密以及非对称加密。其基本工作方法为:客户端通过非对称加密来与服务器进行通信,实现身份的验证并协商对称加密时要使用的密钥,然后对称密钥采用协商密钥对信息摘要进行加密通信,如图:
存在的风险
以上过程看似安全,但其中也是存在着一些风险的,若是server(服务器端)在向client(客户端)发送自己的公钥A时thief(窃取者端)对其进行窃取,并将其换成公钥B发送给client,client根据公钥B对消息进行加密并将其发出,thief再将其窃取并通过公钥B对其进行解密,并将其修改并根据公钥A加密后发给server,如此,中间server以及client都很难察觉
解决方法:
对于上述出现的问题,最常见的解决方法就是依靠中心化的机构,其中就包括PKI的使用,PKI负责提供创建、吊销、分发以及更新密钥对与证书的服务。其中证书则需要一些证书颁发机构CA才能运行,证书颁发机构CA是用于管理与认证一些个体与它们的公钥间的绑定关系的实体。一个签名的机构通常采用层次的签名框架,即一个公钥被一个父密钥签名,而这个父密钥被一个祖父密钥签名,以此类推。