動的トークンとは
動的トークンとは、Type2の認証方式の一つであり、所持機器から発行され許可した所持者に渡すものです。
動的トークンは発行の仕方により、時刻から計算する方法やランダムなワンタイムパスワードを生成する方法があります。
同期動的トークン
同期動的トークンは、時刻や試行回数といった認証サーバと同期がとりえる情報を用いて発行するタイプのトークンです。
試行回数に同期しながらトークンを発行するカウンターベース同期動的トークンでは、所持する認証デバイスと認証を行うサーバ間で試行回数をそれぞれ数えて置き、試行回数が同じであれば認証完了とする方式です。
時刻に同期しながらトークンを発行する時間ベース同期動的トークンでは、時刻を基にトークンを発行します。時刻は認証サーバも所持デバイスも同じであり、常に同期されていると言えます。もしも登録したで認証デバイスから発行され、かつ同時刻に発行されたトークンであれば認証できるようになっています。また、時刻からトークンを発行するため、一定時間でトークンは変更されます。
こういったトークン認証を行うときにはトークン発行機器として使うデバイスを登録する必要があります。デバイスの登録の仕方には2種類あります。ハードウェアベースとは、RSA SecureIDにように専用の認証機器を利用して行うものです。ソフトウェアベースでは、Google Authenticationのようにアプリケーションをインストールすればそのデバイス(多くの場合がスマートフォン)がトークン発行機器として動作可能なものです。
非同期動的トークン
非同期動的トークンとは、認証サーバとデバイス間で同期する情報を取りえないトークンです。
多くの場合、チャレンジレスポンス認証という方法が利用されます。チャレンジレスポンス認証とは、あるランダムな文字列を送付し、受け取り側はそのランダムと秘密に共有した値(パスワードの場合もある)から生成できる値を送ることで、通信経路にはワンタイムのランダムな文字列とそれから生成されたワンタイムの生成文字列のみで認証を成功させる方法です。