http 基本認證與摘要認證

2021-09-24 14:27:28 字數 2960 閱讀 3507

基本認證:

// (a)客戶端:查詢

// (b)伺服器:質詢

// (c)客戶端:響應

authorization: basic ynjpyw4tdg90dhk6t3ch

// (d)伺服器:成功,返回資訊

http/1.1 200 ok

基本認證的缺陷在於:賬號和密碼是明文傳送,不安全.

摘要認證:

// (a)客戶端:查詢

// (b)伺服器:質詢

// (c)響應

authorization: digest

username="bri"

realm="shopping cart"

nonce="66c4ef58da7cb956bd04233fbb64e0a4"

uri="/cgi-bin/checkout?cart=17854"

qop="auth"

nc=0000001,

cnonce="cfa9207102ea210ffc1120f6001110d073"

response="e483c94fob3ca29109a7ba83d10fe519"

// (d)成功

....

摘要認證的3個元件:

// *摘要由以下3個元件計算出來:

// 1.由單向雜湊函式h(d)和摘要kd(s,d)組成的一對函式,其中s表示密碼,d表示資料

// 2.乙個包含了安全資訊的資料塊,包括密碼,稱為a1

// 3.乙個包含了請求報文中非保密屬性的資料塊,稱為a2

安全性相關的資料(a1)

// a1是密碼和受保護資訊的產物,它包含有使用者名稱、密碼、保護域和隨機數等內容
與報文有關的資料(a2)

// 資料庫a2表示的是與報文自身有關的資訊,比如url、請求方法和報文實體的主體部分

// a2有助於防止方法、資源或報文被篡改

摘要認證會話

// 客戶端在響應保護空間的www-authenticate質詢時(請求賬號、密碼資訊),會啟動乙個此保護空間的認證會話

// 在客戶端收到另一條來自保護空間的任意一台伺服器的www-authenticate質詢之前,認證會話會一直持續

預授權

// 在普通的認證方式中,事務結束之前,每條請求都要有一次 請求/質詢 的迴圈

// 如果客戶端事先知道下乙個隨機數是什麼,就可以取消這個 請求/質詢 迴圈

// 這樣客戶端就可以在伺服器發出請求之前,生成正確的authorization首部了.

對稱認證

// rfc 2617擴充套件了摘要認證機制,允許客戶端對伺服器進行認證.

// 通過提供客戶端隨機數來實現的.

// 它是可選的.

增強保護質量

// 可以在三種摘要首部中提供qop(保護質量)字段:www-authenticate、authorization和authentication-info

// 通過qop欄位,客戶端和伺服器可以對不同型別及質量的保護進行協商.

多重質詢

// 伺服器可以對某個資源發起多重質詢.如:伺服器不了解客戶端的能力,可以既提供基本認證質詢,又提供摘要認證質詢

// 客戶端在面對多重質詢時,必須以它所支援的最強的質詢機制來應答

差錯處理

// 在摘要認證中,如果某個指令或其值使用不當,或者缺少某個必要指令,就應該使用響應400 bad request

// 如果請求的摘要不匹配,就應該記錄一次登入失敗.某客戶端連續多次失敗可能說明有攻擊者正在猜測密碼

保護空間

// 閾值,與被訪問伺服器的標準根url結合在一起,定義了保護空間

// 通過域可以將伺服器上的受保護資源劃分為一組保護空間,每個空間都有自己的認證機制 和/或 授權資料庫

參考《http權威指南》p308~p318

HTTP 基本認證,摘要認證,擴充套件HTTP認證

http請求報頭 authorization http響應報頭 www authenticate http認證 基於質詢 回應 challenge response 的認證模式。基本認證 basic authentication http1.0提出的認證方法 客戶端對於每乙個realm,通過提供使用...

http摘要認證

摘要 認證步驟 1.客戶端訪問乙個受http摘要認證保護的資源。2.伺服器返回401狀態以及nonce等資訊,要求客戶端進行認證。3.客戶端將以使用者名稱,密碼,nonce值,http方法,和被請求的uri為校驗值基礎而加密 預設為 md5演算法 的摘要資訊返回給伺服器。認證必須的五個情報 real...

HTTP 摘要認證

基本認證便捷靈活,但極不安全。使用者名稱和密碼都是以明文形式傳送的,也沒有採取任何措施防止對報文的篡改。安全使用基本認證的唯一方式就是將其與 ssl 配合使用。摘要認證是另一種 http 認證協議,它與基本認證相容,但卻更為安全。摘要認證試圖修復基本認證協議的嚴重缺陷。具體來說,摘要認證進行了如下改...