HTTPS
![]() |
HTTPS(Hyper Text Transfer Protocol over Secure Socket Layer),即超文本傳輸安全協議,是一種通過計算機網絡進行安全通信的傳輸協議,由網景公司於1994年首次提出。
其開發的主要目的是提供對網站服務器[1]的身份認證,以保護交換數據的隱私與完整性。
歷史
網景在1994年創建了HTTPS,並應用在網景導航者瀏覽器中。最初,HTTPS是與SSL一起使用的;在SSL逐漸演變到TLS時,最新的HTTPS也由在2000年五月公布的RFC 2818正式確定下來。
它是由Netscape開發並內置於其瀏覽器[2]中,用於對數據進行加密和解密操作,並返回網絡上傳送回的結果。HTTPS實際上應用了Netscape的安全套接層(SSL)作為HTTP應用層的子層。(HTTPS使用端口443,而不是像HTTP那樣使用端口80來和TCP/IP進行通信。)SSL使用40位關鍵字作為RC4流加密算法,這對於商業信息的加密是合適的。HTTPS和SSL支持使用X.509數字認證,如果需要的話用戶可以確認發送者是誰[2]。
也就是說它的主要作用可以分為兩種:一種是建立一個信息安全通道,來保證數據傳輸的安全;另一種就是確認網站的真實性,凡是使用了https的網站,都可以通過點擊瀏覽器地址欄的鎖頭標誌來查看網站認證之後的真實信息,也可以通過CA機構頒發的安全簽章來查詢。
區別
HTTPS和HTTP的區別
超文本傳輸協議HTTP協議被用於在Web瀏覽器和網站服務器之間傳遞信息。HTTP協議以明文方式發送內容,不提供任何方式的數據加密,如果攻擊者截取了Web瀏覽器和網站服務器之間的傳輸報文,就可以直接讀懂其中的信息,因此HTTP協議不適合傳輸一些敏感信息,比如信用卡號、密碼等。
為了解決HTTP協議的這一缺陷,需要使用另一種協議:安全套接字層超文本傳輸協議HTTPS。為了數據傳輸的安全,HTTPS在HTTP的基礎上加入了SSL協議,SSL依靠證書來驗證服務器的身份,並為瀏覽器和服務器之間的通信加密。
HTTPS和HTTP的區別主要為以下四點:
一、http協議需要到ca申請證書,一般免費證書很少,需要交費。
二、http是超文本傳輸協議,信息是明文傳輸,https則是具有安全性的ssl加密傳輸協議。
三、http和https使用的是完全不同的連接方式,用的端口也不一樣,前者是80,後者是443。
四、http的連接很簡單,是無狀態的;HTTPS協議是由SSL+HTTP協議構建的可進行加密傳輸、身份認證的網絡協議,比http協議安全。
解決問題
信任主機的問題
採用http的服務器必須從CA(Certificate Authority)申請一個用於證明服務器用途類型的證書。該證書只有用於對應的服務器的時候,客戶端才信任此主機。所以所有的銀行系統網站,關鍵部分應用都是https的。客戶通過信任該證書,從而信任了該主機。其實這樣做效率很低,但是銀行更側重安全。這一點對局域網對內提供服務處的服務器沒有任何意義。局域網中的服務器,採用的證書不管是自己發布的還是從公眾的地方發布的,其客戶端都是自己人,所以該局域網中的客戶端也就肯定信任該服務器。
通訊過程中的數據的泄密和被篡改
1.一般意義上的https,就是服務器有一個證書。
a)主要目的是保證服務器就是他聲稱的服務器,這個跟第一點一樣。
b)服務端和客戶端之間的所有通訊,都是加密的。
i.具體講,是客戶端產生一個對稱的密鑰,通過服務器的證書來交換密鑰,即一般意義上的握手過程。
ii.接下來所有的信息往來就都是加密的。第三方即使截獲,也沒有任何意義,因為他沒有密鑰,當然篡改也就沒有什麼意義了。
2.少許對客戶端有要求的情況下,會要求客戶端也必須有一個證書。
a)這裡客戶端證書,其實就類似表示個人信息的時候,除了用戶名/密碼,還有一個CA認證過的身份。因為個人證書一般來說是別人無法模擬的,所有這樣能夠更深的確認自己的身份。
b)目前大多數個人銀行的專業版是這種做法,具體證書可能是拿U盤(即U盾)作為一個備份的載體。
參考文獻
- 移至 ↑ 服務器是什麼?服務器的作用與用途 ,搜狐,2023-04-08
- 移至 ↑ 瀏覽器超實用的5個功能,甚至能輕鬆查對象的瀏覽記錄 ,搜狐,2022-09-02