チャレンジレスポンス認証って何?

SSHを利用する際などに、チャレンジレスポンス認証という言葉がでてきます。

チャレンジレスポンス認証とは、いったい何なのでしょうか?


チャレンジレスポンス認証とは?


簡単に言うと、チャレンジレスポンス認証とは、

通信を盗聴された場合でもパスワードを盗まれないようにするために、パスワードを暗号化するための技術のことです。



具体的にはどんな方法?


チャレンジレスポンス認証では、

1.まず認証サーバーが「チャレンジ」と呼ばれる、毎回変わるランダムな256bitの乱数をクライアントに送信します。

2.クライアントは、そのチャレンジと、送信したいパスワードを使って、「レスポンス」というデータを生成し、MD5やSHA1などで暗号化して、認証サーバーに返します。

3.認証サーバー側でも、先ほど送信した「チャレンジ」と、登録されている正しいパスワードを元に、レスポンスを作成します。

4.クライアントが送信したレスポンスと、認証サーバー側で生成したレスポンスが一致すれば、認証成功です。


こうすることで、万が一、送信されたレスポンスを傍受されたとしても、そこからパスワードを逆算することはできません。

もちろん、チャレンジを傍受しても同じことです。


このようにして、チャレンジレスポンス認証では、ネットワーク上を流れるパスワードの暗号化を実現しています。