パスワードをネットワークに流さない安全な認証方式。チャレンジレスポンスとKerberosの仕組みを学びます。
認証ってさ、パスワードそのまま送ってるんじゃないの?
そう思いがちだけど、パスワードをそのまま送るのは危険なのよ。
チャレンジレスポンス認証という方式で安全に認証できるわ。
流れを整理すると、①サーバが乱数 (チャレンジ) を送る → ②クライアントが「パスワード+チャレンジ」のハッシュを送る → ③サーバが同じ計算をして照合、ですね。
パスワード自体はネットワークを流れないので、盗聴されても安全です。
Kerberosって何ですかぁ?
Kerberos認証は対称鍵暗号と「チケット」を使う認証システムです。
WindowsのActive Directoryでも採用されているんですよ。
Kerberosの中心になるのはKDC (Key Distribution Center) で、AS (認証サーバ) と TGS (チケット発行サーバ) から成るの。
一度認証されるとTGT (Ticket Granting Ticket) を発行されて、複数のサービスにシングルサインオンできるの。
代表的なリスクはリプレイ攻撃 (盗聴データの再送)。
Kerberosはタイムスタンプで対策しているので、サーバ間の時刻同期 (NTP) が必須なの。
1度のログインで色々使える便利さは、こういう仕組みのおかげなんだね!
確認クイズ
認証時にサーバから送られた乱数とパスワードのハッシュを返すことで、パスワード自体を送らない認証方式はどれか。
- 平文認証
- チャレンジレスポンス認証
- 公開鍵認証
- 生体認証
こたえを見る
正解: 2. チャレンジレスポンス認証
チャレンジレスポンス認証はサーバが送るチャレンジ (乱数) とパスワードを組み合わせたハッシュで応答する方式。パスワード自体がネットを流れないため、盗聴に強い認証です。