(57)【要約】  秘匿すべき情報およびこれに関連する情報の漏洩の可能性を抑えながら、開示範囲をコントロールするために、一実施形態に係る制御装置は、第１秘密鍵で復号可能な準同型暗号方式で暗号化されている第１準同型暗号データに対して、特定の属性を付与された第２秘密鍵で復号可能な属性ベース暗号方式で暗号化することによって得られる第１属性暗号データを、記憶領域に記憶させる手段と、記憶領域に記憶された第１属性暗号データを解析装置に送信する手段と、送信の応答として、第１準同型暗号データに対する所定の演算によって得られた演算結果を、解析装置から受信する手段と、解析装置から受信した演算結果に基づく演算暗号データを記憶領域に記憶させる手段と、を備える。
2016103960.tif 000002
【特許請求の範囲】
【請求項１】
第１秘密鍵で復号可能な準同型暗号方式で暗号化されている第１準同型暗号データに対して、特定の属性を付与された第２秘密鍵で復号可能な属性ベース暗号方式で暗号化することによって得られる第１属性暗号データを、記憶領域に記憶させる手段と、
前記記憶領域に記憶された前記第１属性暗号データを解析装置に送信する手段と、
前記送信の応答として、前記第１準同型暗号データに対する所定の演算によって得られた演算結果を、前記解析装置から受信する手段と、
前記解析装置から受信した前記演算結果に基づく演算暗号データを前記記憶領域に記憶させる手段と、
を備えることを特徴とする制御装置。
【請求項２】
前記第１秘密鍵の少なくとも一部に対して、特定の属性を付与された第３秘密鍵で復号可能な属性ベース暗号方式で暗号化することによって得られる第１秘密鍵暗号データを、前記記憶領域に記憶させる手段と、
前記記憶領域に記憶された前記演算暗号データおよび前記第１秘密鍵暗号データを前記復号装置に送信する手段と、
をさらに備えることを特徴とする請求項１に記載の制御装置。
【請求項３】
前記演算結果は、前記第１秘密鍵で復号可能な暗号データであり、
前記演算暗号データは、前記演算結果であることを特徴とする請求項１に記載の制御装置。
【請求項４】
前記演算結果は、前記第１秘密鍵で復号可能な暗号データであり、
前記演算結果を、特定の属性を付与された第３秘密鍵で復号可能な属性ベース暗号方式で暗号化して、前記記憶領域に記憶させる前記演算暗号データを生成する手段をさらに備えることを特徴とする請求項１に記載の制御装置。
【請求項５】
前記演算結果は、前記第１秘密鍵で復号可能な暗号データを、特定の属性を付与された第３秘密鍵で復号可能な属性ベース暗号方式で暗号化したデータであり、
前記演算暗号データは、前記演算結果であることを特徴とする請求項１に記載の制御装置。
【請求項６】
前記第１準同型暗号データを取得し、当該第１準同型暗号データを、特定の属性を付与された第３秘密鍵で復号可能な属性ベース暗号方式で暗号化して、前記記憶領域に記憶させる前記第１属性暗号データを生成する手段をさらに備えることを特徴とする請求項１に記載の制御装置。
【請求項７】
前記第１秘密鍵で復号可能な準同型暗号方式で暗号化されている第２準同型暗号データを、前記第２秘密鍵で復号可能な属性ベース暗号方式で暗号化することによって得られた第２属性暗号データを前記記憶領域に記憶させる手段と、
前記記憶領域に記憶された前記第２属性暗号データを前記解析装置に送信する手段と、
をさらに備え、
前記所定の演算は、前記第１準同型暗号データと前記２属性暗号データを復号した前記第２準同型暗号データとを用いた演算であることを特徴とする請求項１に記載の制御装置。
【請求項８】
復号のために少なくとも第１秘密鍵を用いる第１暗号データを記憶領域に記憶させる手段と、
前記第１秘密鍵の少なくとも一部に対して、特定の属性を付与された第３秘密鍵で復号可能な属性ベース暗号方式で暗号化された第１秘密鍵暗号データを記憶領域に記憶させる手段と、
前記記憶領域に記憶された前記第１暗号データおよび前記第１秘密鍵暗号データを前記復号装置に送信する手段と、
を備えることを特徴とする制御装置。
【請求項９】
前記第１暗号データは、前記第１秘密鍵で復号可能な暗号データを、特定の属性を付与された第３秘密鍵で復号可能な属性ベース暗号方式で暗号化したデータであることを特徴とする請求項８に記載の制御装置。
【請求項１０】
前記第１秘密鍵は、複数の分散鍵を組み合わせた鍵であり、
前記第１秘密鍵暗号データは、一部の前記分散鍵を暗号化したデータであることを特徴とする請求項１乃至請求項９のいずれかに記載の制御装置。
【請求項１１】
所定の属性を付与された第２秘密鍵を取得する手段と、
第１秘密鍵で復号可能な準同型暗号方式で暗号化された第１準同型暗号データに対して、特定の属性を付与された第２秘密鍵で復号可能な属性ベース暗号方式で暗号化された第１属性暗号データを、外部装置から受信する手段と、
取得した前記秘密鍵で、受信した前記第１属性暗号データを復号して前記第１準同型暗号データを取得する手段と、
取得した前記第１準同型暗号データに対して、所定の演算によって得られた演算結果を、外部装置へ送信する手段と、
を備えることを特徴とする解析装置。
【請求項１２】
前記準同型暗号方式で暗号化された第２準同型暗号データに対して、前記第２秘密鍵で復号可能な属性ベース暗号方式で暗号化された第２属性暗号データを、外部装置から受信する手段と、
取得した前記秘密鍵で、受信した前記第２属性暗号データを復号して前記第２準同型暗号データを取得する手段と、
をさらに備え、
前記所定の演算は、前記第１準同型暗号データと前記第２準同型暗号データとを用いた演算であることを特徴とする請求項１１に記載の解析装置。
【請求項１３】
所定の属性を付与された第３秘密鍵を取得する手段と、
復号のために少なくとも第１秘密鍵を用いる第１暗号データを、外部装置から受信する手段と、
前記第１秘密鍵の少なくとも一部に対して、特定の属性を付与された第３秘密鍵で復号可能な属性ベース暗号方式で暗号化された第１秘密鍵暗号データを、前記外部装置から受信する手段と、
取得した前記第３秘密鍵で前記第１秘密鍵暗号データを復号して、前記第１秘密鍵の少なくとも一部を取得する手段と、
取得した前記第１秘密鍵の少なくとも一部を用いて前記第１暗号データを復号する手段と、
を備えることを特徴とする復号装置。
【請求項１４】
前記第１暗号データは、前記第１秘密鍵で復号可能な暗号データを、特定の属性を付与された第３秘密鍵で復号可能な属性ベース暗号方式で暗号化したデータであり、
取得した前記第３秘密鍵で前記第１暗号データを復号した得られるデータを、さらに前記第１秘密鍵で復号する手段と、
を備えることを特徴とする請求項１３に記載の復号装置。
【請求項１５】
前記第１秘密鍵は、複数の分散鍵を組み合わせた鍵であり、
前記第１秘密鍵暗号データは、一部の前記分散鍵を暗号化したデータであり、
前記一部の分散鍵以外の残りの前記分散鍵を取得する手段と、
前記第１秘密鍵暗号データを復号して得られる前記分散鍵の一部と、取得した前記残りの分散鍵とを組み合わせた前記第１秘密鍵によって前記第１暗号データを復号することを特徴とする請求項１３に記載の復号装置。
【請求項１６】
所定のデータを生成する手段と、
前記所定のデータに対して、第１秘密鍵で復号可能な準同型暗号方式での暗号化を含む暗号化処理を実行して暗号データを生成する手段と、
前記暗号データを、請求項１乃至請求項７のいずれかに記載の制御装置に送信する手段と、
を備え、
前記制御装置は、前記暗号データに基づいて、記憶領域に記憶させる前記第１属性暗号データを得ることを特徴とする送信装置。
【発明の詳細な説明】
【技術分野】
【０００１】
本発明は、暗号化されたデータを扱うことが可能な対象をコントロールする技術に関する。
【背景技術】
【０００２】
秘匿性を有する情報（例えば、個人を特定する情報、および個人に関連付けられた情報など）は、第三者に対して漏洩しないように、暗号化されて厳密に管理される。例えば、ゲノム情報などは、個人を特定する情報であって、永続的に変化しないような情報であるため、取り扱いには充分な注意を要する。このような情報を取り扱う際の技術として、例えば、特許文献１〜６が開示されている。
【先行技術文献】
【特許文献】
【０００３】
【特許文献１】国際公開第２０１４／０４０９６４号
【特許文献２】特開２００３−０１８１４２号公報
【特許文献３】特開２００２−２１５０２８号公報
【特許文献４】特開２００２−０２４３８５号公報
【特許文献５】特開２００７−１７９５００号公報
【特許文献６】特開２００１−３５７１３０号公報
【発明の概要】
【発明が解決しようとする課題】
【０００４】
ところで、暗号化された情報は、これを提供したユーザが復号化するのは問題がない。一方、漏洩防止のために、第三者が復号化することを完全に除外してしまうと、暗号化された情報を全く活用することができない。例えば、治療に有効な情報をゲノム情報の解析によって得るためには、ゲノム情報を解析する業者に、ゲノム情報を提供する必要がある。そして、解析結果については、ユーザのみならず、治療を実施する病院においても必要となる。したがって、ゲノム情報などの秘匿すべき情報およびこれに関連する情報（解析結果等）の開示範囲をコントロールしつつ、できるだけ漏洩の可能性を低くすることが望まれている。【０００５】
本発明の目的の一つは、秘匿すべき情報およびこれに関連する情報の漏洩の可能性を抑えながら、開示範囲をコントロールすることにある。
【課題を解決するための手段】
【０００６】
本発明の一実施形態によると、第１秘密鍵で復号可能な準同型暗号方式で暗号化されている第１準同型暗号データに対して、特定の属性を付与された第２秘密鍵で復号可能な属性ベース暗号方式で暗号化することによって得られる第１属性暗号データを、記憶領域に記憶させる手段と、前記記憶領域に記憶された前記第１属性暗号データを解析装置に送信する手段と、前記送信の応答として、前記第１準同型暗号データに対する所定の演算によって得られた演算結果を、前記解析装置から受信する手段と、前記解析装置から受信した前記演算結果に基づく演算暗号データを前記記憶領域に記憶させる手段と、を備えることを特徴とする制御装置が提供される。【０００７】
また、本発明の一実施形態によると、復号のために少なくとも第１秘密鍵を用いる第１暗号データを記憶領域に記憶させる手段と、前記第１秘密鍵の少なくとも一部に対して、特定の属性を付与された第３秘密鍵で復号可能な属性ベース暗号方式で暗号化された第１秘密鍵暗号データを記憶領域に記憶させる手段と、前記記憶領域に記憶された前記第１暗号データおよび前記第１秘密鍵暗号データを前記復号装置に送信する手段と、を備えることを特徴とする制御装置が提供される。【０００８】
また、本発明の一実施形態によると、所定の属性を付与された第２秘密鍵を取得する手段と、第１秘密鍵で復号可能な準同型暗号方式で暗号化された第１準同型暗号データに対して、特定の属性を付与された第２秘密鍵で復号可能な属性ベース暗号方式で暗号化された第１属性暗号データを、外部装置から受信する手段と、取得した前記秘密鍵で、受信した前記第１属性暗号データを復号して前記第１準同型暗号データを取得する手段と、取得した前記第１準同型暗号データに対して、所定の演算によって得られた演算結果を、外部装置へ送信する手段と、を備えることを特徴とする解析装置が提供される。【０００９】
また、本発明の一実施形態によると、所定の属性を付与された第３秘密鍵を取得する手段と、復号のために少なくとも第１秘密鍵を用いる第１暗号データを、外部装置から受信する手段と、前記第１秘密鍵の少なくとも一部に対して、特定の属性を付与された第３秘密鍵で復号可能な属性ベース暗号方式で暗号化された第１秘密鍵暗号データを、前記外部装置から受信する手段と、取得した前記第３秘密鍵で前記第１秘密鍵暗号データを復号して、前記第１秘密鍵の少なくとも一部を取得する手段と、取得した前記第１秘密鍵の少なくとも一部を用いて前記第１暗号データを復号する手段と、を備えることを特徴とする復号装置が提供される。【００１０】
また、本発明の一実施形態によると、所定のデータを生成する手段と、前記所定のデータに対して、第１秘密鍵で復号可能な準同型暗号方式での暗号化を含む暗号化処理を実行して暗号データを生成する手段と、前記暗号データを、請求項１乃至請求項７のいずれかに記載の制御装置に送信する手段と、を備え、前記制御装置は、前記暗号データに基づいて、記憶領域に記憶させる前記第１属性暗号データを得ることを特徴とする送信装置が提供される。
【発明の効果】
【００１１】
本発明の一実施形態によれば、秘匿すべき情報およびこれに関連する情報の漏洩の可能性を抑えながら、開示範囲をコントロールすることができる。
【図面の簡単な説明】
【００１２】
【図１】本発明の第１実施形態におけるデータ提供システムの構成を示すブロック図である。
【図２】本発明の第１実施形態におけるマスター鍵の生成処理を説明する通信フロー図である。
【図３】本発明の第１実施形態における復号者属性付秘密鍵の配布処理を説明する通信フロー図である。
【図４】本発明の第１実施形態における解析者属性付秘密鍵の配布処理を説明する通信フロー図である。
【図５】鍵配布処理が完了した後におけるデータ提供システムの各装置に記憶されたデータの内容を示す図である。
【図６】本発明の第１実施形態における分散秘密鍵およびポリシーの登録処理を説明する通信フロー図である。
【図７】セットアップ処理が完了した後におけるデータ提供システムの各装置に記憶されたデータの内容を示す図である。
【図８】本発明の第１実施形態における環境情報の登録処理を説明する通信フロー図である。
【図９】本発明の第１実施形態におけるゲノム情報の登録処理を説明する通信フロー図である。
【図１０】保管委託処理が完了した後におけるデータ提供システムの各装置に記憶されたデータの内容を示す図である。
【図１１】本発明の第１実施形態における解析結果の登録処理を説明する通信フロー図である。
【図１２】解析委託処理が完了した後におけるデータ提供システムの各装置に記憶されたデータの内容を示す図である。
【図１３】本発明の第１実施形態における解析結果の復号処理を説明する通信フロー図である。
【図１４】本発明の第１実施形態におけるデータ提供システムの機能を説明するブロック図である。
【発明を実施するための形態】
【００１３】
以下、本発明の一実施形態におけるデータ提供システムについて、図面を参照しながら詳細に説明する。以下に示す実施形態は本発明の実施形態の一例であって、本発明はこれらの実施形態に限定して解釈されるものではない。
【００１４】
＜第１実施形態＞
本発明の第１実施形態におけるデータ提供システムについて、図面を参照しながら詳細に説明する。
【００１５】
［概要］
図１は、本発明の第１実施形態におけるデータ提供システムの構成を示すブロック図である。データ提供システム１は、以下の通りの機能を有する。ユーザの生体サンプルを用いてゲノム情報が生成される。以下、「ユーザ」とは、生体サンプルを提供した人（患者等）を示す。
【００１６】
生成されたゲノム情報は暗号化されて保存される。暗号化されたゲノム情報は、復号化されずに暗号化された状態で解析のための演算処理が施される。解析された結果は、暗号化されたまま保存される。そして、解析結果が復号化される。
【００１７】
データ提供システム１は、このような一連の処理において、解析のための演算処理を実行する解析者（解析事業者）が特定の属性を有する場合に演算処理を実行でき、また、解析結果を復号化する病院（病院に所属する医師）が特定の属性を有する場合に復号化を実行できる。特定の条件は、ユーザによって定められる。続いて、上記の一連の処理を実現するためのデータ提供システム１の構成について説明する。
【００１８】
この例においては、２種類の暗号化の方式が用いられる。まず、第１に、準同型暗号（Homomorphic Encryption）である。これは、準同型性を有する暗号方式である。準同型暗号方式で暗号化（以下、準同型暗号化という場合がある）すると、情報を復号化しなくても、所定の演算を行うことができる。この際、暗号化した複数の情報を用いた演算も可能である。すなわち、上述したように、ゲノム情報を暗号化したまま、所定の演算を行って解析をすることができるようになる。
【００１９】
準同型暗号化について、簡単に説明する。公開鍵をｐｋ、秘密鍵をｓｋとする。平文ｍに対して、暗号化関数Ｅｐｋを、ｃ←Ｅｐｋ（ｍ）で記述する。暗号文に対して、復号関数Ｄｓｋを、ｍ←Ｄｓｋ（ｃ）で記述する。任意のｍ１、ｍ２に対して、以下の性質が成り立つ場合、公開鍵暗号Ｅｐｋ、Ｄｓｋは、「加法的準同型性を持つ」という。
Ｄｓｋ（Ｅｐｋ（ｍ１）・Ｅｐｋ（ｍ２））＝ｍ１＋ｍ２
さらに、
Ｄｓｋ（Ｅｐｋ（ｍ）ｕ）＝ｕｍ
が成り立つ。
【００２０】
準同型暗号方式の具体的な構成方法としては、例えば、modified-ElGamal暗号、Paillier暗号、modified-Paillier暗号など公知の方法を用いればよい。具体的な例として、例えば、以下の文献に開示されている。
Emmanuel Bresson, Dario Catalano, and David Pointcheval.  "A Simple Public-Key Cryptosystem with a Double Trapdoor Decryption Mechanism and Its Applications"  C.S. Laih (Ed.): ASIACRYPT 2003, LNCS 2894, pp. 37-54, 2003.
【００２１】
なお、準同型暗号化として、加法に限らず、乗法についてもサポートされた完全準同型暗号化を用いてもよい。すなわち、以下の双方が成り立つ。
Ｄｓｋ（Ｅｐｋ（ｍ１）・Ｅｐｋ（ｍ２））＝ｍ１＋ｍ２
Ｄｓｋ（Ｅｐｋ（ｍ１）＊Ｅｐｋ（ｍ２））＝ｍ１ｍ２
このような例は、例えば、以下の文献に開示されている。
Craig Gentry: Fully homomorphic encryption using ideal lattices. STOC 2009: 169-178
【００２２】
この例では、しきい値暗号（threshold cryptography）を用いて、秘密鍵ｓｋを複数の分散鍵に分割する。例えば、ｓｋ＝ｓｋａ＋ｓｋｂの２つに分割される場合について説明する。上記のようにして公開鍵ｐｋで暗号化された暗号文ｃを復号するためには、分散鍵ｓｋａ、ｓｋｂの双方が必要となる。部分復号関数Ｄｓｋａおよび完全復号関数Ｄｓｋｂを、ｃａ←Ｄｓｋａ（ｃ）、ｍ←Ｄｓｋｂ（ｃａ）で記述する。
【００２３】
なお、秘密鍵ｓｋを分割して複数の分散鍵として用い、全ての分散鍵を用いて復号できるようにする具体的な構成方法は、公知のしきい値暗号法による技術を用いればよい。具体的な例として、例えば、以下の文献に開示されている。
Yvo Desmedt, and Yair Frankel.  "Threshold cryptosystems"  CRYPTO'89, LNCS435, pp. 307-315, 1990.
【００２４】
第２に、暗号文ポリシー属性ベース暗号（CP-ABE : Cipher text Policy - Attribute Based Encryption）である。これは、ポリシーによって定められた属性が付与された秘密鍵においてのみ復号化を可能にする暗号化である。ポリシーは暗号文（暗号データ）に埋め込まれる。
【００２５】
暗号文ポリシー属性ベース暗号について簡単に説明する。復号者の属性全体の集合をＵとする。各復号者は、属性の集合Ｓ（⊆Ｕ）を持つ。復号者は、Ｓに対応した秘密鍵ｓｋｓを、認証機関に発行してもらう。復号できる権限を定めるポリシーをΨとする。Ψは、Ｕに関する論理式で記述される。Ψ（Ｓ）＝１となるＳを持っている復号者が、暗号文を復号可能である。
【００２６】
システム公開鍵ｐｋとマスター秘密鍵ｍｋを生成する。暗号化ｐｋ、復号できるポリシーΨ、平文ｍを入力として、暗号文ＣΨを出力する。
ＣΨ←ＡＢＥ＿Ｅｎｃ（ｐｋ，ｍ，Ψ）
【００２７】
鍵生成ｐｋ、ｍｋ、属性情報Ｓを入力として、Ｓに対応した秘密鍵ｓｋＳを出力する。
ｓｋＳ←ＡＢＥ＿ＫｅｙＧｅｎ（ｐｋ，ｍｋ，Ｓ）
【００２８】
復号ｐｋ、ｓｋＳ、ＣΨを受け取り、Ψ（Ｓ）＝１であれば、平文ｍを出力する。一方、Ψ（Ｓ）＝０であれば、⊥（何も出力しない）となる。すなわち、秘密鍵ｓｋＳに付与された属性によって、復号の可否が決まる。
ＡＢＥ＿Ｄｅｃ（ｓｋＳ，ＣΨ）→ｍ  ｉｆ  Ψ（Ｓ）＝１，
⊥  ｉｆ  Ψ（Ｓ）＝０
【００２９】
例えば、医師の持つ属性から、復号可能な属性を指定したい。
Ｕ＝｛腫瘍科，内科，専門医，研修医，総合病院，クリニック｝
医師１：Ｓ１＝｛腫瘍科，専門医，総合病院｝
医師２：Ｓ２＝｛内科，専門医，クリニック｝
医師３：Ｓ３＝｛内科，研修医，総合病院｝
【００３０】
各医師は、自身の持つ属性に基づく秘密鍵を、認証機関に発行してもらう。属性ベース暗号化の際には、復号可能な属性のポリシーを定める。
ポリシー１：Ψ１＝｛腫瘍科 and 専門医 and 総合病院｝
ポリシー２：Ψ２＝｛｛腫瘍科 or 内科｝ and 専門医 and ｛総合病院 or クリニック｝｝
【００３１】
ポリシー１が指定された暗号文は医師１に配布（発行）された秘密鍵のみによって復号することができる。ポリシー２が指定された暗号文は、医師１、２に配布（発行）された秘密鍵によって復号することができる。属性ベース暗号化（暗号文ポリシー属性ベース暗号）についても、具体的な構成方法については後述する。
【００３２】
属性ベース暗号化（暗号文ポリシー属性ベース暗号）の具体的な構成方法は、公知の属性ベース暗号の技術を用いればよい。具体的な例として、例えば、以下の文献に開示されている。
Vipul Goyal, Omkant Pandey, Amit Sahai, and Brent Waters.  "Attribute-Based Encryption for Fine-Grained Access Control of Encrypted Data" ACM CCS 2006, pp. 89-96, 2006.
【００３３】
［データ提供システム１の構成］
データ提供システム１は、クラウドストレージ１０、統計解析装置２０（統計解析装置２０−１、２０−２、２０−３、・・・）、病院システム３０（病院システム３０−１、３０−２、・・・）、遺伝子解析装置５０、および認証機関である認証局８０を備える。これらの各構成は、インターネット、通信回線などのネットワークＮＷに接続されている。ＩＤカード４０は、ユーザによって所持され、病院システム３０において用いられる。まず、各構成の概略について説明し、それぞれの詳細な動作については、まとめて後述する。
【００３４】
データ提供システム１を構成する各装置は、ＣＰＵなどの演算処理装置、メモリ、ユーザーインターフェイス、および通信モジュールなどを備えたコンピュータである。ＣＰＵは、メモリに記憶されたプログラムを実行して、以下に説明する各種処理を実行する機能を実現させる。通信モジュールは、制御部の制御によってネットワークＮＷと接続し、ネットワークＮＷに接続された他の装置と情報の送受信を行う。
【００３５】
各装置において実行されるプログラムは、磁気記録媒体、光記録媒体、光磁気記録媒体、半導体メモリなどのコンピュータ読み取り可能な記録媒体に記憶した状態で提供されてもよい。この場合には、各装置は、記録媒体を読み取る装置を備えていればよい。また、各プログラムは、ネットワークＮＷ経由でダウンロードされてもよい。
【００３６】
［クラウドストレージ１０］
クラウドストレージ１０は、制御装置１２およびデータベース（ＤＢ）１４を含む。制御装置１２は、データベース１４の所定の記録領域への各種データの登録、読み出しを制御する。データベース１４は、外部装置から受信した各種データをユーザのＩＤ（後述する患者ＩＤから変換された検体ＩＤ）に関連付けて登録される記憶領域を含む記憶装置を備えている。この例では、データベース１４は、登録されたデータを複数の記憶装置において分散管理している。すなわち、記憶領域とは、一つの記憶装置内に限定されるものではなく、複数の記憶装置に分散されて存在する場合もある。
【００３７】
［統計解析装置２０］
統計解析装置２０は、データベース１４に登録されているゲノム情報の暗号データを用いて、所定の演算を行って解析を行う。この例では、さらにユーザの環境情報の暗号データも解析に用いられる。環境情報とは、例えば、ユーザの年齢、性別、臨床情報（罹患情報、バイタルデータ等）、生活習慣（飲酒歴、喫煙歴等）を含む情報である。これらの情報は、例えば、病院システムにおいてユーザによって登録される。
【００３８】
図示されている統計解析装置２０−１、２０−２、２０−３、・・・は、それぞれ異なる解析者によって用いられているが、これらの装置がもつ機能は上述したとおりであり、大きな違いは無い。したがって、特に統計解析装置２０−１、２０−２、２０−３、・・・を区別して説明する必要が無い場合には、統計解析装置２０としてまとめて説明する。
【００３９】
一方、各解析者には予め属性が割り当てられ、属性に応じた秘密鍵が各統計解析装置２０に配布されている。属性は、例えば、解析者の専門分野（腫瘍科、内科等）および組織の種類（研究機関、民間、公的機関等）の組み合わせとして表される。
【００４０】
［病院システム３０］
病院システム３０は、登録装置３２および復号装置３４を含む。登録装置３２は、ユーザから入力された情報（例えば、環境情報）をクラウドストレージ１０に登録する。また、登録装置３２は、準同型暗号方式で用いる鍵を生成する。生成される鍵は、暗号化に用いる公開鍵、および復号化に用いる秘密鍵である。この例では、秘密鍵は、分散秘密鍵Ｓおよび分散秘密鍵Ｈの２つに分散されて生成される。公開鍵および暗号化された分散秘密鍵Ｓが、クラウドストレージ１０に登録される。また、分散秘密鍵Ｈが、ユーザによって所持されるＩＤカード４０に登録される。この分散秘密鍵Ｈの登録は、例えば、ＩＤカード４０のデータ読み書きが可能な装置を介して実行される。
【００４１】
復号装置３４は、統計解析装置２０によって解析された結果をクラウドストレージ１０から取得して復号化する。復号化の際には、ＩＤカード４０に登録された分散秘密鍵Ｈも使用される。この分散秘密鍵Ｈは、ＩＤカードのデータ読み書きが可能な装置を介して復号装置３４に取得される。
【００４２】
図示されている病院システム３０−１、３０−２、・・・は、それぞれ異なる病院によって用いられているが、これらのシステムがもつ機能は上述したとおりであり、大きな違いは無い。したがって、特に病院システム３０−１、３０−２、・・・を区別して説明する必要が無い場合には、病院システム３０としてまとめて説明する。
【００４３】
一方、病院システム３０を使用する医師には予め属性が割り当てられ、属性に応じた秘密鍵が各医師に配布され復号装置３４に登録されている。属性は、例えば、病院（医師）の専門分野（腫瘍科、内科等）、医師の種類（専門医、研修医等）および組織の種類（総合病院、クリニック等）の組み合わせとして表される。なお、属性に応じた秘密鍵は、復号装置３４に登録されるのではなく、医師が所持するＩＤカード等に登録されてもよい。このようなＩＤカードは認証局８０から発行されればよい。また、ＩＤカードのデータ読み書きが可能な装置を介して復号装置３４からＩＤカードに秘密鍵が登録されてもよい。医師が所持するＩＤカードに秘密鍵が登録される場合、復号装置３４は、このＩＤカードを読み取って秘密鍵を取得する。
【００４４】
［ＩＤカード４０］
ＩＤカード４０は、不揮発性メモリと外部装置と接続する接続部とを備える。上述したように、ＩＤカード４０は、登録装置３２に接続されて、不揮発性メモリに分散秘密鍵Ｈが登録される。なお、登録装置３２への接続は、有線接続でも無線接続でもよい。
【００４５】
［遺伝子解析装置５０］
遺伝子解析装置５０は、ユーザの生体サンプルを用いて遺伝子解析を行うことによってゲノム情報を生成する。ユーザの生体サンプルは、ユーザから生体サンプルを取得した病院等から遺伝子解析装置５０が設置されている遺伝子解析会社に送付される。遺伝子解析装置５０は、生成したゲノム情報を暗号化して、クラウドストレージ１０に登録する。
【００４６】
［認証局８０］
認証局８０は、属性ベース暗号のマスター鍵（システム公開鍵、マスター秘密鍵）を生成する。この例では、マスター鍵は、解析者の属性に対応した暗号処理をするための鍵と、医師の属性に対応した暗号処理をするための鍵との２種類が生成される。マスター公開鍵は、クラウドストレージ１０に登録される。マスター秘密鍵は、解析者または医師の依頼に基づき、その属性に応じた秘密鍵の生成に用いられる。属性に応じた秘密鍵は、上述の通り、依頼主の解析者の統計解析装置２０に登録され、または、依頼主の医師が利用する登録装置３２に登録される。
【００４７】
［データ提供システム１の動作］
データ提供システム１は、大きく分けてセットアップ処理、保管委託処理および解析委託処理を含む。これらの処理が終了すると、ユーザのゲノム情報を解析して得られた情報を復号化してユーザが取得できるようになる。
【００４８】
［セットアップ処理］
セットアップ処理について説明する。セットアップ処理は、鍵配布処理および分散秘密鍵およびポリシーの登録処理を含む。また、鍵配布処理には、マスター鍵の生成処理、復号者属性付秘密鍵の配布処理、解析者属性付秘密鍵の配布処理を含む。属性付秘密鍵の配布処理は、解析者または医師（復号者）からの依頼に基づいて実行される。そのため、新たにこのシステムに参入した解析者または医師が出現する度に、鍵の配布処理が実行される。なお、マスター鍵の生成処理は、あるシステム全体で使用するため、何度も生成されることはない。
【００４９】
図２は、本発明の第１実施形態におけるマスター鍵の生成処理を説明する通信フロー図である。認証局８０は、マスター鍵を生成する（Ｓ１０１）。この例では、解析者属性に基づく属性ベース暗号方式（以下、解析属性ベース暗号方式という場合がある）の暗号化のシステム公開鍵、マスター秘密鍵（ｍｐｋＡｎａｌ，ｍｓｋＡｎａｌ）と、復号者属性に基づく属性ベース暗号方式（以下、復号属性ベース暗号方式という場合がある）の暗号化のシステム公開鍵、マスター秘密鍵（ｍｐｋＲｅｃ，ｍｓｋＲｅｃ）とが生成される。それぞれのシステム公開鍵（ｍｐｋＡｎａｌ，ｍｐｋＲｅｃ）は、クラウドストレージ１０に送信される（Ｓ１０３）。クラウドストレージ１０は、受信したシステム公開鍵（ｍｐｋＡｎａｌ，ｍｐｋＲｅｃ）をデータベース１４の所定の記憶領域に登録する（Ｓ１０５）。
【００５０】
図３は、本発明の第１実施形態における復号者属性付秘密鍵の配布処理を説明する通信フロー図である。この配布処理は、病院システム３０を利用する医師が、自身の属性に基づいて秘密鍵発行申請をする場合に実行される。この例では、病院システム３０の復号装置３４から秘密鍵発行申請が送信される（Ｓ１１１）。秘密鍵発行申請には、申請者である医師の属性を証明するデータ等が送信される。
【００５１】
認証局８０は、秘密鍵発行申請を受信すると、マスター秘密鍵（ｍｓｋＲｅｃ）を用いて、医師の属性に基づく復号者属性付秘密鍵（ｓｋＳＨｙＲｅｃ）を生成し（Ｓ１１３）、復号装置３４に送信する（Ｓ１１５）。「ｙ（＝１，２，・・・）」は申請者（医師）を示すインデックスである。例えば、ｙ＝１は病院システム３０−１に対応し、ｙ＝２は病院システム３０−２に対応する。
【００５２】
復号装置３４は、復号者属性付秘密鍵（ｓｋＳＨｙＲｅｃ）を受信して、復号装置３４のメモリに登録する（Ｓ１１７）。なお、医師のＩＤカード等に登録してもよいし、別のメモリ等に登録してもよい。また、秘密鍵発行申請は、復号装置３４からの申請ではなく、書類等による申請であってもよい。この場合には、発行された復号者属性付秘密鍵（ｓｋＳＨｙＲｅｃ）は、メモリまたはＩＤカード等に登録された状態で申請者に配布されてもよい。
【００５３】
図４は、本発明の第１実施形態における解析者属性付秘密鍵の配布処理を説明する通信フロー図である。この配布処理は、統計解析装置２０を利用する解析者が、自身の属性に基づいて秘密鍵発行申請をする場合に実行される。この例では、統計解析装置２０から秘密鍵発行申請が送信される（Ｓ１２１）。秘密鍵発行申請には、申請者である解析者の属性を証明するデータ等が送信される。
【００５４】
認証局８０は、秘密鍵発行申請を受信すると、マスター秘密鍵（ｍｓｋＡｎａｌ）を用いて、解析者の属性に基づく解析者属性付秘密鍵（ｓｋＳＡｘＡｎａｌ）を生成し（Ｓ１２３）、統計解析装置２０に送信する（Ｓ１２５）。「ｘ（＝１，２，・・・）」は申請者（解析者）を示すインデックスである。例えば、ｘ＝１は統計解析装置２０−１に対応し、ｘ＝２は統計解析装置２０−２に対応する。
【００５５】
統計解析装置２０は、解析者属性付秘密鍵（ｓｋＳＡｘＡｎａｌ）を受信して、統計解析装置２０のメモリに登録する（Ｓ１２７）。なお、秘密鍵発行申請は、統計解析装置２０のからの申請ではなく、書類等による申請であってもよい。この場合には、発行された解析者属性付秘密鍵（ｓｋＳＡｘＡｎａｌ）は、メモリまたはＩＤカード等に登録された状態で申請者に配布されてもよい。
【００５６】
図５は、鍵配布処理が完了した後におけるデータ提供システムの各装置に記憶されたデータを示す図である。図示した統計解析装置２０および病院システム３０の全てから秘密鍵発行申請がされたものとする。各構成に登録されたデータは、各構成の近傍に記している。また、鍵配布処理において追加されたデータは破線で囲んでいる。図５においては、全てのデータが新たに追加されているため、全てのデータが破線で囲まれている。
【００５７】
続いて、ユーザの生体サンプルの送付に伴い、病院システム３０において実行される処理について説明する。この処理は、分散秘密鍵の生成および登録処理、およびポリシーの登録処理を含む。
【００５８】
図６は、本発明の第１実施形態における分散秘密鍵およびポリシーの登録処理を説明する通信フロー図である。ユーザはＩＤカード４０を登録装置３２に接続して、患者ＩＤ（ＩＤｉ）を登録装置３２に送信する（Ｓ２０１）。ここで「ｉ（＝１，２，・・・）」は、ユーザ（患者）を示すインデックスである。
【００５９】
登録装置３２は、患者ＩＤ（ＩＤｉ）を変換して検体ＩＤ（ＩＤｊ）を生成する（Ｓ２０３）。検体ＩＤは、患者ＩＤに対して一方向性関数πを用いて変換して生成される。すなわち、検体ＩＤは、ＩＤｊ＝π（ｉ）として生成される。このようにして生成された検体ＩＤは、ユーザ個人を特定できないようにしつつ、識別子として機能させることができる。
【００６０】
登録装置３２は、準同型暗号方式で暗号化するための公開鍵（ｐｋｉ）、およびこの公開鍵で暗号化されて得られた暗号データを復号化するための秘密鍵（ｓｋｉ）を生成する。この秘密鍵（ｓｋｉ）は、病院とユーザとで分散して管理するために、２つの秘密鍵（分散秘密鍵Ｓ（ｓｋｉＳ）、分散秘密鍵Ｈ（ｓｋｉＨ））に分割される（Ｓ２０５）。登録装置３２は、分散秘密鍵Ｓ（ｓｋｉＳ）をＩＤカード４０に送信し（Ｓ２０７）、ＩＤカード４０のメモリに登録される（Ｓ２０９）。なお、秘密鍵をさらに多くの分散秘密鍵に分割してもよく、その場合には、複数のＩＤカードのメモリに、それぞれ異なる分散秘密鍵が登録されてもよい。
【００６１】
登録装置３２は、ユーザからポリシーの設定の入力を受け付ける（Ｓ２１１）。この例では、ポリシーは、解析者ポリシー（ΨｉＡｎａｌ）と復号者ポリシー（ΨｉＲｅｃ）とを含む。解析者ポリシー（ΨｉＡｎａｌ）は、統計解析装置２０に配布された解析者属性付秘密鍵（ｓｋＳＡｘＡｎａｌ）のうち、復号化を実行可能な属性が付与された秘密鍵を特定する情報である。ここでの復号化の対象となる暗号データは、システム公開鍵（ｍｐｋＡｎａｌ）によって暗号化されたデータである。
【００６２】
一方、復号者ポリシー（ΨｉＲｅｃ）は、復号装置３４に配布された復号者属性付秘密鍵（ｓｋＳＨｙＲｅｃ）のうち、復号化を実行可能な属性が付与された秘密鍵を特定する情報である。ここでの復号化の対象となる暗号データは、システム公開鍵（ｍｐｋＲｅｃ）によって暗号化されたデータである。
【００６３】
登録装置３２は、検体ＩＤ（ＩＤｊ）、公開鍵（ｐｋｉ）、分散秘密鍵Ｈ（ｓｋｉＨ）、解析者ポリシー（ΨｉＡｎａｌ）、および復号者ポリシー（ΨｉＲｅｃ）をクラウドストレージ１０に送信する（Ｓ２１３）。クラウドストレージ１０は、受信した分散秘密鍵Ｈ（ｓｋｉＨ）を、復号者ポリシー（ΨｉＲｅｃ）およびシステム公開鍵（ｍｐｋＲｅｃ）によって属性ベース暗号方式（復号属性ベース暗号方式）で暗号化する。クラウドストレージ１０は、この暗号化によって秘密鍵暗号データ（ＡＢＥ＿Ｅｎｃ（ｍｐｋＲｅｃ，ｓｋｉＨ，ΨｉＲｅｃ））を生成する（Ｓ２１５）。なお、暗号化は、登録装置３２において実行されてもよい。この場合には、登録装置３２は、システム公開鍵（ｍｐｋＲｅｃ）をクラウドストレージ１０から読み出して暗号化に使用する。
【００６４】
クラウドストレージ１０は、秘密鍵暗号データ（ＡＢＥ＿Ｅｎｃ（ｍｐｋＲｅｃ，ｓｋｉＨ，ΨｉＲｅｃ））、公開鍵（ｐｋｉ）、解析者ポリシー（ΨｉＡｎａｌ）、および復号者ポリシー（ΨｉＲｅｃ）をデータベース１４の所定の記憶領域に登録する（Ｓ２１７）。これらのデータは、検体ＩＤ（ＩＤｊ）に関連付けて登録される。
【００６５】
図７は、セットアップ処理が完了した後におけるデータ提供システムの各装置に記憶されたデータを示すブロック図である。分散秘密鍵の生成および登録処理、およびポリシーの登録処理において追加されたデータ、すなわち、図５に示す状態から更新されたデータは破線で囲んでいる。なお、復号装置３４において生成された分散秘密鍵Ｈ（ｓｋｉＨ）は、クラウドストレージ１０へ送信された際に、復号装置３４から削除されることが望ましい。
【００６６】
続いて、ユーザの生体サンプルを送付してゲノム情報の生成、データ保管を委託する処理（保管委託処理）について説明する。保管委託処理は、環境情報の登録処理およびゲノム情報の登録処理を含む。
【００６７】
図８は、本発明の第１実施形態における環境情報の登録処理を説明する通信フロー図である。ユーザはＩＤカード４０を登録装置３２に接続して、患者ＩＤ（ＩＤｉ）を登録装置３２に送信し（Ｓ３０１）、これを変換して検体ＩＤ（ＩＤｊ）を生成する（Ｓ３０３）。この処理は、図６に示すＳ２０１、Ｓ２０３と同様の処理であるため説明を省略する。なお、図６のフローに引き続き実施する場合には、Ｓ３０１、Ｓ３０３は不要である。
【００６８】
登録装置３２は、ユーザから環境情報（ｚｉ）の入力を受け付ける（Ｓ３０５）。ｚｉ＝（ｚｉ１，ｚｉ２，・・・ｚｉｄ’）∈Ｚｄ’とする。ｚｉｋ＝ｐは、患者ｉ（患者ＩＤｉ）のｋ番目の環境要因がｐであることを示す。環境要因とは、上述した通り、年齢、性別、臨床情報（罹患情報、バイタルデータ等）、生活習慣（飲酒歴、喫煙歴等）等を示す。
【００６９】
登録装置３２は、クラウドストレージ１０から公開鍵（ｐｋｉ）を読み出して（Ｓ３０７）、公開鍵（ｐｋｉ）を用いて環境情報（ｚｉ）を準同型暗号方式で暗号化して、環境暗号データ（Ｅｐｋｉ（ｚｉｋ））を生成する（Ｓ３０９）。ここで、「ｋ（＝１，２，・・，ｄ’）」は、環境要因を示すインデックスである。なお、環境情報（ｚｉ）は、クラウドストレージ１０において準同型暗号方式で暗号化されてもよい。
【００７０】
登録装置３２は、検体ＩＤ（ＩＤｊ）、環境暗号データ（Ｅｐｋｉ（ｚｉｋ））をクラウドストレージ１０に送信する（Ｓ３１１）。クラウドストレージ１０は、受信した環境暗号データ（Ｅｐｋｉ（ｚｉｋ））を、解析者ポリシー（ΨｉＡｎａｌ）およびシステム公開鍵（ｍｐｋＡｎａｌ）によって属性ベース暗号方式（解析属性ベース暗号方式）で暗号化する。クラウドストレージ１０は、この暗号化によって環境属性暗号データ（ＡＢＥ＿Ｅｎｃ（ｍｐｋＡｎａｌ，Ｅｐｋｉ（ｚｉｋ），ΨｉＡｎａｌ））を生成する（Ｓ３１３）。なお、暗号化は、登録装置３２において実行されてもよい。この場合には、登録装置３２は、システム公開鍵（ｍｐｋＡｎａｌ）をクラウドストレージ１０から読み出して暗号化に使用する。
【００７１】
クラウドストレージ１０は、環境属性暗号データ（ＡＢＥ＿Ｅｎｃ（ｍｐｋＡｎａｌ，Ｅｐｋｉ（ｚｉｋ），ΨｉＡｎａｌ））をデータベース１４の所定の記憶領域に登録する（Ｓ３１５）。このとき、これらのデータは、検体ＩＤ（ＩＤｊ）に関連付けて登録される。上記処理とは別に、病院等で採取されたユーザの生体サンプル（ｇｉ）を検体ＩＤ（ＩＤｊ）とともに遺伝子解析装置５０（遺伝子解析会社）に送付する（Ｓ３２０）。
【００７２】
図９は、本発明の第１実施形態におけるゲノム情報の登録処理を説明する通信フロー図である。遺伝子解析装置５０は、送付された生体サンプル（ｇｉ）に対して遺伝子解析を実行し（Ｓ３２１）、その結果に応じたゲノム情報（ｘｉ）を生成する（Ｓ３２３）。ｘｉ＝（ｘｉ１，ｘｉ２，・・・ｘｉｄ）∈｛０，１｝ｄとする。ｘｉｋ＝１は、患者ｉ（患者ＩＤｉ）のｋ番目の遺伝的要因を保持していることを示す。一方、ｘｉｋ＝０は、患者ｉ（患者ＩＤｉ）のｋ番目の遺伝的要因を保持していないことを示す。
【００７３】
遺伝子解析装置５０は、クラウドストレージ１０から公開鍵（ｐｋｉ）を読み出して（Ｓ３２５）、公開鍵（ｐｋｉ）を用いてゲノム情報（ｘｉ）を準同型暗号方式で暗号化して、ゲノム暗号データ（Ｅｐｋｉ（ｘｉｋ））を生成する（Ｓ３２７）。ここで、「ｋ（＝１，２，・・，ｄ）」は、遺伝的要因を示すインデックスである。なお、ゲノム情報（ｘｉ）は、クラウドストレージ１０において準同型暗号方式で暗号化されてもよい。また、遺伝子解析装置５０からはゲノム情報（ｘｉ）は削除される。
【００７４】
遺伝子解析装置５０は、検体ＩＤ（ＩＤｊ）、ゲノム暗号データ（Ｅｐｋｉ（ｘｉｋ））をクラウドストレージ１０に送信する（Ｓ３２９）。クラウドストレージ１０は、受信したゲノム暗号データ（Ｅｐｋｉ（ｘｉｋ））を、解析者ポリシー（ΨｉＡｎａｌ）およびシステム公開鍵（ｍｐｋＡｎａｌ）によって属性ベース暗号方式（解析属性ベース暗号方式）で暗号化する。クラウドストレージ１０は、この暗号化によってゲノム属性暗号データ（ＡＢＥ＿Ｅｎｃ（ｍｐｋＡｎａｌ，Ｅｐｋｉ（ｘｉｋ），ΨｉＡｎａｌ））を生成する（Ｓ３３１）。なお、暗号化は、登録装置３２において実行されてもよい。この場合には、遺伝子解析装置５０は、システム公開鍵（ｍｐｋＡｎａｌ）および解析者ポリシー（ΨｉＡｎａｌ）をクラウドストレージ１０から読み出して暗号化に使用する。
【００７５】
クラウドストレージ１０は、ゲノム属性暗号データ（ＡＢＥ＿Ｅｎｃ（ｍｐｋＡｎａｌ，Ｅｐｋｉ（ｘｉｋ），ΨｉＡｎａｌ））をデータベース１４の所定の記憶領域に登録する（Ｓ３３３）。このデータは、検体ＩＤ（ＩＤｊ）に関連付けて登録される。
【００７６】
図１０は、保管委託処理が完了した後におけるデータ提供システムの各装置に記憶されたデータの内容を示す図である。保管委託処理において追加されたデータ、すなわち、図７に示す状態から更新されたデータは破線で囲んでいる。なお、遺伝子解析装置５０において生成されたゲノム暗号データ（Ｅｐｋｉ（ｘｉｋ））は、クラウドストレージ１０へ送信された際に、遺伝子解析装置５０から削除される。
【００７７】
続いて、データベース１４に登録されたゲノム属性暗号データ（ＡＢＥ＿Ｅｎｃ（ｍｐｋＡｎａｌ，Ｅｐｋｉ（ｘｉｋ），ΨｉＡｎａｌ））および環境属性暗号データ（ＡＢＥ＿Ｅｎｃ（ｍｐｋＡｎａｌ，Ｅｐｋｉ（ｚｉｋ），ΨｉＡｎａｌ））を用いて、ゲノム情報の解析を委託する処理（解析委託処理）について説明する。解析委託処理は、解析結果の登録処理を含む。
【００７８】
図１１は、本発明の第１実施形態における解析結果の登録処理を説明する通信フロー図である。登録装置３２からゲノム情報の解析対象を示す検体ＩＤ（ＩＤｊ）が送信される（Ｓ４０１）。解析対象を指定する方法は、登録装置３２からの送信に限らず、検体ＩＤ（ＩＤｊ）を特定できる方法であれば他の方法であってもよい。統計解析装置２０は、検体ＩＤ（ＩＤｊ）に関連付けられたゲノム属性暗号データ（ＡＢＥ＿Ｅｎｃ（ｍｐｋＡｎａｌ，Ｅｐｋｉ（ｘｉｋ），ΨｉＡｎａｌ））および環境属性暗号データ（ＡＢＥ＿Ｅｎｃ（ｍｐｋＡｎａｌ，Ｅｐｋｉ（ｚｉｋ），ΨｉＡｎａｌ））をクラウドストレージ１０から読み出す（Ｓ４０３）。
【００７９】
統計解析装置２０は、ゲノム属性暗号データ（ＡＢＥ＿Ｅｎｃ（ｍｐｋＡｎａｌ，Ｅｐｋｉ（ｘｉｋ），ΨｉＡｎａｌ））および環境属性暗号データ（ＡＢＥ＿Ｅｎｃ（ｍｐｋＡｎａｌ，Ｅｐｋｉ（ｚｉｋ），ΨｉＡｎａｌ））を復号化する（Ｓ４０５）。復号化の際には、予め認証局８０から配布されていた解析者属性付秘密鍵（ｓｋＳＡｘＡｎａｌ）を用いる。この秘密鍵に付与された解析者の属性が、解析者ポリシー（ΨｉＡｎａｌ）の条件を満たす場合には、復号化が可能である一方、条件を満たさない場合には、復号化ができない。このように、ある解析者に対して病院が解析依頼を出したとしても、ユーザが設定したポリシーの条件を満たす属性を有する解析者の統計解析装置２０でなければ、復号化することができない。
【００８０】
復号化すると、ゲノム暗号データ（Ｅｐｋｉ（ｘｉｋ））と環境暗号データ（Ｅｐｋｉ（ｚｉｋ））とが得られる。統計解析装置２０は、ゲノム暗号データ（Ｅｐｋｉ（ｘｉｋ））と環境暗号データ（Ｅｐｋｉ（ｚｉｋ））とを用いて、統計解析処理を行う（Ｓ４０７）。統計解析処理においては、統計解析装置２０は、暗号化したままの状態で統計解析ｆの演算を行い、演算結果として解析結果暗号データｃｉ＝Ｅｐｋｉ（ｆ（ｘｉ，ｚｉ））を得る。この例のように準同型暗号を用い、線形式により疾患リスク評価を行う場合には、例えば、以下の式（１）により演算可能である。なお、ｗｘ、ｗｚは、解析者（統計解析装置２０）が予め保持しているパラメータである。
【００８１】
【数１】
2016103960.tif 000003
【００８２】
このように、統計解析装置２０は、解析属性ベース暗号方式で暗号化されたデータを復号化するものの、これによって得られた準同型暗号方式の暗号データのまま演算をする。また、統計解析装置２０は、この暗号データを復号化するための鍵（分散秘密鍵Ｓ（ｓｋｉＳ）、分散秘密鍵Ｈ（ｓｋｉＨ））を入手することはできないため、ゲノム情報および環境情報の内容を知ることはできない。なお、統計解析処理は、このような演算方法に限らず、様々な演算方法をとり得る。また、統計解析装置２０は、環境暗号データ（Ｅｐｋｉ（ｚｉｋ））を用いずに、ゲノム暗号データ（Ｅｐｋｉ（ｘｉｋ））に対して、予め決められた演算処理を施す用意してもよい。
【００８３】
統計解析装置２０は、検体ＩＤ（ＩＤｊ）および解析結果暗号データ（ｃｉ）をクラウドストレージ１０に送信する（Ｓ４０９）。クラウドストレージ１０は、受信した解析結果暗号データ（ｃｉ）を、復号者ポリシー（ΨｉＲｅｃ）およびシステム公開鍵（ｍｐｋＲｅｃ）によって復号属性ベース暗号方式で暗号化する。クラウドストレージ１０は、この暗号化によって解析結果属性暗号データ（ＡＢＥ＿Ｅｎｃ（ｍｐｋＲｅｃ，ｃｉ，ΨｉＲｅｃ））を生成する（Ｓ４１１）。なお、暗号化は、統計解析装置２０において実行されてもよい。この場合には、統計解析装置２０は、システム公開鍵（ｍｐｋＲｅｃ）および復号者ポリシー（ΨｉＲｅｃ）をクラウドストレージ１０から読み出して暗号化に使用する。そして、解析結果属性暗号データ（ＡＢＥ＿Ｅｎｃ（ｍｐｋＲｅｃ，ｃｉ，ΨｉＲｅｃ））が統計解析装置２０の演算結果として送信される。
【００８４】
クラウドストレージ１０は、解析結果属性暗号データ（ＡＢＥ＿Ｅｎｃ（ｍｐｋＲｅｃ，ｃｉ，ΨｉＲｅｃ））をデータベース１４の所定の記憶領域に登録する（Ｓ４１３）。このデータは、検体ＩＤ（ＩＤｊ）に関連付けて登録される。
【００８５】
図１２は、解析委託処理が完了した後におけるデータ提供システムの各装置に記憶されたデータの内容を示す図である。解析委託処理において追加されたデータ、すなわち、図１０に示す状態から更新されたデータは破線で囲んでいる。なお、統計解析装置２０において生成された解析結果暗号データ（ｃｉ）は、クラウドストレージ１０へ送信された際に、統計解析装置２０から削除される。
【００８６】
続いて、データベース１４に登録された解析結果属性暗号データ（ＡＢＥ＿Ｅｎｃ（ｍｐｋＲｅｃ，ｃｉ，ΨｉＲｅｃ））および秘密鍵暗号データ（ＡＢＥ＿Ｅｎｃ（ｍｐｋＲｅｃ，ｓｋｉＨ，ΨｉＲｅｃ））を用いた解析結果の復号処理について説明する。
【００８７】
図１３は、本発明の第１実施形態における解析結果の復号処理を説明する通信フロー図である。ユーザはＩＤカード４０を復号装置３４に接続して、患者ＩＤ（ＩＤｉ）を復号装置３４に送信し（Ｓ５０１）、これを変換して検体ＩＤ（ＩＤｊ）を生成する（Ｓ５０３）。復号装置３４は、生成した検体ＩＤ（ＩＤｊ）に基づく、これに関連付けられた解析結果属性暗号データ（ＡＢＥ＿Ｅｎｃ（ｍｐｋＲｅｃ，ｃｉ，ΨｉＲｅｃ））および秘密鍵暗号データ（ＡＢＥ＿Ｅｎｃ（ｍｐｋＲｅｃ，ｓｋｉＨ，ΨｉＲｅｃ））をクラウドストレージ１０から読み出す（Ｓ５０５）。
【００８８】
復号装置３４は、まず、解析結果属性暗号データ（ＡＢＥ＿Ｅｎｃ（ｍｐｋＲｅｃ，ｃｉ，ΨｉＲｅｃ））および秘密鍵暗号データ（ＡＢＥ＿Ｅｎｃ（ｍｐｋＲｅｃ，ｓｋｉＨ，ΨｉＲｅｃ））を復号化する（Ｓ５０７）。復号化の際には、予め認証局８０から配布されていた復号者属性付秘密鍵（ｓｋＳＨｙＲｅｃ）を用いる。この秘密鍵に付与された復号者の属性が、復号者ポリシー（ΨｉＲｅｃ）の条件を満たす場合には、復号化が可能である一方、条件を満たさない場合には、復号化ができない。このように、ある病院において復号しようとしても、ユーザが設定したポリシーの条件を満たす属性を有する医師が用いる復号装置３４でなければ、復号化することができない。
【００８９】
復号化すると、解析結果暗号データ（ｃｉ＝Ｅｐｋｉ（ｆ（ｘｉ，ｚｉ）））と分散秘密鍵Ｈ（ｓｋｉＨ）とが得られる。復号装置３４は、ＩＤカード４０に登録された分散秘密鍵Ｓ（ｓｋｉＳ）を、ＩＤカード４０から読み出す（Ｓ５０９）。復号装置３４は、解析結果暗号データ（ｃｉ＝Ｅｐｋｉ（ｆ（ｘｉ，ｚｉ）））を復号化する（Ｓ５１１）。復号化すると、解析結果（ｆ（ｘｉ，ｚｉ））が得られる。復号化の際には、復号装置３４（または医師のＩＤカード）に登録された分散秘密鍵Ｈ（ｓｋｉＨ）、およびＩＤカード４０から読み出した分散秘密鍵Ｓ（ｓｋｉＳ）を用いる。
【００９０】
そして、復号装置３４は、解析結果（ｆ（ｘｉ，ｚｉ））を外部記録媒体に出力する（Ｓ５１３）。外部記録媒体は、ＩＤカード４０のメモリ、外部メモリ、紙などの記録媒体であればよい。ユーザまたは医師は、この外部記録媒体を介して解析結果を知ることができる。
【００９１】
［データ提供システム１の機能構成］
続いて、上記の各種処理を実行するために、データ提供システム１の各装置において実現される機能について説明する。上述した通り、各装置においては、ＣＰＵなどによるプログラムの実行によって、以下に説明する各機能が実現される。
【００９２】
図１４は、本発明の第１実施形態におけるデータ提供システムの機能を説明するブロック図である。
［クラウドストレージ１０の機能構成］
クラウドストレージ１０の制御装置１２では、登録制御部１２１および属性ベース暗号化部１２３が実現される。クラウドストレージ１０のデータベース１４では、システム公開鍵記憶領域１４１およびＩＤ別記憶領域１４３が実現される。クラウドストレージ１０において、通信部１６が実現される。通信部１６は、制御装置１２をネットワークＮＷに接続して各種情報の送受信をするためのインターフェイスである。
【００９３】
登録制御部１２１は、各種情報をデータベース１４の所定の記憶領域（システム公開鍵記憶領域１４１、ＩＤ別記憶領域１４３）に登録する一方、データベース１４に登録された各種情報を読み出して、各装置からの要求に応じて送信する。登録制御部１２１による処理は、Ｓ１０５、Ｓ２１７、Ｓ３０７、Ｓ３１５、Ｓ３２５、Ｓ３３３、Ｓ４０３、Ｓ４１３、Ｓ５０５に対応する。
【００９４】
属性ベース暗号化部１２３は、所定の情報に対して、属性ベース暗号方式で暗号化をする。所定の情報とは、分散秘密鍵Ｈ（ｓｋｉＨ）、環境情報（ｚｉ）、解析結果（ｃｉ＝ｆ（ｘｉ，ｚｉ））である。属性ベース暗号化部１２３による処理は、Ｓ２１５、Ｓ３１３、Ｓ４１１の各処理に対応する。
【００９５】
システム公開鍵記憶領域１４１は、登録制御部１２１によって登録されるシステム公開鍵（ｍｐｋＡｎａｌ）を記憶する領域である。ＩＤ別記憶領域１４３は、登録制御部１２１によって検体ＩＤ（ＩＤｊ）に関連付けられて登録される公開鍵（ｐｋｉ）、解析者ポリシー（ΨｉＡｎａｌ）、復号者ポリシー（ΨｉＲｅｃ）、秘密鍵暗号データ（ＡＢＥ＿Ｅｎｃ（ｍｐｋＲｅｃ，ｓｋｉＨ，ΨｉＲｅｃ））、ゲノム属性暗号データ（ＡＢＥ＿Ｅｎｃ（ｍｐｋＡｎａｌ，Ｅｐｋｉ（ｘｉｋ），ΨｉＡｎａｌ））、環境属性暗号データ（ＡＢＥ＿Ｅｎｃ（ｍｐｋＡｎａｌ，Ｅｐｋｉ（ｚｉｋ），ΨｉＡｎａｌ））、および解析結果属性暗号データ（ＡＢＥ＿Ｅｎｃ（ｍｐｋＲｅｃ，ｃｉ，ΨｉＲｅｃ））を記憶する領域である。
【００９６】
［統計解析装置２０の機能構成］
統計解析装置２０では、統計解析装置２０をネットワークＮＷと接続して各種情報の送受信をするための通信部２０１、秘密鍵記憶部２０３、属性ベース復号化部２０５、および演算部２０７が実現される。秘密鍵記憶部２０３は、解析者属性付秘密鍵（ｓｋＳＡｘＡｎａｌ）を記憶する。
【００９７】
属性ベース復号化部２０５は、属性ベース暗号方式で暗号された所定の暗号データを復号化する。所定の暗号データとは、ゲノム属性暗号データ（ＡＢＥ＿Ｅｎｃ（ｍｐｋＡｎａｌ，Ｅｐｋｉ（ｘｉｋ），ΨｉＡｎａｌ））および環境属性暗号データ（ＡＢＥ＿Ｅｎｃ（ｍｐｋＡｎａｌ，Ｅｐｋｉ（ｚｉｋ），ΨｉＡｎａｌ））である。属性ベース復号化部２０５による処理は、Ｓ４０５の処理に対応する。
【００９８】
演算部２０７は、属性ベース復号化部２０５によって復号化されたデータ（ゲノム暗号データ（Ｅｐｋｉ（ｘｉｋ））および環境暗号データ（Ｅｐｋｉ（ｚｉｋ）））を用いて、統計解析処理を行う。演算部２０７による処理は、Ｓ４０７の処理に対応する。
【００９９】
［病院システム３０の機能構成］
病院システム３０の登録装置３２では、鍵生成部３２１、ポリシー設定部３２３、環境情報生成部３２５および準同型暗号化部３２７が実現される。病院システム３０の復号部３４では、秘密鍵記憶部３４１、属性ベース復号化部３４３、準同型復号化部３４５および解析結果出力部３４７が実現される。また、病院システム３０において、カード通信部３６および通信部３８が実現される。カード通信部３６は、ＩＤカード４０を含む外部装置を、登録装置３２および復号装置３４に接続して各種情報の送受信をするためのインターフェイスである。通信部３８は、登録装置３２および復号装置３４をネットワークＮＷに接続して各種情報の送受信をするためのインターフェイスである。
【０１００】
鍵生成部３２１は、準同型暗号方式における公開鍵（ｐｋｉ）および秘密鍵（ｓｋｉ）（分散秘密鍵Ｓ（ｓｋｉＳ）、分散秘密鍵Ｈ（ｓｋｉＨ））を生成する。鍵生成部３２１における処理は、Ｓ２０５に対応する。ポリシー設定部３２３は、ユーザからの指示によって、解析者ポリシー（ΨｉＡｎａｌ）および復号者ポリシー（ΨｉＲｅｃ）を設定する。ポリシー設定部３２３の処理は、Ｓ２１１に対応する。
【０１０１】
環境情報生成部３２５は、ユーザの指示に応じて環境情報（ｚｉ）を生成する。環境情報生成部３２５における処理は、Ｓ３０５に対応する。準同型暗号化部３２７は、公開鍵（ｐｋｉ）をクラウドストレージ１０から読み出して、所定の情報に対して、準同型暗号方式で暗号化をする。所定の情報とは、環境情報（ｚｉ）である。準同型暗号化部３２７における処理は、Ｓ３０７、Ｓ３０９に対応する。
【０１０２】
秘密鍵記憶部３４１は、認証局８０から配布される復号者属性付秘密鍵（ｓｋＳＨｙＲｅｃ）を記憶する。属性ベース復号化部３４３は、属性ベース暗号方式で暗号された所定の暗号データを復号化する。所定の暗号データとは、解析結果属性暗号データ（ＡＢＥ＿Ｅｎｃ（ｍｐｋＲｅｃ，ｃｉ，ΨｉＲｅｃ））および秘密鍵暗号データ（ＡＢＥ＿Ｅｎｃ（ｍｐｋＲｅｃ，ｓｋｉＨ，ΨｉＲｅｃ））である。属性ベース復号化部３４３による処理は、Ｓ５０７に対応する。
【０１０３】
準同型復号化部３４５は、準同型暗号方式で暗号された所定の暗号データを復号化する。所定の暗号データとは、解析結果暗号データ（ｃｉ＝Ｅｐｋｉ（ｆ（ｘｉ，ｚｉ）））である。この解析結果暗号データ（ｃｉ＝Ｅｐｋｉ（ｆ（ｘｉ，ｚｉ）））は、属性ベース復号化部３４３によって得られたデータである。準同型復号化部３４５による処理は、Ｓ５１１である。解析結果出力部３４７は、解析結果（ｆ（ｘｉ，ｚｉ））を外部記録媒体に出力する。解析結果（ｆ（ｘｉ，ｚｉ））は、準同型復号化部３４５によって得られたデータである。解析結果出力部３４７による処理は、Ｓ５１３に対応する。
【０１０４】
［ＩＤカード４０の機能構成］
ＩＤカード４０では、カード通信部３６と接続して各種情報の送受信をするための通信部４０１、秘密鍵記憶部４０３、患者ＩＤ記憶部４０５が実現される。秘密鍵記憶部４０３は、秘密鍵生成部３２１によって生成された分散秘密鍵Ｓ（ｓｋｉＳ）を記憶する。患者ＩＤ記憶部４０５は、患者ＩＤ（ＩＤｉ）を記憶する。
【０１０５】
［遺伝子解析装置５０の機能構成］
遺伝子解析装置５０では、遺伝子解析装置５０をネットワークＮＷと接続して各種情報の送受信をするための通信部５０１、遺伝子解析部５０３、および準同型暗号化部５０５が実現される。遺伝子解析部５０３は、生体サンプル（ｇｉ）を遺伝子解析してゲノム情報（ｘｉ）を生成する。遺伝子解析部５０３における処理は、Ｓ３２１、Ｓ３２３に対応する。準同型暗号化部５０５は、公開鍵（ｐｋｉ）をクラウドストレージ１０から読み出して、所定の情報に対して、準同型暗号方式で暗号化をする。所定の情報とは、ゲノム情報（ｘｉ）である。準同型暗号化部５０５における処理は、Ｓ３２５、Ｓ３２７に対応する。
【０１０６】
［認証局８０の機能構成］
認証局８０では、認証局８０をネットワークＮＷと接続して各種情報の送受信をするための通信部８０１、マスター鍵生成部８０３、マスター鍵記憶部８０５、および秘密鍵生成部８０７が実現される。マスター鍵生成部８０３は、システム全体で用いられるマスター鍵を生成する。このマスター鍵は、解析者属性に基づく属性ベース暗号方式のシステム公開鍵（ｍｐｋＡｎａｌ）、マスター秘密鍵（ｍｓｋＡｎａｌ）を含み、また、復号者属性に基づく属性ベース暗号方式のシステム公開鍵（ｍｐｋＲｅｃ）、マスター秘密鍵（ｍｓｋＲｅｃ）を含む。マスター鍵生成部８０３における処理は、Ｓ１０１に対応する。
【０１０７】
マスター鍵記憶部８０５は、マスター鍵生成部８０３によって生成されたマスター鍵を記憶する。なお、全てのマスター鍵ではなく、マスター秘密鍵（ｍｓｋＡｎａｌ）およびマスター秘密鍵（ｍｓｋＲｅｃ）を少なくとも記憶していればよい。
【０１０８】
秘密鍵生成部８０７は、外部装置（例えば、遺伝子解析装置２０および復号装置３４）からの申請に基づき、マスター秘密鍵（ｍｓｋＡｎａｌ）を用いて復号者属性付秘密鍵（ｓｋＳＨｙＲｅｃ）を生成し、または、マスター秘密鍵（ｍｓｋＲｅｃ）を用いて解析者属性付秘密鍵（ｓｋＳＡｘＡｎａｌ）を生成する。秘密鍵生成部８０７における処理は、Ｓ１１３、Ｓ１２３に対応する。以上が、データ提供システム１の機能構成についての説明である。
【０１０９】
上述の通り、本発明の第１実施形態におけるデータ提供システム１によれば、ユーザによるポリシー（解析者ポリシー（ΨｉＡｎａｌ）および復号者ポリシー（ΨｉＲｅｃ））を設定することができる。これによって、ゲノム情報と環境情報とに基づいて統計解析処理の演算をすることができる解析者を制限することができる。このとき、このゲノム情報と環境情報とは、それぞれ準同型暗号方式によって暗号化されているため、ゲノム情報および環境情報の内容を解析者に知られずに、統計解析処理を実行させることができる。また、解析結果を復号化することができる復号者についても制限することができる。なお、解析者と復号者とを制限する場合、Ｐ人の解析者およびＱ人の復号者が存在すると、一般には、Ｐ×Ｑ個のポリシーが必要になるが、上記の実施形態では、Ｐ＋Ｑ個のポリシーで表現することもできる。
【０１１０】
＜第２実施形態＞
第２実施形態では、解析結果暗号データ（ｃｉ＝Ｅｐｋｉ（ｆ（ｘｉ，ｚｉ））が属性ベース暗号での暗号化がされずに、そのままデータベース１４に登録される。一方、復号者ポリシー（ΨｉＲｅｃ）はデータベース１４に登録されない。
【０１１１】
復号装置３４において、解析結果（ｆ（ｘｉ，ｚｉ））を得るためには、解析結果暗号データ（ｃｉ＝Ｅｐｋｉ（ｆ（ｘｉ，ｚｉ）））、およびこれを復号化する際に用いる分散秘密鍵Ｈ（ｓｋｉＨ）が必要である。解析結果暗号データ（ｃｉ＝Ｅｐｋｉ（ｆ（ｘｉ，ｚｉ）））および分散秘密鍵Ｈ（ｓｋｉＨ）を得るためには、上述したように、復号者ポリシー（ΨｉＲｅｃ）によって制限された医師が有する属性付秘密鍵（ｓｋＳＨｙＲｅｃ）を用いる必要がある。一方、解析結果（ｆ（ｘｉ，ｚｉ））を得るためには、解析結果暗号データ（ｃｉ＝Ｅｐｋｉ（ｆ（ｘｉ，ｚｉ）））が得られても、分散秘密鍵Ｈ（ｓｋｉＨ）が得られなければ、復号できないことになる。
【０１１２】
したがって、分散秘密鍵Ｈ（ｓｋｉＨ）が属性ベース暗号方式による暗号化がされていれば、解析結果暗号データ（ｃｉ＝Ｅｐｋｉ（ｆ（ｘｉ，ｚｉ）））については、属性ベース暗号方式による暗号化をしなくてもよい。この場合、Ｓ４１１の処理はなくてもよい。データベース１４には、解析結果属性暗号データ（ＡＢＥ＿Ｅｎｃ（ｍｐｋＲｅｃ，ｃｉ，ΨｉＲｅｃ））が登録される代わりに解析結果暗号データ（ｃｉ＝Ｅｐｋｉ（ｆ（ｘｉ，ｚｉ））が、統計解析装置２０の演算結果として登録される。一方、復号者ポリシー（ΨｉＲｅｃ）は、データベース１４に登録されなくてもよい。
【０１１３】
＜第３実施形態＞
第３実施形態では、秘密鍵（ｓｋｉ）を分散秘密鍵Ｓ（ｓｋｉＳ）、分散秘密鍵Ｈ（ｓｋｉＨ）に分割せず、秘密鍵（ｓｋｉ）のまま用いる。この場合には、第１実施形態の分散秘密鍵Ｈ（ｓｋｉＨ）が秘密鍵（ｓｋｉ）に相当するものとし、ＩＤカード４０に登録される分散秘密鍵Ｓ（ｓｋｉＳ）が存在しないものとすればよい。したがって、データベース１４に登録される秘密鍵暗号データ（ＡＢＥ＿Ｅｎｃ（ｍｐｋＲｅｃ，ｓｋｉＨ，ΨｉＲｅｃ））は、秘密鍵暗号データ（ＡＢＥ＿Ｅｎｃ（ｍｐｋＲｅｃ，ｓｋｉ，ΨｉＲｅｃ））とすればよい。そして、属性ベース暗号方式で復号化して得られる解析結果暗号データ（ｃｉ＝Ｅｐｋｉ（ｆ（ｘｉ，ｚｉ）））は、同じく、属性ベース暗号方式で復号化して得られる１つの秘密鍵（ｓｋｉ）で復号化される。
【０１１４】
＜分散秘密鍵の保持方法および復号方法＞
上述した第１、第２実施形態では、分散秘密鍵を用い、一方の分散秘密鍵をユーザ（患者）、他方の分散秘密鍵を病院（医師）が保持していた。保持の組み合わせは別の組み合わせも様々に存在する。また、復号の方法も様々に存在する。以下では、これらの方法のうち、２つの例について説明する。
【０１１５】
まず、第１の例として、分散秘密鍵を保持する人は変わらないものの、復号装置３４のみで復号するのではなく、複数の復号装置で復号する場合について説明する。複数の復号装置は、例えば、上述した部分復号関数で部分的に暗号データを復号化する部分復号装置、および上述した完全復号関数でさらに復号化する完全復号装置である。部分復号装置は、復号装置３４の代わりに病院システム３０に含まれている。一方、完全復号装置は、ユーザが使用可能なコンピュータ等において、プログラムの実行により実現される。
【０１１６】
この場合には、図１３のＳ５１１の処理において、部分復号装置によって、分散秘密鍵Ｈ（ｓｋｉＨ）を用いて、解析結果暗号データ（ｃｉ＝Ｅｐｋｉ（ｆ（ｘｉ，ｚｉ）））を部分的に復号化する。すなわち、上述した部分復号関数で復号化（ｃｈ←ＤｓｋＨ（ｃ））して、部分復号データｃｈを得る。そして、この復号化された部分復号データｃａをユーザに渡す。ユーザは、完全復号装置によって、分散秘密鍵Ｓ（ｓｋｉＳ）を用いて、部分復号データｃｈをさらに復号化する。すなわち、上述した完全復号関数で復号化（ｍ←ＤｓｋＳ（ｃｈ））して、解析結果ｍ＝（ｆ（ｘｉ，ｚｉ））を得る。
【０１１７】
第２の例として、ユーザが分散秘密鍵Ｓ（ｓｋｉＳ）をクラウドストレージ１０において保持する場合について説明する。なお、ユーザは、そのまま分散秘密鍵Ｓ（ｓｋｉＳ）を保持したままであってもよい。
【０１１８】
この場合には、クラウドストレージ１０において、上記部分復号装置に相当する機能を有するようにする。一方、病院システム３０において、復号装置３４の代わりに上述の完全復号装置を有するようにする。そして、クラウドストレージ１０においては、図１１のＳ４１１において、解析結果暗号データ（ｃｉ＝Ｅｐｋｉ（ｆ（ｘｉ，ｚｉ）））を属性ベース暗号方式で暗号化するのではなく、部分復号関数で復号化（ｃｓ←ＤｓｋＳ（ｃ））して得られた部分復号データｃｓを属性ベース暗号方式で暗号化する。これによって、解析結果属性部分暗号データ（ＡＢＥ＿Ｅｎｃ（ｍｐｋＲｅｃ，ｃｓ，ΨｉＲｅｃ）））を得る。
【０１１９】
病院システム３０の完全復号装置は、解析結果属性部分暗号データを復号化し、部分復号データｃｓを得る。そして、分散秘密鍵Ｈ（ｓｋｉＨ）を用い、復号化（ｍ←ＤｓｋＨ（ｃｓ））して、解析結果ｍ＝（ｆ（ｘｉ，ｚｉ））を得る。
【０１２０】
＜その他の実施形態＞
第１実施形態では、解析者ポリシー（ΨｉＡｎａｌ）および復号者ポリシー（ΨｉＲｅｃ）を用いて、解析者（統計解析装置２０）および復号者（復号装置３４）における復号化に制限をかけている。一方、解析者ポリシー（ΨｉＡｎａｌ）および復号者ポリシー（ΨｉＲｅｃ）の双方を用いることが必須ではなく、いずれか一方を用いたデータ提供システムとしての実施形態もあり得る。
【０１２１】
すなわち、準同型暗号方式で暗号化して得られた暗号データを、解析者ポリシー（ΨｉＡｎａｌ）を用いてさらに属性ベース暗号方式（解析属性ベース）で暗号化する。これによれば、解析者（統計解析装置２０）に対しては、属性ベース暗号方式での復号化に関する制限をかけることができる。このとき、復号化しても、秘匿しておくべきゲノム情報および環境情報はいずれも準同型暗号方式で暗号化されているため、その内容を知ることはできないものの、統計解析処理のための演算は可能となっている。このように、解析者に対して統計解析処理の実行に制限をかける一方、復号者に対しては復号化の実行に制限をかけない場合には、解析者ポリシー（ΨｉＡｎａｌ）のみを用いたデータ提供システムとしての実施形態でもよい。
【０１２２】
一方、準同型暗号方式で暗号化されている解析結果を復号化するための秘密鍵を、復号者ポリシー（ΨｉＲｅｃ）を用いて属性ベース暗号方式（復号属性ベース）で暗号化する。これによれば、復号者（復号装置３４）に対しては、属性ベース暗号方式での復号化に関する制限をかけることができる。すなわち、復号化ができない復号者は、解析結果を復号化するための秘密鍵を入手することができない。このように、復号者に対して解析結果の復号化の実行に制限をかける一方、解析者に対して統計解析処理の実行に制限をかけない場合には、復号者ポリシー（ΨｉＲｅｃ）のみを用いたデータ提供システムとしての実施形態でもよい。
【０１２３】
また、上記の実施形態では、秘匿すべき情報として、ゲノム情報および環境情報を用いていたが、その他の情報であってもよい。ユーザの行動に伴って得られる個人情報（例えば、商品購入履歴情報、移動履歴情報、個人信用情報、Ｗｅｂ閲覧履歴）などは秘匿すべき情報として用いられる。このような個人情報を用いた場合であっても、解析者および復号者は上述した実施形態と同じ処理をする。すなわち、解析者は、この個人情報を所定の演算によって準同型暗号方式で暗号化されたまま解析する。また、復号者は、解析された結果を復号化してその情報を利用する。そして、ユーザは、自分自身が提供した個人情報を利用できる範囲を、解析者および復号者の少なくとも一方に対して制限をかけることができる。
【符号の説明】
【０１２４】
１…データ提供システム、１０…クラウドストレージ、１２…制御装置、１４…データベース、２０…統計解析装置、３０…病院システム、３２…登録装置、３４…復号装置、４０…ＩＤカード、５０…遺伝子解析装置、８０…認証局
【図１】
2016103960.tif 000004
【図２】
2016103960.tif 000005
【図３】
2016103960.tif 000006
【図４】
2016103960.tif 000007
【図５】
2016103960.tif 000008
【図６】
2016103960.tif 000009
【図７】
2016103960.tif 000010
【図８】
2016103960.tif 000011
【図９】
2016103960.tif 000012
【図１０】
2016103960.tif 000013
【図１１】
2016103960.tif 000014
【図１２】
2016103960.tif 000015
【図１３】
2016103960.tif 000016
【図１４】
2016103960.tif 000017
【手続補正書】
【提出日】平成28年7月1日(2016.7.1)
【手続補正１】
【補正対象書類名】特許請求の範囲
【補正対象項目名】全文
【補正方法】変更
【補正の内容】
【特許請求の範囲】
【請求項１】
第１秘密鍵で復号可能な準同型暗号方式で暗号化されている第１準同型暗号データに対して、特定の属性を付与された第２秘密鍵で復号可能な属性ベース暗号方式で暗号化することによって得られる第１属性暗号データを、記憶領域に記憶させる手段と、
前記記憶領域に記憶された前記第１属性暗号データを解析装置に送信する手段と、
前記送信の応答として、前記第１準同型暗号データに対する所定の演算によって得られた演算結果を、前記解析装置から受信する手段と、
前記解析装置から受信した前記演算結果に基づく演算暗号データを前記記憶領域に記憶させる手段と、
を備えることを特徴とする制御装置。
【請求項２】
前記第１秘密鍵の少なくとも一部に対して、特定の属性を付与された第３秘密鍵で復号可能な属性ベース暗号方式で暗号化することによって得られる第１秘密鍵暗号データを、前記記憶領域に記憶させる手段と、
前記記憶領域に記憶された前記演算暗号データおよび前記第１秘密鍵暗号データを前記復号装置に送信する手段と、
をさらに備えることを特徴とする請求項１に記載の制御装置。
【請求項３】
前記演算結果は、前記第１秘密鍵で復号可能な暗号データであり、
前記演算暗号データは、前記演算結果であることを特徴とする請求項１に記載の制御装置。
【請求項４】
前記演算結果は、前記第１秘密鍵で復号可能な暗号データであり、
前記演算結果を、特定の属性を付与された第３秘密鍵で復号可能な属性ベース暗号方式で暗号化して、前記記憶領域に記憶させる前記演算暗号データを生成する手段をさらに備えることを特徴とする請求項１に記載の制御装置。
【請求項５】
前記演算結果は、前記第１秘密鍵で復号可能な暗号データを、特定の属性を付与された第３秘密鍵で復号可能な属性ベース暗号方式で暗号化したデータであり、
前記演算暗号データは、前記演算結果であることを特徴とする請求項１に記載の制御装置。
【請求項６】
前記第１準同型暗号データを取得し、当該第１準同型暗号データを、特定の属性を付与された第３秘密鍵で復号可能な属性ベース暗号方式で暗号化して、前記記憶領域に記憶させる前記第１属性暗号データを生成する手段をさらに備えることを特徴とする請求項１に記載の制御装置。
【請求項７】
前記第１秘密鍵で復号可能な準同型暗号方式で暗号化されている第２準同型暗号データを、前記第２秘密鍵で復号可能な属性ベース暗号方式で暗号化することによって得られた第２属性暗号データを前記記憶領域に記憶させる手段と、
前記記憶領域に記憶された前記第２属性暗号データを前記解析装置に送信する手段と、
をさらに備え、
前記所定の演算は、前記第１準同型暗号データと前記２属性暗号データを復号した前記第２準同型暗号データとを用いた演算であることを特徴とする請求項１に記載の制御装置。
【請求項８】
第１秘密鍵で復号可能な準同型暗号方式で暗号化されている第１準同型暗号データに対して、特定の属性を付与された第３秘密鍵で復号可能な属性ベース暗号方式で暗号化することによって得られる第１属性暗号データを、記憶領域に記憶させる手段と、
前記第１秘密鍵の少なくとも一部に対して、特定の属性を付与された第３秘密鍵で復号可能な属性ベース暗号方式で暗号化された第１秘密鍵暗号データを記憶領域に記憶させる手段と、
前記記憶領域に記憶された前記第１暗号データおよび前記第１秘密鍵暗号データを前記復号装置に送信する手段と、
を備えることを特徴とする制御装置。
【請求項９】
（削除）
【請求項１０】
前記第１秘密鍵は、複数の分散鍵を組み合わせた鍵であり、
前記第１秘密鍵暗号データは、一部の前記分散鍵を暗号化したデータであることを特徴とする請求項２または請求項８に記載の制御装置。
【請求項１１】
所定の属性を付与された第２秘密鍵を取得する手段と、
第１秘密鍵で復号可能な準同型暗号方式で暗号化された第１準同型暗号データに対して、特定の属性を付与された第２秘密鍵で復号可能な属性ベース暗号方式で暗号化された第１属性暗号データを、外部装置から受信する手段と、
取得した前記秘密鍵で、受信した前記第１属性暗号データを復号して前記第１準同型暗号データを取得する手段と、
取得した前記第１準同型暗号データに対して、所定の演算によって得られた演算結果を、外部装置へ送信する手段と、
を備えることを特徴とする解析装置。
【請求項１２】
前記準同型暗号方式で暗号化された第２準同型暗号データに対して、前記第２秘密鍵で復号可能な属性ベース暗号方式で暗号化された第２属性暗号データを、外部装置から受信する手段と、
取得した前記秘密鍵で、受信した前記第２属性暗号データを復号して前記第２準同型暗号データを取得する手段と、
をさらに備え、
前記所定の演算は、前記第１準同型暗号データと前記第２準同型暗号データとを用いた演算であることを特徴とする請求項１１に記載の解析装置。
【請求項１３】
所定の属性を付与された第３秘密鍵を取得する手段と、
第１秘密鍵で復号可能な準同型暗号方式で暗号化された第１準同型暗号データに対して、特定の属性を付与された第３秘密鍵で復号可能な属性ベース暗号方式で暗号化された第１属性暗号データを、外部装置から受信する手段と、
前記第１秘密鍵の少なくとも一部に対して、特定の属性を付与された第３秘密鍵で復号可能な属性ベース暗号方式で暗号化された第１秘密鍵暗号データを、前記外部装置から受信する手段と、
取得した前記第３秘密鍵で前記第１秘密鍵暗号データを復号して、前記第１秘密鍵の少なくとも一部を取得する手段と、
取得した前記第３秘密鍵で前記第１属性暗号データを復号して、前記第１準同型暗号データを取得する手段と、
取得した前記第１秘密鍵の少なくとも一部を用いて、取得した前記第１準同型暗号データを復号する手段と、
を備えることを特徴とする復号装置。
【請求項１４】
（削除）
【請求項１５】
前記第１秘密鍵は、複数の分散鍵を組み合わせた鍵であり、
前記第１秘密鍵暗号データは、一部の前記分散鍵を暗号化したデータであり、
前記一部の分散鍵以外の残りの前記分散鍵を取得する手段と、
前記第１秘密鍵暗号データを復号して得られる前記分散鍵の一部と、取得した前記残りの分散鍵とを組み合わせた前記第１秘密鍵によって前記第１準同型暗号データを復号することを特徴とする請求項１３に記載の復号装置。
【請求項１６】
所定のデータを生成する手段と、
前記所定のデータに対して、第１秘密鍵で復号可能な準同型暗号方式での暗号化を含む暗号化処理を実行して第１準同型暗号データを生成する手段と、
前記第１準同型暗号データを、請求項１乃至請求項７のいずれかに記載の制御装置に送信する手段と、
を備え、
前記制御装置は、送信された前記第１準同型暗号データに基づいて、対して、特定の属性を付与された第２秘密鍵で復号可能な属性ベース暗号方式で暗号化することによって、記憶領域に記憶させる前記第１属性暗号データを得ることを特徴とする送信装置。
【国際調査報告】
2016103960.tif 000018
2016103960.tif 000019
2016103960.tif 000020
2016103960.tif 000021