MS-CHAP v1
The Microsoft Challenge Handshake Authentication Protocol version 1 (MS-CHAP v1) is an encrypted authentication mechanism very similar to CHAP. As in CHAP, the remote access server sends a challenge to the remote client that consists of a session ID and an arbitrary challenge string. The remote client must return the user name and a Message Digest 4 (MD4) hash of the challenge string, the session ID, and the MD4-hashed password.
One difference between CHAP and MS-CHAP v1 is that, in CHAP, the plaintext version of the password must be available to validate the challenge response. With MS-CHAP v1, the remote access server only requires the MD4 hash of the password to validate the challenge response. In Windows 2000, the user's password is stored as an MD4 hash and in a reversibly encrypted form. When CHAP is used, the remote access server decrypts the reversibly encrypted password to validate the remote access client's response.
The remote access server sends an MS-CHAP Challenge message containing a session ID and an arbitrary challenge string.
The remote access client returns an MS-CHAP Response message containing the user name in cleartext and a hash of the challenge string, session ID, and the MD4 hash of the client's password using the MD4 one-way hashing algorithm.
The remote access server duplicates the hash and compares it to the hash in the MS-CHAP Response. If the hashes are the same, the remote access server sends back an MS-CHAP Success message. If the hashes are different, an MS-CHAP Failure message is sent.
The use of MS-CHAP v1 is negotiated during LCP negotiation by specifying the authentication protocol LCP option (type 3), the authentication protocol 0xC2-23, and the algorithm 0x80. Once LCP negotiation is complete, MS-CHAP v1 messages use the PPP protocol ID of 0xC2-23.
If MS-CHAP v1 is used as the authentication protocol and MPPE is negotiated, then shared secret encryption keys are generated by each PPP peer. MS-CHAP v1 also provides a set of messages that allows a user to change their password during the user authentication process.
在微軟挑戰握手認證協定版本1(MS-CHAP V1)是一個加密的認證機制,第為人非常相似,遠程訪問伺服器傳送到遠程客戶端,包括會話ID和任意的字元串的挑戰挑戰。遠程客戶端必須返回用戶名和訊息摘要4(MD4)挑戰的字元串哈希,會話ID,和MD4哈希密碼。
小伙子MS-CHAP V1的一個區別是,在人,密碼的明文版本必須是可以驗證的挑戰回響。隨著MS-CHAP V1,遠程訪問伺服器只需要密碼的MD4哈希驗證挑戰回響。在Windows 2000中,用戶的密碼存儲為MD4哈希和可逆加密的形式。當人用,遠程訪問伺服器解密可逆加密的密碼驗證遠程訪問客戶端的回響。
MS-CHAP V1認證是一個三的訊息交換:
遠程訪問伺服器傳送一個握手協定的挑戰訊息包含一個會話ID字元串和一個任意的挑戰。
遠程訪問客戶端返回一個回響訊息明文MS-CHAP包含用戶的名字和一個哈希字元串的挑戰,會話ID,和MD4哈希的客戶密碼使用MD4單向哈希算法。
遠程訪問伺服器複製的哈希和比較它的MS-CHAP回響哈希。如果哈希值是相同的,遠程訪問伺服器返回一個MS-CHAP成功訊息。如果哈希值是不同的,一個失敗的訊息被傳送的MS-CHAP。
MS-CHAP V1使用協商在LCP協商通過指定認證協定LCP選項(3型),認證協定0xc2-23,並且算法0x80。當LCP協商完成,MS-CHAP V1訊息使用0xc2-23 PPP協定ID。
MS-CHAP V1也允許錯誤代碼包括一個“密碼”代碼和密碼修改。MS-CHAP V1防止重放攻擊利用一個任意字元串/身份驗證嘗試挑戰。MS-CHAP V1不提供保護對遠程伺服器模擬。
如果MS-CHAP V1作為認證協定MPPE協商,然後共享密鑰加密密鑰生成的每個PPP。MS-CHAP V1也提供了一系列的信息,允許用戶在認證過程中更改自己的密碼。
MS-CHAP v2
Microsoft 質詢握手身份驗證協定 (MS-CHAP v2) 是一個通過單向加密密碼進行的相互身份驗證過程,工作流程如下:
1.身份驗證器(遠程訪問伺服器或 NPS 伺服器)向遠程訪問客戶端傳送質詢,其中包含會話標識符和任意質詢字元串。
2.遠程訪問客戶端傳送包含下列信息的回響:
● 用戶名。
● 任意對等質詢字元串。
● 接收的質詢字元串、對等質詢字元串、會話標識符和用戶密碼的單向加密。
3.身份驗證器檢查來自客戶端的回響並傳送回包含下列信息的回響:
● 指示連線嘗試是成功還是失敗。
● 經過身份驗證的回響,基於傳送的質詢字元串、對等質詢字元串、加密的客戶端回響和用戶密碼。
4.遠程訪問客戶端驗證身份驗證回響,如果正確,則使用該連線。如果身份驗證回響不正確,遠程訪問客戶端將終止該連線。
啟用 MS-CHAP v2
若要啟用基於 MS-CHAP v2 的身份驗證,必須執行下列操作:
啟用 MS-CHAP v2 作為遠程訪問伺服器上的身份驗證協定。
在相應的網路策略上啟用 MS-CHAP v2。默認情況下啟用 MS-CHAP v2。
在遠程訪問客戶端上啟用 MS-CHAP v2。
其他注意事項 MS-CHAP v2 是隨 Windows Server® 2008 系列提供的、唯一支持在身份驗證過程中更改密碼的身份驗證協定。
在 NPS 伺服器的網路策略上啟用 MS-CHAP v2 之前,確保您的網路訪問伺服器 (NAS) 支持 MS-CHAP v2。有關詳細信息,請參閱 NAS 文檔。