このページでは,基本情報技術者試験をはじめとする情報処理技術者試験で必須となる,CHAPについて,概要と認証の流れ(認証サーバー,パスワード,チャレンジコード,レスポンスコード,ハッシュ関数,MD5,メッセージダイジェスト)をシンプルにまとめています。よく利用される認証プロトコルなので,確実に理解しておきましょう。
CHAP(Challenge-Handshake Authentication Protocol)とは
CHAPとは,チャレンジ/レスポンス方式を利用した認証プロトコルです。
※ CHAPはデータリンク層(OSI基本参照モデル)のプロトコルである
※ CHAPは,PPPなどで接続する際に利用される
※ チャレンジ/レスポンス方式…ゼロ知識証明の仕組みを実現する認証方式で,暗号化されたパスワードが盗聴されても再使用できない仕組みになっている
チャレンジコードは,毎回異なるので,クライアントのパスワードが同じでも,レスポンスコードは,毎回変化します。よって,レスポンスコードが盗聴されたとしても,再使用することはできません。しかし,CHAPでは,平文のパスワードからレスポンスコードを生成するため,パスワードを暗号化して管理することはできません。
※ PAPよりも,安全性が高い
MS-CHAPとは(Microsoft版 CHAP の特徴)
MS-CHAPでは,パスワードファイルの漏えいに対応するために,パスワードを圧縮暗号化して管理することができます。レスポンスコードを生成する際は,パスワードを圧縮暗号化したハッシュ値と,チャレンジコードからレスポンスコードを生成します。
※ MicrosoftがWindows用に調整したものである
まとめ
今回は,CHAPについてシンプルにまとめてみました。チャレンジ/レスポンス方式やMS-CHAPのしくみを理解して,ネットワーク認証の基礎を押さえましょう。
理解が進んだら,過去問題等にも挑戦してみてください。


