(57)【要約】【課題】ワンタイムパスワードとＰＩＮを利用したに二要素認証において、ユーザのＰＩＮが第三者の手に渡たることがなく、更に、ユーザの入力負担を減らすことのできるワンタイムパスワード生成装置及びワンタイムパスワード認証装置を提供する。【解決手段】ワンタイムパスワード生成装置はＩＣカード１とＩＣカードビューア６とで構成され、ユーザ６はＩＣカードビューア２にＰＩＮ６０を入力すると、ＩＣカード１は、ＩＣカード１で保持しているカウンタの値とユーザ６が入力したＰＩＮ６０をパラメータとしてワンタイムパスワードを生成する。ワンタイムパスワード認証装置であるウェブサーバ５は、ウェブサーバ５で保持しているカウンタの値とウェブサーバ５が記憶しているユーザ６のＰＩＮをパラメータとしてワンタイムパスワードを生成し、ユーザ６から取得したワンタイムパスワードを認証する。【選択図】図１
2008176383.tif 000002
【特許請求の範囲】
【請求項１】
ユーザ認証に利用するワンタイムパスワードを生成する方法であって、
ステップａ１）：認証されるユーザの前記ワンタイムパスワードを生成するときに、前記ユーザが記憶しているパスワードを前記ユーザから取得するステップ、
ステップｂ２）：前記ステップａ１）で前記ユーザから取得した前記パスワード、及び、前記ワンタイムパスワードを生成する度に異なる可変データとをパラメータとし、所定のアルゴリズムに従い演算することで、前記ユーザの前記ワンタイムパスワードを生成するステップ、
を順に実行することを特徴とするワンタイムパスワード生成方法。
【請求項２】
ユーザ認証に利用するワンタイムパスワードを生成するワンタイムパスワード生成装置であって、前記ワンタイムパスワード生成装置は、認証するユーザのパスワードを前記ユーザから取得するパスワード取得手段と、前記ユーザから取得した前記パスワード及び前記ワンタイムパスワードを生成する度に毎回異なる可変データをパラメータとし、所定のアルゴリズムに従い演算することで、前記ユーザの前記ワンタイムパスワードを生成するワンタイムパスワード生成手段と、前記ワンタイムパスワードを表示する表示手段を備えていることを特徴とするワンタイムパスワード生成装置。
【請求項３】
請求項２に記載のワンタイムパスワード生成装置であって、前記ワンタイムパスワード生成装置は、前記ワンタイムパスワード生成手段として動作するコマンドを備えたＩＣカードと、前記ＩＣカードを装着するＩＣカードビューアとから構成され、前記ＩＣカードビューアは、前記パスワード取得手段及び前記表示手段を備え、取得した前記パスワードを含む前記コマンドのコマンドＡＰＤＵを前記ＩＣカードに送信し、前記ＩＣカードの前記コマンドのレスポンスＡＰＤＵに含まれる前記ワンタイムパスワードを表示することを特徴とするワンタイムパスワード生成装置。
【請求項４】
ユーザ認証に利用するワンタイムパスワードを生成するＩＣカードであって、前記ＩＣカードは、前記ワンタイムパスワードを生成する度に毎回異なる可変データとして、前記ワンタイムパスワードを生成する度に毎回更新されるカウンタを有し、前記カウンタを更新した後に、端末から送信されたコマンドデータ及び前記カウンタの値をパラメータとし、所定のアルゴリズムに従い演算することで、前記ユーザの前記ワンタイムパスワードを生成し、生成した前記ワンタイムパスワードを前記端末に送信するワンタイムパスワード生成コマンドを備えていることを特徴とするＩＣカード。
【請求項５】
ユーザ認証に利用するワンタイムパスワードを生成するＩＣカードに実装されるＩＣカードプログラムであって、前記ＩＣカードは、前記ワンタイムパスワードを生成する度に毎回更新されるカウンタを有し、前記カウンタを更新した後に、前記カウンタの値及び端末から送信されたコマンドデータをパラメータとし、所定のアルゴリズムに従い演算することで、前記ユーザの前記ワンタイムパスワードを生成し、生成した前記ワンタイムパスワードを前記端末に送信するワンタイムパスワード生成コマンドとして、前記ＩＣカードを機能させるためのＩＣカードプログラム。
【請求項６】
ユーザが生成したワンタイムパスワードを認証する方法であって、
ステップａ２）：認証する前記ユーザの前記識別データ及び前記ワンタイムパスワードを前記ユーザから取得するステップ、
ステップｂ２）：前記ユーザの識別データに関連付けて前記パスワードを記憶したデータベースから、前記ステップａ２）で取得した前記識別データに対応する前記パスワードを割出すステップ、
ステップｃ２）：前記ステップｂ２）で割出した前記パスワード及び前記ワンタイムパスワードを認証する度に異なる可変データをパラメータとし、所定のアルゴリズムに従い演算することで、認証側の前記ワンタイムパスワードを生成するステップ、
ステップｄ２）：ステップａ２）で取得した前記ユーザの前記ワンタイムパスワードと、前記ステップｃ２）で生成した認証側の前記ワンタイムパスワードを照合することで、ステップａ２）で取得した前記ユーザの前記ワンタイムパスワードを認証するステップ、
を順に実行することを特徴とするワンタイムパスワード認証方法。
【請求項７】
ユーザが生成したワンタイムパスワードを認証するワンタイムパスワード認証装置であって、前記ワンタイムパスワード認証装置は、前記ユーザの識別データに関連付けて前記パスワードを記憶するデータベースと、前記ユーザの前記識別データ及び前記ワンタイムパスワードを前記ユーザから取得するパスワード取得手段と、取得した前記識別データに対応する前記パスワードを前記データベースから割出し、前記ワンタイムパスワードを認証する度に異なる可変データ及び割出した前記パスワードをパラメータとし、所定のアルゴリズムに従い演算することで、前記ワンタイムパスワード認証装置の前記ワンタイムパスワードを生成する手段、前記ワンタイムパスワード認証装置の前記ワンタイムパスワードと前記ユーザの前記ワンタイムパスワードを照合することで、前記ユーザの前記ワンタイムパスワードを認証するワンタイムパスワード認証手段を備えていることを特徴とするワンタイムパスワード認証装置。
【請求項８】
ユーザが生成したワンタイムパスワードを認証するサーバに実装されるコンピュータプログラムであって、前記サーバは、前記ユーザの前記識別データ及び前記ワンタイムパスワードを前記ユーザから取得するパスワード取得手段と、前記ユーザの識別データに関連付けて前記パスワードを記憶するデータベースから、取得した前記識別データに対応する前記パスワードを割出し、前記ワンタイムパスワードを認証する度に異なる可変データ及び前記パスワードをパラメータとし、所定のアルゴリズムに従い演算することで、前記ワンタイムパスワード認証装置の前記ワンタイムパスワードを生成する手段、前記ワンタイムパスワード認証装置の前記ワンタイムパスワードと前記ユーザの前記ワンタイムパスワードを照合することで、前記ユーザの前記ワンタイムパスワードを認証するワンタイムパスワード認証手段として、前記サーバを機能させるためのコンピュータプログラム。
【発明の詳細な説明】
【技術分野】
【０００１】
本発明は、ユーザを認証する技術に関し、更に詳しくは、使い捨てのパスワードであるワンタイムパスワードを利用してユーザを認証する技術に関する。
【背景技術】
【０００２】
フィッシング詐欺やスパイウェア対策として、ネットバンキングなどの用途で二要素認証が注目を集めている。二要素認証とは、異なる性質を持つ二つの認証要素を組み合せてユーザを認証する方式である。
【０００３】
二要素認証でユーザを認証するときは、「自分だけが知っている（know）」に係る認証要素であるＰＩＮ（Personal Identification Number）などのパスワードと、「自分だけが知っている（know）」に係る認証要素以外の認証要素を用いてユーザ認証することが一般的である。
【０００４】
「自分だけが知っている（know）」以外の認証要素としては、「自分自身（is）」に係る認証要素であるバイオメトリクス情報（例えば、指紋）を用いる場合もあるが、バイオメトリクス情報に対してユーザは強い抵抗感をもつため、「自分だけが持っている（has）」に係る認証要素であるワンタイムパスワード（OTP: One Time Password）を利用するケースが増えている。
【０００５】
トークンを利用してＯＴＰを生成する方式には、時刻同期方式とカウンタ方式の２つの方式があり、例えば、特許文献１では、カウンタ同期方式でＯＴＰを生成する技術に関する発明が開示され、特許文献２では、時刻同期方式でＯＴＰを生成する技術に関する発明が開示されている。
【０００６】
特許文献１はカウンタ同期方式に利用するカウンタを乱数にもとづいて進めることで、カウンタの値やワンタイムパスワードを生成するときに利用する暗号鍵の秘匿性を高める発明である。更に、特許文献２は時刻同期方式に利用する時刻に秒、又は、ワンタイムパスワードの発生回数を示すカウンタの値を含ませることで、ワンタイムパスワードの不正利用を防止する発明である。
【特許文献１】特開２００１−３５２３２４号公報
【特許文献２】特開平１１−３１６７４０号公報
【発明の開示】
【発明が解決しようとする課題】
【０００７】
たしかに、ＰＩＮによるユーザ認証と、ＯＴＰによるユーザ認証を組み合せた二要素認証を用いることで、ユーザ認証のセキュリティを高めることができるが、ユーザ認証を行うときには、ユーザしか知りえないＰＩＮをネットバンキングのウェブサーバ５に入力するが必要があり、フィッシング詐欺等で第三者の手にＰＩＮが渡ってしまうことは避けられない。
【０００８】
更に、パスワードとＯＴＰによる二要素認証では、ユーザ認証のセキュリティが向上する反面、ユーザはＰＩＮとＯＴＰの二つを入力する必要があるため、ユーザに作業負担がかかってしまう問題がある。
【０００９】
そこで、本発明は、ユーザしか知りえないＰＩＮが、フィッシング詐欺等で第三者の手に暗証番号が渡ってしまうことがなく、更に、ユーザの入力負担を減らすことのできるワンタイムパスワード生成方法、ワンタイムパスワード認証方法、ワンタイムパスワード生成装置、ワンタイムパスワードの生成機能を備えたＩＣカード、ワンタイムパスワード認証装置、ＩＣカードプログラム及びコンピュータプログラムを提供することを目的とする。
【課題を解決するための手段】
【００１０】
上述した課題を解決する第１の発明は、ユーザ認証に利用するワンタイムパスワードを生成する方法であって、ステップａ１）：認証されるユーザの前記ワンタイムパスワードを生成するときに、前記ユーザが記憶しているパスワードを前記ユーザから取得するステップ、ステップｂ２）：前記ステップａ１）で前記ユーザから取得した前記パスワード、及び、前記ワンタイムパスワードを生成する度に異なる可変データとをパラメータとし、所定のアルゴリズムに従い演算することで、前記ユーザの前記ワンタイムパスワードを生成するステップ、を順に実行することを特徴とする。
【００１１】
更に、第２の発明は、ユーザ認証に利用するワンタイムパスワードを生成するワンタイムパスワード生成装置であって、前記ワンタイムパスワード生成装置は、認証するユーザのパスワードを前記ユーザから取得するパスワード取得手段と、前記ユーザから取得した前記パスワード及び前記ワンタイムパスワードを生成する度に毎回異なる可変データをパラメータとし、所定のアルゴリズムに従い演算することで、前記ユーザの前記ワンタイムパスワードを生成するワンタイムパスワード生成手段と、前記ワンタイムパスワードを表示する表示手段を備えていることを特徴とする。
【００１２】
更に、第３の発明は、第２の発明に記載のワンタイムパスワード生成装置であって、前記ワンタイムパスワード生成装置は、前記ワンタイムパスワード生成手段として動作するコマンドを備えたＩＣカードと、前記ＩＣカードを装着するＩＣカードビューアとから構成され、前記ＩＣカードビューアは、前記パスワード取得手段及び前記表示手段を備え、取得した前記パスワードを含む前記コマンドのコマンドＡＰＤＵを前記ＩＣカードに送信し、前記ＩＣカードの前記コマンドのレスポンスＡＰＤＵに含まれる前記ワンタイムパスワードを表示することを特徴とする。
【００１３】
更に、第４の発明は、ユーザ認証に利用するワンタイムパスワードを生成するＩＣカードであって、前記ＩＣカードは、前記ワンタイムパスワードを生成する度に毎回異なる可変データとして、前記ワンタイムパスワードを生成する度に毎回更新されるカウンタを有し、前記カウンタを更新した後に、端末から送信されたコマンドデータ及び前記カウンタの値をパラメータとし、所定のアルゴリズムに従い演算することで、前記ユーザの前記ワンタイムパスワードを生成し、生成した前記ワンタイムパスワードを前記端末に送信するワンタイムパスワード生成コマンドを備えていることを特徴とする。
【００１４】
更に、第５の発明は、ユーザ認証に利用するワンタイムパスワードを生成するＩＣカードに実装されるＩＣカードプログラムであって、前記ＩＣカードは、前記ワンタイムパスワードを生成する度に毎回更新されるカウンタを有し、前記カウンタを更新した後に、前記カウンタの値及び端末から送信されたコマンドデータをパラメータとし、所定のアルゴリズムに従い演算することで、前記ユーザの前記ワンタイムパスワードを生成し、生成した前記ワンタイムパスワードを前記端末に送信するワンタイムパスワード生成コマンドとして、前記ＩＣカードを機能させるためのＩＣカードプログラムである。
【００１５】
更に、第６の発明は、ユーザが生成したワンタイムパスワードを認証する方法であって、ステップａ）：認証する前記ユーザの前記識別データ及び前記ワンタイムパスワードを前記ユーザから取得するステップ、ステップｂ）：前記ユーザの識別データに関連付けて前記パスワードを記憶したデータベースから、前記ステップａ）で取得した前記識別データに対応する前記パスワードを割出すステップ、ステップｃ）：前記ステップｂ）で割出した前記パスワード及び前記ワンタイムパスワードを認証する度に異なる可変データをパラメータとし、所定のアルゴリズムに従い演算することで、認証側の前記ワンタイムパスワードを生成するステップ、ステップｄ）：ステップａ）で取得した前記ユーザの前記ワンタイムパスワードと、前記ステップｃ）で生成した認証側の前記ワンタイムパスワードを照合することで、ステップａ）で取得した前記ユーザの前記ワンタイムパスワードを認証するステップ、を順に実行することを特徴とする。
【００１６】
更に、第７の発明は、ユーザが生成したワンタイムパスワードを認証するワンタイムパスワード認証装置であって、前記ワンタイムパスワード認証装置は、前記ユーザの識別データに関連付けて前記パスワードを記憶するデータベースと、前記ユーザの前記識別データ及び前記ワンタイムパスワードを前記ユーザから取得するパスワード取得手段と、取得した前記識別データに対応する前記パスワードを前記データベースから割出し、前記ワンタイムパスワードを認証する度に異なる可変データ及び割出した前記パスワードをパラメータとし、所定のアルゴリズムに従い演算することで、前記ワンタイムパスワード認証装置の前記ワンタイムパスワードを生成する手段、前記ワンタイムパスワード認証装置の前記ワンタイムパスワードと前記ユーザの前記ワンタイムパスワードを照合することで、前記ユーザの前記ワンタイムパスワードを認証するワンタイムパスワード認証手段を備えていることを特徴とする。
【００１７】
更に、第８の発明は、ユーザが生成したワンタイムパスワードを認証するサーバに実装されるコンピュータプログラムであって、前記サーバは、前記ユーザの前記識別データ及び前記ワンタイムパスワードを前記ユーザから取得するパスワード取得手段と、前記ユーザの識別データに関連付けて前記パスワードを記憶するデータベースから、取得した前記識別データに対応する前記パスワードを割出し、前記ワンタイムパスワードを認証する度に異なる可変データ及び前記パスワードをパラメータとし、所定のアルゴリズムに従い演算することで、前記ワンタイムパスワード認証装置の前記ワンタイムパスワードを生成する手段、前記ワンタイムパスワード認証装置の前記ワンタイムパスワードと前記ユーザの前記ワンタイムパスワードを照合することで、前記ユーザの前記ワンタイムパスワードを認証するワンタイムパスワード認証手段として、前記サーバを機能させるためのコンピュータプログラムである。
【００１８】
本発明で生成されるワンタイムパスワードは、ユーザのＰＩＮと、前記ユーザの前記ワンタイムパスワードを生成するごとに異なる種データ（例えば、カウンタ値や時刻）とをパラメータとして生成されるため、「自分だけが持っている（has）」と「自分だけが知っている（know）」の２つの性質を有する認証要素となる。
【００１９】
よって、本発明で生成されるワンタイムパスワードを、ユーザのワンタイムパスワードを生成したときと同じ手順で認証側のワンタイムパスワードを生成し、ユーザのワンタイムパスワードを認証しさえすれば、二要素認証と同様の効果が期待できるばかりか、認証側にユーザのＰＩＮを入力する必要がなくなり、フィッシング詐欺等で第三者の手にＰＩＮが渡るリスクを少なくすることができ、更に、ユーザの入力負担を軽減することができる。
【００２０】
なお、本発明に係るワンタイムパスワード生成装置を、ＩＣカードとＩＣカードと組み合わされて利用されるＩＣカードビューアで実現することで、ＩＣキャッシュカードやＩＣクレジットカードなどを利用できるようになり、ネットバンキングなどの金融機関のシステムへの適用が容易になる。
【発明の効果】
【００２１】
上述した本発明によれば、ユーザしか知りえないＰＩＮが、フィッシング詐欺等で第三者の手に暗証番号が渡ってしまうことがなく、更に、ユーザの入力負担を減らすことのできるワンタイムパスワード生成方法、ワンタイムパスワード認証方法、ワンタイムパスワード生成装置、ワンタイムパスワードの生成機能を備えたＩＣカード、ワンタイムパスワード認証装置、ＩＣカードプログラム及びコンピュータプログラムを提供できる。
【発明を実施するための最良の形態】
【００２２】
ここから、本発明について図を参照しながら詳細に説明する。図１は、ワンタイムパスワード（OTP: One Time Password）を利用してユーザ認証するシステムを説明する図で、このシステムは、ユーザ６が所持するであるＩＣカード１と、ＩＣカード１とデータ通信する機能を有するＩＣカードビューア２と、ユーザ６が操作するクライアント３と、ネットワーク４を介してクライアント３と接続し、あるサービス（例えば、ネットワークバンキング）を提供しているウェブサーバ５とから少なくとも構成されている。
【００２３】
図１で図示したシステムにおいて、本発明に係るＯＴＰ生成装置の機能はＩＣカード１とＩＣカードビューア２で実現され、ウェブサーバ５は、本発明に係るＯＴＰ認証装置の機能を有している。
【００２４】
ＯＴＰ方式には、時刻同期方式やカウンタ同期方式などの方式があるが、本実施の形態で利用するＯＴＰ方式はカウンタ同期方式である。
【００２５】
カウンタ同期方式においては、ウェブサーバ５が有するカウンタの値とＩＣカード１が有するカウンタの値は同期し、ユーザ認証に利用されるＯＴＰは、ユーザ６のパスワードであるＰＩＮ６０（Personal Identification Number）とＩＣカード１のカウンタの値をパラメータとして、所定のアルゴリズム（例えば、暗号鍵を用いた暗号演算）に従いＩＣカード１の内部で生成される。
【００２６】
従来のカウンタ同期方式のＯＴＰは、トークンが有するカウンタの値のみをパラメータとして生成され、「自分だけが持っている（has）」に係る認証要素となるのに対し、本発明で生成されるＯＴＰは、ユーザ６のＰＩＮ６０とＩＣカード１のカウンタの値をパラメータとして生成されるため、「自分だけが持っている（has）」と「自分だけが知っている（know）」の２つに係る認証要素となり、本発明で生成されるＯＴＰを認証さえすれば二要素認証を実施したことになる。
【００２７】
ここから、本発明に係るＯＴＰ生成装置となるＩＣカード１及びＩＣカードビューア２、そして、ＯＰＴ認証装置となるウェブサーバ５について、更に詳細に説明する。図２は、図１で図示したシステムのブロック図である。まず、本発明に係るＯＴＰ生成装置を構成するＩＣカード１とＩＣカードビューア２について説明する。
【００２８】
図２に図示したように、ＩＣカード１は、カウンタ同期方式のＯＴＰを生成するプログラムであるＯＴＰ生成コマンド１０と、ＯＴＰ生成コマンド１０が利用するデータとして、カウンタ１１、カード鍵１２を秘匿に記憶している。
【００２９】
ＩＣカード１に記憶されるカード鍵１２はＩＣカード１ごとに異なる暗号鍵で、ウェブサーバ５が有するマスター鍵５２から生成され、ユーザ６の識別情報であるユーザＩＤから一意に決定され、ＩＣカード１の発行時に、カード鍵１２はＩＣカード１に秘匿に記憶される。更に、ＩＣカード１の発行時には、ウェブサーバ５によって設定されたカウンタ１１の初期値がＩＣカード１に秘匿に記憶される。
【００３０】
ＩＣカード１に備えられたＯＴＰ生成コマンド１０は、ユーザ６のＯＴＰを生成する前にカウンタの値をインクリメントし、ＯＴＰ生成コマンド１０が実行されるときのカウンタ１１の値及びＩＣカードビューア２から送信されたＰＩＮ６０を平文とし、ＩＣカード１に記憶されたカード鍵１２を用いて、所定のアルゴリズムに従ってこの平文を暗号化することでユーザ６のＯＴＰを生成して、生成したユーザ６のＯＴＰをＩＣカードビューア２に返信する。
【００３１】
図３は、ユーザ６が所持するＩＣカードビューア２を説明する図である。ＩＣカードビューア２とは、ＩＣカード１を装着し、ＩＣカード１にＯＴＰを生成させるための装置で、ＯＴＰを生成するときにユーザ６が押すボタン２０、ユーザ６がＰＩＮ６０を入力するときに利用するテンキー２１、そして、ＩＣカード１が生成したＯＴＰを表示するディスプレイ２２などを備える。
【００３２】
ユーザ６がボタン２０を押すと、ＩＣカードビューア２はＰＩＮ６０を入力する画面をディスプレイ２２に表示し、ユーザ６にＰＩＮ６０の入力を促し、ユーザ６が入力したＰＩＮ６０を含むＯＴＰ生成コマンド１０のコマンドＡＰＤＵをＩＣカード１に送信し、ＩＣカード１から返信されたＯＴＰをディスプレイ２２に表示する。
【００３３】
図１で図示したクライアント３にはブラウザがインストールされ、ユーザ６はクライアント３を操作することで、ネットワーク４を介してクライアント３と接続されたウェブサーバ５にアクセスする。
【００３４】
ウェブサーバ５は、サービスを提供するビジネスロジックの一つの機能として、クライアントから送信されるＯＴＰを認証する機能を有し、ＯＴＰを認証する機能を実現するため、図２に図示したように、ウェブサーバ５は、ＯＴＰ認証手段５０と、ユーザ６に関するデータを記憶したデータベース５５を備え、ＯＴＰ認証手段５０は、認証するユーザ６のユーザＩＤ及びＯＴＰを取得するＯＴＰ取得部５１と、データベース５５に記憶されたデータからウェブサーバ５側のＯＴＰを生成するＯＴＰ生成部５３、そして、クライアント３から送信されたユーザ６のＯＴＰを認証するＯＴＰ認証部５４を有し、更に、ＯＴＰ生成部がサーバ側のＯＴＰを生成するときに利用するマスター鍵５２を有している。
【００３５】
図４は、データベース５５に記憶されるデータを説明する図である。データベース５５には、ユーザ６ごとに割り振られた識別データであるユーザＩＤに関連付けて、予めウェブサーバ５に登録されたユーザ６のＰＩＮ５６と、ユーザＩＤで特定されるユーザ６が所持するＩＣカード１のカウンタ１１と同期するカウンタ５７が記憶され、ＯＴＰ認証手段５０が作動し、ＯＴＰを生成する前に、認証したユーザ６に対応するカウンタ５７の値がインクリメントされる。なお、ユーザ６ごとに割り振られた識別データであるユーザＩＤは、ＩＣカード１をユーザ６に配布するとき、ユーザ６に通知される。
【００３６】
ウェブサーバ５に備えられたＯＴＰ認証手段５０のＯＴＰ取得部５１は、ウェブサーバ５にアクセスするユーザ６からユーザＩＤとＯＴＰを受け付ける機能を有し、ＯＴＰ取得部５１は一つのウェブページで実現され、このウェブページは、少なくとも、ユーザ６がユーザＩＤを入力するフォームと、ユーザ６がＯＴＰを入力するフォームを有し、ウェブサーバ５にアクセスするユーザ６は、このウェブページに、ユーザ６側で生成したユーザ６のＯＴＰと、ユーザＩＤとを入力する。
【００３７】
ＯＴＰ認証手段５０のＯＴＰ生成部５３は、ユーザ６のＯＴＰを認証するときに利用するウェブサーバ５のＯＴＰを生成する機能を有し、ＯＴＰ取得部５１に入力されたユーザＩＤと、ウェブサーバ５が記憶しているマスター鍵５２とからサーバ鍵を生成すると共に、データベース５５を参照し、ＯＴＰ取得部５１に入力されたユーザＩＤに関連付けられて記憶されたＰＩＮ５６とカウンタ５７の値を取得し、取得したＰＩＮ５６とカウンタ５７の値を平文とし、サーバ鍵を用いて所定のアルゴリズムでこの平文を暗号化することで、ウェブサーバ５のＯＴＰを生成する。
【００３８】
ＯＴＰ認証手段５０のＯＴＰ認証部５４は、ＯＴＰ取得部５１に入力されたユーザ６のＯＴＰと、ＯＴＰ生成部５３が生成したウェブサーバ５のＯＴＰとを照合することで、ＯＴＰ取得部５１に入力されたユーザ６のＯＴＰの正当性を検証する。
【００３９】
ここから、ユーザ６のＯＴＰを生成及び認証する手順について、図１のシステムを例に取りながらそれぞれ説明する。図５は、ユーザ６のＯＴＰを生成及び認証する手順を示しダイアグラムである。なお、クライアント３は、ユーザ６とウェブサーバ５とを仲介する役割しか果たさないため、図５のダイアグラムではクライアント３を省略している
【００４０】
ユーザ６がウェブサーバ５のサービスを利用するとき、ユーザ６はクライアント３を操作してウェブサーバ５にアクセスし（ステップＳ１）、ウェブサーバ５は、ユーザ６からアクセスがあると、ＯＰＴ認証手段５０を作動させ、ＯＴＰ認証手段５０はＯＴＰ取得部５１を実行し、ユーザＩＤとユーザ６のＯＴＰを入力するためのウェブページをクライアント３に送信し、ユーザ６に対し、ユーザＩＤとユーザ６のＯＴＰの入力を要求する（ステップＳ２）。
【００４１】
ユーザＩＤとユーザ６のＯＴＰを入力するためのウェブページがクライアント３に表示されると、ユーザ６はＩＣカードビューア２のボタン２０を押すことで、ユーザ６はＩＣカードビューア２にＯＴＰ生成の指示を出す（ステップＳ３）。
【００４２】
ＩＣカードビューア２はＯＴＰ生成の指示を受けると、ユーザ６のＰＩＮ６０の入力を促す画面をディスプレイ２２に表示することで、ユーザ６にＰＩＮ６０の入力を要求する（ステップＳ４）。
【００４３】
ＰＩＮ６０の入力を促す画面がＩＣカードビューア２のディスプレイ２２に表示されると、ユーザ６は、ＩＣカードビューア２のテンキー２１を操作することで、ＰＩＮ６０をＩＣカードビューア２に入力し（ステップＳ５）、ＰＩＮ６０が入力されるとＩＣカードビューア２は、入力されたＰＩＮ６０を含むＯＴＰ生成コマンド１０のコマンドＡＰＤＵを装着されたＩＣカード１に送信する（ステップＳ６）。
【００４４】
ＩＣカードビューア２からＯＴＰ生成コマンド１０のコマンドＡＰＤＵが送信されると、ＩＣカード１のＯＴＰ生成コマンド１０が作動し、ＯＴＰ生成コマンド１０は、ＩＣカード１のカウンタ１１の値をインクリメントした後（ステップＳ７）、ＩＣカードビューア２から送信されたＰＩＮ６０とそのときのカウンタ１１の値とを平文とし、カード鍵１２を用いて、所定のアルゴリズムに従いこの平文を暗号化することでユーザ６のＯＴＰを生成する（ステップＳ８）。
【００４５】
ＩＣカード１は、ユーザ６のＯＰＴを生成すると、生成したユーザ６のＯＴＰを含むレスポンスＡＰＤＵを生成し、生成したレスポンスＡＰＤＵをＩＣカードビューア２に返信し（ステップＳ９）、ＩＣカードビューア２はレスポンスＡＰＤＵに含まれるユーザ６のＯＴＰをディスプレイ２２に表示する（ステップＳ１０）。
【００４６】
ユーザ６は、ＩＣカードビューア２のディスプレイ２２にユーザ６のＯＴＰが表示されると、表示されたユーザ６のＯＴＰとユーザＩＤを入力画面に入力することで、ユーザ６のＯＴＰとユーザＩＤをウェブサーバ５に送信する（ステップＳ１１）。
【００４７】
ウェブサーバ５のＯＴＰ認証手段５０は、ＯＴＰ取得部５１がユーザ６のＯＴＰとユーザＩＤを取得すると、ＯＴＰ生成部５３を作動させ、ＯＴＰ生成部５３は、まず、取得したユーザＩＤとウェブサーバ５が記憶しているマスター鍵５２とから、ユーザ６が所持するＩＣカード１に記憶されているカード鍵１２に対応するサーバ鍵を生成する（ステップＳ１２）。
【００４８】
ＯＴＰ認証手段５０のＯＴＰ生成部５３は、サーバ鍵を生成すると、データベース５５を検索し、取得したユーザＩＤに関連付けられて記憶されているＰＩＮ５６とカウンタ５７の値をデータベース５５から取得し、取得したＰＩＮ５６とカウンタ５７の値を平文とし、生成したサーバ鍵を用いて、ＩＣカード１と同じアルゴリズムでこの平文を暗号化することでウェブサーバ５のＯＴＰを生成する（ステップＳ１３）。
【００４９】
ＯＴＰ認証手段５０のＯＴＰ認証部５４は、ＯＴＰ生成部５３がサーバのＯＴＰを生成すると、取得したユーザ６のＯＴＰと生成したウェブサーバ５のＯＴＰとを照合することで、クライアント３を操作しているユーザ６を認証する（ステップＳ１４）。
【００５０】
そして、ウェブサーバ５のＯＴＰ認証手段５０は、ユーザ６のＯＴＰの認証結果をクライアント３に送信すると共に、ユーザ６のＯＴＰの認証に成功した場合は、ウェブサーバ５で提供しているサービスをユーザ６が利用するためのウェブページをクライアント３に送信し、ユーザ６にサービスの利用を許可する（ステップＳ１５）。
【００５１】
なお、本発明は、これまで説明した実施の形態に限定されることなく、種々の変形や変更が可能であって、それらも本発明の均等の範囲である。例えば、上述した形態では、ＯＴＰ方式はカウンタ同期方式としているが、ＯＴＰ方式は時刻同期方式であってもよい。
【００５２】
ＯＴＰ方式が時刻同期方式である場合、ユーザ６のＯＴＰを生成するとき、これまで説明したＩＣカード１の機能とＩＣカードビューア２の機能を兼ね備えたトークンは、ユーザ６のＰＩＮ６０とＯＴＰを生成するときの時刻をパラメータとして、所定のアルゴリズムに従いＯＴＰを生成する。
【図面の簡単な説明】
【００５３】
【図１】ワンタイムパスワードを利用してユーザ認証するシステムを説明する図。
【図２】ワンタイムパスワードを利用してユーザ認証するシステムのブロック図。
【図３】ＩＣカードビューアを説明する図。
【図４】データベースに記憶されるデータを説明する図。
【図５】ユーザのＯＴＰを生成及び認証する手順を示しダイアグラム。
【符号の説明】
【００５４】
１  ＩＣカード
１０  ＯＴＰ生成コマンド、１１  ＩＣカードのカウンタ、１２  カード鍵
２  ＩＣカードビューア
２０  ボタン、２１  テンキー、２２  ディスプレイ
３  クライアント
４  ネットワーク
５  ウェブサーバ
５０  ＯＴＰ認証手段、５１  ＯＴＰ取得部、５２  マスター鍵
５３  ＯＴＰ生成部、５４  ＯＴＰ認証部
５５  データベース、５６  ＰＩＮ、５７  カウンタ
６  ユーザ
６０  ユーザが記憶しているＰＩＮ
【図１】
2008176383.tif 000003
【図２】
2008176383.tif 000004
【図３】
2008176383.tif 000005
【図４】
2008176383.tif 000006
【図５】
2008176383.tif 000007