web使用「HTTP」或「HTTPS」協定進行訊息傳送。 HTTP協定指定了客戶端可能發送給伺服器什麼樣的訊息以及得到什麼樣的回應;而HTTPS協定是以安全為目標的HTTP通道,在HTTP的基礎上透過傳輸加密和身分認證保證了傳輸過程的安全性。
本教學操作環境:windows10系統、Dell G3電腦。
web使用「HTTP」或「HTTPS」協定進行訊息傳送。
HTTP
超文本傳輸協定(Hypertext Transfer Protocol,HTTP)是一個簡單的請求-回應協議,它通常運行在TCP之上。它指定了客戶端可能發送給伺服器什麼樣的訊息以及得到什麼樣的回應。請求和回應訊息的頭以ASCII形式給出;而訊息內容則具有一個類似MIME的格式。這個簡單模型是早期Web成功的有功之臣,因為它使開發和部署非常直截了當。
HTTP的缺點:
HTTP雖然使用極為廣泛, 但是卻存在不小的安全缺陷, 主要是其資料的明文傳送和訊息完整性檢測的缺乏, 而這兩點恰好是網路支付, 網路交易等新興應用中安全方面最需要關注的。
關於HTTP的明文資料傳輸, 攻擊者最常用的攻擊手法就是網路嗅探, 試圖從傳輸過程當中分析出敏感的資料, 例如管理員對 Web 程式後台的登入過程等等, 從而取得網站管理權限, 進而滲透到整個伺服器的權限。即使無法取得後台登入資訊, 攻擊者也可以從網路中取得一般使用者的隱性資訊, 包括手機號碼, 身分證號碼, 信用卡號等重要資料, 導致嚴重的安全事故。進行網路嗅探攻擊非常簡單, 對攻擊者的要求很低。使用網路發佈的任一款抓包工具, 一個新手就有可能取得到大型網站的使用者資訊。
另外,HTTP在傳輸客戶端請求和服務端回應時, 唯一的資料完整性檢定就是在封包頭包含了本次傳輸資料的長度, 而對內容是否被篡改不作確認。因此攻擊者可以輕易的發動中間人攻擊, 修改客戶端和服務端傳輸的資料, 甚至在傳輸資料中插入惡意程式碼, 導致客戶端被引導至惡意網站被植入木馬。
HTTPS
HTTPS (全名:Hyper Text Transfer Protocol over SecureSocket Layer),是以安全為目標的HTTP 通道,在HTTP的基礎上透過傳輸加密和身份認證保證了傳輸過程的安全性。 HTTPS 在HTTP 的基礎下加入SSL,HTTPS 的安全基礎是 SSL,因此加密的詳細內容就需要 SSL。 HTTPS 存在不同於 HTTP 的預設連接埠及一個加密/驗證層(在 HTTP與 TCP 之間)。這個系統提供了身份驗證與加密通訊方法。它被廣泛用於萬維網上安全敏感的通訊,例如交易支付等方面。
HTTPS 協定是由HTTP 加上TLS/SSL 協定建構的可進行加密傳輸、身分認證的網路協議,主要透過數位憑證、加密演算法、非對稱金鑰等技術完成網路資料傳輸加密,實現網路傳輸安全保護。設計目標主要有三個。
(1)資料保密性:保證資料內容在傳輸的過程中不會被第三方檢視。就像快遞員傳遞包裹一樣,都進行了封裝,別人無法獲知裡面裝了什麼 。
(2)資料完整性:及時發現被第三方竄改的傳輸內容。就像快遞員雖然不知道包裹裡裝了什麼東西,但他有可能中途掉包,數據完整性就是指如果被掉包,我們能輕鬆發現並拒絕。
(3)身分校驗安全性:保證資料到達使用者期望的目的地。就像我們郵寄包裹時,雖然是一個封裝好的未掉包的包裹,但必須確定這個包裹不會送錯地方,透過身分校驗來確保送對了地方。
更多相關知識,請造訪常見問題欄位!
以上是web使用什麼協議進行訊息傳送的詳細內容。更多資訊請關注PHP中文網其他相關文章!