維基百科,自由的百科全書
HTTPS以保密為目標研發,簡單講是HTTP的安全版。其安全基礎是SSL協議,因此加密的詳細內容請看SSL。全稱Hypertext Transfer Protocol over Secure Socket Layer。
它是一個URI scheme,句法類同http:體系。它使用了HTTP,但HTTPS存在不同于HTTP的默認端口及一個加密/身份驗證層(在HTTP與TCP之間)。這個協議的最初研發由網景公司進行,提供了身份驗證與加密通訊方法,現在它被廣泛用于互聯網上安全敏感的通訊,例如交易支付方面。
[編輯]工作方式
-
SSL極難竊聽,對中間人攻擊提供一定的合理保護。嚴格學術表述HTTPS是兩個協議的結合,即傳輸層SSL+應用層HTTP。
HTTPS默認使用TCP端口443(HTTP默認則是TCP端口80),也可以指定其他TCP端口。
要使協議正常運作,至少服務器必需有PKI證書,而客戶端則不一定。
它的加密強度依賴軟件的正確實現,以及服務器客戶端雙方加密算法的支持。
即便HTTPS被正確實現,仍有以下人為因素:
- 釣魚攻擊
- 制造與原網站相似的假冒網址,并誘導客戶訪問,常見例子是仿制銀行網站。
- 中間人攻擊
- 在通訊線路中途篡改證書,從而充當網站客戶雙方的中間人,這樣可知道全部通訊內容。檢查證書才有可能發現中間人的存在。
- 由于證書費用昂貴,通常只有網站服務器擁有證書。往往客戶身份得不到驗證。
在TLS 1.1之前SSL證書僅能對應IP,使得HTTPS無法在虛擬主機(僅有域名)上正常運作。現在的TLS 1.1早已完全支持基于域名的虛擬主機。
[編輯]外部鏈接
- 部分著名證書CA