固定パスワードと同じ「I Know認証」でありながら、OTPを実現する製品「PassLogic」には、「パスロジック方式」が利用されています。
ここでは、パスロジック方式の仕組みを説明します。

パスロジック方式の仕組み

パスロジック方式により、毎回異なるパスワードが必要なワンタイムパスワードでありながら、ユーザーが覚えているべき要素(I Know)はひとつだけで良いという、矛盾した概念を両立させることが可能です。
パスロジック方式において、ユーザーが覚えているべき要素のことを「シークレットパターン」もしくは省略して「パターン」と呼びます。この「パターン」は、いわゆる「変換ルール」です。ユーザーは認証システム側から与えられた情報を自分だけの変換ルールに沿って変換し、変換した情報を認証システムに返すことで認証を行います。
ユーザーが覚えているパターンに対して、システム側から与えられる情報のことを「マトリクス」、もしくは「乱数表」と呼びます。そして、パターンとは、このマトリクスから文字を抜き出す位置と順番のことを指します。
下の図を例に説明します。タテ4マス×横4マスで構成されたマトリクスが横に3つ並んでいる状態で、全部で48個のマスには数字がランダムに配置されています。(この数字は文字・記号でも構いません)
ユーザーはこのマトリクス上の数字の並びを記憶しておく必要はありません。覚えているパターンに沿って文字を抜き出し、繋げることで、パスワードが判明します。そして、このパスワードを入力して認証システム側に返すことで認証が完了します。

パスロジック方式の応用

固定パスワードにおいて、各ユーザーが異なるパスワードを設定することで「I Know認証」を成立させているように、パスロジック方式では、各ユーザーが異なるパターンを設定することで「I Know認証」を成立させています。
ユーザーは初期設定時に、自分だけの抜き出し位置とその順番(パターン)を決め、認証のたびにそれを思い出し、マトリクス上の文字をパターンに沿ってつなげることで、毎回異なるパスワードを獲得します。このとき、認証システムから供給されるマトリクス上の文字を、認証のたびに違うものにすることで、ワンタイムパスワードが成立します。
時間によって自動的に変化していくTOTP方式も、認証のたびにシステム側で乱数表を生成するチャレンジアンドレスポンス方式も、どちらにも対応することが可能です。
また、「時間によって」または「認証のたびに」表示するマトリクスを変えるのではなく、「システムやサービスによって」表示するマトリクスを変えるという仕組みにすることもできます。
「システムやサービスによって」表示するマトリクスを変えることで、ユーザーはひとつのパターンを覚えておくだけで、複数のシステムやサービスのための、それぞれ異なるパスワードを管理することが可能になります。

パスロジック方式の基本的な仕組み
ユーザーごとに異なるパターンを設定 →「I Know」認証が成立!

パスロジック方式を応用した仕組み
マトリクス上の文字は毎回変わる →ワンタイムパスワードが成立!

さらに、このような設定も可能
●シークレットパターンで抜き出したワンタイムパスワードの前または後に、固定パスワードを追加可能
●同じマスを2 回以上選択可能
●「1 直線禁止」「各4 × 4マトリクスから1 マスずつの選択必須」等、シークレットパターン作成ルールを設定可能

「ITセキュリティ強化の道」記事カテゴリ

※この記事は、パスロジムック「ITセキュリティ強化の道 ~「認証」を極めて、セキュリティ&業務効率UP!~」から抜粋・転載した内容です