http提供了乙個原生的質詢/響應(challenge/response)框架。
1.請求質詢首部:www-authenticate(伺服器發出)基本認證便捷靈活,但是極不安全,使用者名稱密碼都是以明文傳送的,安全使用基本認證的唯一方式就是將其與ssl配合使用。2.授權首部:authorization(客戶端發出)
3.認證成功首部:authentication-info(伺服器發出,可選)
www-authenticate是服務端用來質詢客戶端的,質詢的同時,還帶著安全域。例如:www-authenticate: basic realm=」family」
authorization向伺服器提供使用者名稱密碼冒號連線以後用base64加密,例如:>base64enc(totty:ow)=dg90dhk6b3c=;請求時:authorization:basic dg90dhk6b3c=
摘要認證做到了以下幾點:
常見的摘要認證:摘要認證是一種單向函式,主要用於將無限的輸入值轉換為有限的濃縮輸出值,常見的有md5加密。
為了防止重放攻擊(擷取摘要,並一遍遍的傳送給伺服器),伺服器可以向客戶端傳送乙個成為「隨機數」的特殊令牌,這個數會經常變化(可能是每毫秒,或是每次認證都變化),客戶端計算摘要之前要先將這個隨機數令牌附加到密碼上去。隨機數在在www-authenticate質詢中從伺服器傳給客戶端的。
為了減少「請求/質詢」的次數,可以使用預授權。預授權的幾種方式:
好的加密演算法會迫使攻擊者試遍每乙個可能的金鑰,才能破解。
在實際應用中需要一種能夠提供下列功能的http安全技術。
https是在http的傳輸層和應用層中間加了乙個安全層(ssl)。
web瀏覽器對某web資源執行某些事務時,它會去檢查url的方案。
ssl握手(在傳送已加密的http報文之前,客戶端和伺服器要進行一次ssl握手):
上述握手的實現過程:
https建立了乙個安全的web事務之後,現代瀏覽都會自動獲取所連線伺服器的數字證書。如果伺服器沒有證書,安全連線就會失敗。證書包括的主要內容:
瀏覽器檢測站點證書的有效性:
瀏覽器收到證書時會對簽名頒發機構進行檢查。如果這個機構是個很有權威的公共簽名機構,瀏覽器可能已經知道其公開金鑰了(瀏覽器會預先安裝很多簽名頒發機構的證書)。這樣,就可以直接驗證簽名了,即驗證證書的完整性。
https握手過程:
http 基本認證與摘要認證
基本認證 a 客戶端 查詢 b 伺服器 質詢 c 客戶端 響應 authorization basic ynjpyw4tdg90dhk6t3ch d 伺服器 成功,返回資訊 http 1.1 200 ok基本認證的缺陷在於 賬號和密碼是明文傳送,不安全.摘要認證 a 客戶端 查詢 b 伺服器 質詢 ...
HTTP 基本認證,摘要認證,擴充套件HTTP認證
http請求報頭 authorization http響應報頭 www authenticate http認證 基於質詢 回應 challenge response 的認證模式。基本認證 basic authentication http1.0提出的認證方法 客戶端對於每乙個realm,通過提供使用...
RTSP 摘要認證
說明 1.請求頭欄位說明 例如 options rtsp 字段依次包含 public method,uri位址,協議版本 response欄位的計算 rtsp客戶端應該使用username password並計算response如下 1 當password為md5編碼,則 response md5 ...