情報セキュリティ講座(30) HTTP認証

HTTPは、テキストでページ情報を交換しますし、ホームページはインターネットに公開されるものですから、基本的に情報セキュリティリスクは高いです。そのため、HTTP上で認証を行うプロトコルがあります。

ベーシック認証は、利用者IDとパスワードを用いて行う認証です。パスワードは暗号化されないので、漏洩のリスクがあります。

ダイジェスト認証は、利用者IDとパスワードを送りますが、パスワードはハッシュ化されます。ハッシュ化というのは、後ほどご説明しますが、一方向の不可逆的な一意の数値を出す関数です。どんな長い文書でも、ハッシュ化すると決まった長さ(128bitとか256bitとか)のランダムな値が算出されます。同じ文書なら同じハッシュ値が算出されますが、少しでも違うと全く違うハッシュ値が算出されます。ハッシュ値から元の文書を逆計算することはできません。この性質を利用して、クライアントがパスワードをハッシュ化してサーバに送れば、サーバ側でハッシュ化されたパスワードで比較すれば、真正性を確認することができます。 実際は、サーバがランダムな値をクライアントに送り、クライアントはその値とパスワードを組み合わせてハッシュ化しますが、真正性確認をするのに、ハッシュ関数が非常に重要な役割を果たすことは、覚えておくべきだと思います。

投稿者プロフィール

小笠原 裕
小笠原 裕中小企業診断士 行政書士
バラの咲く街、八千代市緑が丘で、コンサルティング事務所を運営しています。