2016年11月9日 星期三

[筆記] Challenge Handshake Authentication Protocol (CHAP)


RFC 1994

Challenge Handshake Authentication Protocol,一個 3 way handshake(三方交握)的認證機制。

  1. Link 建立完畢,Server(圖中的Responder)會發送 Challenge text 給 Client(圖中的 initiator)。
  2. Client 會拿自己的密碼(or shared key),透過 One-way hash function 對 Challenge text 做加密,加密後的值當作 Response 回傳給 Server
  3. 因為 Server 也知道密碼,所以也使用密碼加密 Challenge text,來比對 Client 傳來的值是否正確。

所以整個認證過程中,並不會傳送明文密碼。


The picture is from The TCP/IP Guilde


在 iSCSI 中,CHAP 認證又分為
  •  One-way CHAP:只有 Target 會對 Initiator 做認證,因此只需要對 Target 設定密碼,然後 Initiator 使用該組密碼登入。
  •  Mutual CHAP: Target 與 Initiator 會互相認證
(最少要使用 One-way CHAP)