真正性をつつく3 - デジタルの認証技術もあるよ
前回は主に対人的な認証技術(本人認証)でした。しかしながら、オブジェクトは常に人だとは限りません。PCのプロセスなどと言ったデジタルなものもありえます。例えば、営業部長山田太郎氏が、会社のシステムにログインしてきた場合、デジタル系の認証技術を使用する必要があります。
デジタル系の認証技術も発想としては同じなのですが、デジタルなオブジェクトが相手なので詳細が違います。具体的には、時間認証・デジタル署名・認証サーバーを用いて同時の認証をする方式などがあります。これらを順に解説していきます。
時間認証は、その名の通り時間を用いた認証方式です。代表例がワンタイムパスワードです。パスワードをネットワーク越しに送ると、傍聴されてしまう危険性が常にあります。一度盗聴されてしまうと、なりすましが様に行われてしまいますので、これはなんとしても避けなくてはなりません。そこで、パスワードをある一定の時間だけ有効にする方式が考えだされました。
ワンタイムパスワードの方式は色々ありますが、主な方式は時刻同期方式とチャレンジレスポンス方式の2つです。時刻同期方式は簡単に言うと、クライアントがトークンと呼ばれるワンタイムパスワードを生成する為の装置を使用して、入力された暗号と時刻を元に、その都度パスワードを生成して使用する方式です。そして、チャレンジレスポンス形式は、認証サーバーとクライアントの双方が、ユーザIDとそれに対応した各種情報(シーケンス番号、シード、前回使用したパスワード)をやり取りして認証する方式です。一見両方式とも完璧に見えるでしょうが、クライアントから送る情報が盗聴されると破られる恐れがあるので注意が必要です。
デジタル認証方式は電子署名を使用して認証する方式です。この方式は、公開鍵暗号方式を利用します。具体的には、送信者は送信データをハッシュ関数で圧縮し、送信者だけが持つ秘密鍵で暗号化し、データと署名されたデータを相手へと送ります。受信者は、受信データをハッシュ関数で圧縮しダイジェストメッセージを作ります。それと同時に、署名入りデータを送信者の公開鍵で複合します。その両者が一致すれば、ある特定の送信者が送った正しいデータだと看做せます。
デジタル認証方式は、信頼できる第三者の存在が前提となります。何故ならば、公開鍵の所有者が保障されなければ、悪意を持った偽名を名乗る人物かもしれないからです。犯罪者が一定期間の犯罪をもくろみ、鍵を公開しているかもしれません。また、認証を行う機関がクラッキングされたらお終いです。従って、認証局が信頼できなければ意味がなくなってしまうのです。
それに加えて、鍵をどうやって配送するのかという問題があります。鍵そのものが盗まれれば、容易に他人になり済ます事が出来てしまいます。鍵をどの様にして送るのか、また認証局がどの様にして本人を特定し、その身分を保障するのか、認証局の信頼性をどのように判定するのかといった色々な課題があります。完璧な方式は存在しないのです。
そういった既存の認証方式の問題を解決するべく、自前で認証サーバーを用意し、独自の認証方式を提供することもあり得ます。ただし、その独自の方式が他の方式に比べて安全だとは必ずしも言い切れません。独自認証だと言っても、クラッカーはインターネットに流れるデータを分析したり、ソーシャルエンジニアリングのテクニックを使用したりして、認証方式を特定する事が可能です。認証方式が分かれば、悪意ある人は必ずクラックする方法を思いつきます。つまり、どの様な認証方式を使用してもいつかクラックされると思った方が賢明です。
多要素認証を採用し、定期的に認証方法を見直しましょう。