(57)【要約】【課題】利用者が復号処理用の認証情報を入力することなく、不正な利用者が復号値を得ることを抑制する。【解決手段】復号能力提供装置で、端末装置の識別子および端末装置の識別子から特定される利用者の識別子が許可条件を満たすかを判定し、許可条件を満たすと判定された場合に、復号鍵を端末装置に与えることなく、端末装置に格納された暗号文を復号鍵で復号して得られる復号値を端末装置で得るための提供情報を、復号能力提供装置から端末装置に対して出力する。端末装置は、復号能力提供装置から与えられた提供情報を用いて復号値を得る。【選択図】図２
2015022097.tif 000002
【特許請求の範囲】
【請求項１】
復号能力提供装置で、端末装置の識別子および前記端末装置の識別子から特定される利用者の識別子が許可条件を満たすかを判定し、
前記許可条件を満たす場合に、復号鍵を前記端末装置に与えることなく、前記端末装置に格納された暗号文を前記復号鍵で復号して得られる復号値を前記端末装置で得るための提供情報を、前記復号能力提供装置から前記端末装置に対して出力する、
ことを特徴とする復号方法。
【請求項２】
請求項１の復号方法であって、
前記許可条件は、前記端末装置の識別子の暗号学的な検証結果が合格であり、かつ、前記利用者の識別子が前記復号鍵での復号を許可された利用者の識別子であることである、
ことを特徴とする復号方法。
【請求項３】
請求項１または２の復号方法であって、
それぞれの端末装置に対応する利用者の識別子が記憶部に格納されており、
前記復号鍵での復号を許可された利用者の識別子が記憶部に格納されている、
ことを特徴とする復号方法。
【請求項４】
請求項１から３の復号方法であって、
前記提供情報は、前記復号能力提供装置が前記復号値を得ることなく、前記端末装置が自己訂正技術によって前記復号値を得るための情報である、
ことを特徴とする復号方法。
【請求項５】
請求項１から３の何れかの復号方法であって、
前記提供情報は、前記復号能力提供装置が前記復号値を得ることなく、前記復号値を再暗号化して得られた再暗号文を前記端末装置で得るための情報であり、
前記再暗号文は、前記端末装置に保持された秘密鍵で復号可能なものである、
ことを特徴とする復号方法。
【請求項６】
請求項５の復号方法であって、
前記端末装置の識別子は、前記秘密鍵に対応する公開鍵または識別子である、
ことを特徴とする復号方法。
【請求項７】
請求項５または６の復号方法であって、
前記提供情報は、前記端末装置が自己訂正技術によって前記再暗号文を得るための情報である、
ことを特徴とする復号方法。
【請求項８】
請求項１から７の何れかの復号方法であって、さらに
前記端末装置から前記復号能力提供装置に対し、前記端末装置の識別子を出力し、
前記端末装置で、前記提供情報を用いて前記復号値を得る、
ことを特徴とする復号方法。
【請求項９】
端末装置の識別子および前記端末装置の識別子から特定される利用者の識別子が許可条件を満たすかを判定する判定部と、
前記許可条件を満たす場合に、復号鍵を前記端末装置に与えることなく、前記端末装置に格納された暗号文を前記復号鍵で復号して得られる復号値を前記端末装置で得るための提供情報を、前記端末装置に対して出力する提供部と、
を有する復号能力提供装置。
【請求項１０】
端末装置と復号能力提供装置とを有し、
前記端末装置は、前記復号能力提供装置に対し、前記端末装置の識別子を出力し、
前記復号能力提供装置は、前記端末装置の識別子および前記端末装置の識別子から特定される利用者の識別子が許可条件を満たす場合に、復号鍵を前記端末装置に与えることなく、前記端末装置に格納された暗号文を前記復号鍵で復号して得られる復号値を前記端末装置で得るための提供情報を、前記端末装置に対して出力し、
前記端末装置は、前記提供情報を用いて前記復号値を得る、
ことを特徴とする鍵クラウドシステム。
【請求項１１】
請求項１０の鍵クラウドシステムが有する端末装置。
【請求項１２】
請求項１から８の何れかの復号方法の各ステップをコンピュータに実行させるためのプログラム。
【請求項１３】
請求項１１の端末装置としてコンピュータを機能させるためのプログラム。
【発明の詳細な説明】
【技術分野】
【０００１】
本発明は、クラウド鍵管理型の復号技術に関する。
【背景技術】
【０００２】
公開鍵暗号方式などの暗号方式で暗号化された暗号文を復号するためには、特定の復号鍵が必要である（例えば、非特許文献１等参照）。復号鍵を保持していない復号装置が暗号文の復号結果を得るための従来方法の一つは、復号鍵を保持している装置が復号装置に復号鍵を提供し、復号装置がその復号鍵を用いて暗号文を復号する方法である。また、登録された利用者が利用する復号装置のみに復号鍵を提供することにすれば、復号値を得ることができる利用者を制限できる。
【先行技術文献】
【非特許文献】
【０００３】
【非特許文献１】Taher Elgamal, A Public-Key Cryptosystem and a Signature Scheme Based on Discrete Logarithms, IEEE Transactions on Information Theory, v. IT-31, n. 4, 1985, pp. 469-472 or CRYPTO 84, pp. 10-18, Springer-Verlag.
【発明の概要】
【発明が解決しようとする課題】
【０００４】
しかしながら、復号鍵そのものを復号装置に提供した場合、復号鍵が不正な利用者に漏洩し、不正な利用者が復号処理を実行する危険性がある。また、不正な利用者が復号値を得ないようにするためには利用者を検証する必要があるが、そのために利用者が復号処理専用の認証情報を入力することは煩雑である。
【０００５】
本発明はこのような点に鑑みてなされたものであり、利用者が復号処理専用の認証情報を入力することなく、不正な利用者が復号値を得ることを抑制する技術を提供する。
【課題を解決するための手段】
【０００６】
端末装置の識別子および端末装置の識別子から特定される利用者の識別子が許可条件を満たす場合に、復号鍵を端末装置に与えることなく、端末装置に格納された暗号文を復号鍵で復号して得られる復号値を端末装置で得るための提供情報を、復号能力提供装置から端末装置に対して出力する。
【発明の効果】
【０００７】
端末装置の識別子および端末装置の識別子から特定される利用者の識別子から許可条件を満たすかを判定するため、利用者が復号処理用の認証情報を入力する必要がない。端末装置を利用できるのはその正当な利用者であるため、このような許可条件を満たすかを判定することで利用者の正当性を判定できる。さらに、復号鍵を端末装置に与えることなく、復号値を端末装置で得るための提供情報を与えるため、不正な利用者が復号値を得ることを抑制できる。
【図面の簡単な説明】
【０００８】
【図１】図１は、実施形態の鍵クラウドシステムの構成を例示したブロック図である。
【図２】図２は、実施形態の復号能力提供装置の構成を例示したブロック図である。
【図３】図３は、実施形態の鍵管理装置の構成を例示したブロック図である。
【図４】図４は、実施形態の端末装置の構成を例示したブロック図である。
【図５】図５は、実施形態の復号方法を説明するためのシーケンス図である。
【図６】図６は、実施形態の鍵クラウドシステムの構成を例示したブロック図である。
【図７】図７は、実施形態の復号能力提供装置の構成を例示したブロック図である。
【図８】図８は、実施形態の復号方法を説明するためのシーケンス図である。
【発明を実施するための形態】
【０００９】
図面を参照して本発明の実施形態を説明する。
［第１実施形態］
本発明の第１実施形態を説明する。
＜構成＞
本形態の構成を説明する。図１に例示するように、本形態の鍵クラウドシステム１は、復号サービスを提供するＫ個の復号能力提供装置１１−１〜１１−Ｋと、鍵管理を行う鍵管理装置１２と、復号処理を行うＪ個の端末装置１３−１〜１３−Ｊと、暗号化処理を行う暗号化装置１４とを有し、これらはネットワークを通じて通信可能に構成されている。Ｕ人の利用者１５−１〜１５−Ｕそれぞれが端末装置１３−１〜１３−Ｊの何れかを利用可能である。ただし、Ｋ≧１であり、例えばＫ≧２である。Ｊ≧１であり、例えばＪ≧２である。Ｕ≧１であり、例えばＵ≧２である。なお、図１ではＫ個の復号能力提供装置１１−１〜１１−Ｋを例示しているが、復号サービスを提供するＫ＋１個以上の復号能力提供装置が存在してもよい。図１では１個の鍵管理装置１２を例示しているが、鍵管理を行う２個以上の鍵管理装置が存在してもよい。図１ではＪ個の端末装置１３−１〜１３−Ｊを例示しているが、復号処理を行うＪ＋１個以上の端末装置が存在してもよい。図１では１個の暗号化装置１４を例示しているが、暗号化処理を行う２個以上の暗号化装置が存在してもよい。
【００１０】
図２に例示するように、復号能力提供装置１１−ｋ（ただし、ｋ＝１，...，Ｋ）は、記憶部１１１−ｋと、入力部１１２−ｋと、検証部１１３−ｋと、判定部１１４−ｋと、復号能力提供部１１５−ｋと、出力部１１６−ｋとを有する。図３に例示するように、鍵管理装置１２は、記憶部１２１〜１２３と、入力部１２４と、判定部１２５と、出力部１２６とを有する。図４に例示するように、端末装置１３−ｊ（ただし、ｊ＝１，...，Ｊ）は、入力部１３１−ｊと、記憶部１３２−ｊ，１３３−ｊと、自己訂正処理部１３４−ｊと、出力部１３５−ｊとを有する。
【００１１】
図２では、表記便宜上、入力部１１２−ｋおよび出力部１１６−ｋが２個ずつ記載されているが、これは入力部１１２−ｋおよび出力部１１６−ｋの具体的構成を限定するものではない。同様に、図４では、表記便宜上、２個の入力部１３１−ｊが記載されているが、これは入力部１３１−ｊの具体的構成を限定するものではない。なお、復号能力提供装置１１−１〜１１−Ｋ、鍵管理装置１２、端末装置１３−１〜１３−Ｊ、および暗号化装置１４は、それぞれ、ＣＰＵ（central processing unit）やＲＡＭ（random-access memory）等を含む汎用または専用のコンピュータに所定のプログラムが読み込まれることで構成された装置である。各処理部から出力された情報は、図示していない一時メモリに格納され、必要に応じて読み出されて各処理部の処理に用いられる。各装置が互いに異なるコンピュータ上で構成されてもよいし、複数の装置が同一のコンピュータ上で構成されてもよい。
【００１２】
＜登録処理＞
本形態の登録処理を説明する。Ｋ組の暗号化鍵と復号鍵との組（ＥＫ１，ＤＫ１），...，（ＥＫＫ，ＤＫＫ）が設定される。復号鍵は秘密情報である。暗号化鍵と復号鍵との組の例は、公開鍵暗号方式の公開鍵と秘密鍵との組、ＩＤベース暗号方式の識別子と秘密鍵との組などである。また各端末装置１３−ｊに固有の識別子Ｐｊ（ただし、ｊ＝１，...，Ｊ）がそれぞれ設定され、各利用者１５−ｕに固有の識別子ＵＩＤｕ（ただし、ｕ＝１，...，Ｕ）がそれぞれ設定される。さらに各利用者１５−ｕが利用可能な端末装置１３−ｊが設定され、各復号鍵ＤＫｋでの復号が許可された利用者１５−ｕが設定される。
【００１３】
各利用者１５−ｕの識別子ＵＩＤｕと、各利用者１５−ｕが利用可能な端末装置１３−ｊの識別子Ｐｊとは、互いに対応付けられて記憶部１２１に格納される。すなわち、各端末装置１３−ｊに対応する利用者１５−ｕの識別子ＵＩＤｕと、当該端末装置１３−ｊの識別子Ｐｊとが、互いに対応付けられて記憶部１２１に格納される。例えば、利用者１５−１が端末装置１３−１，１３−２，１３−３を利用可能である場合、識別子ＵＩＤ１と識別子Ｐ１，Ｐ２，Ｐ３とが互いに対応付けられて記憶部１２１に格納される。
【００１４】
また各暗号化鍵ＥＫｋと、暗号化鍵ＥＫｋに対応する復号鍵ＤＫｋでの復号が許可された利用者１５−ｕの識別子ＵＩＤｕ（許可利用者の識別子）とは、互いに対応付けられて記憶部１２２に格納される。例えば、利用者１５−１，１５−８，１５−１１に復号鍵ＤＫ１での復号が許可されている場合、暗号化鍵ＥＫ１と許可利用者の識別子ＵＩＤ１，ＵＩＤ８，ＵＩＤ１１とが、互いに対応付けられて記憶部１２２に格納される。復号鍵ＤＫｋは、それぞれ暗号化鍵ＥＫｋを表す情報（暗号化鍵ＥＫｋやそれに対応する鍵識別子など）から特定可能な構成で、記憶部１２３に安全に格納される。
【００１５】
さらに各復号鍵ＤＫｋは、それぞれに対応する復号能力提供装置１１−ｋの記憶部１１１−ｋに格納される。各識別子Ｐｊは、それぞれ端末装置１３−ｊの記憶部１３３−ｊに格納される。
【００１６】
＜復号処理＞
暗号化装置１４は、或る暗号化鍵ＥＫｋを用いて平文ｍを暗号化して暗号文ｘ＝Ｃ（ＥＫｋ，ｍ）を生成して出力する。暗号文ｘは、ネットワークを通じて或る端末装置１３−ｊに送信され、この端末装置１３−ｊ（図４）の入力部１３１−ｊに入力され、記憶部１３２−ｊに格納される。図４を用い、このような端末装置１３−ｊが暗号文ｘの復号値ｍ’を得るための復号方法を説明する。
【００１７】
端末装置１３−ｊを利用可能な利用者１５−ｕが端末装置１３−ｊを操作し、端末装置１３−ｊの出力部１３５−ｊが、記憶部１３３−ｊに格納されている端末装置１３−ｊの識別子Ｐｊを、復号能力の提供を受けようとする或る復号能力提供装置１１−ｋに対して出力する。識別子Ｐｊは、ネットワークを通じてこの復号能力提供装置１１−ｋに送信される（ステップＳ１０１）。
【００１８】
識別子Ｐｊはこの復号能力提供装置１１−ｋ（図２）の入力部１１２−ｋに入力され、記憶部１１１−ｋに格納される（ステップＳ１０２）。検証部１１３−ｋは、記憶部１１１−ｋから読み込んだ識別子Ｐｊの正当性を暗号学的に検証する。この検証は公知の方法を用いて行うことができる。例えば、検証部１１３−ｋは、識別子Ｐｊに付された電子署名や電子証明書を検証する（ステップＳ１０３）。
【００１９】
判定部１１４−ｋは、識別子Ｐｊの検証結果、ならびに記憶部１１１−ｋから読み込んだ識別子Ｐｊおよび暗号化鍵ＥＫｋを入力とし、この端末装置１３−ｊの識別子Ｐｊおよびこの識別子Ｐｊから特定される利用者１５−ｕの識別子ＵＩＤｕが、復号鍵ＤＫｋでの復号処理を許可するための許可条件を満たすかを判定する。言い換えると、判定部１１４−ｋは、識別子Ｐｊおよびこの識別子Ｐｊに対応する識別子ＵＩＤｕが許可条件を満たすかを判定する。例えば、判定部１１４−ｋは、端末装置１３−ｊの識別子Ｐｊの暗号学的な検証結果が合格であり、かつ、利用者１５−ｕの識別子ＵＩＤｕが復号鍵ＤＫｋでの復号を許可された利用者の識別子であるか（許可条件）を判定する。本形態の判定部１１４−ｋは、鍵管理装置１２に問い合わせを行い、鍵管理装置１２での検索結果に基づいて、識別子Ｐｊおよびこの識別子Ｐｊから特定される利用者１５−ｕの識別子ＵＩＤｕが許可条件を満たすかを判定する（ステップＳ１０４，Ｓ１０５）。
【００２０】
≪ステップＳ１０４，Ｓ１０５の詳細≫
まず判定部１１４−ｋは、識別子Ｐｊおよび暗号化鍵ＥＫｋを出力し、これらは出力部１１６−ｋから鍵管理装置１２に対して出力される（ステップＳ１０４１）。識別子Ｐｊおよび暗号化鍵ＥＫｋは、ネットワークを介して鍵管理装置１２の入力部１２４に入力され、判定部１２５に送られる。判定部１２５は、記憶部１２１を参照し、識別子Ｐｊに対応する利用者の識別子ＵＩＤｕが存在するかを判定する（ステップＳ１０５１）。識別子Ｐｊに対応する利用者の識別子ＵＩＤｕが存在した場合、判定部１２５は、記憶部１２２を参照し、入力された暗号化鍵ＥＫｋに対応する許可利用者の識別子が、識別子Ｐｊに対応する利用者の識別子ＵＩＤｕを含むかを判定する（ステップＳ１０５２）。入力された暗号化鍵ＥＫｋに対応する許可利用者の識別子が、識別子Ｐｊに対応する利用者の識別子ＵＩＤｕを含む場合、判定部１２５は、入力された暗号化鍵ＥＫｋに対応する復号鍵ＤＫｋを記憶部１２３から抽出し、出力部１２６に送る。出力部１２６は、ネットワークを通じ、公知の秘密通信手段を用い、復号鍵ＤＫｋを復号能力提供装置１１−ｋに対して安全に送信する（ステップＳ１０５３）。一方、ステップＳ１０５１で識別子Ｐｊに対応する利用者の識別子ＵＩＤｕが存在しないと判定されるか、またはステップＳ１０５２で許可利用者の識別子が識別子Ｐｊに対応する利用者の識別子ＵＩＤｕを含まないと判定された場合、判定部１２５はエラー情報⊥を出力部１２６に送り、出力部１２６は、ネットワークを通じ、エラー情報⊥を復号能力提供装置１１−ｋに送信する（ステップＳ１０５４）。復号鍵ＤＫｋまたはエラー情報⊥は、復号能力提供装置１１−ｋの入力部１１２−ｋに入力され、判定部１１４−ｋに送られる（ステップＳ１０４２）。判定部１１４−ｋは、ステップＳ１０３での識別子Ｐｊの検証結果が合格であり、かつ、ステップＳ１０４２で復号鍵ＤＫｋが送られた場合、許可条件を充足したと判定する（ステップＳ１０４３）。それ以外の場合、判定部１１４−ｋは、許可条件を充足しないと判定する（ステップＳ１０４４）（≪ステップＳ１０４，Ｓ１０５の詳細≫の説明終わり）。
【００２１】
許可条件を充足しないと判定された場合、判定部１１４−ｋはエラー情報⊥を出力し、出力部１１６−ｋは、ネットワークを通じ、エラー情報⊥を端末装置１３−ｊに対して出力する。エラー情報⊥は、端末装置１３−ｊの入力部１３１−ｊに入力され、自己訂正処理部１３４−ｊに送られ、自己訂正処理部１３４−ｊは、復号処理をエラー終了する（ステップＳ１０７）。
【００２２】
許可条件を充足すると判定された場合、判定部１１４−ｋは許可条件を充足した旨の情報を出力し、ネットワークを通じ、その旨の情報を端末装置１３−ｊに対して出力する（ステップＳ１０９）。その旨の情報は、端末装置１３−ｊの入力部１３１−ｊに入力され、自己訂正処理部１３４−ｊに送られる。自己訂正処理部１３４−ｊは、記憶部１３２−ｊから暗号文ｘを読み込み、自己訂正技術によってその復号値ｍ’を得るための入力情報を出力する。入力情報は出力部１３５−ｊから、ネットワークを通じて復号能力提供装置１１−ｋの入力部１１２−ｋに入力され、記憶部１１１−ｋに格納される。復号能力提供部１１５−ｋは、入力情報および復号鍵ＤＫｋを用い、復号能力提供装置１１−ｋが復号値ｍ’を得ることなく、端末装置１３−ｊが自己訂正技術によって自己訂正処理部１３４−ｊが復号値ｍ’を得るための出力情報（提供情報）を出力する（ステップＳ１０８）。出力情報は出力部１３５−ｊから出力され、ネットワークを通じて端末装置１３−ｊの入力部１３１−ｊに入力され、自己訂正処理部１３４−ｊに送られる。自己訂正処理部１３４−ｊは、この入力情報を用い、復号値ｍ’を得て出力するか、または、復号値ｍ’を得ることができない旨のエラー情報⊥を出力する（ステップＳ１０９）。
【００２３】
自己訂正技術とは、必ずしも正しい計算結果を出力するとは限らない計算機やシステムを用いて常に正しい計算を行う（正しい計算結果を出力する計算機を用いた場合に正しい計算結果を出力し、必ずしも正しい結果を出力するとは限らない計算機を用いた場合に、正しい計算結果を得るか、または計算できない旨の結果を得る）技術である。自己訂正技術を用いた復号処理は、例えば、参考文献１（国際公開ＷＯ／２０１２／０５７１３４号公報）に開示されている。自己訂正技術については、参考文献２（国際公開ＷＯ／２０１１／０８６９９２号公報）、参考文献３（国際公開ＷＯ／２０１２／１２１１５２号公報）等にも開示されている。
【００２４】
≪自己訂正技術を用いた復号処理の例示≫
以下に自己訂正技術を用いた復号処理を例示する。以下の例では、Ｇ，Ｈが群、ｆ（ｘ）が群Ｈの元である暗号文ｘを復号鍵ＤＫｋで復号して群Ｇの元を得るための準同型性復号関数、Ｘ１，Ｘ２が群Ｇに値を持つ確率変数、ｘ１が確率変数Ｘ１の実現値、ｘ２が確率変数Ｘ２の実現値、ａ，ｂが互いに素である自然数である。ただし、以下の例は本発明を限定するものではなく、その他の自己訂正技術が用いられてもよい。
【００２５】
ステップ１０９１：自己訂正処理部１３４−ｊは、暗号文ｘに対応する、群Ｈの元である第一入力情報τ１及び第二入力情報τ２を出力する。例えば、第一入力情報τ１及び第二入力情報τ２は暗号文ｘをかく乱した情報であり、群Ｈが巡回群、巡回群Ｈの生成元がμｈ、ｒ１，ｒ２が０以上のランダムな自然数、τ１＝μｈｒ１ｘｂ、τ２＝μｈｒ２ｘａである。ａ，ｂの一方が１などの定数であってもよい。
【００２６】
ステップ１０８１：復号能力提供部１１５−ｋは、第一入力情報τ１を用い、或る確率より大きな確率でｆ（τ１）を正しく計算し、得られた計算結果を第一出力情報ｚ１とする。すなわち、ｚ１＝ｆ（τ１）である場合もあれば、ｚ１≠ｆ（τ１）である場合もある。言い換えると、復号能力提供部１１５−ｋは、ｆ（τ１）を計算可能であるが、意図的又は意図的ではない誤差を含んだ計算結果を出力する可能性がある。「或る確率」は１００％未満であり０％以上の確率である。「或る確率」の例は無視することができない確率であり、「無視することができない確率」の例は、セキュリティパラメータｋについての広義単調増加関数である多項式を多項式ψ（ｋ）とした場合の１／ψ（ｋ）以上の確率である。
ステップ１０８２：復号能力提供部１１５−ｋは、第二入力情報τ２を用い、或る確率より大きな確率でｆ（τ２）を正しく計算し、得られた計算結果を第二出力情報ｚ２とする。すなわち、ｚ２＝ｆ（τ２）である場合もあれば、ｚ２≠ｆ（τ２）である場合もある。言い換えると、復号能力提供部１１５−ｋは、ｆ（τ２）を計算可能であるが、意図的又は意図的ではない誤差を含んだ計算結果を出力する可能性がある。
【００２７】
ステップ１０９２：自己訂正処理部１３４−ｊは、第一出力情報ｚ１から計算結果ｕ＝ｆ（ｘ）ｂｘ１を生成する。例えば、ν＝ｆ（μｈ）であり、ｕ＝ｚ１ν−ｒ１である。
ステップ１０９３：自己訂正処理部１３４−ｊは、第二出力情報ｚ２から計算結果ｖ＝ｆ（ｘ）ａｘ２を生成する。例えば、ｖ＝ｚ２ν−ｒ２である。
ステップ１０９４：自己訂正処理部１３４−ｊは、計算結果ｕ及びｖがｕａ＝ｖｂを満たす場合に、ａ’ａ＋ｂ’ｂ＝１を満たす整数ａ’，ｂ’についてのｕｂ’ｖａ’を復号値ｍ’として出力する。
【００２８】
ステップ１０８１，１０８２，１０９１〜１０９４の処理を所定回数繰り返しても計算結果ｕ及びｖがｕａ＝ｖｂを満たさなかった場合、自己訂正処理部１３４−ｊは、復号が不可能である旨のエラー情報を出力する（≪自己訂正技術を用いた復号処理≫の説明終わり）。
【００２９】
＜第１実施形態の特徴＞
本形態では、端末装置の識別子および端末装置の識別子から特定される利用者の識別子から許可条件を満たすかを判定するため、利用者が復号処理専用の認証情報を入力する必要がない。端末装置を利用できるのはその正当な利用者であるため、このような許可条件を満たすかを判定することで利用者の正当性を判定できる。特に、端末装置での汎用的な利用者認証処理によって認証された利用者（端末装置にログインした利用者等）であれば、このような許可条件を満たすかを判定することで利用者の正当性を確実に判定できる。さらに、復号鍵を端末装置に与えることなく、復号値を端末装置で得るための提供情報を与えるため、不正な利用者が復号値を得ることを抑制できる。また本形態では、自己訂正技術を用いた復号処理を行うため、端末装置に復号鍵の情報が漏えいせず、かつ、復号能力提供装置に復号値の情報が漏えいせず、かつ、復号能力提供装置が信頼できない装置である場合や復号能力提供装置から出力される情報が改ざんされる可能性がある場合であっても、端末装置が誤った復号値を得ることはない。
【００３０】
［第２実施形態］
本発明の第２実施形態を説明する。第２実施形態は第１実施形態の変形例である。本形態では、復号能力提供装置が、復号値を再暗号化して得られた再暗号文を端末装置で得るための情報を端末装置に対して与え、端末装置がそれから再暗号文を得、さらに端末装置に保持された秘密鍵で再暗号文を復号して復号値を得る。本形態では、これまで説明した事項との相違点を中心に説明し、これまで説明した事項については説明を省略する。既に説明した処理部やステップについては、これまで用いた参照番号を用いて説明を簡略化する。
【００３１】
＜構成＞
本形態の構成を説明する。図１に例示するように、本形態の鍵クラウドシステム２は、復号サービスを提供するＫ個の復号能力提供装置２１−１〜２１−Ｋと、鍵管理装置１２と、復号処理を行うＪ個の端末装置２３−１〜２３−Ｊと、暗号化装置１４とを有し、これらはネットワークを通じて通信可能に構成されている。Ｕ人の利用者１５−１〜１５−Ｕそれぞれが端末装置２３−１〜２３−Ｊの何れかを利用可能である。なお、図１ではＫ個の復号能力提供装置２１−１〜２１−Ｋを例示しているが、復号サービスを提供するＫ＋１個以上の復号能力提供装置が存在してもよい。図１ではＪ個の端末装置２３−１〜２３−Ｊを例示しているが、復号処理を行うＪ＋１個以上の端末装置が存在してもよい。
【００３２】
図２に例示するように、復号能力提供装置２１−ｋ（ただし、ｋ＝１，...，Ｋ）は、記憶部１１１−ｋと、入力部１１２−ｋと、検証部１１３−ｋと、判定部１１４−ｋと、復号能力提供部２１５−ｋと、出力部１１６−ｋとを有する。図４に例示するように、端末装置２３−ｊ（ただし、ｊ＝１，...，Ｊ）は、入力部１３１−ｊと、記憶部１３２−ｊ，２３３−ｊと、自己訂正処理部２３４−ｊと、出力部１３５−ｊと、再暗号文復号部２３６−ｊとを有する。各装置は、汎用または専用のコンピュータに所定のプログラムが読み込まれることで構成されたものである。各処理部から出力された情報は、図示していない一時メモリに格納され、必要に応じて読み出されて各処理部の処理に用いられる。各装置が互いに異なるコンピュータ上で構成されてもよいし、複数の装置が同一のコンピュータ上で構成されてもよい。
【００３３】
＜登録処理＞
本形態の登録処理を説明する。第１実施形態との相違点は、公開鍵暗号方式の公開鍵を各端末装置２３−ｊに固有の識別子Ｐｊ（ただし、ｊ＝１，...，Ｊ）とし、公開鍵Ｐｊに対応する秘密鍵Ｓｊが設定され、公開鍵Ｐｊが端末装置２３−ｊの記憶部２３３−ｊに格納されることに加え、それに対応する秘密鍵Ｓｊも記憶部２３３−ｊに安全に格納される点である。その他は第１実施形態と同じである。
【００３４】
＜復号処理＞
第１実施形態との相違点は、ステップＳ１０８に代えてステップＳ２０８が実行され、ステップＳ１０９に代えてステップＳ２０９が実行され、さらにステップＳ２１０が実行される点である（図５）。以下では、ステップＳ２０８〜Ｓ２１０の処理のみを説明する。
【００３５】
許可条件を充足すると判定された場合（ステップＳ１０６）、判定部１１４−ｋは許可条件を充足した旨の情報を出力し、ネットワークを通じ、その旨の情報を端末装置２３−ｊに対して出力する（ステップＳ２０９）。その旨の情報は、端末装置２３−ｊの入力部１３１−ｊに入力され、自己訂正処理部２３４−ｊに送られる。自己訂正処理部２３４−ｊは、記憶部１３２−ｊから暗号文ｘを読み込み、その復号値ｍ’を公開鍵Ｐｊで再暗号化して得られる再暗号文Ｒ（Ｐｊ，ｍ’）を、自己訂正技術によって得るための入力情報を出力する。再暗号文Ｒ（Ｐｊ，ｍ’）は、端末装置２３−ｊに保持された秘密鍵Ｓｊで復号可能なものである。入力情報は出力部１３５−ｊから、ネットワークを通じて復号能力提供装置２１−ｋの入力部１１２−ｋに入力され、記憶部１１１−ｋに格納される。復号能力提供部２１５−ｋは、入力情報、復号鍵ＤＫｋ、および記憶部１１１−ｋから読み込んだ識別子である公開鍵Ｐｊを用い、自己訂正技術によって自己訂正処理部２３４−ｊが再暗号文Ｒ（Ｐｊ，ｍ’）を得るための出力情報を出力する（ステップＳ２０８）。出力情報は、復号能力提供装置２１−ｋが復号値ｍ’を得ることなく、端末装置２３−ｊが自己訂正技術によって、復号値ｍ’を再暗号化して得られた再暗号文Ｒ（Ｐｊ，ｍ’）を得るための提供情報である。端末装置２３−ｊは、再暗号文Ｒ（Ｐｊ，ｍ’）から復号値ｍ’を復号できるため、この提供情報も復号値ｍ’を端末装置２３−ｊで得るための情報といえる。出力情報は出力部１３５−ｊから出力され、ネットワークを通じて端末装置２３−ｊの入力部１３１−ｊに入力され、自己訂正処理部２３４−ｊに送られる。自己訂正処理部２３４−ｊは、この入力情報を用い、再暗号文Ｒ（Ｐｊ，ｍ’）を得て出力するか、または、再暗号文Ｒ（Ｐｊ，ｍ’）を得ることができない旨のエラー情報⊥を出力する（ステップＳ２０９）。本形態の自己訂正処理は、例えば、群Ｈの元である暗号文ｘを復号鍵ＤＫｋで復号して得られる復号値ｍ’を、公開鍵Ｐｊを用いて再暗号化して得られる群Ｇの元を得るための準同型性関数をｆ（ｘ）とし、ａ’ａ＋ｂ’ｂ＝１を満たす整数ａ’，ｂ’についてのｕｂ’ｖａ’を再暗号文Ｒ（Ｐｊ，ｍ’）とすればよい。
【００３６】
自己訂正処理部２３４−ｊで再暗号文Ｒ（Ｐｊ，ｍ’）が得られた場合、再暗号文復号部２３６−ｊは、記憶部２３３−ｊから読み込んだ秘密鍵Ｓｊを用い、再暗号文Ｒ（Ｐｊ，ｍ’）を復号する。秘密鍵Ｓｊが適切であれば、再暗号文復号部２３６−ｊは、復号値ｍ’を出力する。一方、自己訂正処理部２３４−ｊで再暗号文Ｒ（Ｐｊ，ｍ’）が得られないか、秘密鍵Ｓｊが不適切である場合、再暗号文復号部２３６−ｊは、エラー情報⊥を出力する（ステップＳ２１０）。
【００３７】
＜第２実施形態の特徴＞
第２実施形態には、第１実施形態の特徴と同じ特徴がある。さらに第２実施形態では、端末装置のなり済ましに対する耐性が高い。すなわち、第２実施形態では、復号能力提供装置が復号値を再暗号化して得られた再暗号文を端末装置で得るための情報を端末装置に対して与える。この場合、不当な端末装置が何れかの端末装置の識別子（公開鍵）を用い、その端末装置になり済ましたとしても、その不当な端末装置は適切な秘密鍵を知らないため、得られた再暗号文から復号値を得ることができない。特に自己訂正技術を用いた構成では、復号能力提供装置から不当な端末装置に対し、復号値の情報が漏えいしないことを保証できる。このことから、本形態では、端末装置の識別子（公開鍵）の暗号学的な検証（ステップＳ１０３）を省略することも可能であり、利用者の識別子が復号鍵での復号を許可された利用者の識別子であるかのみを許可条件としてもよい。
【００３８】
［第３実施形態］
本発明の第３実施形態を説明する。第３実施形態は第１実施形態の変形例である。本形態では、復号能力提供装置が鍵管理装置の機能をも兼ね備える。本形態では、これまで説明した事項との相違点を中心に説明し、これまで説明した事項については説明を省略する。既に説明した処理部やステップについては、これまで用いた参照番号を用いて説明を簡略化する。
【００３９】
＜構成＞
本形態の構成を説明する。図６に例示するように、本形態の鍵クラウドシステム３は、復号サービスを提供する１個の復号能力提供装置３１と、端末装置１３−１〜１３−Ｊと、暗号化装置１４とを有し、これらはネットワークを通じて通信可能に構成されている。図６では１個の復号能力提供装置３１を例示しているが、復号サービスを提供する複数個の復号能力提供装置が存在してもよい。
【００４０】
図７に例示するように、復号能力提供装置３１は、記憶部１２１〜１２３，３１１と、入力部３１２と、検証部３１３と、判定部３１４と、復号能力提供部３１５と、出力部３１６とを有する。復号能力提供装置３１は、汎用または専用のコンピュータに所定のプログラムが読み込まれることで構成されたものである。各処理部から出力された情報は、図示していない一時メモリに格納され、必要に応じて読み出されて各処理部の処理に用いられる。各装置が互いに異なるコンピュータ上で構成されてもよいし、複数の装置が同一のコンピュータ上で構成されてもよい。
【００４１】
＜登録処理＞
本形態の登録処理を説明する。第１実施形態との相違点は、鍵管理装置１２の記憶部１２１〜１２３に対する格納処理に代えて、同じ格納処理が復号能力提供装置３１の記憶部１２１〜１２３に対して行われる点である。その他は第１実施形態と同じである。
【００４２】
＜復号処理＞
第１実施形態との相違点は、復号能力提供装置１１―ｋに代えて復号能力提供装置３１が処理を行い、記憶部３１１、入力部３１２、検証部３１３、復号能力提供部３１５、および出力部３１６が、それぞれ、記憶部１１１−ｋ、入力部１１２−ｋ、検証部１１３−ｋ、復号能力提供部１１５−ｋ、および出力部１１６−ｋでの処理を行い、判定部１１４−ｋに代えて判定部３１４が、ステップＳ１０４，Ｓ１０５に代えてステップＳ３０４を実行する点である。以下では、ステップＳ３０４の処理のみを説明する。
【００４３】
判定部３１４は、検証部３１３で行われた識別子Ｐｊの検証結果、ならびに記憶部３１１から読み込んだ識別子Ｐｊおよび暗号化鍵ＥＫｋを入力とし、端末装置１３−ｊの識別子Ｐｊおよびこの識別子Ｐｊから特定される利用者１５−ｕの識別子ＵＩＤｕが、復号鍵ＤＫｋでの復号処理を許可するための許可条件を満たすかを判定する。言い換えると、判定部３１４は、識別子Ｐｊおよびこの識別子Ｐｊに対応する識別子ＵＩＤｕが許可条件を満たすかを判定する。例えば、判定部３１４は、端末装置１３−ｊの識別子Ｐｊの暗号学的な検証結果が合格であり、かつ、利用者１５−ｕの識別子ＵＩＤｕが復号鍵ＤＫｋでの復号を許可された利用者の識別子であるか（許可条件）を判定する。本形態の判定部３１４は、記憶部１２１〜１２３に格納された情報を用い、識別子Ｐｊおよびこの識別子Ｐｊから特定される利用者１５−ｕの識別子ＵＩＤｕが許可条件を満たすかを判定する（ステップＳ３０４）。
【００４４】
≪ステップＳ３０４の詳細≫
ステップＳ３０４の詳細を例示する。検証部３１３で行われた識別子Ｐｊの検証結果が合格である場合、判定部３１４は、記憶部１２１を参照し、識別子Ｐｊに対応する利用者の識別子ＵＩＤｕが存在するかを判定する（ステップＳ３０４１）。識別子Ｐｊに対応する利用者の識別子ＵＩＤｕが存在した場合、判定部３１４は、記憶部１２２を参照し、入力された暗号化鍵ＥＫｋに対応する許可利用者の識別子が、識別子Ｐｊに対応する利用者の識別子ＵＩＤｕを含むかを判定する（ステップＳ３０４２）。入力された暗号化鍵ＥＫｋに対応する許可利用者の識別子が、識別子Ｐｊに対応する利用者の識別子ＵＩＤｕを含む場合、判定部３１４は、許可条件を充足すると判定し、入力された暗号化鍵ＥＫｋに対応する復号鍵ＤＫｋを記憶部１２３から抽出する。一方、検証部３１３で行われた識別子Ｐｊの検証結果が不合格であるか、ステップＳ３０４１で識別子Ｐｊに対応する利用者の識別子ＵＩＤｕが存在しないと判定されるか、またはステップＳ３０４２で許可利用者の識別子が識別子Ｐｊに対応する利用者の識別子ＵＩＤｕを含まないと判定された場合、判定部３１４は、許可条件を充足しないと判定する（≪ステップＳ３０４の詳細≫の説明終わり）。
【００４５】
［第４実施形態］
本発明の第４実施形態を説明する。第４実施形態は第１〜３実施形態の変形例である。本形態では、復号能力提供装置が鍵管理装置の機能をも兼ね備え、復号能力提供装置が、復号値を再暗号化して得られた再暗号文を端末装置で得るための情報を端末装置に対して与え、端末装置がそれから再暗号文を得、さらに端末装置に保持された秘密鍵で再暗号文を復号して復号値を得る。本形態では、これまで説明した事項との相違点を中心に説明し、これまで説明した事項については説明を省略する。既に説明した処理部やステップについては、これまで用いた参照番号を用いて説明を簡略化する。
【００４６】
＜構成＞
本形態の構成を説明する。図６に例示するように、本形態の鍵クラウドシステム４は、復号能力提供装置４１と、端末装置２３−１〜２３−Ｊと、暗号化装置１４とを有し、これらはネットワークを通じて通信可能に構成されている。
【００４７】
図７に例示するように、復号能力提供装置４１は、記憶部１２１〜１２３，３１１と、入力部３１２と、検証部３１３と、判定部３１４と、復号能力提供部４１５と、出力部３１６とを有する。復号能力提供装置３１は、汎用または専用のコンピュータに所定のプログラムが読み込まれることで構成されたものである。各処理部から出力された情報は、図示していない一時メモリに格納され、必要に応じて読み出されて各処理部の処理に用いられる。各装置が互いに異なるコンピュータ上で構成されてもよいし、複数の装置が同一のコンピュータ上で構成されてもよい。
【００４８】
＜登録処理＞
本形態の登録処理を説明する。第３実施形態との相違点は、公開鍵暗号方式の公開鍵を各端末装置２３−ｊに固有の識別子Ｐｊ（ただし、ｊ＝１，...，Ｊ）とし、公開鍵Ｐｊに対応する秘密鍵Ｓｊが設定され、公開鍵Ｐｊが端末装置２３−ｊの記憶部２３３−ｊに格納されることに加え、それに対応する秘密鍵Ｓｊも記憶部２３３−ｊに安全に格納される点である。その他は第３実施形態と同じである。
【００４９】
＜復号処理＞
第１実施形態との相違点は、復号能力提供装置１１―ｋに代えて復号能力提供装置４１が処理を行い、記憶部３１１、入力部３１２、検証部３１３、および出力部３１６が、それぞれ、記憶部１１１−ｋ、入力部１１２−ｋ、検証部１１３−ｋ、および出力部１１６−ｋでの処理を行い、判定部１１４−ｋに代えて判定部３１４がステップＳ３０４を実行し、復号能力提供部１１５−ｋに代えて復号能力提供部４１５がステップＳ１０８に代えてステップＳ２０８を実行する点、および、ステップＳ１０９に代えてステップＳ２０９が実行され、さらにステップＳ２１０が実行される点である（図８）。これらの相違点はすべて説明済みであるため、本形態での説明を省略する。
【００５０】
＜変形例等＞
本発明は上述の実施の形態に限定されるものではない。例えば、各装置がネットワークを通じて情報をやり取りするのではなく、少なくとも一部の装置の組が可搬型記録媒体を介して情報をやり取りしてもよい。或いは、少なくとも一部の装置の組が非可搬型の記録媒体を介して情報をやり取りしてもよい。すなわち、これらの装置の一部からなる組み合わせが、同一の装置であってもよい。
【００５１】
上述の実施形態では、暗号化鍵とそれに対応する復号鍵とが異なる非対称鍵暗号方式に本発明を適用する例を示した。しかしながら、暗号化鍵とそれに対応する復号鍵とが同一の対称鍵暗号方式（共通鍵暗号方式）に本発明を適用してもよい。また、第２，４実施形態において、公開鍵暗号方式の公開鍵をＰｊ（ただし、ｊ＝１，...，Ｊ）とすることに代えて、ＩＤベース暗号方式の識別子をＰｊとしてもよい。また、複数種類の暗号方式が混在していてもよい。
【００５２】
また自己訂正技術は前述したものに限定されない。例えば、第１，３実施形態において、群Ｈが群Ｇの直積群Ｇ×Ｇ、群Ｇが巡回群、巡回群Ｇの生成元がμｇ、暗号文ｘ＝（ｃ１，ｃ２），（Ｖ，Ｗ）が群Ｈの元、ｆ（Ｖ，Ｗ）＝Ｙであり、ｒ４〜ｒ７が０以上の自然数の乱数であり、τ１＝（ｃ２ｂＷｒ４，ｃ１ｂＶｒ４μｇｒ５）であり、τ２＝（ｃ２ａＷｒ６，ｃ１ａＶｒ６μｇｒ７）であり、ｕ＝ｚ１Ｙ−ｒ４μｇ−ｒ５、ｖ＝ｚ２Ｙ−ｒ６μｇ−ｒ７であってもよい。
【００５３】
また、許可条件を充足しないと判定された場合（ステップＳ１０６）、復号能力提供装置が端末装置にエラー情報⊥を送るのではなく、ステップＳ１０８やＳ２０８で不適切な提供情報（出力情報）を端末装置に与えてもよい。この場合、端末装置は自己訂正処理によって正しい復元値を得ることができない。不適切な提供情報の例は、復号対象の暗号文と異なる値（ランダム値等）に対する提供情報（出力情報）である。
【００５４】
上述の各種の処理は、記載に従って時系列に実行されるのみならず、処理を実行する装置の処理能力あるいは必要に応じて並列的にあるいは個別に実行されてもよい。その他、本発明の趣旨を逸脱しない範囲で適宜変更が可能であることはいうまでもない。
【００５５】
上述の構成をコンピュータによって実現する場合、各装置が有すべき機能の処理内容はプログラムによって記述される。このプログラムをコンピュータで実行することにより、上記処理機能がコンピュータ上で実現される。この処理内容を記述したプログラムは、コンピュータで読み取り可能な記録媒体に記録しておくことができる。コンピュータで読み取り可能な記録媒体の例は、非一時的な（non-transitory）記録媒体である。このような記録媒体の例は、磁気記録装置、光ディスク、光磁気記録媒体、半導体メモリ等である。
【００５６】
このプログラムの流通は、例えば、そのプログラムを記録したＤＶＤ、ＣＤ−ＲＯＭ等の可搬型記録媒体を販売、譲渡、貸与等することによって行う。さらに、このプログラムをサーバコンピュータの記憶装置に格納しておき、ネットワークを介して、サーバコンピュータから他のコンピュータにそのプログラムを転送することにより、このプログラムを流通させる構成としてもよい。
【００５７】
このようなプログラムを実行するコンピュータは、例えば、まず、可搬型記録媒体に記録されたプログラムもしくはサーバコンピュータから転送されたプログラムを、一旦、自己の記憶装置に格納する。処理の実行時、このコンピュータは、自己の記録装置に格納されたプログラムを読み取り、読み取ったプログラムに従った処理を実行する。このプログラムの別の実行形態として、コンピュータが可搬型記録媒体から直接プログラムを読み取り、そのプログラムに従った処理を実行することとしてもよく、さらに、このコンピュータにサーバコンピュータからプログラムが転送されるたびに、逐次、受け取ったプログラムに従った処理を実行することとしてもよい。サーバコンピュータから、このコンピュータへのプログラムの転送は行わず、その実行指示と結果取得のみによって処理機能を実現する、いわゆるＡＳＰ（Application Service Provider）型のサービスによって、上述の処理を実行する構成としてもよい。
【００５８】
上記実施形態では、コンピュータ上で所定のプログラムを実行させて本装置の処理機能が実現されたが、これらの処理機能の少なくとも一部がハードウェアで実現されてもよい。
【符号の説明】
【００５９】
１〜４  鍵クラウドシステム
１１−１〜１１−Ｋ，２１−１〜２１−Ｋ，３１，４１  復号提供装置
１２  鍵管理装置
１３−１〜１３−Ｊ，２３−１〜２３−Ｊ  端末装置
【図１】
2015022097.tif 000003
【図２】
2015022097.tif 000004
【図３】
2015022097.tif 000005
【図４】
2015022097.tif 000006
【図５】
2015022097.tif 000007
【図６】
2015022097.tif 000008
【図７】
2015022097.tif 000009
【図８】
2015022097.tif 000010