HTTPS協議入門

2021-09-01 23:50:55 字數 1340 閱讀 8132

雖然htpp協議很優秀並且方便,但是不得不正視http協議存在的一些問題:

這些問題不僅在http協議上出現,其他未加密的協議中也會存在這類問題。

由於這些問題的存在,https協議就應運而生,https,超文字傳輸安全協議,是和ssl(secure socket layer,安全套接層)或者tls(transport layer security,安全傳輸層協議)組合使用的,通常http直接和tcp通訊,當使用ssl時,則演變成先和ssl通訊,再由ssl和tcp通訊了。

上面提到了htpp協議的不足,下面說一下https是如何解決這三個問題的。

在網路上傳輸資訊,本身就是可以被他人截獲的,比如通過抓包工具,第三者就可以在同區域網的一台主機,或者路由器或者網際網路的任何地方都可能被截獲資料。htpp使用明文傳輸,相當於你傳輸的資料完全暴露在了網路上。

https傳輸資料的時候會對通訊進行加密,使用ssl建立安全線路之後,就可以在這條線路上進行http通訊了。相當於單獨建立了一條安全通道。

http協議中的請求和響應不會對通訊雙方進行確認,也就是說存在「伺服器是否就是傳送請求中uri真正的主機,返回的響應是否是真的返回到實際提出請求的客戶端」等類似問題。並且,由於不存在通訊雙方的處理步驟,任何人都可以發起請求。可能會出現dos攻擊等問題。

https中ssl就可以確認確認通訊方,它提供了一種被稱為證書的手段,證書由值得信賴的第三方機構頒發,用以證明伺服器和客戶端是實際存在的,另外偽造證書從技術角度說是異常困難的一件事,所以只要能確認通訊方持有的證書就可以判斷通訊方的真實意圖。

http協議無法確認客戶端發出的請求和服務端接收到的請求是相同的,同樣,也無法確認服務端傳送的響應和客戶端接收的響應是相同的。很容易出現中間人攻擊。

雖然http協議可以使用md5等資訊摘要演算法保證資料完整性,但是md5本身都可能被篡改,也就無法保證其安全性。ssl提供了摘要功能。可以保證資料的完整性。

從https的功能來看,可以總結為:http+加密+認證+完整性保護=https。

首先先來談談兩種加密方法:

但是使用公開金鑰加密方式傳輸資料比較慢,所以https結合了兩者的優點,使用混合加密機制,首先在交換金鑰的時候使用公開金鑰加密方式,確認連線後,傳輸資料使用共享金鑰加密方式。

當使用https時,通訊會變慢,導致通訊變慢的原因有兩個,一是網路負載,當使用https進行通訊時,網路負載比http要高2-100倍。而是由於https每次通訊都要加解密,對cpu的消耗也很大。所以一般只有在傳輸機密資訊時使用https,比如使用者密碼,銀行資訊等。

再有就是使用https需要支付購買證書的費用,一些機構考慮到這點也可能優先選擇http協議。

參考:

HTTPS協議入門

雖然htpp協議很優秀並且方便,但是不得不正視http協議存在的一些問題 這些問題不僅在http協議上出現,其他未加密的協議中也會存在這類問題。由於這些問題的存在,https協議就應運而生,https,超文字傳輸安全協議,是和ssl secure socket layer,安全套接層 或者tls t...

HTTPS研究(1) https協議入門

http協議沒有任何的加密以及身份驗證的機制,非常容易遭遇竊聽 劫持 篡改,因此會造成個人隱私洩露,惡意的流量劫持等嚴重的安全問題。就像寄信一樣,我給你寄信,中間可能會經過很多的郵遞員,他們可以拆開信讀取裡面的內容,因為是明文的。如果你的信裡涉及到了你們銀行賬號等敏感資訊,可能就會被竊取。除此之外,...

https協議 什麼是HTTPS協議?

在我們平常上網的時候我經常接觸的 應該大部分都是 或者我們知道讓他是乙個超文字傳輸協議。那麼https是個什麼?雖然http和這個https兩者只差乙個s,但是本質是大不相同的,他們是兩種不同的網路傳輸協議。千萬不要搞混淆了。http協議通過請求 響應的方式,在客戶端和服務端之間進行通訊。這一切看起...