(57)【要約】      （修正有）【課題】サーバのデータベースにアクセスするためのアクセス鍵を複数のエージェントで共有するための、作業者にとり負担の少ない鍵共有方法を提供する【解決手段】アクセス鍵を有する信頼済みエージェントが、アクセス鍵を一時公開鍵で暗号化しＳ１０３、一時公開鍵及び暗号化アクセス鍵をサーバーに送信しＳ１０４、一時秘密鍵をエクスポートするＳ１０５。アクセス鍵を有さない新規エージェントが、信頼済みエージェントがエクスポートした一時秘密鍵をインポートし、一時秘密鍵を用いて署名を生成しＳ２１０、生成した署名をサーバーに送信するＳ２０２。サーバーは、新規エージェントから受信した署名を、一時公開鍵を用いて検証しＳ３０３、署名の検証に成功した場合に、暗号化されたアクセス鍵を新規エージェントに送信するＳ３０４。新規エージェントは、サーバーから受信した暗号化されたアクセス鍵を、一時秘密鍵で復号するＳ２０３。【選択図】図４
2020129769.tif 000002
【特許請求の範囲】
【請求項１】
サーバーが備えるデータベースにアクセスするためのアクセス鍵を、複数のエージェントで共有する鍵共有方法であって、
前記アクセス鍵を有する信頼済みエージェントが、前記アクセス鍵の共有時に一時的に用いられる一時公開鍵で前記アクセス鍵を暗号化し、前記一時公開鍵及び暗号化された前記アクセス鍵を前記サーバーに送信し、前記一時公開鍵に対応する一時秘密鍵をエクスポートし、
前記サーバーが、前記信頼済みエージェントから受信した前記一時公開鍵を第１の記憶部に記憶し、前記信頼済みエージェントから受信した前記暗号化されたアクセス鍵を第２の記憶部に記憶し、
前記アクセス鍵を有さない新規エージェントが、前記信頼済みエージェントがエクスポートした前記一時秘密鍵をインポートし、インポートした前記一時秘密鍵を用いて署名を生成し、生成した署名を前記サーバーに送信し、
前記サーバーは、前記新規エージェントから受信した署名を前記第１の記憶部に記憶されている前記一時公開鍵を用いて検証し、署名の検証に成功した場合に、前記第２の記憶部に記憶されている前記暗号化されたアクセス鍵を前記新規エージェントに送信し、
前記新規エージェントは、前記サーバーから受信した前記暗号化されたアクセス鍵を、インポートした前記一時秘密鍵で復号する
ことを特徴とする鍵共有方法。
【請求項２】
前記新規エージェントは、前記アクセス鍵を取得後、前記サーバーとのセキュア通信に用いられるエージェント公開鍵を前記サーバーに送信し、
前記サーバーは、前記第１の記憶部に記憶されている前記一時公開鍵を前記エージェント公開鍵に置き換える
ことを特徴とする請求項１に記載の鍵共有方法。
【請求項３】
前記サーバーは、前記第２の記憶部に記憶されている前記暗号化されたアクセス鍵を前記新規エージェントに送信後、前記第２の記憶部から前記暗号化されたアクセス鍵を削除する
ことを特徴とする請求項１又は２のいずれかに記載の鍵共有方法。
【請求項４】
前記信頼済みエージェントは、前記一時公開鍵、前記暗号化されたアクセス鍵及び前記新規エージェントのＩＤ情報を前記サーバーに送信し、
前記サーバーは、前記第１の記憶部に、前記一時公開鍵と前記ＩＤ情報とを関連付けて記憶し、前記ＩＤ情報を用いて前記署名の検証を実行する
ことを特徴とする請求項１乃至３のいずれかに記載の鍵共有方法。
【請求項５】
サーバーが備えるデータベースにアクセスするためのアクセス鍵を、複数のエージェントで共有する鍵共有システムであって、
前記アクセス鍵を有する信頼済みエージェントは、前記アクセス鍵の共有時に一時的に用いられる一時公開鍵で前記アクセス鍵を暗号化する暗号化部と、前記一時公開鍵及び暗号化された前記アクセス鍵を前記サーバーに送信する送信部と、前記一時公開鍵に対応する一時秘密鍵をエクスポートするエクスポート部と、を備え、
前記サーバーは、前記信頼済みエージェントから受信した前記一時公開鍵を記憶する第１の記憶部と、前記信頼済みエージェントから受信した前記暗号化されたアクセス鍵を記憶する第２の記憶部と、を備え、
前記アクセス鍵を有さない新規エージェントは、前記信頼済みエージェントがエクスポートした前記一時秘密鍵をインポートするインポート部と、インポートした前記一時秘密鍵を用いて署名を生成し、生成した署名を前記サーバーに送信する署名送信部と、を備え、
前記サーバーは、さらに、前記新規エージェントから受信した署名を前記第１の記憶部に記憶されている前記一時公開鍵を用いて検証する署名検証部と、署名の検証に成功した場合に、前記第２の記憶部に記憶されている前記暗号化されたアクセス鍵を前記新規エージェントに送信する送信部と、を備え、
前記新規エージェントは、さらに、前記サーバーから受信した前記暗号化されたアクセス鍵を、インポートした前記一時秘密鍵で復号する復号部を備える
ことを特徴とする鍵共有システム。
【請求項６】
サーバーが備えるデータベースにアクセスするためのアクセス鍵を、複数のエージェントで共有する鍵共有システムにおけるエージェント端末であって、
前記アクセス鍵を有する信頼済みエージェントとして機能する際は、前記アクセス鍵の共有時に一時的に用いられる一時公開鍵で前記アクセス鍵を暗号化する暗号化部と、前記一時公開鍵及び暗号化された前記アクセス鍵を前記サーバーに送信する送信部と、前記一時公開鍵に対応する一時秘密鍵をエクスポートするエクスポート部と、を備え、
前記アクセス鍵を有さない新規エージェントとして機能する際は、前記信頼済みエージェントがエクスポートした前記一時秘密鍵をインポートするインポート部と、インポートした前記一時秘密鍵を用いて署名を生成し、生成した署名を前記サーバーに送信する署名送信部と、前記サーバーが前記署名の検証に成功した場合に送信される前記暗号化されたアクセス鍵を受信し、受信した前記暗号化されたアクセス鍵を、インポートした前記一時秘密鍵で復号する復号部を備える
ことを特徴とするエージェント端末。
【発明の詳細な説明】
【技術分野】
【０００１】
本発明は、サーバーが備える単一のアクセス鍵によりアクセス可能なデータベースにアクセスするためのアクセス鍵を、複数のエージェントで共有する鍵共有方法、鍵共有システム及びエージェント端末に関する。
【背景技術】
【０００２】
インターネットなどのネットワークに接続されたサーバーが提供するサービス（クラウドサービス）が、近年利用されている。クラウドサービスでは、自社の組織とは別のクラウドサービス事業者がインフラ管理を行う。そのため、クラウド上のサーバーに構築されたデータベースが暗号化されていなければ、クラウドサービス事業者が、その中身を見ることができてしまう可能性がある。
【０００３】
そこで、クラウド上のサーバーに構築されたデータベースを運用することを考える。なお、データベースにアクセスする端末またはその端末上で動作するアプリケーションをエージェントと呼ぶ。
【０００４】
サーバー上のデータベースには暗号化を施され、データベースにアクセスするためのアクセス鍵は、クラウド上のサーバーでは保持されず、信頼済エージェントのみで保持される。信頼済エージェントがデータベースにアクセスする際は、自らが保持するアクセス鍵を自らの秘密鍵（又はサーバーの公開鍵）を用いて暗号化してサーバーに送信する。サーバーは、信頼済エージェントの公開鍵（又は自らの秘密鍵）を用いて暗号化されたアクセス鍵を復号し、復号したアクセス鍵を用いてデータベースにアクセスし、取得したデータを信頼済エージェントに送信するとともにアクセス鍵を削除する。この暗号化されたアクセス鍵の復号から削除までを、サーバーにインストールされたアプリケーションプログラムによって、クラウドサービス事業者から隠蔽して行うことで、情報漏洩を防ぐ。
【０００５】
なお、サーバーには信頼済みのエージェントの公開鍵が保存されており、サーバーは対応する秘密鍵で作成された署名のある通信のみを受け付けるものとする。そして、特に明記しておらずとも、サーバーと信頼済エージェントとの間の通信では、信頼済エージェントが秘密鍵で作成した署名の検証が行われているものとする。サーバーとエージェント（クライアント）間で署名検証を行ってセキュアな通信を行う方法は、例えば特許文献１に開示されている。
【０００６】
このようなシステムにおいて、データベースにアクセスするためのアクセス鍵を複数のエージェントで共有することを考える。特に、既にアクセス鍵を所持している信頼済エージェントとアクセス鍵を所持していない新規参入エージェントとの間でアクセス鍵を共有することを考える。
【０００７】
従来であれば、例えば、新規参入エージェントは、自身の公開鍵を信頼済エージェントへ送信する共に、信頼済エージェントへ自身（新規参入エージェント）の公開鍵のサーバーへの登録と、信頼済エージェントが保持するアクセス鍵を自身（新規参入エージェント）に送信するように依頼する。信頼済エージェントは、新規参入エージェントからの依頼に従って、サーバーに新規参入エージェントの公開鍵を登録する。また、信頼済エージェントは、保持するアクセス鍵を新規参入エージェントの公開鍵を用いて暗号化し、新規参入エージェントに送信する。新規参入エージェントは、受信した暗号化アクセス鍵を自身の秘密鍵を用いて復号する。この手続きによって、新規参入エージェントの公開鍵がサーバーに登録されて新規参入エージェントとサーバーとが通信可能になると共に、新規参入エージェントによるアクセス鍵を用いたデータベースへのアクセスが可能になる。
【先行技術文献】
【特許文献】
【０００８】
【特許文献１】特開２００６−５１８１９０号公報
【発明の概要】
【発明が解決しようとする課題】
【０００９】
クラウドサービスの利点の一つとして、インターネットに接続されていればどこからでもアクセス可能という点がある。この利点により、上記システムにおいて、信頼済エージェントの置かれている環境と新規参入エージェントの置かれている環境が異なる構成、すなわち、異なる事業所等、物理的に離れている構成を実現可能である。そして、業務効率化やセキュリティ確保のため、専用の担当者がアクセス鍵の共有作業を行うことが考えられる。仮に一人で上述のアクセス鍵の共有作業を行うとすると、作業者は、信頼済みエージェントのおかれている環境と新規参入エージェントのおかれている環境とを複数回行き来する必要がある。具体的に、まず、新規参入エージェントを操作して、公開鍵を信頼済エージェントに送信する。次に、信頼済エージェントを操作して、新規参入エージェントの公開鍵をサーバーに登録すると共に、アクセス鍵の暗号化を行い、暗号化アクセス鍵を新規参入エージェントに送信する。その後、新規参入エージェントを操作して、暗号化アクセス鍵を復号する。このように、新規参入エージェントで作業した後に、作業環境を移動して信頼済エージェントで作業し、再度作業環境を移動して新規参入エージェントで作業する必要がある。この複数回の行き来が、作業者にとって負担になるという問題がある。
【００１０】
本発明の目的は、作業者が異なる環境間で複数回の行き来をすることにより生じる負荷という点で、作業者にとって負担の少ない鍵共有方法、鍵共有システム及びそのエージェント端末を提供することである。
【課題を解決するための手段】
【００１１】
本発明の一態様の鍵共有方法は、サーバーが備えるデータベースにアクセスするためのアクセス鍵を、複数のエージェントで共有する鍵共有方法であって、前記アクセス鍵を有する信頼済みエージェントが、前記アクセス鍵の共有時に一時的に用いられる一時公開鍵で前記アクセス鍵を暗号化し、前記一時公開鍵及び暗号化された前記アクセス鍵を前記サーバーに送信し、前記一時公開鍵に対応する一時秘密鍵をエクスポートし、前記サーバーが、前記信頼済みエージェントから受信した前記一時公開鍵を第１の記憶部に記憶し、前記信頼済みエージェントから受信した前記暗号化されたアクセス鍵を第２の記憶部に記憶し、前記アクセス鍵を有さない新規エージェントが、前記信頼済みエージェントがエクスポートした前記一時秘密鍵をインポートし、インポートした前記一時秘密鍵を用いて署名を生成し、生成した署名を前記サーバーに送信し、前記サーバーは、前記新規エージェントから受信した署名を前記第１の記憶部に記憶されている前記一時公開鍵を用いて検証し、署名の検証に成功した場合に、前記第２の記憶部に記憶されている前記暗号化されたアクセス鍵を前記新規エージェントに送信し、前記新規エージェントは、前記サーバーから受信した前記暗号化されたアクセス鍵を、インポートした前記一時秘密鍵で復号することを特徴とする。
【００１２】
前記新規エージェントは、前記アクセス鍵を取得後、前記サーバーとのセキュア通信に用いられるエージェント公開鍵を前記サーバーに送信し、前記サーバーは、前記第１の記憶部に記憶されている前記一時公開鍵を前記エージェント公開鍵に置き換えてもよい。
【００１３】
前記サーバーは、前記第２の記憶部に記憶されている前記暗号化されたアクセス鍵を前記新規エージェントに送信後、前記第２の記憶部から前記暗号化されたアクセス鍵を削除してもよい。
【００１４】
前記信頼済みエージェントは、前記一時公開鍵、前記暗号化されたアクセス鍵及び前記新規エージェントのＩＤ情報を前記サーバーに送信し、前記サーバーは、前記第１の記憶部に、前記一時公開鍵と前記ＩＤ情報とを関連付けて記憶し、前記ＩＤ情報を用いて前記署名の検証を実行してもよい。
【００１５】
本発明の一態様の鍵共有システムは、サーバーが備えるデータベースにアクセスするためのアクセス鍵を、複数のエージェントで共有する鍵共有システムであって、前記アクセス鍵を有する信頼済みエージェントは、前記アクセス鍵の共有時に一時的に用いられる一時公開鍵で暗号化する暗号化部と、前記一時公開鍵及び暗号化された前記アクセス鍵を前記サーバーに送信する送信部と、前記一時公開鍵に対応する一時秘密鍵をエクスポートするエクスポート部と、を備え、前記サーバーは、前記信頼済みエージェントから受信した前記一時公開鍵を記憶する第１の記憶部と、前記信頼済みエージェントから受信した前記暗号化されたアクセス鍵を記憶する第２の記憶部と、を備え、前記アクセス鍵を有さない新規エージェントは、前記信頼済みエージェントがエクスポートした前記一時秘密鍵をインポートするインポート部と、インポートした前記一時秘密鍵を用いて署名を生成し、生成した署名を前記サーバーに送信する署名送信部と、を備え、前記サーバーは、さらに、前記新規エージェントから受信した署名を前記第１の記憶部に記憶されている前記一時公開鍵を用いて検証する署名検証部と、署名の検証に成功した場合に、前記第２の記憶部に記憶されている前記暗号化されたアクセス鍵を前記新規エージェントに送信する送信部と、を備え、前記新規エージェントは、さらに、前記サーバーから受信した前記暗号化されたアクセス鍵を、インポートした前記一時秘密鍵で復号する復号部を備えることを特徴とする。
【００１６】
本発明の一態様のエージェント端末は、サーバーが備えるデータベースにアクセスするためのアクセス鍵を、複数のエージェントで共有する鍵共有システムにおけるエージェント端末であって、前記アクセス鍵を有する信頼済みエージェントとして機能する際は、前記アクセス鍵の共有時に用いられる一時公開鍵で前記アクセス鍵を暗号化する暗号化部と、前記一時公開鍵及び暗号化された前記アクセス鍵を前記サーバーに送信する送信部と、前記一時公開鍵に対応する一時秘密鍵をエクスポートするエクスポート部と、を備え、前記アクセス鍵を有さない新規エージェントとして機能する際は、前記信頼済みエージェントがエクスポートした前記一時秘密鍵をインポートするインポート部と、インポートした前記一時秘密鍵を用いて署名を生成し、生成した署名を前記サーバーに送信する署名送信部と、前記サーバーが前記署名の検証に成功した場合に送信される前記暗号化されたアクセス鍵を受信し、受信した前記暗号化されたアクセス鍵を、インポートした前記一時秘密鍵で復号する復号部を備えることを特徴とする。
【発明の効果】
【００１７】
本発明によれば、作業者は異なる環境間で複数回の行き来をする必要がなく、鍵共有処理における作業負荷を軽減することができる。
【図面の簡単な説明】
【００１８】
【図１】データベース管理システムの機能構成の一例を示すブロック図である。
【図２】データベース管理システムの信頼済エージェントと新規参入エージェントとサーバーとの関係を説明するブロック図
【図３】データベース管理システムにエージェントが参入する処理における機能構成の一例を示すブロック図である。
【図４】データベース管理システムにエージェントが参入する処理の動作の一例を示すシーケンス図である。
【発明を実施するための形態】
【００１９】
１．実施の形態１
以下、図面を参照しながら、本発明の実施形態を説明する。
【００２０】
図１は、本発明のクライアントサーバー型のデータベース管理システムにおいて、クライアントであるエージェントがサーバーのデータベースにアクセスする処理の機能構成の一例を示すブロック図である。
【００２１】
データベース管理システムは、エージェント１１０とサーバー１２０からなる。
【００２２】
エージェント１１０は、秘密鍵保存領域１１１、アクセス鍵保存領域１１２、アクセス鍵暗号化部１１３、データベース（ＤＢ）アクセス要求生成部１１４、ＤＢアクセス要求送信部１１５、及びデータ受信部１１６を備える。
【００２３】
秘密鍵保存領域１１１には、エージェント１１０の秘密鍵が保存されている。アクセス鍵保存領域１１２には、サーバー１２０上に構築されているＤＢ１２５にアクセスするためのアクセス鍵が保存されている。アクセス鍵暗号化部１１３は、アクセス鍵保存領域１１２に保存されているアクセス鍵を、秘密鍵保存領域１１１に保存されている秘密鍵を用いて暗号化し、暗号化アクセス鍵を生成する。ＤＢアクセス要求生成部１１４は、アクセス鍵暗号化部１１３で生成された暗号化アクセス鍵及びＤＢ１２５の問い合わせ言語で記述された命令文を含むＤＢアクセス要求を生成する。ＤＢアクセス要求送信部１１５は、ＤＢアクセス要求生成部１１４で生成されたＤＢアクセス要求をサーバー１２０に送信する。そして、データ受信部１１６は、ＤＢアクセス要求に対する応答としてサーバー１２０から送信されたデータを受信する。
【００２４】
サーバー１２０は、公開鍵保存領域１２１、ＤＢアクセス要求受信部１２２、暗号化アクセス鍵復号部１２３、ＤＢアクセス部１２４、ＤＢ１２５、データ送信部１２６を備える。
【００２５】
公開鍵保存領域１２１は、エージェント１１０の公開鍵が保存されている。ＤＢアクセス要求受信部１２２は、エージェント１１０から送信されたＤＢアクセス要求を受信する。暗号化アクセス鍵復号部１２３は、受信したＤＢアクセス要求に含まれる暗号化アクセス鍵を、公開鍵に保存されているエージェント１１０の公開鍵を用いてＤＢ１２５のアクセス鍵に復号する。ＤＢアクセス部１２４は、復号されたアクセス鍵を用いてＤＢ１２５にアクセスを行い、受信したＤＢアクセス要求に含まれるＤＢ１２５の問い合わせ言語で記述された命令文に従ってＤＢ１２５からデータを取得またはＤＢ１２５の更新を行い、アクセス鍵の破棄を行う。データ送信部１２６は、ＤＢから取得したデータをエージェント１１０に送信する。
【００２６】
このデータベース管理システムにおいて、エージェント１１０が、サーバー１２０のＤＢ１２５にアクセスするためには、サーバー１２０にエージェントの公開鍵が登録され、エージェントにアクセス鍵が保存されている必要がある。既にサーバー１２０に公開鍵が登録され、ＤＢ１２５のアクセス鍵を有しているエージェントを、信頼済エージェントと呼ぶ。また、サーバー１２０に公開鍵が登録されておらず、ＤＢ１２５のアクセス鍵を有していないエージェントを新規参入エージェントと呼ぶ。新規参入エージェントの公開鍵をサーバー１２０に登録し、新規参入エージェントと新規参入エージェントとでＤＢ１２５のアクセス鍵を共有する方法について説明する。
【００２７】
図２は、データベース管理システムの信頼済エージェント２００と新規参入エージェント３００とサーバー４００との関係を説明する図である。
【００２８】
サーバー４００は、クラウドサービス事業者が提供するハードウェア上で動作するソフトウェアである。信頼済エージェント２００とサーバー４００とはインターネット５００を介して接続される。同様に、新規参入エージェント３００とサーバー４００とはインターネット５００を介して接続される。信頼済エージェント２００と新規参入エージェント３００とは、インターネット５００に接続できる環境であれば、任意の場所に設置することができる。
【００２９】
１．２  新規参入エージェントが参入する処理の機能構成
図３は、データベース管理システムにおいて、新規参入エージェント３００が参入する処理における信頼済エージェント２００と新規参入エージェント３００とサーバー４００の機能構成の一例を示す機能ブロック図である。
【００３０】
信頼済エージェント２００は、アクセス鍵保存領域２０１とＩＤ発行部２０２と鍵生成部２０３と暗号化部２０４と鍵エクスポート部２０５と鍵送信部２０６を備える。
【００３１】
アクセス鍵保存領域２０１は、サーバー４００の備える図示していないＤＢへアクセスするためのアクセス鍵を保存する。なお、アクセス鍵保存領域２０１は、図１におけるアクセス鍵保存領域１１２と同一の構成である。
【００３２】
ＩＤ発行部２０２は、新規参入エージェント３００のＩＤを発行する。ＩＤは、エージェントを識別するためのエージェントごとに固有の番号である。
【００３３】
鍵生成部２０３は、新規参入エージェント３００が一時的に用いる一時公開鍵及び一時秘密鍵の組を生成する。
【００３４】
暗号化部２０４は、アクセス鍵保存領域２０１に保存されているアクセス鍵を、鍵生成部２０３が生成した一時公開鍵を用いて暗号化して暗号化アクセス鍵を生成する。
【００３５】
鍵エクスポート部２０５は、ＩＤ発行部２０２が発行した新規参入エージェントのＩＤ、並びに、鍵生成部２０３が生成した一時公開鍵及び一時秘密鍵をエクスポートする。鍵エクスポート部２０５は、例えば、ＩＤ、一時公開鍵及び一時秘密鍵をリムーバブルメディア６００に保存する。
【００３６】
鍵送信部２０６は、ＩＤ発行部２０２が発行した新規参入エージェントのＩＤ、鍵生成部２０３が生成した一時公開鍵、暗号化部２０４によって生成された暗号化アクセス鍵を、サーバー４００に送信する。
【００３７】
新規参入エージェント３００は、鍵インポート部３０１と、公開鍵・秘密鍵保存領域３０２と、署名生成部３０３と、アクセス鍵取得要求生成部３０４と、アクセス鍵取得要求送信部３０５と、暗号化アクセス鍵受信部３０６と、暗号化アクセス鍵復号部３０７と、アクセス鍵保存領域３０８と、鍵生成部３０９と、鍵更新要求生成部３１０と、鍵更新要求送信部３１１を備える。
【００３８】
鍵インポート部３０１は、信頼済エージェント２００が生成し、エクスポートしたＩＤ、一時公開鍵及び一時秘密鍵をインポートする。例えば、リムーバブルメディア６００に保存されたＩＤ、一時公開鍵及び一時秘密鍵を取得し、公開鍵・秘密鍵保存領域３０２に保存する。
【００３９】
署名生成部３０３は、公開鍵・秘密鍵保存領域３０２に保存された一時秘密鍵を用いて署名の生成を行う。
【００４０】
アクセス鍵取得要求生成部３０４は、署名生成部３０３が生成した署名及び公開鍵・秘密鍵保存領域３０２に保存されたＩＤを含むアクセス鍵取得要求を生成する。
【００４１】
アクセス鍵取得要求送信部３０５は、アクセス鍵取得要求生成部３０４が生成したアクセス鍵取得要求をサーバー４００に送信する。
【００４２】
暗号化アクセス鍵受信部３０６は、アクセス鍵取得要求に含まれる署名の検証に成功したサーバー４００が、アクセス鍵取得要求に対する応答として送信する暗号化アクセス鍵を受信する。
【００４３】
暗号化アクセス鍵復号部３０７は、公開鍵・秘密鍵保存領域３０２に保存された一時秘密鍵を用いて暗号化アクセス鍵を復号し、アクセス鍵保存領域３０８に保存する。
【００４４】
鍵生成部３０９は、正規の公開鍵及び正規の秘密鍵を生成する。また、鍵生成部３０９は、サーバー４００に登録されている当該新規参入エージェントの一時公開鍵が、正規の公開鍵に更新された後、公開鍵・秘密鍵保存領域３０２に保存されている一時公開鍵及び一時秘密鍵を正規の公開鍵及び正規の秘密鍵に更新する。
【００４５】
鍵更新要求生成部３１０は、鍵生成部３０９で生成された正規の公開鍵、公開鍵・秘密鍵保存領域３０２に保存されたＩＤ、公開鍵・秘密鍵保存領域３０２に保存された一時秘密鍵を用いて生成された署名を含む鍵更新要求を生成する。
【００４６】
鍵更新要求送信部３１１は、鍵更新要求生成部３１０が生成した鍵更新要求をサーバー４００に送信する。
【００４７】
サーバー４００は、鍵受信部４０１と、公開鍵保存領域４０２と、暗号化アクセス鍵一時保存領域４０３と、アクセス鍵取得要求受信部４０４と、署名検証部４０５と、暗号化アクセス鍵送信部４０６と、鍵更新要求受信部４０７と、鍵更新部４０８を備える。
【００４８】
鍵受信部４０１は、信頼済エージェント２００からＩＤ、一時公開鍵、暗号化アクセス鍵を受信し、ＩＤと一時公開鍵を関連付けて公開鍵保存領域４０２に保存し、ＩＤと暗号化アクセス鍵とを関連付けて暗号化アクセス鍵一時保存領域４０３に保存する。
【００４９】
アクセス鍵取得要求受信部４０４は、新規参入エージェント３００からアクセス鍵取得要求を受信する。
【００５０】
署名検証部４０５は、受信したアクセス鍵取得要求に含まれるＩＤに関連付けられた一時公開鍵を公開鍵保存領域４０２から取得し、取得した一時公開鍵を用いて受信したアクセス鍵取得要求に含まれる署名の検証を行う。
【００５１】
暗号化アクセス鍵送信部４０６は、署名検証部４０５が署名の検証に成功した場合に、暗号化アクセス鍵一時保存領域４０３に保存されている暗号化アクセス鍵を新規参入エージェント３００に送信する。送信後、暗号化アクセス鍵一時保存領域４０３に保存されている暗号化アクセス鍵は削除される。
【００５２】
鍵更新要求受信部４０７は、新規参入エージェント３００から鍵更新要求を受信する。
【００５３】
鍵更新部４０８は、受信したアクセス鍵取得要求に含まれるＩＤに関連付けられた一時公開鍵を公開鍵保存領域４０２から取得し、取得した一時公開鍵を用いて受信したアクセス鍵取得要求に含まれる署名の検証を行う。鍵更新部４０８は、署名の検証に成功すると、鍵更新要求に含まれる正規の公開鍵で公開鍵保存領域４０２に保存されている一時公開鍵を更新する。
【００５４】
１．３  新規参入エージェントが参入する処理の動作
図４を用いて、データベース管理システムにおいて、新規参入エージェント３００が参入する処理における信頼済エージェント２００と新規参入エージェント３００とサーバー４００の動作を説明する。
【００５５】
まず、信頼済エージェント２００のＩＤ発行部２０２は、新規参入エージェント３００のＩＤを発行する（ステップＳ１０１）。
【００５６】
信頼済エージェント２００の鍵生成部２０３は、新規参入エージェント３００が一時的に用いる一時公開鍵及び一時秘密鍵の組を生成する（ステップＳ１０２）。
【００５７】
信頼済エージェント２００の暗号化部２０４は、アクセス鍵保存領域２０１に保存されているアクセス鍵を、鍵生成部２０３が生成した一時公開鍵を用いて暗号化して暗号化アクセス鍵を生成する（ステップＳ１０３）。
【００５８】
信頼済エージェント２００の鍵送信部２０６は、ＩＤ発行部２０２が発行した新規参入エージェントのＩＤ、鍵生成部２０３が生成した一時公開鍵、暗号化部２０４によって生成された暗号化アクセス鍵を、サーバー４００に送信する（ステップＳ１０４）。
【００５９】
サーバー４００の鍵受信部４０１は、信頼済エージェント２００からＩＤ、一時公開鍵、暗号化アクセス鍵を受信し、ＩＤと一時公開鍵を関連付けて公開鍵保存領域４０２に保存し（ステップＳ３０１）、ＩＤと暗号化アクセス鍵とを関連付けて暗号化アクセス鍵一時保存領域４０３に保存する（ステップＳ３０２）。
【００６０】
信頼済エージェント２００の鍵エクスポート部２０５は、ＩＤ発行部２０２が発行した新規参入エージェントのＩＤ、並びに、鍵生成部２０３が生成した一時公開鍵及び一時秘密鍵をエクスポートする（ステップＳ１０５）。
【００６１】
信頼済エージェント２００が生成し、エクスポートしたＩＤ、一時公開鍵及び一時秘密鍵は、新規参入エージェント３００の鍵インポート部３０１でインポートされ、公開鍵・秘密鍵保存領域３０２に保存される。
【００６２】
新規参入エージェント３００の署名生成部３０３は、公開鍵・秘密鍵保存領域３０２に保存された一時秘密鍵を用いて署名の生成を行う（ステップＳ２０１）。
【００６３】
新規参入エージェント３００のアクセス鍵取得要求生成部３０４は、署名生成部３０３が生成した署名及び公開鍵・秘密鍵保存領域３０２に保存されたＩＤを含むアクセス鍵取得要求を生成し、アクセス鍵取得要求送信部３０５は、アクセス鍵取得要求生成部３０４が生成したアクセス鍵取得要求をサーバー４００に送信する（ステップＳ２０２）。
【００６４】
アクセス鍵取得要求は、サーバー４００のアクセス鍵取得要求受信部４０４で受信される。
【００６５】
サーバー４００の署名検証部４０５は、受信したアクセス鍵取得要求に含まれるＩＤに関連付けられた一時公開鍵を公開鍵保存領域４０２から取得し、取得した一時公開鍵を用いて受信したアクセス鍵取得要求に含まれる署名の検証を行う（ステップＳ３０３）。
【００６６】
サーバー４００の暗号化アクセス鍵送信部４０６は、署名検証部４０５が署名の検証に成功した場合に、暗号化アクセス鍵一時保存領域４０３に保存されている暗号化アクセス鍵を新規参入エージェント３００に送信する（ステップＳ３０４）。
【００６７】
暗号化アクセス鍵の送信後、暗号化アクセス鍵一時保存領域４０３に保存されている暗号化アクセス鍵は削除される（ステップＳ３０５）。
【００６８】
暗号化アクセス鍵は、新規参入エージェント３００の暗号化アクセス鍵受信部３０６で受信される。
【００６９】
新規参入エージェント３００の暗号化アクセス鍵復号部３０７は、公開鍵・秘密鍵保存領域３０２に保存された一時秘密鍵を用いて暗号化アクセス鍵を復号し、アクセス鍵保存領域３０８に保存する（ステップＳ２０３）。
【００７０】
新規参入エージェント３００の鍵生成部３０９は、正規の公開鍵及び正規の秘密鍵を生成する（ステップＳ２０４）。
【００７１】
新規参入エージェント３００の鍵更新要求生成部３１０は、鍵生成部３０９で生成された正規の公開鍵、公開鍵・秘密鍵保存領域３０２に保存されたＩＤ、公開鍵・秘密鍵保存領域３０２に保存された一時秘密鍵を用いて生成された署名を含む鍵更新要求を生成する。そして、新規参入エージェント３００の鍵更新要求送信部３１１は、鍵更新要求生成部３１０が生成した鍵更新要求をサーバー４００に送信する（ステップＳ２０５）。
【００７２】
鍵更新要求は、サーバー４００の鍵更新要求受信部４０７で受信される。
【００７３】
サーバー４００の鍵更新部４０８は、受信したアクセス鍵取得要求に含まれるＩＤに関連付けられた一時公開鍵を公開鍵保存領域４０２から取得し、取得した一時公開鍵を用いて受信したアクセス鍵取得要求に含まれる署名の検証を行う。鍵更新部４０８は、署名の検証に成功すると、鍵更新要求に含まれる正規の公開鍵で公開鍵保存領域４０２に保存されている一時公開鍵を置き換える（ステップＳ３０６）。
【００７４】
サーバー４００の鍵更新部４０８は、アクセス鍵取得要求の応答として、公開鍵保存領域４０２に保存されている一時公開鍵が正規の公開鍵に正常に更新された旨を示す情報を新規参入エージェント３００に送信する（ステップＳ３０７）。
【００７５】
新規参入エージェント３００の鍵生成部３０９は、公開鍵が正常に更新された旨を示す情報の受信後、公開鍵・秘密鍵保存領域３０２に保存されている一時公開鍵及び一時秘密鍵を正規の公開鍵及び正規の秘密鍵に更新する（ステップＳ２０６）。
【００７６】
データベース管理システムは、このように動作することで、新規参入エージェント３００が参入する処理を実現する。
【００７７】
１．４  効果
本発明のデータベース管理システムによれば、作業差が一人で新規エージェントの参入を行う場合でも、信頼済エージェントの置かれている環境と新規参入エージェントが置かれている環境との行き来を１回で済ませることができる。これにより、作業者の作業負荷を軽減することができる。
【００７８】
また、本実施の形態では、サーバー４００は、新規参入エージェント３００に暗号化アクセス鍵を送信した後、サーバー４００上に保存してある暗号化アクセス鍵を削除する構成である。これにより、仮に、新規参入エージェントのＩＤ、一時公開鍵及び一時秘密鍵が盗まれた場合でも、正規な新規参入エージェントがサーバー４００から暗号化アクセス鍵を取得した後であれば、不正な端末が暗号化アクセス鍵を取得することを防ぐことができる。また、不正な端末が盗んだＩＤ、一時公開鍵及び一時秘密鍵を用いて正規な新規参入エージェント３００よりも前にサーバー４００から暗号化アクセス鍵を取得した場合でも、新規参入エージェント３００が暗号化アクセス鍵を取得できないことから、不正な端末に暗号化アクセス鍵が渡ってしまったことを早期に認識することができる。
２．補足
以上、本発明を実施の形態に基づいて説明してきたが本発明は上述の実施の形態に限定されないのは勿論であり以下の変形例が考えられる。
【００７９】
（１）上述の実施の形態において、信頼済エージェント２００は、ＩＤ、一時公開鍵及び一時秘密鍵をリムーバブルメディア６００に保存するとしたが、ＩＤ、一時公開鍵及び一時秘密鍵のエクスポート方法はこの限りではない。例えば、メールに添付して新規参入エージェントに送信してもよいし、ＦＴＰ等の通信プロトコルを利用して新規参入エージェントに送信してもよい。また、信頼済エージェント２００と新規参入エージェント３００との間で専用線通信が利用可能な場合には、それを利用してもよい。
【００８０】
（２）サーバー４００は、新規参入エージェント３００に暗号化アクセス鍵を送信した後、サーバー４００上から暗号化アクセス鍵を削除する構成としている。これは、新規参入エージェント３００の一時秘密鍵が盗まれた場合でもその被害を最小限にするために、暗号化アクセス鍵を複数のエージェントに渡さないことを目的としているからである。この目的が達成できるならば、サーバー４００の構成はこれに限られない。例えば、サーバー４００は、新規参入エージェント３００に暗号化アクセス鍵を送信した後、暗号化アクセス鍵一時保存領域４０３へのアクセスを禁止し、以後暗号化アクセス鍵取得要求を受け付けない構成としてもよい。
【００８１】
（３）エージェント１１０（信頼済エージェント２００、新規参入エージェント３００）からサーバー１２０（サーバー４００）に送信されるデータには、エージェントの秘密鍵を用いて生成された署名が付与されており、サーバーは、署名の検証に成功しない通信はすべて破棄するとしてもよい。
【００８２】
また、エージェント１１０（信頼済エージェント２００、新規参入エージェント３００）とサーバー１２０（サーバー４００）との通信は、暗号化されていてもよい。公開鍵暗号方式を用いて暗号化されてもよく、通信の開始時に公開鍵暗号方式で暗号化したセッション鍵（共通鍵）を共有し、データの暗号化にはセッション鍵を用いてもよい。
【００８３】
暗号化アルゴリズム、署名生成アルゴリズム、署名検証アルゴリズムは、ＲＳＡ暗号、ＤＳＡ、ＥＣＤＳＡ、Ｅｌｇａｍａｌ署名等の既知のアルゴリズムを用いることができる。
【００８４】
（４）信頼済エージェント２００が一時公開鍵及び一時秘密鍵を生成するとしたが、一時公開鍵及び一時秘密鍵は鍵管理者が発行したものを用いてもよい。また、新規参入エージェント３００が正規の公開鍵及び正規の秘密鍵を生成するとしたが、正規の公開鍵及び正規の秘密鍵は鍵管理者が発行したものを用いてもよい。
【００８５】
（５）エージェント１１０（信頼済エージェント２００、新規参入エージェント３００）は、例えば、汎用コンピューターのプロセッサーがメモリーに記憶されたコンピュータープログラムを実行することにより実現される。また、各機能部（秘密鍵保存領域１１１、アクセス鍵保存領域１１２、アクセス鍵暗号化部１１３、ＤＢアクセス要求生成部１１４、ＤＢアクセス要求送信部１１５、データ受信部１１６、アクセス鍵保存領域２０１、ＩＤ発行部２０２、鍵生成部２０３、暗号化部２０４、鍵エクスポート部２０５、鍵送信部２０６、鍵インポート部３０１、公開鍵・秘密鍵保存領域３０２、署名生成部３０３、アクセス鍵取得要求生成部３０４、アクセス鍵取得要求送信部３０５、暗号化アクセス鍵受信部３０６、暗号化アクセス鍵復号部３０７、アクセス鍵保存領域３０８、鍵生成部３０９、鍵更新要求生成部３１０、鍵更新要求送信部３１１）と同等の機能を有する集積回路で構成された端末によってエージェントを構成してもよい。
【００８６】
サーバー１２０（サーバー４００）は、例えば、汎用コンピューターのプロセッサーがメモリーに記憶されたコンピュータープログラムを実行することにより実現される。
【００８７】
ここで、コンピュータープログラムは、所定の機能を達成するために、コンピューターに対する指令を示す命令コードが複数個組み合わされて構成されたものである。
【００８８】
また、コンピュータープログラムは、コンピューター読み取り可能な記録媒体、例えば、フレキシブルディスク、ハードディスク、光ディスク、半導体メモリーなどに記録されているとしてもよい。
【００８９】
また、コンピュータープログラムを、無線又は有線の電気通信回線、インターネットを代表とするネットワーク、データ放送等を経由して伝送するとしてもよい。
【００９０】
（６）上記実施の形態及び上記変形例をそれぞれ組み合わせるとしてもよい。
【産業上の利用可能性】
【００９１】
本発明は、サーバーが単一のアクセス鍵によりアクセス可能なデータベースを備え、アクセス鍵をサーバーが保持せず、エージェントのみが保持するデータベース管理システムにおいて、有用である。
【符号の説明】
【００９２】
２００  信頼済エージェント
２０１  アクセス鍵保存領域
２０２  ＩＤ発行部
２０３  鍵生成部
２０４  暗号化部
２０５  鍵エクスポート部
２０６  鍵送信部
３００  新規参入エージェント
３０１  鍵インポート部
３０２  秘密鍵保存領域
３０３  署名生成部
３０４  アクセス鍵取得要求生成部
３０５  アクセス鍵取得要求送信部
３０６  暗号化アクセス鍵受信部
３０７  暗号化アクセス鍵復号部
３０８  アクセス鍵保存領域
３０９  鍵生成部
３１０  鍵更新要求生成部
３１１  鍵更新要求送信部
４００  サーバー
４０１  鍵受信部
４０２  公開鍵保存領域
４０３  暗号化アクセス鍵一時保存領域
４０４  アクセス鍵取得要求受信部
４０５  署名検証部
４０６  暗号化アクセス鍵送信部
４０７  鍵更新要求受信部
４０８  鍵更新部
【図１】
2020129769.tif 000003
【図２】
2020129769.tif 000004
【図３】
2020129769.tif 000005
【図４】
2020129769.tif 000006