對(duì)于經(jīng)常制作網(wǎng)站的朋友來(lái)說(shuō),大家對(duì)http和https都是不陌生的,因?yàn)樵跒g覽網(wǎng)站的時(shí)候,都是會(huì)用到的,但是對(duì)于http和https的真正含義,很多朋友還是不太了解的,不知道它們代表的是什么樣的意思,這兩者是不是有不同等,帶著這些問(wèn)題,我們就需要去探個(gè)究竟了,接下來(lái)就給朋友們?cè)敿?xì)的來(lái)介紹一下到底什么是http和https,它們的概念是怎樣的以及http和https的區(qū)別是怎樣的等問(wèn)題,以供參考。
http和https的基本概念分別是什么?
http(hypertext transfer protocol:超文本傳輸協(xié)議)是一種用于分布式、協(xié)作式和超媒體信息系統(tǒng)的應(yīng)用層協(xié)議。 簡(jiǎn)單來(lái)說(shuō)就是一種發(fā)布和接收 html 頁(yè)面的方法,被用于在 web 瀏覽器和網(wǎng)站服務(wù)器之間傳遞信息。
http 默認(rèn)工作在 tcp 協(xié)議 80 端口,用戶訪問(wèn)網(wǎng)站http://打頭的都是標(biāo)準(zhǔn) http 服務(wù)。
http 協(xié)議以明文方式發(fā)送內(nèi)容,不提供任何方式的數(shù)據(jù)加密,如果攻擊者截取了web瀏覽器和網(wǎng)站服務(wù)器之間的傳輸報(bào)文,就可以直接讀懂其中的信息,因此,http協(xié)議不適合傳輸一些敏感信息,比如:信用卡號(hào)、密碼等支付信息。
https(hypertext transfer protocol secure:超文本傳輸安全協(xié)議)是一種透過(guò)計(jì)算機(jī)網(wǎng)絡(luò)進(jìn)行安全通信的傳輸協(xié)議。https 經(jīng)由 http 進(jìn)行通信,但利用 ssl/tls 來(lái)加密數(shù)據(jù)包。https 開發(fā)的主要目的,是提供對(duì)網(wǎng)站服務(wù)器的身份認(rèn)證,保護(hù)交換數(shù)據(jù)的隱私與完整性。
https 默認(rèn)工作在 tcp 協(xié)議443端口,它的工作流程一般如以下方式:
1、tcp 三次同步握手。
2、客戶端驗(yàn)證服務(wù)器數(shù)字證書。
3、dh 算法協(xié)商對(duì)稱加密算法的密鑰、hash 算法的密鑰。
4、ssl 安全加密隧道協(xié)商完成。
5、網(wǎng)頁(yè)以加密的方式傳輸,用協(xié)商的對(duì)稱加密算法和密鑰加密,保證數(shù)據(jù)機(jī)密性;用協(xié)商的hash算法進(jìn)行數(shù)據(jù)完整性保護(hù),保證數(shù)據(jù)不被篡改。
http和https的區(qū)別
http 明文傳輸,數(shù)據(jù)都是未加密的,安全性較差,https(ssl+http) 數(shù)據(jù)傳輸過(guò)程是加密的,安全性較好。
使用 https 協(xié)議需要到 ca(certificate authority,數(shù)字證書認(rèn)證機(jī)構(gòu)) 申請(qǐng)證書,一般免費(fèi)證書較少,因而需要一定費(fèi)用。證書頒發(fā)機(jī)構(gòu)如:symantec、comodo、godaddy 和 globalsign 等。
http 頁(yè)面響應(yīng)速度比 https 快,主要是因?yàn)?http 使用 tcp 三次握手建立連接,客戶端和服務(wù)器需要交換 3 個(gè)包,而 https除了 tcp 的三個(gè)包,還要加上 ssl 握手需要的 9 個(gè)包,所以一共是 12 個(gè)包。
http 和 https 使用的是完全不同的連接方式,用的端口也不一樣,前者是 80,后者是 443。
https 其實(shí)就是建構(gòu)在 ssl/tls 之上的 http 協(xié)議,所以,要比較 https 比 http 要更耗費(fèi)服務(wù)器資源。
客戶端在使用https方式與web服務(wù)器通信時(shí)的步驟有哪些?
(1)客戶使用https的url訪問(wèn)web服務(wù)器,要求與web服務(wù)器建立ssl連接。
(2)web服務(wù)器收到客戶端請(qǐng)求后,會(huì)將網(wǎng)站的證書信息(證書中包含公鑰)傳送一份給客戶端。
(3)客戶端的瀏覽器與web服務(wù)器開始協(xié)商ssl連接的安全等級(jí),也就是信息加密的等級(jí)。
(4)客戶端的瀏覽器根據(jù)雙方同意的安全等級(jí),建立會(huì)話密鑰,然后利用網(wǎng)站的公鑰將會(huì)話密鑰加密,并傳送給網(wǎng)站。
(5)web服務(wù)器利用自己的私鑰解密出會(huì)話密鑰。
(6)web服務(wù)器利用會(huì)話密鑰加密與客戶端之間的通信。
http和https的概念分別是什么?以上就給大家詳細(xì)的介紹了http和https的概念,這樣對(duì)于http和https,我們就有了一個(gè)大體的了解,http和https還存在著很多的不同,比如使用的連接方式不同,用的端口也有區(qū)別,大家在具體操作的時(shí)候,還需要按照規(guī)定的要求去做,如有疑問(wèn),可以咨詢我們。