MS-CHAP 【Microsoft Challenge-Handshake Authentication Protocol】
概要
MS-CHAP(Microsoft Challenge-Handshake Authentication Protocol)とは、認証プロトコルのCHAPの仕様を米マイクロソフト(Microsoft)社が自社製品向けに調整したもの。RRASやPPTPなど同社製品・技術のほか、LAN上の認証に用いるIEEE802.1X規格の一部としても利用される。認証手順はCHAPとほぼ同等で、クライアントはパスワードを原文(平文)のまま送るのではなく、サーバから送られてきたランダムな「チャレンジ」と呼ばれる符号列と組み合わせてハッシュ化した「レスポンス」として送る。伝送途上でパスワードが盗み見られるのを防ぐことができる。
MS-CHAPv1
初期に策定されたMS-CHAPv1では、オリジナルのCHAPがハッシュ関数にMD5を用いるところ、MD4とDESを用いるようになっている。NTLM認証でパスワードのハッシュ化にMD4が用いられる仕様に合わせている。サーバがクライアントを認証する一方向認証のみに対応し、クライアントもサーバも同じ暗号鍵でデータを送信する。Windows NTやWindows 95などに実装され、仕様はRFC 2433として公開されている。
MS-CHAPv2
改良されたMS-CHAPv2では、MD4とDESの組み合わせは変わらないものの、クライアントもサーバを認証できる双方向認証に対応し、送受信で異なる暗号鍵を用いるよう改良されている。Windows 2000以降では原則としてMS-CHAPv2が選択され、仕様はRFC 2759として公開されている。外部の規格に採用されているのもこのv2仕様だが、2012年に深刻な脆弱性が発見されており、以降は使用すべきではないとされる。
(2022.3.30更新)