(57)【要約】【課題】暗号化された情報と暗号鍵がともに流出する可能性を低減することのできる情報管理システムを提供する。【解決手段】本発明に係る情報管理システムは、情報を管理する情報管理サーバと、暗号処理を行う暗号処理サーバを分散させ、復号処理を行うために必要な秘密鍵は、情報管理サーバではなく暗号処理サーバが保持する。【選択図】図１
2011164907.tif 000002
【特許請求の範囲】
【請求項１】
情報を管理する情報テーブルを備えた情報管理サーバと、
暗号化処理および復号化処理を行う暗号処理サーバと、
を有し、
前記情報管理サーバは、
前記情報テーブル内に、前記暗号処理サーバが生成する公開鍵を用いて暗号化された前記情報、または、前記情報の送信元端末もしくは前記暗号処理サーバが生成した共通鍵を用いて暗号化された前記情報を格納し、
前記暗号処理サーバは、
暗号化処理を行う際に用いる公開鍵と、前記公開鍵による暗号を復号化する際に用いる秘密鍵とをペアにして生成し、
前記公開鍵を公開するとともに前記秘密鍵を当該暗号処理サーバ内に保持し、
前記秘密鍵を用いて、前記情報テーブル内に格納されている情報または前記共通鍵を復号化する
ことを特徴とする情報管理システム。
【請求項２】
前記情報管理サーバは、
前記共通鍵で暗号化された前記情報とともに、前記公開鍵で暗号化された前記共通鍵を受け取り、
前記暗号処理サーバに、前記共通鍵で暗号化された前記情報、前記公開鍵で暗号化された前記共通鍵、および他の日時においてまたは他の送信元端末によって生成された第２共通鍵を前記公開鍵で暗号化したものを送信し、
前記暗号処理サーバは、
前記秘密鍵を用いて前記共通鍵を復号化し、
復号化した前記共通鍵を用いて前記情報を復号化し、
前記秘密鍵を用いて前記第２共通鍵を復号化し、
復号化した前記第２共通鍵を用いて前記情報を再暗号化し、
前記第２共通鍵を用いて再暗号化した前記情報を前記情報管理サーバに送信して前記情報テーブルに格納させる
ことを特徴とする請求項１記載の情報管理システム。
【請求項３】
前記情報管理サーバは、
前記共通鍵の生成日時を格納する共通鍵管理テーブルを備え、
生成日時が所定期間以上前の前記共通鍵が存在する場合は、
前記共通鍵を更新すべき旨のリクエストを前記暗号処理サーバに送信し、
前記暗号処理サーバは、
新たな前記共通鍵を生成して前記公開鍵で暗号化した上で前記情報管理サーバに送信し、
前記情報管理サーバと前記暗号処理サーバは、
前記暗号処理サーバが新たに生成し前記公開鍵を用いて暗号化した前記共通鍵を用いて、請求項２記載の処理をそれぞれ改めて実行する
ことを特徴とする請求項２記載の情報管理システム。
【請求項４】
前記情報管理サーバは、
前記公開鍵の生成日時を格納する公開鍵管理テーブルを備え、
生成日時が所定期間以上前の前記公開鍵が存在する場合は、
その公開鍵を更新すべき旨の通知、またはその公開鍵を用いて暗号化された前記共通鍵を前記暗号処理サーバに送信するとともに、
前記情報テーブルが格納している情報のうちその公開鍵を用いて暗号化された前記情報、または前記情報テーブルが格納している情報のうちその公開鍵を用いて暗号化された前記共通鍵を用いて暗号化された前記情報を、前記暗号処理サーバに送信し、
前記暗号処理サーバは、
前記情報管理サーバが送信した前記情報が前記公開鍵で暗号化されている場合は、その前記情報を前記秘密鍵によって復号化し、
前記情報管理サーバが送信した前記情報が前記共通鍵で暗号化されている場合は、その共通鍵を前記秘密鍵によって復号化するとともに、復号化した共通鍵を用いて前記情報管理サーバが送信した前記情報を復号化し、
前記公開鍵と前記秘密鍵を新たに生成し、
前記情報管理サーバが前記情報を送信した場合は、前記情報管理サーバが送信した前記情報を新たに生成した公開鍵によって暗号化して前記情報管理サーバに送信し、
前記情報管理サーバが前記共通鍵を送信した場合は、その共通鍵をその新たに生成した公開鍵によって暗号化して前記情報管理サーバに送信する
ことを特徴とする請求項１から３までのいずれか１項に記載の情報管理システム。
【請求項５】
前記暗号処理サーバは、
前記情報テーブルが格納している前記情報に対する検索リクエストと検索文字列を検索クライアント端末から受け取り、
前記情報テーブルが格納している前記情報を暗号化している前記公開鍵または前記共通鍵を用いて前記検索文字列を暗号化し、
暗号化した前記検索文字列を前記情報管理サーバに送信し、
前記情報管理サーバは、
暗号化された前記検索文字列を用いて前記情報テーブルを検索し、
合致する前記情報を抽出して前記暗号処理サーバに送信し、
前記暗号処理サーバは、
前記情報管理サーバから受け取った前記情報を前記秘密鍵または前記共通鍵によって復号化して前記検索クライアント端末に送信する
ことを特徴とする請求項１から４までのいずれか１項に記載の情報管理システム。
【請求項６】
前記暗号処理サーバは、
前記秘密鍵を第１秘密鍵と第２秘密鍵の２つに分割し、
前記第１秘密鍵を保持し、前記第２秘密鍵を、前記情報テーブルに対して検索リクエストを発行する検索クライアント端末に送信し、
前記情報または前記共通鍵を復号化するときは、
その情報または共通鍵を暗号化した公開鍵に対応する前記第２秘密鍵を前記検索クライアント端末から取得し、
前記第１秘密鍵と前記第２秘密鍵を用いて前記情報または前記共通鍵を復号化する
ことを特徴とする請求項１から５までのいずれか１項に記載の情報管理システム。
【発明の詳細な説明】
【技術分野】
【０００１】
本発明は、情報を管理する技術に関するものである。
【背景技術】
【０００２】
近年の情報処理技術の発達により、個人情報の蓄積や流通が容易になり、第三者に個人情報を取得され、架空請求詐欺やクレジットカードの不正利用等の被害に遭う事例が増えている。そのため、個人情報保護に対する関心が高まり、個人情報保護法の施行等、法制度の整備が進められている。また、個人情報を取り扱うサービス事業者には、個人情報の適正な管理が求められている。
【０００３】
個人情報漏洩を防止するための手段としては、個人情報を暗号化して通信、保管を行う方法がある。
【０００４】
一般的に、個人情報のような機密情報を暗号化して送信する場合、個人情報を処理の高速な共通鍵暗号方式によって暗号化し、鍵の管理、配布が容易な公開鍵暗号方式で共通鍵を暗号化する、ハイブリッド暗号方式がよく用いられる。
【０００５】
下記特許文献１には、共通鍵を公開鍵で暗号化して送信し、共通鍵を２者間で共有する方法が開示されている。また、下記特許文献２には、暗号化により保存してある個人情報の安全性を高めるデータベース装置が開示されている。
【０００６】
一方、個人情報を暗号化して保管したとしても、攻撃者に解析されることを防止するために暗号鍵に有効期限を設定する必要がある。そのため、暗号鍵は定期的に更新されなければならない。この点を考慮したセキュリティ標準として、クレジットカード業界で採用されている、ＰＣＩ  ＤＳＳ(Ｐａｙｍｅｎｔ  Ｃａｒｄ  Ｉｎｄｕｓｔｒｙ  Ｄａｔａ  Ｓｅｃｕｒｉｔｙ  Ｓｔａｎｄａｒｄ)がある。ＰＣＩ  ＤＳＳでは、暗号鍵管理の要件として、少なくとも一年毎の鍵の更新を挙げている。
【０００７】
ＰＣＩ  ＤＳＳは、クレジット業界だけで採用されているわけではなく、クレジットカード情報と関連のない企業や組織でもセキュリティ標準として採用され始めている。これにより、定期的な鍵の更新は、個人情報を取扱うあらゆるサービス事業者が遵守すべき要件となっている。
【０００８】
下記特許文献３には、暗号通信において、定期的に暗号鍵を更新する暗号鍵管理システムが開示されている。
【先行技術文献】
【特許文献】
【０００９】
【特許文献１】特開平１１−１８７００８号公報
【特許文献２】特開２００９−１１６５５３号公報
【特許文献３】特開２００８−１０３９８８号公報
【発明の概要】
【発明が解決しようとする課題】
【００１０】
上記特許文献１〜２に記載されている技術では、暗号化された情報と暗号鍵を同一のサーバシステム等の内部で管理していると、これらがともに流出してしまう可能性がある。暗号化された情報と暗号鍵がともに流出すると、情報は容易に復号化されるため、もはや情報の安全性は保たれていないといえる。
【００１１】
本発明は、上記のような課題を解決するためになされたものであり、暗号化された情報と暗号鍵がともに流出する可能性を低減することのできる情報管理システムを提供することを目的とする。
【課題を解決するための手段】
【００１２】
本発明に係る情報管理システムは、情報を管理する情報管理サーバと、暗号処理を行う暗号処理サーバを分散させ、復号処理を行うために必要な秘密鍵は、情報管理サーバではなく暗号処理サーバが保持する。
【発明の効果】
【００１３】
本発明に係る情報管理システムによれば、管理対象である暗号化された情報と、その復号処理に必要な秘密鍵とが分散管理されているので、情報と復号鍵がともに流出する可能性を低減することができる。
【図面の簡単な説明】
【００１４】
【図１】実施の形態１に係る情報管理システム１０００の構成図である。
【図２】公開鍵テーブル１１０の構成とデータ例を示す図である。
【図３】情報管理テーブル１２０の構成とデータ例を示す図である。
【図４】秘密鍵テーブル２１０の構成とデータ例を示す図である。
【図５】実施の形態１に係る情報管理システム１０００の動作フロー図である。
【図６】実施の形態２に係る情報管理システム１０００の構成図である。
【図７】共通鍵テーブル１３０の構成とデータ例を示す図である。
【図８】実施の形態２における情報管理テーブル１２０の構成とデータ例を示す図である。
【図９】サーバ側秘密鍵テーブル２２０の構成とデータ例を示す図である。
【図１０】端末側秘密鍵テーブル４１０の構成とデータ例を示す図である。
【図１１】情報提供端末３００が管理対象情報を情報管理サーバ１００に格納する際の各機器の動作シーケンスを示す図である。
【図１２】図１１のステップＳ１１０２における情報暗号化シーケンスを示す図である。
【図１３】図１１のステップＳ１１０６における情報再暗号化シーケンスの前半部分を示す図である。
【図１４】図１１のステップＳ１１０６における情報再暗号化シーケンスの後半部分を示す図である。
【図１５】図１１のステップＳ１１０４を実行した後の共通鍵テーブル１３０のデータ例を示す図である。
【図１６】図１１のステップＳ１１０５を実行した後の情報管理テーブル１２０のデータ例を示す図である。
【図１７】ステップＳ１３０２で情報管理サーバ１００が生成する情報リストのデータ例を示す図である。
【図１８】ステップＳ１３１６で暗号処理サーバ２００が生成する情報リストのデータ例を示す図である。
【図１９】ステップＳ１３２０を実行した後における共通鍵テーブル１３０のデータ例を示す図である。
【図２０】ステップＳ１３１９を実行した後における情報管理テーブル１１０のデータ例を示す図である。
【図２１】情報検索クライアント端末４００が部分復号を実行する場合の動作シーケンスを示す図である。
【図２２】共通鍵を自動更新する処理シーケンスを示す図である。
【図２３】ステップＳ２２０９を実行した後の共通鍵テーブル１３０のデータ例を示す図である。
【図２４】実施の形態３において、ステップＳ１３０２で情報管理サーバ１００が生成する情報リストのデータ例を示す図である。
【図２５】実施の形態３において、ステップＳ１３１６で暗号処理サーバ２００が生成する情報リストのデータ例を示す図である。
【図２６】実施の形態３において、ステップＳ１３２０を実行した後における共通鍵テーブル１３０のデータ例を示す図である。
【図２７】実施の形態３において、ステップＳ１３１９を実行した後における情報管理テーブル１１０のデータ例を示す図である。
【図２８】公開鍵を自動更新する処理シーケンスを示す図である。
【図２９】図２８のステップＳ２８１３における共通鍵再暗号化シーケンスの前半部分を示す図である。
【図３０】図２８のステップＳ２８１３における共通鍵再暗号化シーケンスの後半部分を示す図である。
【図３１】ステップ２８０７を実行した後の公開鍵テーブル１１０のデータ例を示す図である。
【図３２】ステップ２８１１を実行した後のサーバ側秘密鍵テーブル２２０のデータ例を示す図である。
【図３３】ステップ２８１２を実行した後の端末側秘密鍵テーブル４１０のデータ例を示す図である。
【図３４】ステップＳ２９０２で生成される再暗号化共通鍵リストのデータ例を示す図である。
【図３５】ステップＳ２９１０で生成される再暗号化共通鍵リストのデータ例を示す図である。
【図３６】ステップＳ２９１３を実行した後の共通鍵テーブル１３０のデータ例を示す図である。
【図３７】ステップＳ２９１４を実行した後の公開鍵テーブル１１０のデータ例を示す図である。
【図３８】ステップＳ２９１６を実行した後のサーバ側秘密鍵テーブル２２０のデータ例を示す図である。
【図３９】ステップＳ２９１７を実行した後の端末側秘密鍵テーブル４１０のデータ例を示す図である。
【図４０】情報検索クライアント４００が管理対象情報を検索する際の処理シーケンスを示す図である。
【図４１】図４０のステップＳ４００６における検索文字列暗号化シーケンスを示す図である。
【図４２】図４０のステップＳ４０１１における検索結果復号シーケンスを示す図である。
【図４３】図４０のステップＳ４００４で生成される検索用共通鍵リストのデータ例を示す図である。
【図４４】図４０のステップＳ４００９で生成される暗号化検索結果リストのデータ例を示す図である。
【図４５】図４１のステップＳ４１０５で生成される検索文字列リストのデータ例を示す図である。
【図４６】図４２のステップＳ４２０１で生成される公開鍵ＩＤリストのデータ例を示す図である。
【図４７】図４２のステップＳ４２０３で生成される端末側秘密鍵リストのデータ例を示す図である。
【図４８】図４２のステップＳ４２０７で生成される復号化検索結果リストのデータ例を示す図である。
【発明を実施するための形態】
【００１５】
＜用語の説明＞
本発明の実施の形態の説明に入る前に、本発明で用いられる用語を説明しておく。
【００１６】
公開鍵で暗号化されたデータは、秘密鍵がなければ復号できない。例えばＲＳＡ方式では、平文をｍ、公開鍵をｅ、２つの素数の積をｎとすると、次式（１）により平文ｍを暗号化して暗号文ｃを得る。
ｃ＝ｍｅ  ｍｏｄ  ｎ  ・・・(１)
【００１７】
また、秘密鍵をｄとすると、次式(２)により暗号文ｃを復号して平文ｍを得る。
ｍ＝ｃｄ  ｍｏｄ  ｎ  ・・・(２)
【００１８】
ｄが素数でない場合には、ｄは２つの２以上の整数の積で表すことができる。この２つの整数をそれぞれｄ１、ｄ２とすると、上記式（２）は次式(３)で表すことができる。
ｍ＝ｃｄ１×ｄ２  ｍｏｄ  ｎ
＝(ｃｄ１)ｄ２  ｍｏｄ  ｎ
＝(ｃｄ１  ｍｏｄ  ｎ)ｄ２  ｍｏｄ  ｎ ・・・(３)
【００１９】
すなわち、秘密鍵ｄは、第１秘密鍵ｄ１と第２秘密鍵ｄ２に分散し、それぞれ別個に保持することができる。したがって、秘密鍵ｄを分散させる場合、秘密鍵ｄには素数でない数を用いることにする。
【００２０】
本発明において、「サーバ側秘密鍵」「端末側秘密鍵」とは、上記第１秘密鍵と第２秘密鍵を、後述の暗号処理サーバ２００と情報検索クライアント端末４００にそれぞれ別個に保持させたものをいう。
【００２１】
本発明において、「一部復号」とは、上記式（３）のｃｄ１ ｍｏｄ ｎを演算すること、すなわち２つに分散した秘密鍵のうち一方のみを用いて復号処理を行うことをいう。
【００２２】
本発明において、「完全復号」とは、上記式（３）の演算により復号すること、すなわち２つに分散した秘密鍵の双方を用いて復号処理を行うこと、または上記式（３）の後半部分の処理を実行することをいう。
【００２３】
＜実施の形態１＞
図１は、本発明の実施の形態１に係る情報管理システム１０００の構成図である。情報管理システム１０００は、例えば個人情報などの情報を管理するシステムであり、情報管理サーバ１００、暗号処理サーバ２００、情報提供端末３００ａ〜３００ｃ、情報検索クライアント端末４００を有する。これらの端末およびサーバは、ネットワーク５００を解して接続されている。
【００２４】
情報管理サーバ１００は、管理対象である情報を管理するサーバコンピュータであり、公開鍵テーブル１１０、情報管理テーブル１２０を備える。各テーブルの構成については後述する。
【００２５】
暗号処理サーバ２００は、情報の暗号化処理と復号化処理を行うサーバコンピュータであり、サーバ側秘密鍵テーブル２１０を備える。情報管理サーバ１００は、暗号化処理や復号化処理を行わず、これらの処理を暗号処理サーバ２００に委譲する。暗号処理サーバ２００は、公開鍵と秘密鍵のペアを生成し、秘密鍵は自己が保持し、公開鍵は情報管理サーバ１００や情報提供端末３００などに公開する。
【００２６】
情報提供端末３００ａ〜３００ｃは、管理対象である情報の提供元端末である。ここでは３つの情報提供端末３００ａ〜３００ｃを示したが、個数は任意でよい。情報提供端末３００ａ〜３００ｃは同様の構成を有する。以下、情報提供端末３００ａ〜３００ｃを総称的に取り扱うときは、情報提供端末３００とよぶ。
【００２７】
情報検索クライアント端末４００は、情報管理サーバ１００が管理している情報を検索し、閲覧するクライアント端末である。
【００２８】
図２は、公開鍵テーブル１１０の構成とデータ例を示す図である。公開鍵テーブル１１０は、暗号処理サーバ２００が生成する公開鍵の生成日時を管理するためのテーブルであり、公開鍵ＩＤ列１１１、生成日時列１１２、公開鍵列１１３、鍵更新フラグ列１１４を有する。
【００２９】
公開鍵ＩＤ列１１１は、個々の公開鍵を識別するためのＩＤを保持する。生成日時列１１２は、公開鍵ＩＤ列１１１の値で識別される公開鍵の生成日時を保持する。公開鍵列１１３は、公開鍵ＩＤ列１１１の値で識別される公開鍵そのものを保持する。鍵更新フラグ列１１４は、公開鍵ＩＤ列１１１の値で識別される公開鍵を更新する必要があるか否かを示す。本列の値がＴＲＵＥであれば更新が必要であることを示し、ＦＡＬＳＥであれば更新不要であることを示す。
【００３０】
図３は、情報管理テーブル１２０の構成とデータ例を示す図である。情報管理テーブル１２０は、暗号処理サーバ２００が生成した公開鍵を用いて暗号化された管理対象情報を管理するテーブルであり、公開鍵ＩＤ列１２１、管理対象情報列１２２を備える。
【００３１】
公開鍵ＩＤ列１２１は、個々の公開鍵を識別するためのＩＤを保持する列であり、値そのものは公開鍵テーブル１１０の公開鍵ＩＤ列１１１とリンクしている。管理対象情報列１２２は、公開鍵ＩＤ列１２１の値で識別される公開鍵を用いて暗号化された管理対象情報を保持する。
【００３２】
図４は、秘密鍵テーブル２１０の構成とデータ例を示す図である。秘密鍵テーブル２１０は、暗号処理サーバ２００が生成した秘密鍵を管理するためのテーブルであり、公開鍵ＩＤ列２１１、秘密鍵列２１２を有する。
【００３３】
公開鍵ＩＤ列２１１は、個々の公開鍵を識別するためのＩＤを保持する列であり、値そのものは公開鍵テーブル１１０の公開鍵ＩＤ列１１１とリンクしている。秘密鍵列２１２は、公開鍵ＩＤ列１２１の値で識別される公開鍵とペアで生成された秘密鍵そのものを保持する。
【００３４】
以上、本実施の形態１に係る情報管理システム１０００の構成を説明した。次に、情報管理システム１０００の動作を説明する。
【００３５】
図５は、本実施の形態１に係る情報管理システム１０００の動作フロー図である。以下、図５に示す各ステップについて説明する。
【００３６】
（１）情報を公開鍵で暗号化する
情報提供端末３００は、暗号処理サーバ２００が生成した公開鍵を、あらかじめ取得しておく。情報提供端末３００は、情報管理サーバ１０００に管理させる情報を、上記公開鍵を用いて暗号化する。
【００３７】
（２）送信する
情報提供端末３００は、公開鍵を用いて暗号化した管理対象情報を、情報管理サーバ１００に送信する。また、少なくともその公開鍵の公開鍵ＩＤ（公開鍵ＩＤ列１１１の値に相当）を、併せて情報管理サーバ１００に送信する。管理の便宜上、公開鍵そのものを併せて送信し、公開鍵と公開鍵ＩＤをセットにして管理するようにしてもよい。図２では、公開鍵と公開鍵ＩＤをセットにして管理する構成例を示したが、公開鍵ＩＤのみを管理するように公開鍵テーブル１１０を構成してもよい。以下の実施の形態でも同様である。
【００３８】
（３）閲覧リクエスト
情報検索クライアント端末４００は、情報管理サーバ１００が管理している情報に対する閲覧リクエストを、暗号処理サーバ２００に対して発行する。このとき、閲覧対象である情報を識別することのできる識別子、例えば閲覧対象情報の管理ＩＤなど（図示せず）を併せて指定する。
【００３９】
（４）送信要求
暗号処理サーバ２００は、情報検索クライアント端末４００より閲覧リクエストを受け取ると、その情報を送信するように、情報管理サーバ１００へ要求する。このとき、その情報の識別子を併せて送信する。
【００４０】
（５）送信する
情報管理サーバ１００は、情報検索クライアント端末４００が閲覧リクエストを発行した情報を、暗号処理サーバ２００に送信する。また、その情報を暗号化している公開鍵のＩＤを、併せて暗号処理サーバ２００に送信する。このとき暗号処理サーバ２００に送信される情報は、公開鍵で暗号化されている。
【００４１】
（６）情報を秘密鍵で復号化する
暗号処理サーバ２００は、情報管理サーバ１００から受け取った情報を暗号化する際に用いられた公開鍵を、公開鍵ＩＤによって特定する。暗号処理サーバ２００は、その公開鍵とペアになっている秘密鍵を用いて、情報を復号化する。
【００４２】
（７）送信する
暗号処理サーバ２００は、ステップ（６）で復号した情報を、情報検索クライアント端末４００に送信する。
【００４３】
以上、本実施の形態１に係る情報管理システム１０００の動作を説明した。
【００４４】
以上のように、本実施の形態１によれば、情報管理サーバ１００は公開鍵で暗号化された管理対象情報を管理し、復号のために必要な秘密鍵は保持しない。情報管理サーバ１００は、管理対象情報を暗号化する際に用いられた公開鍵のＩＤのみを管理しておき、管理対象情報を復号する必要がある場合は、その公開鍵ＩＤを暗号処理サーバ２００に通知する。これにより、管理対象情報とその復号鍵を切り離して分散管理することができるので、管理対象情報と復号鍵がともに流出してしまう可能性を低減し、情報セキュリティを高めることができる。
【００４５】
＜実施の形態２＞
本発明の実施の形態２では、情報提供端末３００の処理能力などが比較的低い場合を想定した構成と動作例を説明する。また、＜用語の説明＞において説明した、秘密鍵を分散管理する手法についても併せて説明する。
【００４６】
公開鍵暗号方式では、一般に秘密鍵の鍵長が長い傾向がある。情報提供端末３００のなかに、携帯電話のような処理速度の遅い端末が含まれる場合、公開鍵で暗号化された情報の復号を情報提供端末３００で行うと、処理時間が過大になってしまう。
【００４７】
そこで本実施の形態２では、情報提供端末３００ではより短い共通鍵を用いて情報を暗号化し、その共通鍵を公開鍵で暗号化し、暗号化後の情報と共通鍵を情報管理サーバ１００に送信する構成をとる。暗号処理サーバ２００は、共通鍵を秘密鍵で復号化し、さらにその共通鍵を用いて情報を復号化する。
【００４８】
なお、上記構成を採用した場合、実施の形態１とは異なり、情報提供端末３００の数だけ共通鍵が存在することになる。したがって、情報検索クライアント端末４００より複数の情報を参照しようとした場合、同数の異なる共通鍵を用いて復号化処理を行う必要が生じ、処理時間が過大になってしまう。そこで、暗号化に用いる共通鍵の数をできる限り少なくする手法についても、本実施の形態２で併せて説明する。
【００４９】
図６は、本実施の形態２に係る情報管理システム１０００の構成図である。本実施の形態２において、情報管理サーバ１００は、実施の形態１で説明した構成に加えて新たに共通鍵テーブル１３０を備える。また、情報管理テーブル１２０の内容が、実施の形態１とは異なる。暗号処理サーバ２００は秘密鍵テーブル２１０に代えてサーバ側秘密鍵テーブル２２０を備え、情報検索クライアント端末４００は端末側秘密鍵テーブル４１０を備える。情報提供端末３００は、比較的処理能力の低い、例えば携帯電話などの端末である。その他の構成は、実施の形態１と同様である。
【００５０】
図７は、共通鍵テーブル１３０の構成とデータ例を示す図である。共通鍵テーブル１３０は、情報提供端末３００または暗号処理サーバ２００が生成する共通鍵の生成日時を管理するためのテーブルであり、共通鍵ＩＤ列１３１、公開鍵ＩＤ列１３２、生成日時列１３３、共通鍵列１３４、鍵更新フラグ列１３５を有する。
【００５１】
共通鍵ＩＤ列１３１は、個々の共通鍵を識別するためのＩＤを保持する。公開鍵ＩＤ列１３２は、共通鍵ＩＤ列１３１の値で識別される共通鍵を暗号化した公開鍵のＩＤを保持する。生成日時列１３３は、共通鍵ＩＤ列１３１の値で識別される共通鍵の生成日時を保持する。共通鍵列１３４は、共通鍵ＩＤ列１３１の値で識別される共通鍵そのものを保持する。ただし、この共通鍵は、公開鍵ＩＤ列１３２の値で識別される公開鍵で暗号化されている。鍵更新フラグ列１３５は、共通鍵ＩＤ列１３１の値で識別される共通鍵を更新する必要があるか否かを示す。本列の値がＴＲＵＥであれば更新が必要であることを示し、ＦＡＬＳＥであれば更新不要であることを示す。
【００５２】
図８は、本実施の形態２における情報管理テーブル１２０の構成とデータ例を示す図である。本実施の形態２において、情報管理テーブル１２０は、実施の形態１で説明した構成に代えて、共通鍵ＩＤ列１２３、管理対象情報列１２４を有する。
【００５３】
共通鍵ＩＤ列１２３は、個々の共通鍵を識別するためのＩＤを保持する列であり、値そのものは共通鍵テーブル１３０の共通鍵ＩＤ列１３１とリンクしている。管理対象情報列１２４は、共通鍵ＩＤ列１２３の値で識別される共通鍵で暗号化された情報を保持する。
【００５４】
図９は、サーバ側秘密鍵テーブル２２０の構成とデータ例を示す図である。サーバ側秘密鍵テーブル２２０は、暗号処理サーバ２００が生成した秘密鍵を分散して生成した秘密鍵のうち、暗号処理サーバ２００が保持するもの、すなわちサーバ側秘密鍵を管理するテーブルである。サーバ側秘密鍵テーブル２２０は、公開鍵ＩＤ列２２１、サーバ側秘密鍵２２２を有する。
【００５５】
公開鍵ＩＤ列２２１は、個々の公開鍵を識別するためのＩＤを保持する列であり、値そのものは公開鍵テーブル１１０の公開鍵ＩＤ列１１１とリンクしている。サーバ側秘密鍵２２２は、公開鍵ＩＤ列２２１の値で識別される公開鍵とペアになっているサーバ側秘密鍵そのものを保持する。
【００５６】
図１０は、端末側秘密鍵テーブル４１０の構成とデータ例を示す図である。端末側秘密鍵テーブル４１０は、暗号処理サーバ２００が生成した秘密鍵を分散して生成した秘密鍵のうち、情報検索クライアント端末４００が保持するもの、すなわち端末側秘密鍵を管理するテーブルである。端末側秘密鍵テーブル４１０は、公開鍵ＩＤ列４１１、端末側秘密鍵４１２を有する。
【００５７】
公開鍵ＩＤ列４１１は、個々の公開鍵を識別するためのＩＤを保持する列であり、値そのものは公開鍵テーブル１１０の公開鍵ＩＤ列１１１とリンクしている。端末側秘密鍵４１２は、公開鍵ＩＤ列４１１の値で識別される公開鍵とペアになっている端末側秘密鍵そのものを保持する。
【００５８】
図１１は、情報提供端末３００が管理対象情報を情報管理サーバ１００に格納する際の各機器の動作シーケンスを示す図である。以下、図１１の各ステップについて説明する。
【００５９】
（図１１：ステップＳ１１０１）
情報提供端末３００のユーザは、情報管理システム１０００に管理させる情報を、情報提供端末３００に入力する。
【００６０】
（図１１：ステップＳ１１０２）
情報提供端末３００と情報管理サーバ１００の間で、後述の図１２で説明する情報暗号化シーケンスを実行する。本ステップにより、管理対象情報は共通鍵で暗号化され、共通鍵は公開鍵で暗号化される。
【００６１】
（図１１：ステップＳ１１０３）
情報提供端末３００は、共通鍵で暗号化された管理対象情報、公開鍵で暗号化された共通鍵、および共通鍵を暗号化した公開鍵のＩＤを、情報管理サーバ１００に送信する。
【００６２】
（図１１：ステップＳ１１０４）
情報管理サーバ１００は、共通鍵ＩＤを新たに生成し、共通鍵テーブル１３０の共通鍵ＩＤ列１３１の新たな行に格納する。また、新たに格納した共通鍵ＩＤ列１３１と同じ行において、ステップＳ１１０３で受信した公開鍵ＩＤと共通鍵を、それぞれ公開鍵ＩＤ列１３２と共通鍵列１３４に格納する。生成日時列１３３にはステップＳ１１０３の受信日時を格納し、鍵更新フラグ列１３５にはＴＲＵＥを格納する。本ステップを実行した後の共通鍵テーブル１３０の様子は、後述の図１５で改めて示す。
【００６３】
（図１１：ステップＳ１１０５）
情報管理サーバ１００は、情報管理テーブル１２０の共通鍵ＩＤ列１２３に、ステップＳ１１０４で新たに生成した共通鍵ＩＤを格納し、管理対象情報列１２４に、ステップＳ１１０３で受け取った管理対象情報を格納する。本ステップを実行した後の情報管理テーブル１２０の様子は、後述の図１６で改めて示す。
【００６４】
（図１１：ステップＳ１１０６）
情報管理サーバ１００、暗号処理サーバ２００、情報検索クライアント端末４００は、後述の図１３〜図１４で説明する情報再暗号化シーケンスを実行する。本ステップでは、ステップＳ１１０２で暗号化された管理対象情報を、他の管理対象情報と共通の共通鍵で改めて暗号する。これにより、複数の管理対象情報を同一の共通鍵で暗号化し、共通鍵の数を抑えることができる。
【００６５】
図１２は、図１１のステップＳ１１０２における情報暗号化シーケンスを示す図である。以下、図１２の各ステップについて説明する。
【００６６】
（図１２：ステップＳ１２０１）
情報提供端末３００は、情報管理システム１０００に管理させる情報を暗号化するための共通鍵を新たに生成する。
【００６７】
（図１２：ステップＳ１２０２）
情報提供端末３００は、ステップＳ１２０１で生成された共通鍵を暗号鍵とし、管理対象情報を暗号化する。
【００６８】
（図１２：ステップＳ１２０３）
情報提供端末３００は、ステップＳ１２０１で生成された共通鍵を暗号化するための公開鍵を送信するよう、情報管理サーバ１００に要求する。
【００６９】
（図１２：ステップＳ１２０４）
情報管理サーバ１００は、公開鍵テーブル１１０から生成日時列１１２の値が最も新しい公開鍵と公開鍵ＩＤを抽出する。例えば、図２に示した公開鍵テーブル１１０のデータ例では、公開鍵３と公開鍵ＩＤ１０３が抽出される。
【００７０】
（図１２：ステップＳ１２０５）
情報管理サーバ１００は、ステップＳ１２０４で抽出した公開鍵と公開鍵ＩＤを情報提供側端末３００に送信する。
【００７１】
（図１２：ステップＳ１２０６）
情報提供側端末３００は、ステップＳ１２０５で受信した公開鍵を暗号鍵とし、ステップＳ１２０１で生成された共通鍵を暗号化する。
【００７２】
図１３は、図１１のステップＳ１１０６における情報再暗号化シーケンスの前半部分を示す図である。以下、図１３の各ステップについて説明する。
【００７３】
（図１３：ステップＳ１３０１）
情報管理サーバ１００は、共通鍵テーブル１３０から鍵更新フラグがＴＲＵＥであるレコードの共通鍵列１３４（被更新共通鍵）、共通鍵ＩＤ列１３１、公開鍵ＩＤ列１３２の値を抽出する。ここでは、ステップＳ１１０４で新たに格納した共通鍵１１のレコードが抽出される。
【００７４】
（図１３：ステップＳ１３０２）
情報管理サーバ１００は、情報管理テーブル１２０のうちステップＳ１３０１で抽出した共通鍵ＩＤを持つレコードから管理対象情報列１２４を抽出し、再暗号化する情報のリストを生成する。本ステップで情報管理サーバ１００が生成する情報リストの例は、後述の図１７で改めて示す。
【００７５】
（図１３：ステップＳ１３０３）
情報管理サーバ１００は、共通鍵テーブル１３０から、生成日時が最も新しく、鍵更新フラグがＦＡＬＳＥのレコードの共通鍵列１３４（最新共通鍵）、共通鍵ＩＤ列１３１、公開鍵ＩＤ列１３２を抽出する。
【００７６】
（図１３：ステップＳ１３０４）
情報管理サーバ１００は、ステップＳ１３０１で抽出した被更新共通鍵、被更新共通鍵の公開鍵ＩＤ、ステップＳ１３０２で生成した情報リスト、ステップＳ１３０３で抽出した最新共通鍵、最新共通鍵の公開鍵ＩＤを、暗号処理サーバ２００に送信する。
【００７７】
（図１３：ステップＳ１３０５）
暗号処理サーバ２００は、ステップＳ１３０４で受信した被更新共通鍵の公開鍵ＩＤを情報検索クライアント端末４００に送信する。
【００７８】
（図１３：ステップＳ１３０６）
暗号処理サーバ２００は、サーバ側秘密鍵テーブル２２０から、ステップＳ１３０４で受信した被更新共通鍵の公開鍵ＩＤを持つレコードのサーバ側秘密鍵を抽出する。
【００７９】
（図１３：ステップＳ１３０７）
情報検索クライアント端末４００は、端末側秘密鍵テーブル４１０から、ステップＳ１３０５で受信した被更新共通鍵の公開鍵ＩＤを持つレコードの端末側秘密鍵を抽出する。
【００８０】
（図１３：ステップＳ１３０８）
情報検索クライアント端末４００は、ステップＳ１３０７で抽出した端末側秘密鍵を暗号処理サーバ２００に送信する。
【００８１】
（図１３：ステップＳ１３０９）
暗号処理サーバ２００は、ステップＳ１３０６で抽出したサーバ側秘密鍵とステップＳ１３０８で受信した端末側秘密鍵を復号鍵とし、ステップＳ１３０４で受信した被更新共通鍵を復号する。
【００８２】
（図１３：ステップＳ１３１０）
暗号処理サーバ２００は、ステップＳ１３０９で復号した被更新共通鍵を復号鍵とし、ステップＳ１３０４で受信した情報リストの情報を復号する。
【００８３】
図１４は、図１１のステップＳ１１０６における情報再暗号化シーケンスの後半部分を示す図である。以下、図１４の各ステップについて説明する。
【００８４】
（図１４：ステップＳ１３１１）
暗号処理サーバ２００は、ステップＳ１３０４で受信した最新共通鍵の公開鍵ＩＤを、情報検索クライアント端末４００に送信する。
【００８５】
（図１４：ステップＳ１３１２）
暗号処理サーバ２００は、サーバ側秘密鍵テーブル２２０から、ステップＳ１３０４で受信した最新共通鍵の公開鍵ＩＤを持つレコードのサーバ側秘密鍵を抽出する。
【００８６】
（図１４：ステップＳ１３１３）
情報検索クライアント端末４００は、端末側秘密鍵テーブル４１０から、ステップＳ１３１１で受信した最新共通鍵の公開鍵ＩＤを持つレコードの端末側秘密鍵を抽出する。
【００８７】
（図１４：ステップＳ１３１４）
情報検索クライアント端末４００は、ステップＳ１３１３で抽出した端末側秘密鍵を暗号処理サーバ２００に送信する。
【００８８】
（図１４：ステップＳ１３１５）
暗号処理サーバ２００は、ステップＳ１３１２で抽出したサーバ側秘密鍵とステップＳ１３１４で受信した端末側秘密鍵を復号鍵とし、ステップＳ１３０４で受信した最新共通鍵を復号する。
【００８９】
（図１４：ステップＳ１３１６）
暗号処理サーバ２００は、ステップＳ１３１５で復号した最新共通鍵を暗号鍵とし、ステップＳ１３１０で復号した情報リストの情報を再暗号化する。本ステップで再暗号化した情報リストの例は、図１８で改めて示す。
【００９０】
（図１４：ステップＳ１３１７）
暗号処理サーバ２００は、ステップＳ１３１６で暗号化された情報リストを情報管理サーバ１００に送信する。
【００９１】
（図１４：ステップＳ１３１８）
情報管理サーバ１００は、ステップＳ１３１７で受信した情報リスト内の情報を、ステップＳ１３０３で抽出した最新共通鍵ＩＤとともに、情報管理テーブル１１０に保存する。
【００９２】
（図１４：ステップＳ１３１９）
情報管理サーバ１００は、情報管理テーブル１１０から、ステップＳ１３０１で抽出した被更新共通鍵ＩＤを持つレコードを削除する。本ステップの後における情報管理テーブル１１０のデータ例は、図２０で改めて示す。
【００９３】
（図１４：ステップＳ１３２０）
情報管理サーバ１００は、共通鍵テーブル１３０から、ステップＳ１３０１で抽出した被更新共通鍵ＩＤを持つレコードを削除する。本ステップの後における共通鍵テーブル１３０のデータ例は、図１９で改めて示す。
【００９４】
図１５は、図１１のステップＳ１１０４を実行した後の共通鍵テーブル１３０のデータ例を示す図である。図７で示したデータ例に加えて、新たに共通鍵ＩＤ列１３１の値が１０１１であるレコードが追加されている。このレコードは、共通鍵の数を少なく抑えるため、後に削除される。したがって、鍵更新フラグ列１３５にはＴＲＵＥがセットされる。
【００９５】
図１６は、図１１のステップＳ１１０５を実行した後の情報管理テーブル１２０のデータ例を示す図である。図８で示したデータ例に加えて、新たに共通鍵１１で暗号化されたレコードが追加されている。このレコードは、共通鍵の数を抑えるため、後の再暗号化シーケンス（図１３〜図１４）で共通鍵１０によって再暗号化される。
【００９６】
図１７は、ステップＳ１３０２で情報管理サーバ１００が生成する情報リストのデータ例を示す図である。図１５のデータ例によれば、鍵更新フラグ列１３５がＴＲＵＥである共通鍵は共通鍵１１（共通鍵ＩＤ＝１０１１）であるため、ステップＳ１３０２では、共通鍵１１で暗号化された情報が抽出される。
【００９７】
図１８は、ステップＳ１３１６で暗号処理サーバ２００が生成する情報リストのデータ例を示す図である。図１５のデータ例によれば、鍵更新フラグ列１３５がＦＡＬＳＥである共通鍵のうち最新のものは共通鍵１０（共通鍵ＩＤ＝１０１０）であるため、ステップＳ１３１６では、共通鍵１０を用いて情報リストが暗号化される。
【００９８】
図１９は、ステップＳ１３２０を実行した後における共通鍵テーブル１３０のデータ例を示す図である。図１５において鍵更新フラグ列１３５＝ＴＲＵＥであった共通鍵１１は、削除されている。
【００９９】
図２０は、ステップＳ１３１９を実行した後における情報管理テーブル１１０のデータ例を示す図である。図１６において共通鍵１１で暗号化されていた情報は、共通鍵１０を用いて再暗号化されている。
【０１００】
以上のステップＳ１３０５〜Ｓ１３０９、およびステップＳ１３１１〜１３１５では、暗号処理サーバ２００で全ての復号処理を実行しているが、公開鍵暗号方式としてＲＳＡを用いる場合、情報検索クライアント端末４００で部分復号を行ってもよい。
【０１０１】
図２１は、ステップＳ１３０５〜Ｓ１３０９、またはステップＳ１３１１〜１３１５において、情報検索クライアント端末４００が部分復号を実行する場合の動作シーケンスを示す図である。以下、図２１の各ステップについて説明する。
【０１０２】
（図２１：ステップＳ２１０１）
暗号処理サーバ２００は、ステップＳ１３０４で受信した被更新共通鍵の公開鍵ＩＤ、およびその被更新共通鍵を、情報検索クライアント端末４００に送信する。
【０１０３】
（図２１：ステップＳ２１０２）
情報検索クライアント端末４００は、端末側秘密鍵テーブル４１０から、ステップＳ２１０１で受信した被更新共通鍵の公開鍵ＩＤを持つレコードの端末側秘密鍵を抽出する。
【０１０４】
（図２１：ステップＳ２１０３）
情報検索クライアント端末４００は、ステップＳ２１０１で受け取った被更新共通鍵を端末側秘密鍵で部分復号する。
【０１０５】
（図２１：ステップＳ２１０４）
情報検索クライアント端末４００は、ステップＳ２１０３で部分復号した被更新共通鍵を暗号処理サーバ２００に送信する。
【０１０６】
（図２１：ステップＳ２１０５）
暗号処理サーバ２００は、サーバ側秘密鍵テーブル２２０から、ステップＳ２１０４で受信した被更新共通鍵の公開鍵ＩＤを持つレコードのサーバ側秘密鍵を抽出する。
【０１０７】
（図２１：ステップＳ２１０６）
暗号処理サーバ２００は、ステップＳ２１０５で抽出したサーバ側秘密鍵を復号鍵とし、ステップＳ２１０４で受信した被更新共通鍵を復号する。
【０１０８】
以上、情報提供端末３００が提供した情報を、他の共通鍵で暗号化し直し、共通鍵の数を抑える手法を説明した。
【０１０９】
以上のように、本実施の形態２では、情報提供端末３００が共通鍵を用いて管理対象情報を暗号化し、公開鍵を用いて共通鍵を暗号化する構成の下、他の管理対象情報と同一の共通鍵を用いて管理対象情報を再暗号化する。これにより、情報提供端末３００の処理能力が低い場合でも、情報提供端末３００の処理負荷を低減し、さらに共通鍵の数を抑えて復号処理時の演算負荷を低減することができる。
【０１１０】
＜実施の形態３＞
本発明の実施の形態３では、実施の形態２で説明した構成の下、共通鍵を自動的に更新する動作例を説明する。
【０１１１】
共通鍵は、暗号鍵であると同時に復号鍵でもあるため、共通鍵を更新する場合、その共通鍵で暗号化されている管理対象情報を、新たな共通鍵で再暗号化する必要がある。この作業を管理者が手動で行うと、多大な負担となる。そこで本実施の形態３では、これを自動化することを図る。
【０１１２】
図２２は、共通鍵を自動更新する処理シーケンスを示す図である。以下、図２２の各ステップについて説明する。
【０１１３】
（図２２：ステップＳ２２０１）
情報管理サーバ１００は、共通鍵テーブル１３０から、生成日時が現在より所定時間以上前のレコードを抽出する。例えば、共通鍵の有効期間を１１ヶ月に設定している場合、生成日時列１３３の値が現在日時より１１ヶ月以上前のレコードを抽出する。
【０１１４】
（図２２：ステップＳ２２０２）
ステップＳ２３０１でレコードが抽出された場合はステップＳ２２０３に進み、レコードが抽出されなかった場合は本処理シーケンスを終了する。
【０１１５】
（図２２：ステップＳ２２０３）
情報管理サーバ１００は、ステップＳ２２０１で抽出されたレコードの鍵更新フラグ列１３５をＴＲＵＥに変更する。
【０１１６】
（図２２：ステップＳ２２０４）
情報管理サーバ１００は、公開鍵テーブル１１０から、生成日時列１１２の最も新しいレコードの公開鍵ＩＤ列１１１と公開鍵列１１３を抽出する。
【０１１７】
（図２２：ステップＳ２２０５）
情報管理サーバ１００は、ステップＳ２２０４で抽出した公開鍵を暗号処理サーバ２００に送信する。
【０１１８】
（図２２：ステップＳ２２０６）
暗号処理サーバ２００は、共通鍵を新たに生成する。
【０１１９】
（図２２：ステップＳ２２０７）
暗号処理サーバ２００は、ステップＳ２２０５で受信した公開鍵を暗号鍵とし、ステップＳ２２０６で生成した共通鍵を暗号化する。
【０１２０】
（図２２：ステップＳ２２０８）
暗号処理サーバ２００は、ステップＳ２２０７で暗号化した共通鍵を情報管理サーバ１００に送信する。
【０１２１】
（図２２：ステップＳ２２０９）
情報管理サーバ１００は、共通鍵ＩＤを新たに発行し、ステップＳ２２０８で受信した共通鍵とステップＳ２２０４で抽出した公開鍵ＩＤを共通鍵テーブル１３０に保存する。この時、生成日時列１３３には、共通鍵更新処理（本処理シーケンス）を実行する日時、鍵更新フラグ列１３５にはＦＡＬＳＥを格納する。本ステップを実行した後の共通鍵テーブル１３０のデータ例は、後述の図２３で改めて示す。
【０１２２】
（図２２：ステップＳ２２１０）
本ステップでは、図１３〜図１４と同様の処理シーケンスを実行し、新たに生成した共通鍵を用いて管理対象情報を再暗号化する。具体的には、情報管理サーバ１００は、ステップＳ２２０１で抽出した古い共通鍵で暗号化されている管理対象情報を抽出し、新しい共通鍵およびその共通鍵を暗号化している公開鍵とともに暗号処理サーバ２００へ送信する。暗号処理サーバ２００は、情報検索クライアント４００から端末側秘密鍵を取得し、サーバ側秘密鍵と併せて共通鍵を復号し、その共通鍵を用いて管理対象を再暗号化して情報管理サーバ１００に送信する。
【０１２３】
図２３は、ステップＳ２２０９を実行した後の共通鍵テーブル１３０のデータ例を示す図である。ステップＳ２２０３の結果として、生成日時列１３３の値が最も古い共通鍵の鍵更新フラグ列１３５がＴＲＵＥに変更されている。また、ステップＳ２２０９の結果として、共通鍵１２が新たに生成されている。
【０１２４】
図２４は、本実施の形態３において、ステップＳ１３０２で情報管理サーバ１００が生成する情報リストのデータ例を示す図である。図２３のデータ例によれば、鍵更新フラグ列１３５がＴＲＵＥである共通鍵は共通鍵１（共通鍵ＩＤ＝１００１）であるため、ステップＳ１３０２では、共通鍵１で暗号化された情報が抽出される。
【０１２５】
図２５は、本実施の形態３において、ステップＳ１３１６で暗号処理サーバ２００が生成する情報リストのデータ例を示す図である。図２３のデータ例によれば、鍵更新フラグ列１３５がＦＡＬＳＥである共通鍵のうち最新のものは共通鍵１２（共通鍵ＩＤ＝１０１２）であるため、ステップＳ１３１６では、共通鍵１２を用いて情報リストが暗号化される。
【０１２６】
図２６は、本実施の形態３において、ステップＳ１３２０を実行した後における共通鍵テーブル１３０のデータ例を示す図である。図２３において鍵更新フラグ列１３５＝ＴＲＵＥであった共通鍵１は、削除されている。
【０１２７】
図２７は、本実施の形態３において、ステップＳ１３１９を実行した後における情報管理テーブル１１０のデータ例を示す図である。共通鍵１で暗号化されていた情報は、共通鍵１２を用いて再暗号化されている。
【０１２８】
以上、生成日時の古い共通鍵を自動更新するとともに、管理対象情報を新しい共通鍵で再暗号化する処理シーケンスを説明した。
【０１２９】
以上のように、本実施の形態３において、情報管理サーバ１００は生成日時列１３３が所定期間以上経過した共通鍵を抽出する。暗号処理サーバ２００は、新たな共通鍵を生成し、その共通鍵を用いて管理対象情報を再暗号化する。これにより、共通鍵（暗号鍵／復号鍵）の更新に伴う再暗号化処理を自動化し、管理者の負担を軽減することができる。
【０１３０】
＜実施の形態４＞
本発明の実施の形態４では、公開鍵を自動的に更新する動作例を説明する。また、公開鍵を用いて共通鍵を暗号化している場合において、公開鍵の更新に伴い共通鍵を再暗号化する動作例を説明する。
【０１３１】
図２８は、公開鍵を自動更新する処理シーケンスを示す図である。以下、図２８の各ステップについて説明する。
【０１３２】
（図２８：ステップＳ２８０１）
情報管理サーバ１００は、公開鍵テーブル１１０から、生成日時が現在より所定時間以上前のレコードを抽出する。例えば、公開鍵の有効期間を１１ヶ月に設定している場合、生成日時列１１２の値が現在日時より１１ヶ月以上前のレコードを抽出する。
【０１３３】
（図２８：ステップＳ２８０２）
ステップＳ２８０１でレコードが抽出された場合はステップＳ２８０３に進み、レコードが抽出されなかった場合は本処理シーケンスを終了する。
【０１３４】
（図２８：ステップＳ２８０３）
情報管理サーバ１００は、ステップＳ２８０１で抽出されたレコードの鍵更新フラグ列１１４をＴＲＵＥに変更する。
【０１３５】
（図２８：ステップＳ２８０４）
情報管理サーバ１００は、公開鍵を新たに生成するよう、暗号処理サーバ２００に要求する。
【０１３６】
（図２８：ステップＳ２８０５）
暗号処理サーバ２００は、公開鍵と秘密鍵のペアを新たに生成する。
【０１３７】
（図２８：ステップＳ２８０６）
暗号処理サーバ２００は、ステップＳ２８０５で生成した公開鍵を情報管理サーバ１００に送信する。
【０１３８】
（図２８：ステップＳ２８０７）
情報管理サーバ１００は、公開鍵ＩＤを新たに発行し、ステップＳ２８０６で受信した公開鍵とともに公開鍵テーブル１１０に格納する。この時、生成日時列１１２には、公開鍵更新処理（本処理シーケンス）を実行する日時、鍵更新フラグ列１１４にはＦＡＬＳＥを格納する。本ステップを実行した後の公開鍵テーブル１１０のデータ例は、後述の図３１で改めて示す。
【０１３９】
（図２８：ステップＳ２８０８）
情報管理サーバ１００は、ステップＳ２８０７で発行した公開鍵ＩＤを暗号処理サーバ２００に送信する。
【０１４０】
（図２８：ステップＳ２８０９）
暗号処理サーバ２００は、ステップＳ２８０５で生成した秘密鍵を分散し、サーバ側秘密鍵と端末側秘密鍵を生成する。
【０１４１】
（図２８：ステップＳ２８１０）
暗号処理サーバ２００は、ステップＳ２８０８で受信した公開鍵ＩＤとステップＳ２８０９で生成した端末側秘密鍵を個人情報検索クライアント端末４００に送信する。
【０１４２】
（図２８：ステップＳ２８１１）
暗号処理サーバ２００は、ステップＳ２８０８で受信した公開鍵ＩＤとステップＳ２８０９で生成したサーバ側秘密鍵をサーバ側秘密鍵テーブル２２０に保存する。本ステップを実行した後のサーバ側秘密鍵テーブル２２０のデータ例は、後述の図３２で改めて示す。
【０１４３】
（図２８：ステップＳ２８１２）
情報検索クライアント端末４００は、ステップＳ２８１０で受信した公開鍵ＩＤと端末側秘密鍵を端末側秘密鍵テーブル４１０に格納する。本ステップを実行した後の端末側秘密鍵テーブル４１０のデータ例は、後述の図３３で改めて示す。
【０１４４】
（図２８：ステップＳ２８１３）
情報管理サーバ１００、暗号処理サーバ２００、情報検索クライアント端末４００は、後述の図２９〜図３０で説明する共通鍵再暗号化シーケンスを実行する。本ステップでは、ステップＳ２８０５で新たに生成した公開鍵を用いて、共通鍵を再暗号化する。これにより、公開鍵の更新に伴う共通鍵の再暗号化処理を自動的に行うことができる。
【０１４５】
図２９は、図２８のステップＳ２８１３における共通鍵再暗号化シーケンスの前半部分を示す図である。以下、図２９の各ステップについて説明する。
【０１４６】
（図２９：ステップＳ２９０１）
情報管理サーバ１００は、公開鍵テーブル１１０から、鍵更新フラグ列１１４の値がＴＲＵＥであるレコードの公開鍵ＩＤ列１１１（被更新公開鍵）を抽出する。本ステップで公開鍵を抽出する際の公開鍵テーブル１１０のデータ例は、後述の図３１で改めて示す。
【０１４７】
（図２９：ステップＳ２９０２）
情報管理サーバ１００は、共通鍵テーブル１３０から、ステップＳ２９０１で抽出した公開鍵ＩＤを持つレコードの共通鍵ＩＤ列１３１と共通鍵列１３４を抽出し、再暗号化する共通鍵のリスト（再暗号化共通鍵リスト）を生成する。本ステップで生成される再暗号化共通鍵リストの例は、後述の図３４で改めて示す。
【０１４８】
（図２９：ステップＳ２９０３）
情報管理サーバ１００は、公開鍵テーブル１１０から、生成日時列１１２の値が最も新しく、鍵更新フラグ列１１４がＦＡＬＳＥのレコード（最新公開鍵）の、公開鍵列１１３、公開鍵ＩＤ列１１１を抽出する。
【０１４９】
（図２９：ステップＳ２９０４）
管理サーバ１００は、ステップＳ２９０１で抽出した公開鍵の公開鍵ＩＤ、ステップＳ２９０２で生成した再暗号化共通鍵リスト、ステップＳ２９０３で抽出した最新公開鍵、最新公開鍵の公開鍵ＩＤを、暗号処理サーバ２００に送信する。
【０１５０】
（図２９：ステップＳ２９０５）
暗号処理サーバ２００は、ステップＳ２９０４で受信した（被更新）共通鍵の公開鍵ＩＤを、情報検索クライアント端末４００に送信する。
【０１５１】
（図２９：ステップＳ２９０６）
暗号処理サーバ２００は、サーバ側秘密鍵テーブル２２０から、ステップＳ２９０４で受信した被更新共通鍵の公開鍵ＩＤを持つレコードのサーバ側秘密鍵を抽出する。
【０１５２】
（図２９：ステップＳ２９０７）
情報検索クライアント端末４００は、端末側秘密鍵テーブル４１０から、ステップＳ２９０５で受信した被更新共通鍵の公開鍵ＩＤを持つレコードの端末側秘密鍵を抽出する。
【０１５３】
（図２９：ステップＳ２９０８）
情報検索クライアント端末４００は、ステップＳ２９０７で抽出した端末側秘密鍵を暗号処理サーバ２００に送信する。
【０１５４】
（図２９：ステップＳ２９０９）
暗号処理サーバ２００は、ステップＳ２９０６で抽出したサーバ側秘密鍵とステップＳ２９０８で受信した端末側秘密鍵を復号鍵とし、ステップＳ２９０４で受信した再暗号化共通鍵リストを復号する。
【０１５５】
（図２９：ステップＳ２９１０）
暗号処理サーバ２００は、ステップＳ２９０４で受信した最新公開鍵を暗号鍵とし、ステップＳ２９０９で復号した再暗号化共通鍵リストを暗号化する。本ステップで再暗号化した再暗号化共通鍵リストのデータ例は、後述の図３５で改めて示す。
【０１５６】
なお、ステップＳ２９０５からステップＳ２９０９までの処理は、公開鍵暗号方式としてＲＳＡを用いる場合、図２１で説明したような部分復号処理で代用してもよい。
【０１５７】
図３０は、図２８のステップＳ２８１３における共通鍵再暗号化シーケンスの後半部分を示す図である。以下、図３０の各ステップについて説明する。
【０１５８】
（図３０：ステップＳ２９１１）
暗号処理サーバ２００は、ステップＳ２９１０で暗号化した再暗号化共通鍵リストを情報管理サーバ１００に送信する。
【０１５９】
（図３０：ステップＳ２９１２）
情報管理サーバ１００は、ステップＳ２９１１で受信した再暗号化共通鍵リスト内の共通鍵と同じ共通鍵ＩＤを持つ共通鍵テーブル１３０のレコードについて、公開鍵ＩＤ列１３２を最新公開鍵の公開鍵ＩＤに変更する。
【０１６０】
（図３０：ステップＳ２９１３）
情報管理サーバ１００は、ステップＳ２９１１で受信した再暗号化共通鍵リスト内の共通鍵と同じ共通鍵ＩＤを持つ共通鍵テーブル１３０のレコードについて、共通鍵列１３４を再暗号化共通鍵リスト内の共通鍵に変更する。本ステップを実行した後の共通鍵テーブル１３０のデータ例は、後述の図３６で改めて示す。
【０１６１】
（図３０：ステップＳ２９１４）
情報管理サーバ１００は、公開鍵テーブル１１０から、ステップＳ２９０１で抽出した被更新公開鍵ＩＤを持つレコードを削除する。本ステップを実行した後の公開鍵テーブル１１０のデータ例は、後述の図３７で改めて示す。
【０１６２】
（図３０：ステップＳ２９１５）
暗号処理サーバ２００は、共通鍵の再暗号化が完了した旨の通知を情報検索クライアント端末４００に送信する。
【０１６３】
（図３０：ステップＳ２９１６）
暗号処理サーバ２００は、サーバ側秘密鍵テーブル２２０から、ステップＳ２９０４で受信した被更新公開鍵の公開鍵ＩＤを持つレコードを削除する。本ステップを実行した後のサーバ側秘密鍵テーブル２２０のデータ例は、後述の図３８で改めて示す。
【０１６４】
（図３０：ステップＳ２９１７）
情報検索クライアント端末４００は、端末側秘密鍵テーブル４１０から、ステップＳ２９０５で受信した被更新公開鍵の公開鍵ＩＤを持つレコードを削除する。本ステップを実行した後の端末側秘密鍵テーブル４１０のデータ例は、後述の図３９で改めて示す。
【０１６５】
図３１は、ステップ２８０７を実行した後の公開鍵テーブル１１０のデータ例を示す図である。ステップＳ２８０３の結果として、生成日時列１１２の値が最も古い公開鍵の鍵更新フラグ列１１４がＴＲＵＥに変更されている。また、ステップＳ２８０７の結果として、公開鍵４が新たに生成されている。
【０１６６】
図３２は、ステップ２８１１を実行した後のサーバ側秘密鍵テーブル２２０のデータ例を示す図である。ステップＳ２８０８で情報管理サーバ１００から受信した新たな公開鍵ＩＤと、ステップＳ２８０９で新たに生成したサーバ側秘密鍵が、４行目に追加されている。
【０１６７】
図３３は、ステップ２８１２を実行した後の端末側秘密鍵テーブル４１０のデータ例を示す図である。ステップＳ２８１０で暗号処理サーバ２００から受信した新たな公開鍵ＩＤと、ステップＳ２８０９で暗号処理サーバ２００が新たに生成した端末側秘密鍵が、４行目に追加されている。
【０１６８】
図３４は、ステップＳ２９０２で生成される再暗号化共通鍵リストのデータ例を示す図である。図３１において、鍵更新フラグ１１４がＴＲＵＥである公開鍵は公開鍵１であるため、公開鍵１で暗号化された共通鍵が、再暗号化する対象として抽出される。
【０１６９】
図３５は、ステップＳ２９１０で生成される再暗号化共通鍵リストのデータ例を示す図である。図３１において、生成日時列１１２の値が最も新しい公開鍵は公開鍵４であるため、再暗号化共通鍵リストは、公開鍵４で再暗号化される。
【０１７０】
図３６は、ステップＳ２９１３を実行した後の共通鍵テーブル１３０のデータ例を示す図である。公開鍵１で暗号化されていた共通鍵１と共通鍵２（１〜２行目）は、更新後の共通鍵４で再暗号化された再暗号化共通鍵リストの内容で置き換えられている。
【０１７１】
図３７は、ステップＳ２９１４を実行した後の公開鍵テーブル１１０のデータ例を示す図である。鍵更新フラグ列１１４＝ＴＲＵＥであった１行目のデータ（公開鍵１）が削除されている。
【０１７２】
図３８は、ステップＳ２９１６を実行した後のサーバ側秘密鍵テーブル２２０のデータ例を示す図である。公開鍵１に対応する公開鍵ＩＤ＝１０１（１行目）のデータが削除されている。
【０１７３】
図３９は、ステップＳ２９１７を実行した後の端末側秘密鍵テーブル４１０のデータ例を示す図である。公開鍵１に対応する公開鍵ＩＤ＝１０１（１行目）のデータが削除されている。
【０１７４】
以上、公開鍵を自動的に更新するとともに、共通鍵を公開鍵で暗号化している場合において、共通鍵を再暗号化する動作例を説明した。
【０１７５】
以上のように、本実施の形態４において、情報管理サーバ１００は生成日時列１１２が所定期間以上経過した公開鍵を抽出する。暗号処理サーバ２００は、新たな公開鍵を生成し、その公開鍵を用いて共通鍵を再暗号化する。これにより、公開鍵の更新に伴う再暗号化処理を自動化し、管理者の負担を軽減することができる。
【０１７６】
＜実施の形態５＞
実施の形態４において、管理対象情報を公開鍵で暗号化している場合には、以下のような処理シーケンスとなる。共通鍵を用いる点を除いて実施の形態４と概ね同様であるため概略のみ説明する。
【０１７７】
（１）古い公開鍵を見つける
情報管理サーバ１００は、ステップＳ２８０１と同様に、生成日時が所定期間以上前の公開鍵を、公開鍵テーブル１１０から検索する。古い公開鍵を見つけた場合は、ステップＳ２８０３と同様に、鍵更新フラグ列１１４をＴＲＵＥに変更する。
【０１７８】
（２）公開鍵を生成する
情報管理サーバ１００は、ステップＳ２８０４と同様に、公開鍵を新たに生成するよう暗号処理サーバ２００に依頼する。暗号処理サーバ２００は、公開鍵と秘密鍵を新たに生成し、生成した公開鍵を情報管理サーバ１００に送信する。情報管理サーバ１００は、公開鍵ＩＤを新たに発行し、暗号処理サーバに通知する。
【０１７９】
（３）管理対象情報を再暗号化する
情報管理サーバ１００は、鍵更新フラグ列１１４＝ＴＲＵＥの公開鍵ＩＤを抽出する。情報管理サーバ１００は、この公開鍵で暗号化されている管理対象情報、最新の公開鍵のＩＤなどを、暗号処理サーバ２００に送信する。暗号処理サーバ２００は、最新の公開鍵に対応する秘密鍵で管理対象情報を再暗号化し、情報管理サーバ１００に戻す。
【０１８０】
＜実施の形態６＞
本発明の実施の形態６では、不特定複数の管理対象情報を検索する場合の処理シーケンスを説明する。
【０１８１】
特定の管理対象情報を閲覧する場合と異なり、不特定複数の管理対象情報を検索する場合は、対応する復号鍵も不特定複数となる。これに対応する手法として、管理対象情報を全て復号化してから検索を実行することが考えられるが、処理時間が課題となり、現実的ではない。そこで本実施の形態６では、管理対象情報を全て復号することなく検索を実行する手法を説明する。
【０１８２】
図４０は、情報検索クライアント４００が管理対象情報を検索する際の処理シーケンスを示す図である。以下、図４０の各ステップについて説明する。
【０１８３】
（図４０：ステップＳ４００１）
情報検索クライアント端末４００のユーザは、情報検索クライアント端末４００に検索文字列を入力する。
【０１８４】
（図４０：ステップＳ４００２）
情報検索クライアント端末４００は、ステップＳ４００１で入力された検索文字列を暗号処理サーバ２００に送信する。
【０１８５】
（図４０：ステップＳ４００３）
暗号処理サーバ２００は、検索文字列の暗号化を行うための共通鍵リストを送信するよう、情報管理サーバ１００に要求する。
【０１８６】
（図４０：ステップＳ４００４）
情報管理サーバ１００は、共通鍵テーブル１３０の全てのレコードから、共通鍵ＩＤ１３１列、公開鍵ＩＤ列１３２、共通鍵列１３４を抽出し、検索用共通鍵リストを生成する。本ステップで生成される検索用共通鍵リストのデータ例は、図４３で改めて示す。
【０１８７】
（図４０：ステップＳ４００５）
情報管理サーバ１００は、ステップＳ４００４で生成した検索用共通鍵リストを暗号処理サーバ２００に送信する。
【０１８８】
（図４０：ステップＳ４００６）
暗号処理サーバ２００と情報検索クライアント端末４００は、後述の図４１で説明する検索文字列暗号化シーケンスを実行する。
【０１８９】
（図４０：ステップＳ４００７）
暗号処理サーバ２００は、ステップＳ４００６で生成された検索文字列リストを、情報管理サーバ１００に送信する。
【０１９０】
（図４０：ステップＳ４００８）
情報管理サーバ１００は、情報管理テーブル１２０から、ステップＳ４００６で受信した検索文字列リストに含まれる共通鍵ＩＤと、共通鍵で暗号化された検索文字列が、ともに一致するレコードを抽出する。
【０１９１】
（図４０：ステップＳ４００９）
情報管理サーバ１００は、共通鍵テーブル１３０から、ステップＳ４００７で抽出されたレコードと同じ共通鍵ＩＤを持つレコードの公開鍵ＩＤ列１３２と共通鍵列１３４を抽出し、管理対象情報と合わせて暗号化検索結果リストを生成する。本ステップで生成される暗号化検索結果リストのデータ例は、後述の図４４で改めて示す。
【０１９２】
（図４０：ステップＳ４０１０）
情報管理サーバ１００は、ステップＳ４００８で生成した暗号化検索結果リストを暗号処理サーバ１１０に送信する。
【０１９３】
（図４０：ステップＳ４０１１）
暗号処理サーバ２００と情報検索クライアント端末４００は、後述の図４２で説明する検索結果復号シーケンスを実行する。
【０１９４】
（図４０：ステップＳ４０１２）
暗号処理サーバ２００は、ステップＳ４０１１で生成された復号検索結果リストを、情報検索クライアント端末４００に送信する。
【０１９５】
（図４０：ステップＳ４０１３）
情報検索クライアント端末４００は、ステップＳ４０１２で受信した復号化検索結果リストを画面表示するなどして、ユーザに提示する。
【０１９６】
図４１は、図４０のステップＳ４００６における検索文字列暗号化シーケンスを示す図である。以下、図４１の各ステップについて説明する。
【０１９７】
（図４１：ステップＳ４１０１）
暗号処理サーバ２００は、端末側秘密鍵テーブル４１０を送信するよう、情報検索クライアント端末４００に送信する。
【０１９８】
（図４１：ステップＳ４１０２）
情報検索クライアント端末４００は、端末側秘密鍵テーブル４１０を暗号処理サーバ２００に送信する。
【０１９９】
（図４１：ステップＳ４１０３）
暗号処理サーバ２００は、ステップＳ４００５で受信した検索用共通鍵リストの共通鍵を、サーバ側秘密鍵テーブル２２０内の同じ公開鍵ＩＤを持つサーバ側秘密鍵と、ステップＳ４１０２で受信した端末側秘密鍵テーブル４１０内の同じ公開鍵ＩＤを持つ端末側秘密鍵を復号鍵とし、復号する。
【０２００】
（図４１：ステップＳ４１０４）
暗号処理サーバ２００は、ステップＳ４１０３で復号された検索用共通鍵リスト内の共通鍵を暗号鍵とし、ステップＳ４００２で受信した検索文字列を暗号化する。
【０２０１】
（図４１：ステップＳ４１０５）
暗号処理サーバ２００は、ステップＳ４１０４で暗号化された検索文字列と、ステップＳ４００５で受信した検索用共通鍵リスト内の共通鍵の共通鍵ＩＤから、検索文字列リストを生成する。本ステップで生成される検索文字列リストのデータ例は、後述の図４５で改めて示す。
【０２０２】
図４２は、図４０のステップＳ４０１１における検索結果復号シーケンスを示す図である。以下、図４２の各ステップについて説明する。
【０２０３】
（図４２：ステップＳ４２０１）
暗号処理サーバ２００は、ステップＳ４０１０で受信した暗号化検索結果リストから公開鍵ＩＤを抽出し、公開鍵ＩＤリストを生成する。本ステップで生成される公開鍵ＩＤリストのデータ例は、後述の図４６で改めて示す。
【０２０４】
（図４２：ステップＳ４２０２）
暗号処理サーバ２００は、ステップＳ４２０１で生成した公開鍵ＩＤリストを、情報検索クライアント端末４００に送信する。
【０２０５】
（図４２：ステップＳ４２０３）
情報検索クライアント端末４００は、端末側秘密鍵テーブル４１０から、ステップＳ４２０２で受信した公開鍵ＩＤリストと同じ公開鍵ＩＤを持つ端末側秘密鍵を抽出し、公開鍵ＩＤとともに端末側秘密鍵リストを生成する。本ステップで生成される端末側秘密鍵リストのデータ例は、後述の図４７で改めて示す。
【０２０６】
（図４２：ステップＳ４２０４）
情報検索クライアント端末４００は、ステップＳ４２０３で生成された端末側秘密鍵リストを、暗号処理サーバ２００に送信する。
【０２０７】
（図４２：ステップＳ４２０５）
暗号処理サーバ２００は、ステップＳ４０１０で受信した暗号化検索結果リストの共通鍵を、サーバ側秘密鍵テーブル２２０内の同じ公開鍵ＩＤを持つサーバ側秘密鍵と、ステップＳ４２０４で受信した端末側秘密鍵リスト内の同じ公開鍵ＩＤを持つ端末側秘密鍵を復号鍵とし、復号する。
【０２０８】
（図４２：ステップＳ４２０６）
暗号処理サーバ２００は、暗号化検索結果リスト内の管理対象情報を、ステップＳ４２０５で復号された同じレコードの共通鍵を復号鍵とし、復号する。
【０２０９】
（図４２：ステップＳ４２０７）
暗号処理サーバ２００は、ステップＳ４２０６で復号された管理対象情報から、復号化検索結果リストを生成する。本ステップで生成される復号化検索結果リストのデータ例は後述の図４８で改めて示す。
【０２１０】
図４３は、図４０のステップＳ４００４で生成される検索用共通鍵リストのデータ例を示す図である。検索用共通鍵リストは、共通鍵テーブル１３０が保持する全ての共通鍵ＩＤ列１３１、公開鍵列１３２、および共通鍵列１３４を有する。
【０２１１】
図４４は、図４０のステップＳ４００９で生成される暗号化検索結果リストのデータ例を示す図である。暗号化検索結果リストには、共通鍵で暗号化された管理対象情報のうち検索文字列に合致するもの、管理対象情報を暗号化している共通鍵、および共通鍵を暗号化している公開鍵のＩＤが含まれる。
【０２１２】
図４５は、図４１のステップＳ４１０５で生成される検索文字列リストのデータ例を示す図である。情報検索クライアント端末４００が送信した検索文字列は、全ての共通鍵を用いて暗号化され、検索文字列リストとなる。
【０２１３】
図４６は、図４２のステップＳ４２０１で生成される公開鍵ＩＤリストのデータ例を示す図である。暗号化検索結果リストが図４４のようになっている場合、同図に含まれる公開鍵ＩＤ＝１０１と公開鍵ＩＤ＝１０３が抽出され、公開鍵ＩＤリストとなる。
【０２１４】
図４７は、図４２のステップＳ４２０３で生成される端末側秘密鍵リストのデータ例を示す図である。図４６で示した公開鍵ＩＤリスト内に含まれる公開鍵ＩＤに対応する端末側秘密鍵が、端末側秘密鍵リストに含まれる。
【０２１５】
図４８は、図４２のステップＳ４２０７で生成される復号化検索結果リストのデータ例を示す図である。図４４で示した暗号化検索結果リストに含まれる管理対象情報が復号され、情報検索クライアント端末４００に提供される。
【０２１６】
以上、情報検索クライアント４００が管理対象情報を検索する際の処理シーケンスを説明した。なお、管理対象情報が公開鍵で暗号化されている場合は、暗号処理サーバ２００は検索文字列を公開鍵で暗号化して検索を行い、検索結果を秘密鍵で復号して情報検索クライアント端末４００に返信する。
【０２１７】
以上のように、本実施の形態６によれば、情報検索クライアント４００が送信する検索用文字列は、複数の共通鍵を用いて暗号化され、暗号化された状態で検索が実行される。管理対象情報を全て復号してから検索を実行する場合と比較して、暗号化処理／復号化処理は共通鍵の数の分だけで済むので、処理負荷を抑えながら、暗号化された状態のままで検索を実行することができる。
【０２１８】
＜実施の形態７＞
以上の実施の形態１〜６において、各テーブルは、例えばテーブル内のデータを記録するデータファイルをＨＤＤ（Ｈａｒｄ  Ｄｉｓｋ  Ｄｒｉｖｅ）などの記憶装置に格納することによって構成することができる。
【０２１９】
また、以上の実施の形態１〜６において、情報検索クライアント端末４００と暗号処理サーバ２００を、同一のローカルネットワーク内に配置してもよい。これにより、復号化検索結果リストの内容を外部ネットワークに漏洩させる懸念を低減することができる。
【０２２０】
また、以上の実施の形態１〜６において、情報提供端末３００と、情報検索クライアント端末４００は、別個の端末であるものとして説明したが、これらが同一の端末であってもよい。
【符号の説明】
【０２２１】
１００：情報管理サーバ、１１０：公開鍵テーブル、１１１：公開鍵ＩＤ列、１１２：生成日時列、１１３：公開鍵列、１１４：鍵更新フラグ列、１２０：情報管理テーブル、１２１：公開鍵ＩＤ列、１２２：管理対象情報列、１２３：共通鍵ＩＤ列、１２４：管理対象情報列、１３０：共通鍵テーブル、１３１：共通鍵ＩＤ列、１３２：公開鍵ＩＤ列、１３３：生成日時列、１３４：共通鍵列、１３５：鍵更新フラグ列、２００：暗号処理サーバ、２１０：秘密鍵テーブル、２１１：公開鍵ＩＤ列、２１２：秘密鍵列、２２０：サーバ側秘密鍵テーブル、２２１：公開鍵ＩＤ列、２２２：サーバ側秘密鍵、３００ａ〜３００ｃ：情報提供端末、４００：情報検索クライアント端末、４１０：端末側秘密鍵テーブル、４１１：公開鍵ＩＤ列、４１２：端末側秘密鍵、５００：ネットワーク、１０００：情報管理システム。
【図１】
2011164907.tif 000003
【図２】
2011164907.tif 000004
【図３】
2011164907.tif 000005
【図４】
2011164907.tif 000006
【図５】
2011164907.tif 000007
【図６】
2011164907.tif 000008
【図７】
2011164907.tif 000009
【図８】
2011164907.tif 000010
【図９】
2011164907.tif 000011
【図１０】
2011164907.tif 000012
【図１１】
2011164907.tif 000013
【図１２】
2011164907.tif 000014
【図１３】
2011164907.tif 000015
【図１４】
2011164907.tif 000016
【図１５】
2011164907.tif 000017
【図１６】
2011164907.tif 000018
【図１７】
2011164907.tif 000019
【図１８】
2011164907.tif 000020
【図１９】
2011164907.tif 000021
【図２０】
2011164907.tif 000022
【図２１】
2011164907.tif 000023
【図２２】
2011164907.tif 000024
【図２３】
2011164907.tif 000025
【図２４】
2011164907.tif 000026
【図２５】
2011164907.tif 000027
【図２６】
2011164907.tif 000028
【図２７】
2011164907.tif 000029
【図２８】
2011164907.tif 000030
【図２９】
2011164907.tif 000031
【図３０】
2011164907.tif 000032
【図３１】
2011164907.tif 000033
【図３２】
2011164907.tif 000034
【図３３】
2011164907.tif 000035
【図３４】
2011164907.tif 000036
【図３５】
2011164907.tif 000037
【図３６】
2011164907.tif 000038
【図３７】
2011164907.tif 000039
【図３８】
2011164907.tif 000040
【図３９】
2011164907.tif 000041
【図４０】
2011164907.tif 000042
【図４１】
2011164907.tif 000043
【図４２】
2011164907.tif 000044
【図４３】
2011164907.tif 000045
【図４４】
2011164907.tif 000046
【図４５】
2011164907.tif 000047
【図４６】
2011164907.tif 000048
【図４７】
2011164907.tif 000049
【図４８】
2011164907.tif 000050