(57)【要約】【課題】全ユーザ端末を管理することも、通信のために特別なソフトウェアをも必要としない復号鍵管理サーバを提供する。【解決手段】ネットワーク４０を介して、プロバイダ端末３０からの要求に応じて暗号化実行ファイルの復号鍵を鍵管理ＤＢ２１に備えて管理し、暗号化実行ファイルの復号鍵要求を行う複数のユーザ端末１０に通信可能に接続された管理サーバ２０であって、暗号化実行ファイルの参照ファイルＩＤ毎に、暗号化実行ファイルの暗号化復号鍵と、復号鍵要求の有効期限と、復号鍵要求の復号試行残回数と、参照パスワードとを格納し、復号鍵要求があったときに、復号試行残回数が１以上か否かを判断して、１以上と判断されたときに、復号鍵要求に伴うパスワードと参照パスワードとを照合して認証を行い、認証が得られたときに有効期限内の復号鍵要求であるか否かを判断し、有効期間内と判断されたとき、対応する暗号化復号鍵を返信する構成を有する。【選択図】図１
2009117907.tif 000002
【特許請求の範囲】
【請求項１】
ネットワークを介して、暗号化実行ファイルの復号鍵を要求する復号鍵要求を行う複数のユーザクライアントに通信可能に接続された管理サーバであって、
暗号化実行ファイルを一意に特定する参照ファイルＩＤ毎に、前記参照ファイルＩＤで特定される暗号化実行ファイルの暗号化された復号鍵である暗号化復号鍵と、前記参照ファイルＩＤで特定される暗号化実行ファイルの復号鍵要求の有効期限と、前記復号鍵要求の試行の誤りの残回数を示す復号試行残回数と、前記復号鍵要求に伴うパスワードと照合される参照パスワードと、を格納し、前記復号鍵要求があったときに、対応する前記復号試行残回数が１以上か否かを判断して、１以上と判断されたときに、前記復号鍵要求に伴うパスワードと前記参照パスワードとを照合して認証を行い、認証が得られたときに前記有効期限内の復号鍵要求であるか否かを判断し、有効期間内と判断されたとき、対応する前記暗号化復号鍵を返信する、ことを特徴とする復号鍵管理サーバ。
【請求項２】
コンピュータに、ネットワークを介して、暗号化実行ファイルの復号鍵を要求する復号鍵要求を所定の復号鍵管理サーバに行わせるプログラムであって、
前記コンピュータが格納する、前記暗号化実行ファイル内の実行対象のファイルデータを前記復号鍵管理サーバが有する復号鍵で暗号化して得られた暗号化ファイルデータと、前記暗号化実行ファイルを一意に特定するファイルＩＤと、前記復号鍵管理サーバのアドレスと、前記復号鍵管理サーバの公開鍵と、前記復号鍵の暗号化に使用される一時公開鍵と、前記一時公開鍵で暗号化された復号鍵の復号に使用される一時秘密鍵と、に基づいて、前記暗号化実行ファイルの実行が行われ、かつ、認証に使用されるパスワードが入力されたとき、コンピュータに、入力された前記パスワードと前記ファイルＩＤと前記一時公開鍵とを前記復号鍵管理サーバの公開鍵で暗号化して、前記アドレスの復号鍵管理サーバに送信させ、前記一時公開鍵で暗号化された前記復号鍵を受信したときに、暗号化された前記復号鍵を前記一時秘密鍵で復号させ、得られた復号鍵で前記暗号化ファイルデータを復号させる、ことを特徴とする復号鍵要求プログラム。
【発明の詳細な説明】
【技術分野】
【０００１】
本発明は、暗号化された実行ファイルを提供可能な復号鍵管理サーバ及び復号鍵要求プログラムに関し、特に、暗号化された実行ファイルに対する復号試行回数と実行期限の設定を可能にする復号鍵管理サーバ、復号鍵要求プログラム及び復号鍵管理システムに関する。
【背景技術】
【０００２】
従来から、暗号化された実行ファイル（以下、暗号化実行ファイルという。）の配布は、ファイルがパスワードで暗号された後で、使用されたパスワードがオフラインで受信者に伝えられた後で、行われる。そして、ファイルの復号は、何度でも試行可能になっている。ここで、より高度なセキュリティが要求される環境では、暗号化実行ファイルへの辞書攻撃に対する対策、実行期限の設定等を可能とする機能の追加が望まれる。
【０００３】
より高度なセキュリティを実現しようとするものとして、データの改ざんによるソフトウェアの不正使用防止方法が、知られている（例えば、特許文献１参照。）。特許文献１には、承認サーバが、認証ファイルをユーザ端末に定期的に送信して格納させ、認証ファイルの格納を介してソフトウェアの使用権を付与する技術が、記載されている。
【特許文献１】特開２００４−２１３０５７号公報
【発明の開示】
【発明が解決しようとする課題】
【０００４】
しかしながら、特許文献1記載の従来の不正使用防止方法では、承認サーバが全ユーザ端末を管理する必要があると共に、ユーザ端末にも承認サーバと通信するための特別なクライアントソフトウェアが必要であるという問題を有していた。
【０００５】
以上の現状に鑑み、本発明の目的は、暗号化実行ファイルを提供するサーバが全ユーザ端末を管理すること、及び、ユーザ端末が承認サーバと通信するための特別なソフトウェアを、必要としない復号鍵管理サーバ又は復号鍵要求プログラムを提供する。
【課題を解決するための手段】
【０００６】
上記の課題を解決すべく、本発明は以下の構成を提供する。
請求項１に係る発明は、ネットワークを介して、暗号化実行ファイルの復号鍵を要求する復号鍵要求を行う複数のユーザクライアントに通信可能に接続された管理サーバであって、暗号化実行ファイルを一意に特定する参照ファイルＩＤ毎に、前記参照ファイルＩＤで特定される暗号化実行ファイルの暗号化された復号鍵である暗号化復号鍵と、前記参照ファイルＩＤで特定される暗号化実行ファイルの復号鍵要求の有効期限と、前記復号鍵要求の試行の誤りの残回数を示す復号試行残回数と、前記復号鍵要求に伴うパスワードと照合される参照パスワードと、を格納し、前記復号鍵要求があったときに、対応する前記復号試行残回数が１以上か否かを判断して、１以上と判断されたときに、前記復号鍵要求に伴うパスワードと前記参照パスワードとを照合して認証を行い、認証が得られたときに前記有効期限内の復号鍵要求であるか否かを判断し、有効期間内と判断されたとき、対応する前記暗号化復号鍵を返信する、ことを特徴とする。
【０００７】
請求項２に係る発明は、コンピュータに、ネットワークを介して、暗号化実行ファイルの復号鍵を要求する復号鍵要求を所定の復号鍵管理サーバに行わせるプログラムであって、前記コンピュータが格納する、前記暗号化実行ファイル内の実行対象のファイルデータを前記復号鍵管理サーバが有する復号鍵で暗号化して得られた暗号化ファイルデータと、前記暗号化実行ファイルを一意に特定するファイルＩＤと、前記復号鍵管理サーバのアドレスと、前記復号鍵管理サーバの公開鍵と、前記復号鍵の暗号化に使用される一時公開鍵と、前記一時公開鍵で暗号化された復号鍵の復号に使用される一時秘密鍵と、に基づいて、前記暗号化実行ファイルの実行が行われ、かつ、認証に使用されるパスワードが入力されたとき、コンピュータに、入力された前記パスワードと前記ファイルＩＤと前記一時公開鍵とを前記復号鍵管理サーバの公開鍵で暗号化して、前記アドレスの復号鍵管理サーバに送信させ、前記一時公開鍵で暗号化された前記復号鍵を受信したときに、暗号化された前記復号鍵を前記一時秘密鍵で復号させ、得られた復号鍵で前記暗号化ファイルデータを復号させる、ことを特徴とする。
【発明の効果】
【０００８】
請求項１に係る発明によれば、ネットワークを介して、暗号化実行ファイルの復号鍵を要求する復号鍵要求を行う複数のユーザクライアントに通信可能に接続された管理サーバであって、暗号化実行ファイルを一意に特定する参照ファイルＩＤ毎に、参照ファイルＩＤで特定される暗号化実行ファイルの暗号化された復号鍵である暗号化復号鍵と、参照ファイルＩＤで特定される暗号化実行ファイルの復号鍵要求の有効期限と、復号鍵要求の試行の誤りの残回数を示す復号試行残回数と、復号鍵要求に伴うパスワードと照合される参照パスワードと、を格納し、復号鍵要求があったときに、対応する復号試行残回数が１以上か否かを判断して、１以上と判断されたときに、復号鍵要求に伴うパスワードと参照パスワードとを照合して認証を行い、認証が得られたときに有効期限内の復号鍵要求であるか否かを判断し、有効期間内と判断されたとき、対応する暗号化復号鍵を返信するため、暗号化実行ファイルを提供するサーバが全ユーザ端末を管理すること、及び、ユーザ端末が承認サーバと通信するための特別なソフトウェアを、必要としない復号鍵管理サーバを実現することができる。
【０００９】
請求項２に係る発明によれば、上記請求項１の効果に加えて、コンピュータに、ネットワークを介して、暗号化実行ファイルの復号鍵を要求する復号鍵要求を所定の復号鍵管理サーバに行わせるプログラムであって、コンピュータが格納する、暗号化実行ファイル内の実行対象のファイルデータを復号鍵管理サーバが有する復号鍵で暗号化して得られた暗号化ファイルデータと、暗号化実行ファイルを一意に特定するファイルＩＤと、復号鍵管理サーバのアドレスと、復号鍵管理サーバの公開鍵と、復号鍵の暗号化に使用される一時公開鍵と、一時公開鍵で暗号化された復号鍵の復号に使用される一時秘密鍵と、に基づいて、暗号化実行ファイルの実行が行われ、かつ、認証に使用されるパスワードが入力されたとき、コンピュータに、入力されたパスワードとファイルＩＤと一時公開鍵とを復号鍵管理サーバの公開鍵で暗号化して、アドレスの復号鍵管理サーバに送信させ、一時公開鍵で暗号化された復号鍵を受信したときに、暗号化された復号鍵を一時秘密鍵で復号させ、得られた復号鍵で暗号化ファイルデータを復号させるため、暗号化実行ファイルを提供するサーバが全ユーザ端末を管理すること、及び、ユーザ端末が承認サーバと通信するための特別なソフトウェアを、必要としない復号鍵要求プログラムを実現することができる。
【発明を実施するための最良の形態】
【００１０】
以下、実施例を示した図面を参照しつつ本発明の実施の形態について説明する。
図１は、本発明による復号鍵管理システムの一実施例を模式的に示すブロック構成図である。復号鍵管理システムは、図１に示すように、ネットワーク４０を介して通信可能に接続された、暗号化実行ファイルの復号鍵を要求する復号鍵要求を行うユーザクライアント１０と、復号鍵要求の適否の判断に使用される情報（以下、参照復号情報という。）が設定された鍵管理データベース２１を備え、ユーザクライアント１０からの復号鍵要求に応答して復号鍵要求の適否を判断し、復号鍵要求が適当と判断されたときに暗号化された上記の復号鍵を返信する鍵管理サーバ２０と、参照復号情報の登録を鍵管理サーバ２０に要求する登録要求を送信するプロバイダクライアント３０と、を備える。
【００１１】
ここで、ユーザクライアント１０には、復号鍵要求に先立って暗号化実行ファイルが格納されている。図２は、暗号化実行ファイル（ａ）についての説明図である。暗号化実行ファイルＴ１には、図２に示すように、鍵管理サーバ２０から取得される復号鍵で暗号化された実行対象のファイルデータＴ１１と、暗号化実行ファイルＴ１を一意に特定するファイルＩＤ（以下、ＦＩＤという。）Ｔ１２と、復号鍵要求先の鍵管理サーバ２０のアドレスＴ１３と、鍵管理サーバ２０の公開鍵Ｔ１４と、復号鍵の暗号化に使用される一時公開鍵Ｔ１５と、暗号化された復号鍵の復号に使用される一時秘密鍵Ｔ１６と、が設定されている。ユーザクライアント１０は、ユーザによって入力されたパスワードと上記のＦＩＤ（Ｔ１２）と一時公開鍵Ｔ１５とからなる復号鍵要求情報を公開鍵Ｔ１４で暗号化して、復号鍵要求時に鍵管理サーバ２０に送信する。
【００１２】
図３は、鍵管理データベースに格納される参照復号情報を示す概念図である。参照復号情報Ｔ２は、公開鍵Ｔ１４で暗号化され復号鍵要求があったときに参照される情報であって、管理対象の暗号化実行ファイルを一意に特定する参照ＦＩＤ（Ｔ２１）と、対応する暗号化実行ファイルの復号鍵Ｔ２２と、復号鍵要求の有効期限Ｔ２３と、復号鍵要求の試行の誤りの残回数を示す復号試行残回数Ｔ２４と、復号鍵要求に伴うパスワードと照合される参照パスワードＴ２５と、を少なくとも情報として有する。
【００１３】
図３に示すように、ＦＩＤ（Ｔ２１）毎に、参照復号情報の残りの情報が対応付けられて設定されている。ただし、パスワードに関しては、ハッシュされたもの、即ち、所定のハッシュ関数Ｈを用いて変換されたハッシュ値がパスワードに置き換えられている。しかしながら、パスワードは、そのものが設定されるのでもよい。
【００１４】
ここで、復号鍵Ｔ２２には、例えば、ＭＡＣ（Ｍｅｄｉａ  Ａｃｅｓｓ  Ｃｏｎｔｒｏｌ）アドレス等の一意性を付加する情報が含まれる。また、復号試行残回数Ｔ２４として、登録時は、プロバイダクライアント３０から受信した初期値が設定される。不正な復号鍵要求の場合には、通常、複数回の復号鍵要求が行われるため、復号鍵要求の拒否毎に、復号試行残回数Ｔ２４を「１」づつ減算して「０」になったときに復号鍵要求を拒絶することによって、ソフトウェアの不正使用防止が図れる。
【００１５】
鍵管理サーバ２０は、ユーザクライアント１０からの復号鍵要求があったときに、自己の公開鍵ＰＫを用いて復号鍵要求情報を復号し、得られたパスワードのハッシュ値を算出し、このハッシュ値と復号で得られたＦＩＤに基づいて特定される参照パスワード（ハッシュ値）とを照合することによって、認証する。鍵管理サーバ２０は、認証されないとき上記の「復号試行残回数」から「１」を減算して、更新する。
【００１６】
鍵管理サーバ２０は、また、認証が得られたとき、復号鍵要求情報を復号して得られた一時公開鍵ＴＰＫ（Ｔ１５）で要求対象の復号鍵を暗号化して、ユーザクライアント１０に返信する。
【００１７】
図４は、本発明による復号鍵管理システムにおいて行われる処理の概要についての説明図である。まず、暗号化実行ファイルがユーザに発送される前に、プロバイダクライアント３０が、公開鍵ＰＫ（Ｔ１４）を用いて参照復号情報を暗号化し、暗号化された参照復号情報Ｔ２を登録要求時に鍵管理サーバ２０に送信する。鍵管理サーバ２０は、復号鍵要求に応答して、暗号化された参照復号情報Ｔ２を鍵管理データベース２１に登録する登録処理を行い、登録処理の結果を登録成否応答としてプロバイダクライアント３０に返信する。これによって、暗号化実行ファイルＴ１がユーザに発送される前に、暗号化された参照復号情報Ｔ２が鍵管理データベース２１に登録される。
【００１８】
次に、暗号化実行ファイルの実行及びパスワードの入力が行われたとき、ユーザクライアント１０は、入力されたパスワードとＦＩＤ（Ｔ１２）と一時公開鍵Ｔ１５とからなる復号鍵要求情報を開鍵Ｔ１４で暗号化して、復号鍵要求時に鍵管理サーバ２０に送信する。鍵管理サーバ２０は、復号鍵要求に応答して、自己の公開鍵を用いて復号鍵要求情報を復号し、得られたＦＩＤ（Ｔ１２）に対応する参照復号情報Ｔ２内の復号試行残回数が「１」以上か否かを判断する。
【００１９】
鍵管理サーバ２０は、復号試行残回数が「１」以上と判断したとき、受信したパスワードのハッシュ値を算出し、得られたパスワードのハッシュ値とＦＩＤ（Ｔ１２）に基づいて特定される参照復号情報Ｔ２内の参照パスワード（ハッシュ値）とを照合することによって認証する。鍵管理サーバ２０は、認証が得られないとき上記の「復号試行残回数」から「１」を減算して、更新すると共に「エラー」を応答として返信する。
【００２０】
ここで、ＦＩＤ（Ｔ１２）が図３に示す「ＦＩＤ＿１」と照合したとき、パスワードのハッシュ値Ｈ（ｐｗ１）Ｔ２５と受信したパスワードのハッシュ値とが照合され、「エラー」を応答として返信する場合、「復号試行残回数」が「３」から「１」減算された値「２」で更新される。鍵管理サーバ２０は、また、照合によって認証が得られたとき、参照復号情報Ｔ２中の復号鍵要求の有効期限Ｔ２３を取得して、復号鍵要求が有効期限内になされたものか否かを判断する。
【００２１】
有効期限内と判断されたとき、鍵管理サーバ２０は、復号鍵要求情報を復号して得られた一時公開鍵ＴＰＫ（Ｔ１５）で、要求された復号鍵を暗号化してユーザクライアント１０に返信する。ユーザクライアント１０は、暗号化実行ファイルに設定された一時秘密鍵Ｔ１６を用いて暗号化された復号鍵を復号し、得られた復号鍵を用いて暗号化実行ファイルのファイルデータＴ１１を復号して実行ファイルを起動する。
【００２２】
なお、鍵管理サーバ２０は、復号鍵要求への応答時の復号試行残回数が「１」以上か否かの判断において、「１」以上でないと判断したとき、即ち「０」以下であると判断したとき、以降の認証処理を行わず、そのまま処理を終了する。これによって、復号鍵要求時に、復号残試行回数とパスワードと有効期限とがチェックされ、よりセキュリティの向上が図れ、辞書攻撃、ソフトウェアの不正使用等の防止又は抑制が可能となる。ここで、パスワードとして生体認証情報を使用することによって、極めて優れたセキュリティを実現できる。
【００２３】
また、ユーザは、実行ファイルの実行のために、特化された特定のプログラム、それらのインストール等を行う必要が無く、従来技術に比較して高い利便性が実現可能となる。
【図面の簡単な説明】
【００２４】
【図１】本発明による復号鍵管理システムの一実施例を模式的に示すブロック構成図である。
【図２】暗号化実行ファイル（ａ）についての説明図である。
【図３】鍵管理データベースに格納される参照復号情報を示す概念図である。
【図４】本発明による復号鍵管理システムにおいて行われる処理の概要についての説明図である。
【符号の説明】
【００２５】
１０  ユーザクライアント
２０  鍵管理サーバ
２１  鍵管理データベース
３０  プロバイダクライアント
４０  ネットワーク
Ｔ１  暗号化実行ファイル
Ｔ１１  ファイルデータ
Ｔ１２  ファイルＩＤ
Ｔ１３  アドレス
Ｔ１４  鍵管理サーバの公開鍵
Ｔ１５  一時公開鍵
Ｔ１６  一時秘密鍵
Ｔ２  参照復号情報
Ｔ２１  参照ＦＩＤ
Ｔ２２  暗号化実行ファイルの復号鍵
Ｔ２３  有効期限
Ｔ２４  復号試行残回数
Ｔ２５  参照パスワード
【図１】
2009117907.tif 000003
【図２】
2009117907.tif 000004
【図３】
2009117907.tif 000005
【図４】
2009117907.tif 000006