Hypertext Transfer Protocol Secure
或 HTTPS
是HTTP协议的扩展和安全替代。HTTPS与HTTP非常相似,在HTTP中使用TLS或传输层安全性对流量进行加密。
所有主要浏览器如Google Chrome、Mozilla Firefox、Apple Safari、Opera、Microsoft Edge都支持HTTPS协议。HTTPS也称为HTTP over SSL或HTTP over TLS。
HTTPS使用 https://
URI方案。相同的网页可以通过HTTP和HTTPS提供服务,而无需更改URL或任何与URL相关的配置。
HTTPS是如何工作的?
HTTPS使用加密来保护和隐藏流量,以防攻击者或中间人攻击。HTTPS将使用TLS或SSL(以前的版本)创建传输层。此传输层将用于传输HTTP流量,在传输过程中,流量将自动加密。为了加密通信量,使用了两种类型的密钥。
Private Key/Certificate
位于服务于网页的服务器端,用于解密使用“公钥/证书”加密的客户端通信量。
Public Key/Certificate
通过证书存储库或web浏览器提供给所有客户端,并用于加密到服务器的流量。公钥加密的数据只能用私钥解密。
HTTPS优势和用例
HTTPS提供了大量的advatanges,这使得它成为当今web上最流行的协议之一。下面我们将提供HTTPS的优势和用例。
Security
:安全性是HTTPS协议提供的最大优势。HTTPS加密数据只能由私有证书所有者理解,其他人无法理解HTTPS的内容。
Prevent Man In The Middle
:事实上,HTTPS不能阻止中间人攻击,但会使MITM攻击无效,因为攻击者无法理解捕获的流量。
Prevent Phishing
:HTTPS将防止网站钓鱼,只有有效的网页和域名将被授予绿色地址栏或证书图标。
SEO
:谷歌开始用HTTPS认证提高网站的排名,因为人们认为这些网站更可靠、更安全。
Data Integrity
:数据完整性是HTTPS证书的另一个优点,如果数据在传输过程中发生更改,解密将失败并停止,从而防止使用损坏的数据。
什么是SSL/TLS证书?
HTTP中使用的主要技术是SSL/TLS证书。SSL/TLS是证书的两个版本,其中TLS是前置版本,SSL是最新版本。SSL/TLS证书颁发给域名,仅用于颁发的域和目的。下面您可以看到一个SSL/TLS证书,它在“常规”选项卡中提供基本信息。
![图片[1]-什么是HTTPS?-yiteyi-C++库](https://www.yiteyi.com/wp-content/uploads/2020/05/poftut_image-76.png)
有关SSL/TLS的详细信息可以从“详细信息”选项卡查看。详细信息提供有关版本、序列号、签名算法、颁发者、有效期从、有效期到、主题等的信息。
![图片[2]-什么是HTTPS?-yiteyi-C++库](https://www.yiteyi.com/wp-content/uploads/2020/05/poftut_image-77.png)
在“公钥”部分提供了加密算法,它将对HTTP流量进行加密。
查找HTTPS证书提供程序
HTTPS证书由证书颁发机构颁发给域名和所有者。证书颁发机构或CA签署证书并用于检查HTTPS证书的有效性。HTTPS证书提供程序作为SSL/TLS证书屏幕提供。
![图片[3]-什么是HTTPS?-yiteyi-C++库](https://www.yiteyi.com/wp-content/uploads/2020/05/poftut_image-78.png)
如何检查网站是否使用HTTPS?
我们可以从浏览器地址栏检查HTTPS连接以及当前网页是否使用它。如果网站使用的是有效的HTTPS证书,则会显示以下标志。
- 地址栏的开头会显示一个锁。
- 单击绿色锁定图标时,将显示“连接安全”消息。
- “证书(有效)”如下所示。
![图片[4]-什么是HTTPS?-yiteyi-C++库](https://www.yiteyi.com/wp-content/uploads/2020/05/poftut_image-79.png)
在这个例子中,我们可以看到地址栏的开头有一个锁图标,当我们点击它时,我们会看到绿色的文本“connectionissecure”。绿色是一条可视消息,用于显示此站点具有有效且安全的HTTPS连接。我们还可以在这个信息框中看到“Certificate(Valid)”。
作为一个负面或非HTTPS的例子,我们可以看看流行的中文搜索引擎百度,它可以从 http://www.baidu.com/ . 我们可以看到它的URL也是以HTTP开始的,而不是HTTPS。当我们查看地址栏的开头时,我们可以看到 Not Secure
信息。此外,还有另一条消息“您与此站点的连接不安全”,颜色为红色。
![图片[5]-什么是HTTPS?-yiteyi-C++库](https://www.yiteyi.com/wp-content/uploads/2020/08/poftut_image-15-1024x633.png)