5.2.6 セキュリティ
●Password Authentication Protocol(PAP)
PAP(Password Authentication Protocol)は,双方向ハンドシェイクを使用して身元を明らかにする単純なパスワード認証手法である。認証は,最初のリンク確立時にのみ実施される。リンク確立フェーズが完了したあと,ユーザー名(ログイン名)とパスワードを送信し,その組み合わせが登録されている情報と一致すれば,通信を許可する。このプロトコルは,認証されるか,接続が終了するまで,くり返し送信される。
PAPではクリアテキストパスワードが使用されるので,堅固な認証方法とはいえない。
●Shiva Password Authentication Protocol(SPAP)
SPAPは,Shiva LAN Roverに接続するときに使われている可逆の暗号化機構である。Windows 2000をリモートアクセスクライアントやリモートアクセスサーバーとして構成する場合に,SPAPを利用することができる。この認証方式では,パスワードが暗号化されて送信されるので,クリアテキストでパスワードを送信するPAPよりも安全であるが,可逆の暗号方式であるために,後述するCHAPまたはMS-CHAPよりも安全性は低くなる。実際SPAPでは,同じパスワードが常に同じように暗号化されるため,悪意のあるユーザーが認証処理のパケットをキャプチャし,応答を再現して認証をパスしてしまうこともあり得る。PAPと同様,できるだけ使用するのは避けたほうがよい。
●Challenge-Handshake Authentication Protocol(CHAP)
CHAPは,リモートホストにログインするためにプレインテキストパスワードを必要とする場面で利用される。この方法は通常,リモートホストでユーザーがログインするのと同じレベルのセキュリティを提供する。Windows NTやWindows 2000は,MD5およびDES暗号化(クライアントとサーバーの両方がWindows NTやWindows 2000である場合)をサポートしている。
また,CHAPは3方向ハンドシェイクを利用して定期的に相手の身元を検証する場合にも用いられる。この場合,まず初期リンクを確立するときに認証され,リンクが確立されたあとも認証をくり返すことで相手の身元を検証する。
CHAPの認証プロセスでは,リンク確立フェーズが完了したあと,認証者は乱数で発生させた値をchallengeメッセージとして被認証者に送信する。被認証者は受けとった乱数値を鍵とする一方向ハッシュ関数を使用してパスワードを暗号化し,ユーザー名とともに認証者に送信する。認証者は,ユーザー名を元に登録されているパスワードを検索し,それを乱数値で暗号化して,受信した暗号化文字列と一致するか否かをチェックする。もし値が一致すれば認証に成功し,さもなければ接続を終了する。
| Chapter 5 19/25 |
