CHAP
読み:チャプ
外語:CHAP: Challenge Handshake Authentication Protocol
PPPを構成するリンク層制御プロトコル(LCP)の一つで、PPP上でのチャレンジ&レスポンス型のユーザー認証用プロトコル。
概要
まずRFC 1334(PPP認証プロトコル群)で規定され、後にRFC 1994によって更新された。
拡張版にMS-CHAPがある。
特徴
RFC 1334と同時に規定されたPAPはIDとパスワードを素のまま流すが、CHAPはパスワードを暗号化してから回線上に情報を流すため、安全性が高い。
なお、CHAP自体は認証の機能しかなく、これ自体が不正アクセスを防止するような働きはない。
PPPプロトコルフィールドは、0xc223である。
認証手順
まずは、CHAPを使うという設定を行なう。LCP通信設定オプションのType=3、Length=5、Data=0xc223、Algorithm=5とする。以降は、PPP上でProtocol=0xc223として、PAPパケットを交換する。
大雑把には、次の手順で認証を行なう。
- まず、サーバーからチャレンジ(乱数)が送られてくる。
- クライアントは、チャレンジとパスワードから、MD5でハッシュ値を作成する。
- クライアントは、サーバーに結果をレスポンスとして返す。
- サーバーは、登録されたパスワードから同様にハッシュ値を作り、レスポンスと比較する。
- 同値であれば、認証成功とする。
再検索