(57)【要約】【課題】複数のプロバイダとの間で安全にワンタイムパスワードを利用する。【解決手段】サービスを提供しているプロバイダのプロバイダ識別情報と、プロバイダ識別情報に対応するワンタイムパスワードを生成するための数列であるシードと、を対応付けて１組とし、この組を複数のプロバイダ分だけ格納して、プロバイダ識別情報とシードは組ごとに全て異なる手段１０２と、時刻情報を発生する手段１０１と、プロバイダ識別情報を取得する手段１０３と、取得されたプロバイダ識別情報に対応する対応シードを手段１０２から取得する手段と、手段１０１から時刻情報を取得する手段１０３と、取得された時刻情報と、対応シードとに対応する数値であるワンタイムパスワードを発生する手段１０３と、ワンタイムパスワードを表示する手段１０４と、を具備する。【選択図】図１
2008269342.tif 000002
【特許請求の範囲】
【請求項１】
サービスを提供しているプロバイダのプロバイダ識別情報と、該プロバイダ識別情報に対応するワンタイムパスワードを生成するための数列であるシードと、を対応付けて１組とし、この組を複数のプロバイダ分だけ格納して、プロバイダ識別情報とシードは組ごとに全て異なる格納手段と、
時刻情報を発生する時刻発生手段と、
プロバイダ識別情報を取得する第１取得手段と、
前記取得されたプロバイダ識別情報に対応する対応シードを前記格納手段から取得する第２取得手段と、
前記時刻情報を取得する第３取得手段と、
前記取得された時刻情報と、前記対応シードとに対応する数値であるワンタイムパスワードを発生するＯＴＰ発生手段と、
前記ワンタイムパスワードを表示する表示手段と、を具備することを特徴とするワンタイムパスワード装置。
【請求項２】
前記プロバイダ識別情報は、プロバイダＩＤ（identifier）と、プロバイダとユーザとの組ごとに割り当てられるＣＩＤ（communication identifier）とを含むことを特徴とする請求項１に記載のワンタイムパスワード装置。
【請求項３】
前記表示手段は、前記ワンタイムパスワードと、該ワンタイムパスワードに対応するＣＩＤとを表示することを特徴とする請求項２に記載のワンタイムパスワード装置。
【請求項４】
サーバ装置と通信する際に利用するワンタイムパスワードを生成するワンタイムパスワード装置であって、
サービスを提供しているプロバイダのプロバイダ識別情報と、該プロバイダ識別情報に対応するワンタイムパスワードを生成するための数列であるシードと、を対応付けて１組とし、この組を複数のプロバイダ分だけ格納して、プロバイダ識別情報とシードは組ごとに全て異なる格納手段と、
時刻情報を発生する時刻発生手段と、
プロバイダの第１プロバイダ識別情報を取得する第１取得手段と、
前記第１プロバイダ識別情報に対応する第１対応シードを前記格納手段から取得する第２取得手段と、
前記時刻情報を取得する第３取得手段と、
前記取得された時刻情報と、前記第１対応シードとに対応する数値である第１ワンタイムパスワードを発生するＯＴＰ発生手段と、
前記第１ワンタイムパスワードを表示する表示手段と、を具備し、
前記サーバ装置は、ユーザ識別情報と、該ユーザ識別情報に対応するワンタイムパスワードを生成するための数列であるシードと、を対応付けて１組とし、この組を複数格納し、前記時刻情報と、前記ワンタイムパスワード装置のユーザ識別情報に対応する第２対応シードと、に対応する第２ワンタイムパスワードが、前記第１ワンタイムパスワードと一致している場合には前記サーバ装置は、前記ユーザに前記第１プロバイダ識別情報を有するプロバイダのサービスの提供を許可することを特徴とするワンタイムパスワード装置。
【請求項５】
前記第１対応シードの第１部分と前記時刻情報の第２部分とを演算した演算情報を生成する第１生成手段と、
前記演算情報を、前記第１対応シードの第３部分で暗号化した第１暗号情報を生成する第２生成手段と、
前記第１暗号情報に対応する数値である第１暗号シードを発生する第１暗号シード発生手段と、をさらに具備し、
前記ＯＴＰ発生手段は、前記第１対応シードの代わりの前記第１暗号シードと、前記時刻情報とに対応する第１ワンタイムパスワードを発生し、
前記サーバ装置は、前記シードの代わりの前記第１暗号シードに対応する第２暗号シードを複数格納し、前記第２対応シードの代わりの前記第２暗号シードと前記時刻情報とに対応する第２ワンタイムパスワードが、前記第１ワンタイムパスワードと一致している場合には前記サーバ装置は、前記ユーザに前記第１プロバイダ識別情報を有するプロバイダのサービスの提供を許可することを特徴とする請求項４に記載のワンタイムパスワード装置。
【請求項６】
サーバ装置と通信する際に利用するワンタイムパスワードを生成するワンタイムパスワード装置であって、
サービスを提供しているプロバイダの複数のプロバイダ識別情報と、ワンタイムパスワードを生成するための数列である１つの単一シードとを格納している格納手段と、
時刻情報を発生する時刻発生手段と、
プロバイダの第１プロバイダ識別情報を取得する第１取得手段と、
前記単一シードの第１部分と前記第１プロバイダ識別情報とを演算した第１演算情報を生成する第１生成手段と、
前記第１演算情報を、前記単一シードの第２部分で暗号化した第１暗号情報を生成する第２生成手段と、
前記第１暗号情報に対応する数値である第１暗号シードを発生する第１暗号シード発生手段と、
前記第１暗号シードの第３部分と前記時刻情報の第４部分とを演算した第２演算情報を生成する第３生成手段と、
前記第２演算情報を、前記第１暗号シードの第５部分で暗号化した第２暗号情報を生成する第４生成手段と、
前記第２暗号情報に対応する数値である第２暗号シードを発生する第２暗号シード発生手段と、
前記時刻情報を取得する第２取得手段と、
前記第２暗号シードと、前記取得された時刻情報とに対応する第１ワンタイムパスワードを発生するＯＴＰ発生手段と、
前記第１ワンタイムパスワードを表示する表示手段と、を具備し、
前記サーバ装置は、前記第２暗号シードに対応する第３暗号シードを複数格納し、前記第３暗号シードと前記時刻情報とに対応する第２ワンタイムパスワードが、前記第１ワンタイムパスワードと一致している場合には前記サーバ装置は、前記ユーザに前記第１プロバイダ識別情報を有するプロバイダのサービスの提供を許可することを特徴とするワンタイムパスワード装置。
【請求項７】
サーバ装置と通信する際に利用するワンタイムパスワードを生成するワンタイムパスワード装置であって、
サービスを提供しているプロバイダの複数のプロバイダ識別情報と、ワンタイムパスワードを生成するための数列である１つの単一シードとを格納している格納手段と、
時刻情報を発生する時刻発生手段と、
プロバイダの第１プロバイダ識別情報を取得する第１取得手段と、
前記単一シードの第１部分と前記第１プロバイダ識別情報とを演算した第１演算情報を生成する第１生成手段と、
前記第１演算情報と前記時刻情報の第２部分とを演算した第２演算情報を生成する第２生成手段と、
前記第２演算情報を、前記単一シードの第３部分で暗号化した第１暗号情報を生成する第３生成手段と、
前記第１暗号情報に対応する数値である第１暗号シードを発生する第１暗号シード発生手段と、
前記時刻情報を取得する第２取得手段と、
前記第１暗号シードと、前記取得された時刻情報とに対応する第１ワンタイムパスワードを発生するＯＴＰ発生手段と、
前記第１ワンタイムパスワードを表示する表示手段と、を具備し、
前記サーバ装置は、前記第１暗号シードに対応する第２暗号シードを複数格納し、前記第２暗号シードと前記時刻情報とに対応する第２ワンタイムパスワードが、前記第１ワンタイムパスワードと一致している場合には前記サーバ装置は、前記ユーザに前記第１プロバイダ識別情報を有するプロバイダのサービスの提供を許可することを特徴とするワンタイムパスワード装置。
【請求項８】
前記プロバイダ識別情報は、プロバイダＩＤ（identifier）と、プロバイダとユーザとの組ごとに割り当てられるＣＩＤ（communication identifier）とを含み、前記ユーザ識別情報はＣＩＤを含み、前記格納手段と前記サーバ装置は、前記第１プロバイダ識別情報を有するプロバイダと前記ユーザとに割り当てられる、同一のＣＩＤを格納することを特徴とする請求項４から請求項７のいずれか１項に記載のワンタイムパスワード装置。
【請求項９】
前記表示手段は、前記第１ワンタイムパスワードと、該第１ワンタイムパスワードに対応するＣＩＤとを表示することを特徴とする請求項８に記載のワンタイムパスワード装置。
【請求項１０】
前記演算手段は、２つの入力値のうちの１つを固定した場合に、もう１つの入力値と該演算手段の出力値とが１対１に対応する演算を行うことを特徴とする請求項５から請求項９のいずれか１項に記載のワンタイムパスワード装置。
【請求項１１】
サーバ装置と、該サーバ装置と通信する際に利用するワンタイムパスワードを生成するワンタイムパスワード装置とを具備するワンタイムパスワードシステムであって、
前記ワンタイムパスワード装置は、
サービスを提供しているプロバイダのプロバイダ識別情報と、該プロバイダ識別情報に対応するワンタイムパスワードを生成するための数列であるシードと、を対応付けて１組とし、この組を複数のプロバイダ分だけ格納して、プロバイダ識別情報とシードは組ごとに全て異なる第１格納手段と、
ユーザが接続を望むプロバイダの第１プロバイダ識別情報を取得する第１取得手段と、
前記第１プロバイダ識別情報に対応する第１対応シードを前記第１格納手段から取得する第２取得手段と、
第１時刻情報を発生する第１時刻発生手段と、
前記第１時刻情報と、前記第１対応シードとに対応する数値である第１ワンタイムパスワードを発生する第１ＯＴＰ発生手段と、
前記第１ワンタイムパスワードを表示する表示手段と、を具備し、
前記サーバ装置は、
ユーザ識別情報と、該ユーザ識別情報に対応するワンタイムパスワードを生成するための数列であるシードと、を対応付けて１組とし、この組を複数格納して、ユーザ識別情報とシードは組ごとに全て異なる第２格納手段と、
前記第１時刻情報と同期した第２時刻情報を発生する第２時刻発生手段と、
前記ユーザ識別情報と、該ユーザ識別情報に対応する第２対応シードとを前記第２格納手段から取得する第３取得手段と、
前記第２時刻情報と、前記第２対応シードとに対応する第２ワンタイムパスワードを発生する第２ＯＴＰ発生手段と、
前記第１ワンタイムパスワードを取得する第４取得手段と、
前記第１ワンタイムパスワードと前記第２ワンタイムパスワードとが一致しているかどうかを判定する判定手段と、
前記判定手段が一致していると判定した場合には、前記第１プロバイダ識別情報を有するプロバイダのサービスの提供を許可する許可手段と、をさらに具備することを特徴とするワンタイムパスワードシステム。
【請求項１２】
前記ワンタイムパスワード装置は、
前記第１対応シードの第１部分と前記第１時刻情報の第２部分とを演算した演算情報を生成する第１生成手段と、
前記演算情報を、前記第１対応シードの第３部分で暗号化した第１暗号情報を生成する第２生成手段と、
前記第１暗号情報に対応する数値である第１暗号シードを発生する第１暗号シード発生手段と、をさらに具備し、
前記第１ＯＴＰ発生手段は、前記第１対応シードの代わりの前記第１暗号シードと、前記第１時刻情報とに対応する第１ワンタイムパスワードを発生し、
前記第２格納手段は、前記シードの代わりに、前記第１暗号シードに対応する第２暗号化シードを格納し、
前記第２ＯＴＰ発生手段は、前記第２対応シードの代わりの前記第２暗号シードと、前記第２時刻情報とに対応する第２ワンタイムパスワードを発生することを特徴とする請求項１１に記載のワンタイムパスワードシステム。
【請求項１３】
前記ワンタイムパスワード装置は、
前記第１格納手段の代わりに、サービスを提供しているプロバイダの複数のプロバイダ識別情報と、ワンタイムパスワードを生成するための数列である１つの単一シードとを格納している第３格納手段を具備し、
前記ワンタイムパスワード装置は、
前記単一シードの第１部分と前記第１プロバイダ識別情報とを演算した第１演算情報を生成する第１生成手段と、
前記第１演算情報を、前記単一シードの第２部分で暗号化した第１暗号情報を生成する第２生成手段と、
前記第１暗号情報に対応する数値である第１暗号シードを発生する第１暗号シード発生手段と、
前記第１暗号シードの第３部分と前記第１時刻情報の第４部分とを演算した第２演算情報を生成する第３生成手段と、
前記第２演算情報を、前記第１暗号シードの第５部分で暗号化した第２暗号情報を生成する第４生成手段と、
前記第２暗号情報に対応する数値である第２暗号シードを発生する第２暗号シード発生手段と、をさらに具備し、
前記第１ＯＴＰ発生手段は、前記第１対応シードの代わりの前記第２暗号シードと、前記第１時刻情報とに対応する第１ワンタイムパスワードを発生し、
前記第２格納手段は、前記シードの代わりに、前記第２暗号シードに対応する第３暗号化シードを格納し、
前記第２ＯＴＰ発生手段は、前記第２対応シードの代わりの前記第３暗号シードと、前記第２時刻情報とに対応する第２ワンタイムパスワードを発生することを特徴とする請求項１１に記載のワンタイムパスワードシステム。
【請求項１４】
前記ワンタイムパスワード装置は、
前記第１格納手段の代わりに、サービスを提供しているプロバイダの複数のプロバイダ識別情報と、ワンタイムパスワードを生成するための数列である１つの単一シードとを格納している第３格納手段を具備し、
前記ワンタイムパスワード装置は、
前記単一シードの第１部分と前記第１プロバイダ識別情報とを演算した第１演算情報を生成する第１生成手段と、
前記第１演算情報と前記第１時刻情報の第２部分とを演算した第２演算情報を生成する第２生成手段と、
前記第２演算情報を、前記単一シードの第３部分で暗号化した第１暗号情報を生成する第２生成手段と、
前記第１暗号情報に対応する数値である第１暗号シードを発生する第１暗号シード発生手段と、をさらに具備し、
前記第１ＯＴＰ発生手段は、前記第１対応シードの代わりの前記第１暗号シードと、前記第１時刻情報とに対応する第１ワンタイムパスワードを発生し、
前記第２格納手段は、前記シードの代わりに、前記第１暗号シードに対応する第２暗号化シードを格納し、
前記第２ＯＴＰ発生手段は、前記第２対応シードの代わりの前記第２暗号シードと、前記第２時刻情報とに対応する第２ワンタイムパスワードを発生することを特徴とする請求項１１に記載のワンタイムパスワードシステム。
【請求項１５】
前記プロバイダ識別情報は、プロバイダＩＤ（identifier）と、プロバイダとユーザとの組ごとに割り当てられるＣＩＤ（communication identifier）を含み、前記ユーザ識別情報はＣＩＤを含み、前記ワンタイムパスワード装置と前記サーバ装置は、前記第１プロバイダ識別情報を有するプロバイダと前記ユーザとに割り当てられる、同一のＣＩＤを格納することを特徴とする請求項１１から請求項１４のいずれか１項に記載のワンタイムパスワードシステム。
【請求項１６】
前記表示手段は、前記第１ワンタイムパスワードと、該第１ワンタイムパスワードに対応するＣＩＤとを表示することを特徴とする請求項１１から請求項１５のいずれか１項に記載のワンタイムパスワードシステム。
【請求項１７】
前記演算手段は、２つの入力値のうちの１つを固定した場合に、もう１つの入力値と該演算手段の出力値とが１対１に対応する演算を行うことを特徴とする請求項１２から請求項１６のいずれか１項に記載のワンタイムパスワードシステム。
【発明の詳細な説明】
【技術分野】
【０００１】
本発明は、ワンタイムパスワードを生成するワンタイムパスワード装置およびシステムに関する。
【背景技術】
【０００２】
ネットワークではユーザを認証する技術が重要である。ユーザ認証は、例えば、ＰＤＡ、携帯電話、ノートＰＣ等の端末からネットワークを介して、コンピュータシステムに接続する際に、接続しようとする端末のユーザが適切かどうかを判断するための技術である。安全かつ確実に重要な情報にアクセスするためには、ユーザ認証技術が重要になる。ユーザ認証の際に、よく利用されるのがＩＤとパスワードである。近年、パスワードの漏洩による不正アクセスの増加が問題となっている。
【０００３】
不正アクセスの防止策として、パスワードを利用する認証よりも強力なワンタイムパスワードを利用する技術がある（例えば、特許文献１参照）。
【０００４】
ワンタイムパスワードは、例えば、ＯＴＰ（one time password：ワンタイムパスワード）生成装置（トークンとも呼ばれる）によって、プロバイダが発行したＯＴＰシードと、時刻情報とに対応させて生成される。さらに、このプロバイダを提供しているサーバ装置は、このユーザの識別情報に対応するＯＴＰシードを格納し、ＯＴＰシードと時刻情報とに対応したワンタイムパスワードを生成する。ＯＴＰ生成装置とサーバ装置では、同一のＯＴＰシード情報を所有し、ワンタイムパスワードを生成するアルゴリズムも同一に設定してある。さらに、時刻情報も同期させておくので、ＯＴＰ生成装置が生成するワンタイムパスワードとサーバ装置が生成するワンタイムパスワードは同一になり、ユーザ認証を行うことができる。
【０００５】
このワンタイムパスワードは、時刻情報が変化するため、認証のために１回しか使用することができないので、ワンタイムパスワード認証は高い安全性を確保することができる。
【特許文献１】特開２００４−１７１０５６公報
【発明の開示】
【発明が解決しようとする課題】
【０００６】
しかし、ユーザが複数のプロバイダとの間でワンタイムパスワードを利用する場合には、各プロバイダに対応しているＯＴＰ生成装置を使用する必要があるので、ユーザは複数のプロバイダ用のＯＴＰ生成装置を携帯する必要があり、ユーザには不便である。
【０００７】
また、複数のプロバイダ間でワンタイムパスワードを共有しようとすると、ワンタイムパスワードを生成するために必要な秘密のＯＴＰシードもプロバイダ間で共有する必要がある。この秘密のＯＴＰシードをプロバイダ間で共有すると、秘密のＯＴＰシードの漏洩につながる可能性があり、安全性に問題がある。
【０００８】
この発明は、上述した事情を考慮してなされたものであり、複数のプロバイダとの間で安全にワンタイムパスワードを利用することができるワンタイムパスワード装置およびシステムを提供することを目的とする。
【課題を解決するための手段】
【０００９】
上述の課題を解決するため、本発明のワンタイムパスワード装置は、サービスを提供しているプロバイダのプロバイダ識別情報と、該プロバイダ識別情報に対応するワンタイムパスワードを生成するための数列であるシードと、を対応付けて１組とし、この組を複数のプロバイダ分だけ格納して、プロバイダ識別情報とシードは組ごとに全て異なる格納手段と、時刻情報を発生する時刻発生手段と、プロバイダ識別情報を取得する第１取得手段と、前記取得されたプロバイダ識別情報に対応する対応シードを前記格納手段から取得する第２取得手段と、前記時刻情報を取得する第３取得手段と、前記取得された時刻情報と、前記対応シードとに対応する数値であるワンタイムパスワードを発生するＯＴＰ発生手段と、前記ワンタイムパスワードを表示する表示手段と、を具備することを特徴とする。
【００１０】
また、本発明のワンタイムパスワード装置は、サーバ装置と通信する際に利用するワンタイムパスワードを生成するワンタイムパスワード装置であって、サービスを提供しているプロバイダのプロバイダ識別情報と、該プロバイダ識別情報に対応するワンタイムパスワードを生成するための数列であるシードと、を対応付けて１組とし、この組を複数のプロバイダ分だけ格納して、プロバイダ識別情報とシードは組ごとに全て異なる格納手段と、時刻情報を発生する時刻発生手段と、プロバイダの第１プロバイダ識別情報を取得する第１取得手段と、前記第１プロバイダ識別情報に対応する第１対応シードを前記格納手段から取得する第２取得手段と、前記時刻情報を取得する第３取得手段と、前記取得された時刻情報と、前記第１対応シードとに対応する数値である第１ワンタイムパスワードを発生するＯＴＰ発生手段と、前記第１ワンタイムパスワードを表示する表示手段と、を具備し、前記サーバ装置は、ユーザ識別情報と、該ユーザ識別情報に対応するワンタイムパスワードを生成するための数列であるシードと、を対応付けて１組とし、この組を複数格納し、前記時刻情報と、前記ワンタイムパスワード装置のユーザの識別情報に対応する第２対応シードと、に対応する第２ワンタイムパスワードが、前記第１ワンタイムパスワードと一致している場合には前記サーバ装置は、前記ユーザに前記第１プロバイダ識別情報を有するプロバイダのサービスの提供を許可することを特徴とする。
【００１１】
本発明のワンタイムパスワードシステムは、サーバ装置と、該サーバ装置と通信する際に利用するワンタイムパスワードを生成するワンタイムパスワード装置とを具備するワンタイムパスワードシステムであって、
前記ワンタイムパスワード装置は、サービスを提供しているプロバイダのプロバイダ識別情報と、該プロバイダ識別情報に対応するワンタイムパスワードを生成するための数列であるシードと、を対応付けて１組とし、この組を複数のプロバイダ分だけ格納して、プロバイダ識別情報とシードは組ごとに全て異なる第１格納手段と、ユーザが接続を望むプロバイダの第１プロバイダ識別情報を取得する第１取得手段と、前記第１プロバイダ識別情報に対応する第１対応シードを前記第１格納手段から取得する第２取得手段と、第１時刻情報を発生する第１時刻発生手段と、前記第１時刻情報と、前記第１対応シードとに対応する数値である第１ワンタイムパスワードを発生する第１ＯＴＰ発生手段と、前記第１ワンタイムパスワードを表示する表示手段と、を具備し、
前記サーバ装置は、ユーザ識別情報と、該ユーザ識別情報に対応するワンタイムパスワードを生成するための数列であるシードと、を対応付けて１組とし、この組を複数格納して、ユーザ識別情報とシードは組ごとに全て異なる第２格納手段と、前記第１時刻情報と同期した第２時刻情報を発生する第２時刻発生手段と、前記ユーザ識別情報と、該ユーザ識別情報に対応する第２対応シードとを前記第２格納手段から取得する第３取得手段と、前記第２時刻情報と、前記第２対応シードとに対応する第２ワンタイムパスワードを発生する第２ＯＴＰ発生手段と、前記第１ワンタイムパスワードを取得する第４取得手段と、前記第１ワンタイムパスワードと前記第２ワンタイムパスワードとが一致しているかどうかを判定する判定手段と、前記判定手段が一致していると判定した場合には、前記第１プロバイダ識別情報を有するプロバイダのサービスの提供を許可する許可手段と、をさらに具備することを特徴とする。
【発明の効果】
【００１２】
本発明のワンタイムパスワード装置およびシステムによれば、複数のプロバイダとの間で安全にワンタイムパスワードを利用することができる。
【発明を実施するための最良の形態】
【００１３】
以下、図面を参照しながら本発明の実施形態に係るワンタイムパスワード装置およびプログラムについて詳細に説明する。なお、以下の実施形態中では、同一の番号を付した部分については同様の動作を行うものとして、重ねての説明を省略する。  
（第１の実施形態）  
本実施形態のワンタイムパスワード装置について図１を参照して説明する。  
本実施形態のワンタイムパスワード装置は、図１に示すように、時刻発生部１０１、鍵管理部１０２、ＯＴＰ（one time password：ワンタイムパスワード）発生部１０３、ＯＴＰ／ＣＩＤ表示部１０４、入力部１０５、制御部１０６を含んでいる。なお、このワンタイムパスワード装置は、例えば、携帯電話である。
【００１４】
時刻発生部１０１は時刻を発生する。この時刻は、後述するサーバ装置に含まれる時刻発生部３０１が生成する時刻に同期している。
【００１５】
鍵管理部１０２は鍵データを格納している。この鍵データは、サービスを提供しているプロバイダの識別情報と、該識別情報に対応するワンタイムパスワードを生成するための数列であるＯＴＰシードと、を対応付けて１組とし、この組をこのワンタイムパスワード装置のユーザが接続しようとするプロバイダ分だけ格納している。なお、識別情報とシードは組ごとに全て異なる。鍵管理部１０２は、図２に示すように、プロバイダの識別情報として、例えば、プロバイダのＩＤと、このプロバイダ向けのＣＩＤ（communication identifier：通信識別子）とを格納している。ＣＩＤは、プロバイダとユーザとの組ごとに割り当てられるＩＤである。各プロバイダはユーザごとに異なるＣＩＤを有し、各ユーザはプロバイダごとに異なるＣＩＤを有している。ある１つのＣＩＤは、対応するある１つのプロバイダと、対応するあるひとりのユーザとで同一である。鍵管理部１０２が格納しているデータの詳細については後に図２を参照して説明する。  
ＯＴＰ発生部１０３は、時刻発生部１０１が発生した時刻と、鍵管理部１０２に格納されているＯＴＰシードのうちのユーザが入力したプロバイダに対応するＯＴＰシードと、を入力して、この時刻とＯＴＰシードから数値を生成する。この数値は、例えば、ハッシュ関数を使用して生成される。ＯＴＰ発生部１０３のハッシュ関数（例えば、ＳＨＡ−２５６）は、例えば、時刻として３２ビットのデータと、ＯＴＰシードとして２５６ビットのデータを入力とし、２５６ビットの数値を出力する。ＯＴＰ発生部１０３は、ハッシュ関数で得られた数値の一部（例えば、２０ビット）をワンタイムパスワードとして出力する。
【００１６】
ＯＴＰ／ＣＩＤ表示部１０４は、ＯＴＰ発生部１０３が発生したワンタイムパスワードと、制御部１０６が鍵管理部１０２から取得したワンタイムパスワードに対応するＣＩＤを表示する。ＯＴＰ／ＣＩＤ表示部１０４は、例えば、この他にも、暗証番号の入力画面、プロバイダの選択画面を表示する。
【００１７】
入力部１０５は、例えば、ユーザがサービスを選択する際に利用される。  
制御部１０６は、鍵管理部１０２から、ユーザが入力したプロバイダに対応するＯＴＰシードに対応するＣＩＤを取得し、ＯＴＰ／ＣＩＤ表示部１０４に渡す。また、制御部１０６はワンタイムパスワード装置に含まれる各部を制御する。
【００１８】
次に、図１の鍵管理部１０２に格納されている鍵データについて図２を参照して説明する。  
鍵管理部１０２は、ワンタイムパスワード装置ごとに、プロバイダＩＤ、ＣＩＤ、ＯＴＰシードを１組としたデータを、ユーザが提携しているプロバイダの数だけ格納している。これらのＣＩＤとＯＴＰシードは、ユーザごと（すなわち、ワンタイムパスワード装置ごと）に定まっている。すなわち、一般的には、同一のプロバイダでも、ユーザに依存して、ＣＩＤとＯＴＰシードは異なっている。したがって、ＣＩＤとＯＴＰシードから生成されるワンタイムパスワードは安全性に優れ、ネットワーク上の正しい相手と通信が可能になる。
【００１９】
鍵管理部１０２が格納する鍵データは、提携しているプロバイダの数だけあるが、通常は１００件程度であると見込まれる。プロバイダＩＤ、ＣＩＤは、例えば、それぞれ８桁で示され、ＯＴＰシードは、例えば、２５６ビットを有している。この場合、鍵管理部１０２は、４０００バイト程度のデータを格納することになる。
【００２０】
次に、図１のワンタイムパスワード装置を利用してユーザがデータのやり取りを行う相手であるサーバ装置について図３を参照して説明する。サーバ装置は、プロバイダごとに設置される。すなわち、１つのサーバ装置には１つのプロバイダ情報のみ格納している。  
サーバ装置は、図３に示すように、時刻発生部３０１、鍵管理部３０２、シード処理部３０３、ＯＴＰ発生部３０４、ネットワークＩ／Ｆ（interface：インターフェース）部３０５、制御部３０６を含んでいる。
【００２１】
時刻発生部３０１は時刻を発生する。この時刻は、ワンタイムパスワード装置に含まれる時刻発生部１０１が生成する時刻に同期している。
【００２２】
鍵管理部３０２は、鍵データをプロバイダごとに格納している。このプロバイダごとの鍵データは、登録しているユーザのＣＩＤと、該ＣＩＤに対応するワンタイムパスワードを生成するための数列であるＯＴＰシードと、を対応付けて１組とし、この組を複数組格納している。鍵管理部３０２が格納しているＣＩＤとＯＴＰシードは、組ごとに全て異なる内容になっている。また、ワンタイムパスワード装置の鍵管理部１０２が格納している鍵データのうちの対応するプロバイダに関するＯＴＰシードは、鍵管理部３０２が格納しているＯＴＰシードのうちの対応ユーザのＯＴＰシードに一致している。鍵管理部３０２が格納しているデータの詳細については後に図４を参照して説明する。
【００２３】
なお、ワンタイムパスワード装置の鍵管理部１０２に格納されている鍵データのうちのあるプロバイダに関するＯＴＰシードは、このプロバイダに対応するサーバ装置の鍵管理部３０２が格納しているＯＴＰシードのうちのこのユーザに対応するＯＴＰシードと一致するように設定しておく。例えば、後に図５を参照して説明するように、ユーザが、対応するプロバイダごとに利用登録を行う際にユーザのＣＩＤとワンタイムパスワードをサーバ装置に送信する。また、鍵管理会社が、事前にユーザとプロバイダに鍵データを郵送して、ユーザがワンタイムパスワード装置の鍵管理部１０２に鍵データをコピーする。他に、秘匿性に優れる通信回線、または、秘匿性に優れる通信技術を使用して、ワンタイムパスワード装置はサーバ装置から鍵データをダウンロードしてもよい。
【００２４】
シード処理部３０３は、鍵管理部３０２に格納されているデータからＯＴＰシードを生成するための処理を行う。シード処理部３０３は、鍵管理部３０２からユーザに対応するＯＴＰシードを取得し、ＯＴＰ発生部３０４に渡す。
【００２５】
ＯＴＰ発生部３０４は、時刻発生部３０１が発生した時刻と、シード処理部３０３から取得したＯＴＰシードとを入力して、この時刻とＯＴＰシードから数値を生成する。この数値を発生するためのアルゴリズムは、本実施形態のワンタイムパスワード装置でのＯＴＰ発生部１０３と同様である。すなわち、入力するＯＴＰシードと時刻とが同一なので、サーバ装置が発生するワンタイムパスワードとワンタイムパスワード装置が発生するワンタイムパスワードは同一のものになる。
【００２６】
ネットワークＩ／Ｆ部３０５は、ワンタイムパスワード装置が生成したワンタイムパスワードを利用してサーバ装置にログインするコンピュータとの間でデータのやり取りをする。ネットワークＩ／Ｆ部３０５は、例えば、コンピュータからユーザのログインを受け付けたり、後に図５を参照して説明するように、コンピュータからＣＩＤとワンタイムパスワードを受信したりする。
【００２７】
制御部３０６は、サーバ装置の各部を制御する。また、制御部３０６は、ＯＴＰ発生部３０４が発生したワンタイムパスワードと、ネットワークＩ／Ｆ部３０５がコンピュータから受信したワンタイムパスワードとが一致するかどうかを判定する。一致すると判定した場合にはコンピュータへのサービスの提供を許可しサービスの提供を開始し、一致しない場合にはコンピュータへのサービスの提供を拒否する。
【００２８】
次に、鍵管理部３０２に格納されている鍵データについて図４を参照して説明する。  
鍵管理部３０２は、プロバイダごとに、ＣＩＤ、ＯＴＰシードを１組としたデータをユーザの数以上格納している。これらのＣＩＤとＯＴＰシードは、ユーザごとに定まっている。すなわち、一般的には、同一のプロバイダでも、ユーザによって、ＣＩＤとＯＴＰシードは異なっている。したがって、ＣＩＤとＯＴＰシードから生成されるワンタイムパスワードは安全性に優れ、ネットワーク上の正しい相手と通信が可能になる。
【００２９】
鍵管理部３０２が格納する鍵データは、登録しているユーザの数だけあるが、通常は１０００万件程度である。ＣＩＤは例えば８桁で示され、ＯＴＰシードは例えば２５６ビットを有している。この場合、鍵管理部３０２は、１プロバイダにつき３．６億バイト程度のデータを格納することになる。
【００３０】
次に、図１のワンタイムパスワード装置を利用して、図３のサーバ装置のプロバイダに、このサーバ装置に接続するコンピュータを介して、利用登録をするための動作の一例について図５を参照して説明する。  
ユーザは、コンピュータを使用して、所望のプロバイダサイトを運営しているサーバ装置にログインする（ステップＳ５０１）。このとき、ユーザは、例えば、ユーザの識別情報である、ＩＤとパスワード（図５ではＰＷ）を入力してログインする。通常このＩＤとパスワードは登録のための仮のものであり１度だけ使用される。
【００３１】
ユーザは、コンピュータを使用して、ワンタイムパスワードを使用する旨をサーバ装置に指示する指示信号を送信する（ステップＳ５０２）。
【００３２】
サーバ装置は、コンピュータに、ＣＩＤとワンタイムパスワードを入力する旨の要求信号を送信する（ステップＳ５０３）。
【００３３】
ユーザは、携帯電話を使用し、サービスの提供を受けたいプロバイダを選択する（ステップＳ５０４）。このプロバイダは、ステップＳ５０１でログインしたサイトのプロバイダである。
【００３４】
携帯電話では、ＯＴＰ発生部１０３がステップＳ５０４で選択されたプロバイダのＯＴＰシードからワンタイムパスワードを発生し、発生したワンタイムパスワードとＣＩＤとをＯＴＰ／ＣＩＤ表示部１０４に表示する（ステップＳ５０５）。
【００３５】
ユーザは、ステップＳ５０５で表示されたワンタイムパスワードとＣＩＤとをコンピュータに入力し、入力されたワンタイムパスワードとＣＩＤとがサーバ装置に送信される（ステップＳ５０６）。  
サーバ装置は、ステップＳ５０６で入力されたワンタイムパスワードとＣＩＤとを受信し、これらが、この登録ユーザの鍵データであると認識し、このワンタイムパスワードとＣＩＤと、時刻発生部３０１が発生する時刻により、この登録ユーザのＯＴＰシードを生成し、このＯＴＰシードとＣＩＤとをこのユーザの鍵データとして鍵管理部３０２に格納する。
【００３６】
次に、図１のワンタイムパスワード装置と、図３のサーバ装置と、このサーバ装置に接続するコンピュータとを含むワンタイムパスワードシステムの動作の一例について図６、図７を参照して説明する。  
ユーザは、コンピュータに、所望のプロバイダサイトを表示させる（ステップＳ６０１）。
【００３７】
ユーザは、携帯電話を使用し、サービスの提供を受けたいプロバイダを選択する（ステップＳ６０２）。ユーザは、例えば、図７の（１）のように、入力部１０５を使用し、携帯電話の画面上で、パスワードとして暗証番号を入力し、図７の（２）のようにサービスの提供をするプロバイダの一覧を表示させ、複数のプロバイダの中からステップＳ６０１で表示させたプロバイダを選択する。
【００３８】
携帯電話では、ＯＴＰ発生部１０３がステップＳ６０２で選択されたプロバイダのＯＴＰシードからワンタイムパスワードを発生し、発生したワンタイムパスワードをＯＴＰ／ＣＩＤ表示部１０４に表示する（ステップＳ６０３）。携帯電話は、例えば、図７の（３）のようにワンタイムパスワードを表示する。
【００３９】
ユーザは、ユーザのＩＤとステップＳ６０３で表示されたワンタイムパスワードとをコンピュータに入力し、入力されたワンタイムパスワードがサーバ装置に送信される（ステップＳ６０４）。  
サーバ装置は、ステップＳ６０４で入力されたユーザＩＤとワンタイムパスワードとを受信し、受信したワンタイムパスワードと、サーバ装置が発生したワンタイムパスワードとが一致するかどうか確認する（認証処理）（ステップＳ６０５）。一致している場合には、サーバ装置がコンピュータにサービスの提供を開始する。なお、サーバ装置は、ワンタイムパスワード装置の時刻発生部１０１が発生する時刻情報の誤差を測定し、誤差を補正するための情報を格納してもよい。
【００４０】
以上の第１の実施形態によれば、ワンタイムパスワード装置でプロバイダごとにＣＩＤとＯＴＰシードを予め格納して、同様な情報をサーバ装置にユーザごとに、ＣＩＤとＯＴＰシードを予め格納しておくことにより、プロバイダ間でのＯＴＰシードの漏洩がなく、１つのワンタイムパスワード装置で複数のプロバイダからサービスの提供を安全に受けることができる。
【００４１】
（第２の実施形態）  
本実施形態のワンタイムパスワード装置について図８を参照して説明する。  
本実施形態のワンタイムパスワード装置は、図８に示すように、第１の実施形態での鍵管理部１０２、制御部１０６の代わりにそれぞれ鍵管理部８０１、制御部８０３を含み、さらに第１の実施形態のワンタイムパスワード装置からの新たな装置部分として、時変シード処理部８０２を含んでいる。
【００４２】
鍵管理部８０１は、格納している鍵データは鍵管理部１０２と同様である。鍵管理部１０２と異なる点は、図９に模式的に示すように、鍵管理部８０１が格納しているＯＴＰシードの一部を時刻情報と重ね合わせることに使用し、ＯＴＰシードのその他の部分を暗号化に使用することである。いずれのＯＴＰシードの部分も時変シード処理部８０２で使用される。
【００４３】
時変シード処理部８０２は、ＯＴＰシードを時刻情報により変動させる。時変シード処理部８０２は、例えば、時刻発生部１０１から時刻情報を取得して、ＯＴＰシードの後半部分と時刻情報とを取得し、これらの情報をある演算手法で演算し、演算した情報をＯＴＰシードの前半部分で（例えば、ＡＥＳによって）暗号化し、暗号化したデータをハッシュ関数（例えば、ＳＨＡ−２５６）の入力としてハッシュ関数の出力を得る。この出力をＯＴＰ発生部１０３に入力するＯＴＰシードとする。時刻情報として、年月のみを入力すれば、ＯＴＰシードを毎月変動させることができる。  
演算手法は、ｘをＯＴＰシードの後半部分、ｙを時刻情報、ｚを演算結果とした場合、ｆ（ｘ，ｙ）＝ｚで定義される演算においてｘを固定した場合にｙとｚとが１対１に対応するような演算である。この条件を満たす演算としては、例えば、加算がある（ｘ＋ｙ＝ｚ）。
【００４４】
制御部８０３は、鍵管理部８０１から、ユーザが入力したプロバイダに対応するＯＴＰシードに対応するＣＩＤを取得し、ＯＴＰ／ＣＩＤ表示部１０４に渡す。また、制御部８０３は、制御部１０６の制御処理に加え、時変シード処理部８０２の制御も行う。  
第２の実施形態では、鍵管理部３０２は、時変シード処理部８０２が出力するＯＴＰシードと同一のシードをユーザの情報に対応付けて格納している。
【００４５】
以上の第２の実施形態によれば、第１の実施形態での効果に加えて、所定の期間が経過するごとに、ＯＴＰシードを変動させることができ、ワンタイムパスワードを変動させることができる。したがって、より安全性の高いワンタイムパスワードを使用することができる。
【００４６】
（第３の実施形態）  
本実施形態のワンタイムパスワード装置について図１０を参照して説明する。  
本実施形態のワンタイムパスワード装置は、図１０に示すように、第２の実施形態での鍵管理部１０２、制御部１０６の代わりにそれぞれ鍵管理部１００１、制御部１００３を含み、さらに第２の実施形態のワンタイムパスワード装置からの新たな装置部分として、圧縮シード処理部１００２を含んでいる。
【００４７】
鍵管理部１００１は、鍵データを格納している。この鍵データは、プロバイダのＩＤおよびこのプロバイダのＣＩＤと、１つのＯＴＰシードとを格納している。プロバイダごとのＯＴＰシードを格納するのではなく、１つのＯＴＰシードだけを格納している点が他の実施形態と異なる。  
鍵管理部１００１が格納しているプロバイダＩＤとＣＩＤは、ユーザごとに定まっている。すなわち、一般的には、同一のプロバイダでも、ワンタイムパスワード装置によって、ＣＩＤは異なっている。
【００４８】
鍵管理部１００１が格納する鍵データは、図１１に示すように、提携プロバイダの数だけあるが、通常は１００件程度である。プロバイダＩＤ、ＣＩＤは、例えば、それぞれ８桁で示され、ＯＴＰシードは、例えば、２５６ビットを有している。この場合、鍵管理部１００１は、８３２バイト程度のデータを格納することになり、他の実施形態での格納量４０００バイト程度よりも格段にデータ格納量が少なくなる。
【００４９】
圧縮シード処理部１００２は、プロバイダＩＤとＣＩＤと単一のＯＴＰシードから、このプロバイダに対応するＯＴＰシードを発生させる。圧縮シード処理部１００２は、例えば、プロバイダＩＤと、ＯＴＰシードの後半部分とを第２の実施形態で説明したように演算し、演算した情報を単一のＯＴＰシードの前半部分で（例えば、ＡＥＳによって）暗号化し、暗号化した情報をハッシュ関数（例えば、ＳＨＡ−２５６）の入力としてハッシュ関数の出力を得る。この出力を時変シード処理部８０２に入力するＯＴＰシードとする。  
制御部１００３は、鍵管理部１００１から、ユーザが入力したプロバイダに対応するＯＴＰシードに対応するＣＩＤを取得し、ＯＴＰ／ＣＩＤ表示部１０４に渡す。また、制御部１００３は制御部８０３の制御処理に加え、圧縮シード処理部１００２の制御も行う。
【００５０】
第３の実施形態では、鍵管理部３０２は、時変シード処理部８０２が出力するＯＴＰシードと同一のシードをユーザの情報に対応付けて格納している。
【００５１】
（変形例）  
第３の実施形態のワンタイムパスワード装置の変形例について図１２を参照して説明する。  
本変形例のワンタイムパスワード装置は、図１２に示すように、第３の実施形態での圧縮シード処理部１００２、制御部１００３の代わりにそれぞれ圧縮シード処理部１２０１、制御部１２０２を含み、さらに、第３の実施形態での時変シード処理部８０２を除いたものである。制御部１２０２は、制御部１０６の制御処理に加え、圧縮シード処理部１２０１の制御も行う。
【００５２】
圧縮シード処理部１２０１は、圧縮シード処理部１００２とは演算部分が異なるだけである。圧縮シード処理部１２０１では、圧縮シード処理部１００２での場合のように、プロバイダＩＤと、ＯＴＰシードの後半部分とを演算し、さらに、この演算結果と時刻発生部１０１から取得した時刻情報とを演算する。そして、この最終的な演算結果を単一のＯＴＰシードの前半部分で（例えば、ＡＥＳによって）暗号化すること以降の圧縮シード処理部１２０１での動作は、上述した第３の実施形態と同様である。そして、圧縮シード処理部１２０１のハッシュ関数の出力をＯＴＰシードとして、ＯＴＰ発生部１０３に出力する。なお、演算手法は、他の実施形態と同様である。  
この変形例によれば、時変シード処理部８０２を設置する必要がなくなる。
【００５３】
以上の第３の実施形態によれば、第２の実施形態での効果に加えて、ワンタイムパスワード装置が格納しておくべき情報量が格段に減少し、メモリの空き容量が増加するので、他の用途にメモリを活用することができる。逆に言えば、ワンタイムパスワード装置は少ないメモリで適切なワンタイムパスワードを生成することができる。
【００５４】
なお、本発明は上記実施形態そのままに限定されるものではなく、実施段階ではその要旨を逸脱しない範囲で構成要素を変形して具体化できる。また、上記実施形態に開示されている複数の構成要素の適宜な組み合わせにより、種々の発明を形成できる。例えば、実施形態に示される全構成要素から幾つかの構成要素を削除してもよい。さらに、異なる実施形態にわたる構成要素を適宜組み合わせてもよい。
【図面の簡単な説明】
【００５５】
【図１】第１の実施形態に係るワンタイムパスワード装置のブロック図。
【図２】図１の鍵管理部が格納している鍵データを示す図。
【図３】図１のワンタイムパスワード装置を利用してコンピュータとデータのやり取りを行うサーバ装置のブロック図。
【図４】図３の鍵管理部が格納している鍵データを示す図。
【図５】図１のワンタイムパスワード装置を利用して、と図３のサーバ装置に利用登録するための動作の一例を示すフローチャート。
【図６】図１のワンタイムパスワード装置と、図３のサーバ装置と、このサーバ装置に接続するコンピュータとを含むワンタイムパスワードシステムの動作の一例を示すフローチャート。
【図７】図６のあるステップでの図１のワンタイムパスワード装置の表示画面を示す図。
【図８】第２の実施形態に係るワンタイムパスワード装置のブロック図。
【図９】図８の鍵管理部が格納している鍵データを示す図。
【図１０】第３の実施形態に係るワンタイムパスワード装置のブロック図。
【図１１】図１０の鍵管理部が格納している鍵データを示す図。
【図１２】第３の実施形態の変形例に係るワンタイムパスワード装置のブロック図。
【符号の説明】
【００５６】
１０１、３０１・・・時刻発生部、１０２、３０２、８０１、１００１・・・鍵管理部、１０３、３０４・・・ＯＴＰ発生部、１０４・・・ＯＴＰ／ＣＩＤ表示部、１０５・・・入力部、１０６、３０６、８０３、１００３、１２０２・・・制御部、３０３・・・シード処理部、３０５・・・ネットワークＩ／Ｆ部、８０２・・・時変シード処理部、１００２、１２０１・・・圧縮シード処理部。
【図１】
2008269342.tif 000003
【図２】
2008269342.tif 000004
【図３】
2008269342.tif 000005
【図４】
2008269342.tif 000006
【図５】
2008269342.tif 000007
【図６】
2008269342.tif 000008
【図７】
2008269342.tif 000009
【図８】
2008269342.tif 000010
【図９】
2008269342.tif 000011
【図１０】
2008269342.tif 000012
【図１１】
2008269342.tif 000013
【図１２】
2008269342.tif 000014