(57)【要約】【課題】秘密分散を階層的に行う場合において特定のユーザのみに秘密情報の復号を許容する柔軟なアクセスコントロールを実現する技術が提供されることが望ましい。【解決手段】第１の鍵生成要求に基づいて、第１のデータを復号可能な第１の鍵から前記第１の鍵に基づく複数のシェアを生成し、第２の鍵生成要求に基づいて、前記第１の鍵に基づく複数のシェアから前記第１の鍵を復元し、前記第１の鍵の一部または全部に基づく複数のシェアの一部を、第２のデータを復号可能な第２の鍵として前記第１の鍵で暗号化するとともに、前記第２の鍵に基づく複数のシェアを生成する制御部を備える、情報処理装置が提供される。【選択図】図６
2019026372.tif 000002
【特許請求の範囲】
【請求項１】
第１の鍵生成要求に基づいて、第１のデータを復号可能な第１の鍵から前記第１の鍵に基づく複数のシェアを生成し、第２の鍵生成要求に基づいて、前記第１の鍵に基づく複数のシェアから前記第１の鍵を復元し、前記第１の鍵の一部または全部に基づく複数のシェアの一部を、第２のデータを復号可能な第２の鍵として前記第１の鍵で暗号化するとともに、前記第２の鍵に基づく複数のシェアを生成する制御部を備える、
情報処理装置。
【請求項２】
前記制御部は、前記第１の鍵生成要求に基づいて、前記第１の鍵に基づく複数のシェアの一部が第１の情報提供装置に送信されるように通信部を制御し、前記第２の鍵生成要求に基づいて、前記第１の鍵に基づく複数のシェアの一部を前記第１の情報提供装置から取得する、
請求項１に記載の情報処理装置。
【請求項３】
前記制御部は、前記第１の鍵生成要求に基づいて、前記第１の鍵に基づく複数のシェアの他の一部が、第２の情報提供装置に送信されるように前記通信部を制御し、前記第２の鍵生成要求に基づいて、前記他の一部を前記第２の情報提供装置から取得する、
請求項２に記載の情報処理装置。
【請求項４】
前記制御部は、前記第２の鍵生成要求に基づいて、前記第２の鍵に基づく複数のシェアの一部が第１の情報提供装置に送信されるように通信部を制御する、
請求項１に記載の情報処理装置。
【請求項５】
前記制御部は、前記第２の鍵生成要求に基づいて、前記第２の鍵に基づく複数のシェアの他の一部が、第２の情報提供装置に送信されるように前記通信部を制御する、
請求項４に記載の情報処理装置。
【請求項６】
前記制御部は、前記第１の鍵の一部または全部に基づく複数のシェアの他の一部が、第１の情報提供装置に送信されるように通信部を制御する、
請求項１に記載の情報処理装置。
【請求項７】
前記制御部は、第１の暗号化要求に基づいて、前記第１の鍵に基づく複数のシェアの一部を取得するとともに前記第１の鍵に基づく複数のシェアの他の一部を取得し、前記第１の鍵に基づく複数のシェアの一部と前記他の一部とに基づいて前記第１の鍵を復元し、前記第１のデータを前記第１の鍵で暗号化する、
請求項１に記載の情報処理装置。
【請求項８】
前記制御部は、第１の復号要求に基づいて、前記第１の鍵を復元し、前記第１の鍵で前記第１のデータを復号する、
請求項７に記載の情報処理装置。
【請求項９】
前記制御部は、第２の暗号化要求に基づいて、前記第２の鍵に基づく複数のシェアの一部を取得するとともに前記第２の鍵に基づく複数のシェアの他の一部を取得し、前記第２の鍵に基づく複数のシェアの一部と前記他の一部とに基づいて前記第２の鍵を復元し、前記第２のデータを前記第２の鍵で暗号化する、
請求項１に記載の情報処理装置。
【請求項１０】
前記制御部は、第２の復号要求に基づいて、前記第２の鍵を復元し、前記第２の鍵で前記第２のデータを復号する、
請求項９に記載の情報処理装置。
【請求項１１】
前記制御部は、第３の鍵生成要求に基づいて、前記第１の鍵に基づく複数のシェアから前記第１の鍵を復元し、前記第１の鍵の一部または全部に基づく複数のシェアの一部を第３の鍵として前記第１の鍵で暗号化するとともに、前記第３の鍵に基づく複数のシェアを生成する、
請求項１に記載の情報処理装置。
【請求項１２】
前記制御部は、前記第３の鍵生成要求に基づいて、前記第３の鍵に基づく複数のシェアの一部が情報提供装置に送信されるように通信部を制御する、
請求項１１に記載の情報処理装置。
【請求項１３】
前記制御部は、前記第３の鍵生成要求に基づいて、前記第３の鍵に基づく複数のシェアの他の一部が送信されるように前記通信部を制御する、
請求項１２に記載の情報処理装置。
【請求項１４】
前記制御部は、第３の復号要求に基づいて、前記第３の鍵を復元し、前記第３の鍵に基づいて前記第１の鍵を復元し、前記第１の鍵に基づいて前記第２の鍵を復元し、前記第２の鍵で前記第２のデータを復号する、
請求項１１に記載の情報処理装置。
【請求項１５】
前記制御部は、前記第３の復号要求に基づいて、前記第３の鍵に基づく複数のシェアの一部を取得するとともに前記第３の鍵に基づく複数のシェアの他の一部を取得し、前記第３の鍵に基づく複数のシェアの一部と前記他の一部とに基づいて前記第３の鍵を復元する、
請求項１４に記載の情報処理装置。
【請求項１６】
前記制御部は、前記第１の鍵の一部または全部に基づく複数のシェアの他の一部を取得し、前記他の一部と前記第３の鍵とに基づいて、前記第１の鍵を復元する、
請求項１４に記載の情報処理装置。
【請求項１７】
前記制御部は、アクセス制御情報に基づいて、前記第１の鍵および前記第２の鍵の少なくともいずれか一方を復元するか否かを制御する、
請求項１１に記載の情報処理装置。
【請求項１８】
前記制御部は、アクセス制御情報に基づいて、前記第１のデータおよび前記第２のデータの少なくともいずれか一方を復号するか否かを制御する、
請求項１に記載の情報処理装置。
【請求項１９】
第１の鍵生成要求に基づいて、第１のデータを復号可能な第１の鍵から前記第１の鍵に基づく複数のシェアを生成し、第２の鍵生成要求に基づいて、前記第１の鍵に基づく複数のシェアから前記第１の鍵を復元し、前記第１の鍵の一部または全部に基づく複数のシェアの一部を、第２のデータを復号可能な第２の鍵として前記第１の鍵で暗号化するとともに、前記第２の鍵に基づく複数のシェアを生成することを含む、
情報処理方法。
【請求項２０】
コンピュータを、
第１の鍵生成要求に基づいて、第１のデータを復号可能な第１の鍵から前記第１の鍵に基づく複数のシェアを生成し、第２の鍵生成要求に基づいて、前記第１の鍵に基づく複数のシェアから前記第１の鍵を復元し、前記第１の鍵の一部または全部に基づく複数のシェアの一部を、第２のデータを復号可能な第２の鍵として前記第１の鍵で暗号化するとともに、前記第２の鍵に基づく複数のシェアを生成する制御部を備える、
情報処理装置として機能させるためのプログラム。
【発明の詳細な説明】
【技術分野】
【０００１】
本開示は、情報処理装置、情報処理方法およびプログラムに関する。
【背景技術】
【０００２】
近年、秘密分散によって鍵を分割する技術が存在する。例えば、秘密分散によって鍵を分割し、分割によって得られた複数の情報それぞれを対応する加入者に割り当て、秘密分散法に従って所定の人数の加入者から同意が得られた場合に、鍵を導出し、鍵を用いて署名を行ったり復号を行ったりする技術が開示されている（例えば、特許文献１参照。）。また、秘密分散を階層的に行うことによって、多階層でこのような鍵の扱いを実現することも可能である。
【先行技術文献】
【特許文献】
【０００３】
【特許文献１】特開平１０−１９８２７２号公報
【発明の概要】
【発明が解決しようとする課題】
【０００４】
しかし、所定の数のユーザから同意が得られなければ鍵を導出することができないとすると、あるユーザがアクセス可能な秘密情報であっても、他のユーザからの同意なしにはアクセスできないという事態が生じ得る。また、所定の数のユーザから同意が得られれば鍵を導出することができるとすると、あるユーザのプライバシーに関わる情報に対して当該ユーザの同意なしにアクセスできてしまうという事態が生じ得る。そこで、秘密分散を階層的に行う場合において特定のユーザのみに秘密情報の復号を許容する柔軟なアクセスコントロールを実現する技術が提供されることが望ましい。
【課題を解決するための手段】
【０００５】
本開示によれば、第１の鍵生成要求に基づいて、第１のデータを復号可能な第１の鍵から前記第１の鍵に基づく複数のシェアを生成し、第２の鍵生成要求に基づいて、前記第１の鍵に基づく複数のシェアから前記第１の鍵を復元し、前記第１の鍵の一部または全部に基づく複数のシェアの一部を、第２のデータを復号可能な第２の鍵として前記第１の鍵で暗号化するとともに、前記第２の鍵に基づく複数のシェアを生成する制御部を備える、情報処理装置が提供される。【０００６】
本開示によれば、第１の鍵生成要求に基づいて、第１のデータを復号可能な第１の鍵から前記第１の鍵に基づく複数のシェアを生成し、第２の鍵生成要求に基づいて、前記第１の鍵に基づく複数のシェアから前記第１の鍵を復元し、前記第１の鍵の一部または全部に基づく複数のシェアの一部を、第２のデータを復号可能な第２の鍵として前記第１の鍵で暗号化するとともに、前記第２の鍵に基づく複数のシェアを生成することを含む、情報処理方法が提供される。【０００７】
本開示によれば、コンピュータを、第１の鍵生成要求に基づいて、第１のデータを復号可能な第１の鍵から前記第１の鍵に基づく複数のシェアを生成し、第２の鍵生成要求に基づいて、前記第１の鍵に基づく複数のシェアから前記第１の鍵を復元し、前記第１の鍵の一部または全部に基づく複数のシェアの一部を、第２のデータを復号可能な第２の鍵として前記第１の鍵で暗号化するとともに、前記第２の鍵に基づく複数のシェアを生成する制御部を備える、情報処理装置として機能させるためのプログラムが提供される。
【発明の効果】
【０００８】
以上説明したように本開示によれば、秘密分散を階層的に行う場合において特定のユーザのみに秘密情報の復号を許容する柔軟なアクセスコントロールを実現する技術が提供される。なお、上記の効果は必ずしも限定的なものではなく、上記の効果とともに、または上記の効果に代えて、本明細書に示されたいずれかの効果、または本明細書から把握され得る他の効果が奏されてもよい。
【図面の簡単な説明】
【０００９】
【図１】本開示の実施形態において主に想定する一つ目のユースケースについて説明するための図である。
【図２】同実施形態において主に想定する二つ目のユースケースについて説明するための図である。
【図３】比較例に係るアクセスコントロールについて説明するための図である。
【図４】同実施形態に係る情報処理システムの構成例を示す図である。
【図５】同実施形態に係るサーバの機能構成例を示す図である。
【図６】同実施形態に係る情報処理システムの全体的な機能について説明するための図である。
【図７】ホームエージェントを利用した家族共有情報およびパーソナルデータの取得処理の例について説明するための図である。
【図８】父端末を利用した家族共有情報およびパーソナルデータの取得処理の例について説明するための図である。
【図９】母端末を利用した父パーソナルデータの共有処理の例について説明するための図である。
【図１０】各種の変形例について説明するための図である。
【図１１】家族情報を登録する処理の例を示すシーケンス図である。
【図１２】ユーザの例としての父を登録する処理の例を示すシーケンス図である。
【図１３】家族共有情報の例としての住所を登録する処理の例を示すシーケンス図である。
【図１４】パーソナルデータの例としての緯度・経度を保存する処理の例を示すシーケンス図である。
【図１５】パーソナルデータの例としての緯度・経度を共有する処理の例を示すシーケンス図である。
【図１６】家族間での情報共有処理の例を示すフローチャートである。
【図１７】同実施形態に係る情報処理装置（サーバ）１０のハードウェア構成について説明する。
【発明を実施するための形態】
【００１０】
以下に添付図面を参照しながら、本開示の好適な実施の形態について詳細に説明する。なお、本明細書及び図面において、実質的に同一の機能構成を有する構成要素については、同一の符号を付することにより重複説明を省略する。
【００１１】
また、本明細書および図面において、実質的に同一または類似の機能構成を有する複数の構成要素を、同一の符号の後に異なる数字を付して区別する場合がある。ただし、実質的に同一または類似の機能構成を有する複数の構成要素の各々を特に区別する必要がない場合、同一符号のみを付する。また、異なる実施形態の類似する構成要素については、同一の符号の後に異なるアルファベットを付して区別する場合がある。ただし、類似する構成要素の各々を特に区別する必要がない場合、同一符号のみを付する。
【００１２】
なお、説明は以下の順序で行うものとする。
０．概要
１．実施形態の詳細
１．０．システム構成例
１．１．サーバの機能構成例
１．２．全体的な機能
１．２．１．家族情報登録処理
１．２．２．１人目のユーザ登録処理
１．２．３．２人目のユーザ登録処理
１．２．４．家族共有情報の保存処理
１．２．５．家族共有情報の取得処理
１．２．６．パーソナルデータの保存処理
１．２．７．パーソナルデータの取得処理
１．２．８．パーソナルデータの共有処理
１．２．９．アクセス制御
１．２．１０．各種の変形例
１．３．動作例
１．３．１．家族情報登録処理
１．３．２．ユーザ登録処理
１．３．３．家族共有情報の保存処理
１．３．４．パーソナルデータの保存処理
１．３．５．パーソナルデータの共有処理
１．３．６．家族間での情報共有処理
２．ハードウェア構成例
３．むすび
【００１３】
＜０．概要＞
まず、本開示の実施形態の概要について説明する。
【００１４】
まず、本開示の実施形態において主に想定する一つ目のユースケースについて説明する。図１は、本開示の実施形態において主に想定する一つ目のユースケースについて説明するための図である。本開示の実施形態においては、図１に示すように、家族に関する情報を複数のドメインに分け、複数のドメインに対するアクセスをコントロールする。図１に示した例では、父と母と子供とによって構成される家族を想定する。しかし、家族を構成するメンバは、かかる例に限定されない。
【００１５】
また、図１を参照すると、複数のドメインの例として、家族ドメインＭ０、父ドメインＭ１、母ドメインＭ２および子供ドメインＭ３が存在している。家族ドメインＭ０は、家族によって共有される情報（例えば、住所など）を含んでいる。父ドメインＭ１は、父のパーソナルデータを含んでいる。母ドメインＭ２は、母のパーソナルデータを含んでいる。子供ドメインＭ３は、子供のパーソナルデータを含んでいる。
【００１６】
例えば、父がホームエージェント３０を利用する場合には、父がホームエージェント３０を介して家族ドメインＭ０および父ドメインＭ１にアクセスすることが許可される。また、例えば、母がホームエージェント３０を利用する場合には、母がホームエージェント３０を介して家族ドメインＭ０および母ドメインＭ２にアクセスすることが許可される。子供が子供端末２０−３を利用する場合には、子供が子供端末２０−３を介して家族ドメインＭ０および子供ドメインＭ３にアクセスすることが許可される。
【００１７】
続いて、本開示の実施形態において主に想定する二つ目のユースケースについて説明する。図２は、本開示の実施形態において主に想定する二つ目のユースケースについて説明するための図である。本開示の実施形態においては、アクセス権限の委譲によって他のユーザのドメインにアクセスすることが許可される。具体的には、図２に示すように、父端末２０−１から送信された位置情報が父ドメインＭ１に蓄積された場合、母端末２０−２は、父ドメインＭ１の位置情報に基づく情報「帰宅中です」を取得することが可能である。
【００１８】
なお、本開示の実施形態においては、父端末２０−１、母端末２０−２および子供端末２０−３がスマートフォンである場合を主に想定する。しかし、父端末２０−１、母端末２０−２および子供端末２０−３がスマートフォンに限定されない。例えば、父端末２０−１、母端末２０−２および子供端末２０−３それぞれは、携帯電話であってもよいし、タブレット端末であってもよいし、ＰＣ（Ｐｅｒｓｏｎａｌ  Ｃｏｍｐｕｔｅｒ）であってもよい。
【００１９】
ここで、比較例について説明する。
【００２０】
図３は、比較例に係るアクセスコントロールについて説明するための図である。図３を参照すると、家族ドメインＭ０、父ドメインＭ１、母ドメインＭ２および子供ドメインＭ３が存在している。ホームエージェント３０は、家族ドメインＭ０にアクセスするための家族鍵を保持している。父端末２０−１は、父ドメインＭ１にアクセスするための鍵（父鍵）を保持している。母端末２０−２は、母ドメインＭ２にアクセスするための鍵（母鍵）を保持している。子供端末２０−３は、子供ドメインＭ３にアクセスするための鍵（子供鍵）を保持している。
【００２１】
ここで、上記した一つ目のユースケースを想定する。しかし、比較例においては、ホームエージェント３０が家族鍵しか保持していないため、ホームエージェント３０からは父ドメインＭ１、母ドメインＭ２および子供ドメインＭ３にアクセスすることができない。
【００２２】
一方、父端末２０−１は父鍵しか保持しておらず、母端末２０−２は母鍵しか保持しておらず、子供端末２０−３は子供鍵しか保持していないため、父端末２０−１、母端末２０−２および子供端末２０−３（以下、これらの任意の端末を「個人端末」とも言う。）から家族ドメインＭ０にアクセスすることができない。仮に、個人端末が家族鍵を保持してしまうと、父と母が離婚などで縁を切る必要が生じた場合などに、家族ドメインＭ０へのアクセスを拒否できなくなってしまう。家族鍵をリボークして新しい家族鍵を発行してもよいが、鍵交換に伴う再暗号化などのコストが発生してしまう。
【００２３】
また、上記した二つ目のユースケースを想定する。しかし、比較例においては、例えば、ｋ＝２、ｎ＝３の秘密分散の場合には、母が父ａｎｄ／ｏｒ子供との同意が得られた場合には家族鍵にアクセスすることができるが、母端末２０−２は母鍵しか保持していないため、母端末２０−２から父鍵にアクセスすることができない。
【００２４】
以上、本開示の実施形態の概要について説明した。
【００２５】
＜１．実施形態の詳細＞
続いて、本開示の実施形態の詳細について説明する。
【００２６】
［１．０．システム構成例］
図４は、本開示の実施形態に係る情報処理システムの構成例を示す図である。図４に示すように、情報処理システム１は、情報処理装置の例としてのサーバ１０と、父端末２０−１と、母端末２０−２と、子供端末２０−３と、ホームエージェント３０と、エージェントサーバ４０と、情報提供装置の例としてのクラウドストレージ５０−１〜５０−Ｎと、ＩＤプロバイダ６０とを有する。サーバ１０、父端末２０−１、母端末２０−２、子供端末２０−３、ホームエージェント３０、エージェントサーバ４０、クラウドストレージ５０−１〜５０−Ｎ、および、ＩＤプロバイダ６０は、ネットワーク７０に接続されている。
【００２７】
［１．１．サーバの機能構成例］
まず、本開示の実施形態に係るサーバ１０の機能構成例について説明する。図５は、本開示の実施形態に係るサーバ１０の機能構成例を示す図である。図５に示したように、サーバ１０は、制御部１１０、通信部１４０および記憶部１５０を有している。
【００２８】
制御部１１０は、サーバ１０の各部の制御を実行する。なお、制御部１１０は、例えば、ＣＰＵ（Ｃｅｎｔｒａｌ  Ｐｒｏｃｅｓｓｉｎｇ  Ｕｎｉｔ；中央演算処理装置）などで構成されていてよい。制御部１１０がＣＰＵなどといった処理装置によって構成される場合、かかる処理装置は、電子回路によって構成されてよい。
【００２９】
通信部１４０は、ネットワーク７０を介して他の装置との間で通信を行う機能を有する。例えば、通信部１４０は、通信インターフェースにより構成される。例えば、通信部１４０は、ネットワーク７０を介して、エージェントサーバ４０およびクラウドストレージ５０−１〜５０−Ｎとの間で通信を行うことが可能である。
【００３０】
記憶部１５０は、制御部１１０によって実行されるプログラムを記憶したり、プログラムの実行に必要なデータを記憶したりする記録媒体である。また、記憶部１５０は、制御部１１０による演算のためにデータを一時的に記憶する。記憶部１５０は、磁気記憶部デバイスであってもよいし、半導体記憶デバイスであってもよいし、光記憶デバイスであってもよいし、光磁気記憶デバイスであってもよい。
【００３１】
以上、本開示の実施形態に係るサーバ１０の機能構成例について説明した。
【００３２】
［１．２．全体的な機能］
続いて、本開示の実施形態に係る情報処理システム１の全体的な機能について説明する。図６は、本開示の実施形態に係る情報処理システム１の全体的な機能について説明するための図である。
【００３３】
（１．２．１．家族情報登録処理）
図４〜図６を参照しながら、家族情報を登録する処理の例について説明する。まず、父端末２０−１は、ＩＤとパスワードとをＩＤプロバイダ６０に送信し、ＩＤプロバイダ６０からＩＤとパスワードとに対応して発行されたトークンが返信されると、トークンを含んだ家族登録要求をホームエージェント３０に送信する。なお、ここでは、父が父端末２０−１を用いて家族情報を登録する場合を想定するが、父以外の家族（例えば、母、子供など）が家族情報の登録を行ってもよい。
【００３４】
ホームエージェント３０は、トークンを含んだ家族登録要求を受信すると、トークンを含んだ家族登録要求をエージェントサーバ４０に送信する。エージェントサーバ４０は、トークンを含んだ認証要求をＩＤプロバイダ６０に送信し、ＩＤプロバイダ６０からトークンに対応するＩＤが返信されると、家族鍵生成要求（第１の鍵生成要求）をサーバ１０に送信する。
【００３５】
サーバ１０においては、通信部１４０によって家族鍵生成要求が受信されると、制御部１１０は、家族鍵生成要求に基づいて、家族内共有情報（第１のデータ）を復号可能な家族鍵（第１の鍵）をＫｅｙ家族として生成する。そして、制御部１１０は、Ｋｅｙ家族からＫｅｙ家族に基づく複数のシェアを生成する。より具体的には、制御部１１０は、Ｋｅｙ家族を秘密分散法によって複数のシェアに分割する。
【００３６】
制御部１１０は、家族鍵生成要求に基づいて、Ｋｅｙ家族に基づく複数のシェアの一部（ＤＳ家族）がエージェントサーバ４０（第１の情報提供装置）に送信されるように通信部１４０を制御する。エージェントサーバ４０は、ＤＳ家族を受信すると、ＤＳ家族に対応する家族ＩＤを作成し、家族ＩＤを自身の記憶装置に登録する。エージェントサーバ４０がＤＳ家族をホームエージェント３０に送信すると、ホームエージェント３０は、ＤＳ家族を受信して保存し、家族登録が完了した旨を父端末２０−１に返信する。
【００３７】
一方、制御部１１０は、家族鍵生成要求に基づいて、Ｋｅｙ家族に基づく複数のシェアの他の一部（ＣＳ家族［１］）がクラウドストレージ５０−１〜５０−Ｎ（第２の情報提供装置）に送信されるように通信部１４０を制御する。より具体的に、制御部１１０は、他の一部（ＣＳ家族［１］）を秘密分散法によってＣＳ家族［１，１］〜ＣＳ家族［１，Ｎ］に分割し、ＣＳ家族［１，１］がクラウドストレージ５０−１に送信され、ＣＳ家族［１，２］がクラウドストレージ５０−２に送信され、ＣＳ家族［１，Ｎ］がクラウドストレージ５０−Ｎに送信されるように通信部１４０を制御する。
【００３８】
（１．２．２．１人目のユーザ登録処理）
続いて、１人目のユーザとして父を登録する処理の例について説明する。なお、ここでは、１人目のユーザとして父のユーザ登録を行う場合を想定するが、１人目のユーザとして父以外の家族（例えば、母、子供など）のユーザ登録が行われてもよい。父端末２０−１は、ＩＤとパスワードとをＩＤプロバイダ６０に送信し、ＩＤプロバイダ６０からＩＤとパスワードとに対応して発行されたトークンが返信されると、トークンを含んだユーザ登録要求をホームエージェント３０に送信する。
【００３９】
ホームエージェント３０は、トークンを含んだユーザ登録要求を受信すると、自身の記憶装置からＤＳ家族を読み出し、ＤＳ家族とトークンとを含んだユーザ登録要求をエージェントサーバ４０に送信する。エージェントサーバ４０は、トークンを含んだ認証要求をＩＤプロバイダ６０に送信し、ＩＤプロバイダ６０からトークンに対応するＩＤが返信されると、ＤＳ家族を含んだ父鍵生成要求（第２の鍵生成要求）をサーバ１０に送信する。
【００４０】
サーバ１０においては、通信部１４０によって父鍵生成要求が受信されると、制御部１１０は、父鍵生成要求に基づいて父鍵生成要求からＤＳ家族を取得し、ＤＳ家族から家族鍵を復元する。より具体的には、制御部１１０は、父鍵生成要求からＤＳ家族を取得すると、ＤＳ家族に対応するＣＳ父［１］をクラウドストレージ５０−１〜５０−Ｎから取得し、ＤＳ家族とＣＳ父［１］とを結合させることによって、Ｋｅｙ家族（家族鍵）を得る。
【００４１】
続いて、制御部１１０は、Ｋｅｙ家族の一部または全部に基づく複数のシェアの一部を、父パーソナルデータ（第２のデータ）を復号可能な父鍵（第２の鍵）をＫｅｙ父として生成する。ここでは、制御部１１０が、Ｋｅｙ家族の一部（ＤＳ家族）に基づく複数のシェアの一部を、Ｋｅｙ父として生成する場合を主に想定する。しかし、制御部１１０は、Ｋｅｙ家族の全部（ＤＳ家族およびＣＳ家族［１］）に基づく複数のシェアの一部を、Ｋｅｙ父として生成してもよい。
【００４２】
制御部１１０は、Ｋｅｙ父をＫｅｙ家族で暗号化することによって、暗号化された鍵（図６には、Ｅｎｃ（Ｋｅｙ家族，Ｋｅｙ父）と表されている）を生成し、生成したＥｎｃ（Ｋｅｙ家族，Ｋｅｙ父）を記憶部１５０に記憶させる。そして、制御部１１０は、Ｋｅｙ父に基づく複数のシェアを生成する。より具体的には、制御部１１０は、Ｋｅｙ父を秘密分散法によって複数のシェアに分割する。
【００４３】
制御部１１０は、父鍵生成要求に基づいて、Ｋｅｙ父に基づく複数のシェアの一部（ＤＳ父）がエージェントサーバ４０（第１の情報提供装置）に送信されるように通信部１４０を制御する。エージェントサーバ４０は、ＤＳ父を受信すると、ＤＳ父に対応するユーザＩＤ父を作成し、ユーザＩＤ父を自身の記憶装置に登録する。エージェントサーバ４０がＤＳ父をホームエージェント３０に送信すると、ホームエージェント３０は、ＤＳ父を父端末２０−１に送信し、父端末２０−１は、ＤＳ父を受信して保存する。
【００４４】
一方、制御部１１０は、父鍵生成要求に基づいて、Ｋｅｙ父に基づく複数のシェアの他の一部（ＣＳ父［１］）がクラウドストレージ５０−１〜５０−Ｎ（第２の情報提供装置）に送信されるように通信部１４０を制御する。より具体的に、制御部１１０は、他の一部（ＣＳ父［１］）を秘密分散法によってＣＳ父［１，１］〜ＣＳ父［１，Ｎ］に分割し、ＣＳ父［１，１］がクラウドストレージ５０−１に送信され、ＣＳ父［１，２］がクラウドストレージ５０−２に送信され、ＣＳ父［１，Ｎ］がクラウドストレージ５０−Ｎに送信されるように通信部１４０を制御する。
【００４５】
また、制御部１１０は、父鍵生成要求に基づいて、Ｋｅｙ父に基づく複数のシェアの他の一部（ＣＳ父［２］）がクラウドストレージ５０−１〜５０−Ｎ（第２の情報提供装置）に送信されるように通信部１４０を制御する。より具体的に、制御部１１０は、他の一部（ＣＳ父［２］）を秘密分散法によってＣＳ父［２，１］〜ＣＳ父［２，Ｎ］に分割し、ＣＳ父［２，１］がクラウドストレージ５０−１に送信され、ＣＳ父［２，２］がクラウドストレージ５０−２に送信され、ＣＳ父［２，Ｎ］がクラウドストレージ５０−Ｎに送信されるように通信部１４０を制御する。
【００４６】
（１．２．３．２人目のユーザ登録処理）
続いて、２人目のユーザとして母を登録する処理の例について説明する。なお、ここでは、２人目のユーザとして母のユーザ登録を行う場合を想定するが、２人目のユーザとして母以外の家族（例えば、子供など）のユーザ登録が行われてもよい。母端末２０−２は、ＩＤとパスワードとをＩＤプロバイダ６０に送信し、ＩＤプロバイダ６０からＩＤとパスワードとに対応して発行されたトークンが返信されると、トークンを含んだユーザ登録要求をホームエージェント３０に送信する。
【００４７】
ホームエージェント３０は、トークンを含んだユーザ登録要求を受信すると、自身の記憶装置からＤＳ家族を読み出し、ＤＳ家族とトークンとを含んだユーザ登録要求をエージェントサーバ４０に送信する。エージェントサーバ４０は、トークンを含んだ認証要求をＩＤプロバイダ６０に送信し、ＩＤプロバイダ６０からトークンに対応するＩＤが返信されると、ＤＳ家族を含んだ母鍵生成要求（第３の鍵生成要求）をサーバ１０に送信する。
【００４８】
サーバ１０においては、通信部１４０によって母鍵生成要求が受信されると、制御部１１０は、母鍵生成要求に基づいて母鍵生成要求からＤＳ家族を取得し、ＤＳ家族から家族鍵を復元する。より具体的には、制御部１１０は、母鍵生成要求からＤＳ家族を取得すると、ＤＳ家族に対応するＣＳ母［１］をクラウドストレージ５０−１〜５０−Ｎから取得し、ＤＳ家族とＣＳ母［１］とを結合させることによって、Ｋｅｙ家族（家族鍵）を得る。
【００４９】
続いて、制御部１１０は、Ｋｅｙ家族の一部または全部に基づく複数のシェアの一部を、母パーソナルデータ（第３のデータ）を復号可能な母鍵（第３の鍵）をＫｅｙ母として生成する。ここでは、制御部１１０が、Ｋｅｙ家族の一部（ＤＳ家族）に基づく複数のシェアの一部を、Ｋｅｙ母として生成する場合を主に想定する。しかし、制御部１１０は、Ｋｅｙ家族の全部（ＤＳ家族およびＣＳ家族［１］）に基づく複数のシェアの一部を、Ｋｅｙ母として生成してもよい。
【００５０】
制御部１１０は、Ｋｅｙ母をＫｅｙ家族で暗号化することによって、暗号化された鍵（図６には、Ｅｎｃ（Ｋｅｙ家族，Ｋｅｙ母）と表されている）を生成し、生成したＥｎｃ（Ｋｅｙ家族，Ｋｅｙ母）を記憶部１５０に記憶させる。そして、制御部１１０は、Ｋｅｙ母に基づく複数のシェアを生成する。より具体的には、制御部１１０は、Ｋｅｙ家族を秘密分散法によって複数のシェアに分割する。
【００５１】
制御部１１０は、母鍵生成要求に基づいて、Ｋｅｙ母に基づく複数のシェアの一部（ＤＳ母）がエージェントサーバ４０（第１の情報提供装置）に送信されるように通信部１４０を制御する。エージェントサーバ４０は、ＤＳ母を受信すると、ＤＳ母に対応するユーザＩＤ母を作成し、ユーザＩＤ母を自身の記憶装置に登録する。エージェントサーバ４０がＤＳ母をホームエージェント３０に送信すると、ホームエージェント３０は、ＤＳ母を母端末２０−２に送信し、母端末２０−２は、ＤＳ母を受信して保存する。
【００５２】
一方、制御部１１０は、母鍵生成要求に基づいて、Ｋｅｙ母に基づく複数のシェアの他の一部（ＣＳ母［１］）がクラウドストレージ５０−１〜５０−Ｎ（第２の情報提供装置）に送信されるように通信部１４０を制御する。より具体的に、制御部１１０は、他の一部（ＣＳ母［１］）を秘密分散法によってＣＳ母［１，１］〜ＣＳ母［１，Ｎ］に分割し、ＣＳ母［１，１］がクラウドストレージ５０−１に送信され、ＣＳ母［１，２］がクラウドストレージ５０−２に送信され、ＣＳ母［１，Ｎ］がクラウドストレージ５０−Ｎに送信されるように通信部１４０を制御する。
【００５３】
また、制御部１１０は、母鍵生成要求に基づいて、Ｋｅｙ母に基づく複数のシェアの他の一部（ＣＳ母［２］）がクラウドストレージ５０−１〜５０−Ｎ（第２の情報提供装置）に送信されるように通信部１４０を制御する。より具体的に、制御部１１０は、他の一部（ＣＳ母［２］）を秘密分散法によってＣＳ母［２，１］〜ＣＳ母［２，Ｎ］に分割し、ＣＳ母［２，１］がクラウドストレージ５０−１に送信され、ＣＳ母［２，２］がクラウドストレージ５０−２に送信され、ＣＳ母［２，Ｎ］がクラウドストレージ５０−Ｎに送信されるように通信部１４０を制御する。
【００５４】
（１．２．４．家族共有情報の保存処理）
続いて、家族共有情報（第１のデータ）を保存する処理の例について説明する。ここでは、家族共有情報として、家の住所と緯度・経度を保存する処理の例について説明する。しかし、家族共有情報は、かかる例に限定されない。父端末２０−１は、住所と緯度・経度とを含んだ住所登録要求をホームエージェント３０に送信する。なお、ここでは、父が父端末２０−１を用いて家族共有情報を保存する場合を想定するが、父以外の家族（例えば、母、子供など）が家族共有情報の保存を行ってもよい。
【００５５】
ホームエージェント３０は、住所と緯度・経度とを含んだ住所登録要求を受信すると、自身の記憶装置からＤＳ家族を取得し、ＤＳ家族と住所と緯度・経度とを含んだ住所登録要求をエージェントサーバ４０に送信する。エージェントサーバ４０は、ホームエージェント３０から住所登録要求を受信すると、ＤＳ家族と住所と緯度・経度とを含んだ住所暗号化要求（第１の暗号化要求）をサーバ１０に送信する。
【００５６】
サーバ１０においては、通信部１４０によって住所暗号化要求が受信されると、制御部１１０は、住所暗号化要求に基づいて、Ｋｅｙ家族に基づく複数のシェアの一部（ＤＳ家族）を取得するとともにＫｅｙ家族に基づく複数のシェアの他の一部（ＣＳ家族［１］）を取得し、Ｋｅｙ家族に基づく複数のシェアの一部（ＤＳ家族）と他の一部（ＣＳ家族［１］）とに基づいてＫｅｙ家族を復元する。
【００５７】
より具体的には、制御部１１０は、住所暗号化要求から、Ｋｅｙ家族に基づく複数のシェアの一部（ＤＳ家族）を取得するとともに、クラウドストレージ５０−１〜５０−Ｎから、Ｋｅｙ家族に基づく複数のシェアの他の一部（ＣＳ家族［１］）を取得し、Ｋｅｙ家族に基づく複数のシェアの一部（ＤＳ家族）と他の一部（ＣＳ家族［１］）とを結合させることによってＫｅｙ家族を復元する。制御部１１０は、復元したＫｅｙ家族で住所および緯度・経度を暗号化し、暗号化した住所および緯度・経度がエージェントサーバ４０に送信されるように通信部１４０を制御する。
【００５８】
エージェントサーバ４０は、暗号化された住所および緯度・経度を受信すると、暗号化された住所および緯度・経度を保存する。エージェントサーバ４０は、ホームエージェント３０を介して父端末２０−１に住所および緯度・経度の登録が完了した旨を返信する。
【００５９】
（１．２．５．家族共有情報の取得処理）
続いて、家族共有情報を取得する処理の例について説明する。図７は、ホームエージェント３０を利用した家族共有情報およびパーソナルデータの取得処理の例について説明するための図である。図８は、父端末２０−１を利用した家族共有情報およびパーソナルデータの取得処理の例について説明するための図である。まず、図７を参照しながら、ホームエージェント３０を利用した家族共有情報の取得処理の例について説明する。
【００６０】
ホームエージェント３０は、ホームエージェント３０を利用しているユーザを認識する。ここで、ユーザの認識はどのようになされてもよい。ホームエージェント３０が有するカメラによって撮像された画像から顔認識によってユーザを認識してもよいし、ホームエージェント３０が有するマイクロフォンによって集音された音情報から音声認識によってユーザを認識してもよい。
【００６１】
ホームエージェント３０は、ユーザの例として父を認識した場合、ＤＳ家族からＫｅｙ家族を導出し（Ｓ１）、Ｋｅｙ家族を含んだ住所取得要求をエージェントサーバ４０に送信する。なお、ここでは、父がホームエージェント３０を用いて家族共有情報を取得する場合を想定するが、父以外の家族（例えば、母、子供など）が家族共有情報の取得を行ってもよい。エージェントサーバ４０は、Ｋｅｙ家族を含んだ住所取得要求を受信すると、自身の記憶装置から、Ｋｅｙ家族によって暗号化された住所および緯度・経度を取得し、Ｋｅｙ家族と暗号化された住所および緯度・経度とを含んだ住所復号要求をサーバ１０に送信する。
【００６２】
サーバ１０においては、通信部１４０によって住所復号要求が受信されると、制御部１１０は、住所復号要求に基づいて、住所および緯度・経度を復号する。まず、制御部１１０は、住所復号要求に基づいて、住所復号要求からＫｅｙ家族を取得し、住所および緯度・経度をＫｅｙ家族で復号する。制御部１１０は、エージェントサーバ４０を介してホームエージェント３０に住所および緯度・経度を返信する。
【００６３】
続いて、図８を参照しながら、父端末２０−１を利用した家族共有情報の取得処理の例について説明する。まず、父端末２０−１は、ＤＳ父を含んだ住所取得要求をエージェントサーバ４０に送信する。なお、ここでは、父が父端末２０−１を用いて家族共有情報を取得する場合を想定するが、父以外の家族（例えば、母、子供など）が家族共有情報の取得を行ってもよい。
【００６４】
エージェントサーバ４０は、ＤＳ父を含んだ住所取得要求を受信すると、自身の記憶装置から、Ｋｅｙ家族によって暗号化された住所および緯度・経度を取得し、ＤＳ父と暗号化された住所および緯度・経度とを含んだ住所復号要求（第１の復号要求）をサーバ１０に送信する。
【００６５】
サーバ１０においては、通信部１４０によって住所復号要求が受信されると、制御部１１０は、住所復号要求に基づいて、住所および緯度・経度を復号する。まず、制御部１１０は、住所復号要求に基づいて、Ｋｅｙ父に基づく複数のシェアの一部（ＤＳ父）を取得するとともにＫｅｙ父に基づく複数のシェアの他の一部（ＣＳ父［１］）を取得し、Ｋｅｙ父に基づく複数のシェアの一部（ＤＳ父）と他の一部（ＣＳ父［１］）とに基づいてＫｅｙ父を復元する（Ｓ３）。
【００６６】
より具体的には、制御部１１０は、住所復号要求から、Ｋｅｙ父に基づく複数のシェアの一部（ＤＳ父）を取得するとともに、クラウドストレージ５０−１〜５０−Ｎから、Ｋｅｙ父に基づく複数のシェアの他の一部（ＣＳ父［２］）を取得し、Ｋｅｙ父に基づく複数のシェアの一部（ＤＳ父）と他の一部（ＣＳ父［２］）とを結合させることによってＫｅｙ父を復元する。
【００６７】
また、制御部１１０は、クラウドストレージ５０−１〜５０−Ｎから、Ｋｅｙ家族の一部または全部に基づく複数のシェアの他の一部（ＣＳ父［１］）を取得し、他の一部（ＣＳ父［１］）とＫｅｙ父とを結合させることによって、Ｋｅｙ家族の一部または全部を復元する。ここでは、ＤＳ家族が復元される場合を想定する（Ｓ４）。制御部１１０は、クラウドストレージ５０−１〜５０−Ｎから、ＤＳ家族に対応するＣＳ家族［１］を取得し、ＤＳ家族とＣＳ家族［１］とを結合させることによってＫｅｙ家族を復元する（Ｓ５）。
【００６８】
そして、制御部１１０は、住所および緯度・経度をＫｅｙ家族で復号する。制御部１１０は、エージェントサーバ４０を介して父端末２０−１に住所および緯度・経度を返信する。
【００６９】
（１．２．６．パーソナルデータの保存処理）
続いて、パーソナルデータを保存する処理の例について説明する。ここでは、パーソナルデータとして、父の位置情報（緯度・経度）を保存する処理の例について説明する。しかし、パーソナルデータは、かかる例に限定されない。
【００７０】
まず、父端末２０−１は、ＤＳ父と緯度・経度とを含んだ位置情報保存要求をエージェントサーバ４０に送信する。なお、ここでは、父が父端末２０−１を用いてパーソナルデータを保存する場合を想定するが、父以外の家族（例えば、母、子供など）がパーソナルデータの保存を行ってもよい。
【００７１】
エージェントサーバ４０は、ＤＳ父と緯度・経度とを含んだ位置情報保存要求を受信すると、ＤＳ父と緯度・経度とを含んだ位置情報暗号化要求（第２の暗号化要求）をサーバ１０に送信する。
【００７２】
サーバ１０においては、通信部１４０によって位置情報暗号化要求が受信されると、制御部１１０は、位置情報暗号化要求に基づいて、Ｋｅｙ父に基づく複数のシェアの一部（ＤＳ父）を取得するとともにＫｅｙ父に基づく複数のシェアの他の一部（ＣＳ父［２］）を取得し、Ｋｅｙ父に基づく複数のシェアの一部（ＤＳ父）と他の一部（ＣＳ父［２］）とに基づいてＫｅｙ父を復元する。
【００７３】
より具体的には、制御部１１０は、位置情報暗号化要求から、Ｋｅｙ父に基づく複数のシェアの一部（ＤＳ父）を取得するとともに、クラウドストレージ５０−１〜５０−Ｎから、Ｋｅｙ父に基づく複数のシェアの他の一部（ＣＳ父［２］）を取得し、Ｋｅｙ父に基づく複数のシェアの一部（ＤＳ父）と他の一部（ＣＳ父［２］）とを結合させることによってＫｅｙ父を復元する。制御部１１０は、復元したＫｅｙ父で緯度・経度を暗号化し、暗号化した緯度・経度がエージェントサーバ４０に送信されるように通信部１４０を制御する。
【００７４】
エージェントサーバ４０は、暗号化された緯度・経度を受信すると、暗号化された緯度・経度を保存する。エージェントサーバ４０は、ホームエージェント３０を介して父端末２０−１に緯度・経度の登録が完了した旨を返信する。
【００７５】
（１．２．７．パーソナルデータの取得処理）
続いて、パーソナルデータを取得する処理の例について説明する。まず、図７を参照しながら、ホームエージェント３０を利用したパーソナルデータの取得処理の例について説明する。
【００７６】
ホームエージェント３０は、ホームエージェント３０を利用しているユーザを認識する。ユーザの認識は、上記したようにして行われてよい。ホームエージェント３０は、ユーザの例として父を認識した場合、ＤＳ家族からＫｅｙ家族を導出し（Ｓ１）、Ｋｅｙ家族を含んだ位置情報取得要求をエージェントサーバ４０に送信する。なお、ここでは、父がホームエージェント３０を用いて自身のパーソナルデータを取得する場合を想定するが、父以外の家族（例えば、母、子供など）が自身のパーソナルデータの取得を行ってもよい。
【００７７】
エージェントサーバ４０は、Ｋｅｙ家族を含んだ父位置情報取得要求を受信すると、Ｋｅｙ家族を含んだ父位置情報復号要求をサーバ１０に送信する。サーバ１０においては、制御部１１０が、父位置情報復号要求から、Ｋｅｙ家族を取得し、Ｋｅｙ父をＫｅｙ家族で復号する。そして、制御部１１０は、緯度・経度をＫｅｙ父で復号する。制御部１１０は、エージェントサーバ４０を介してホームエージェント３０に緯度・経度を返信する。
【００７８】
続いて、図８を参照しながら、父端末２０−１を利用したパーソナルデータの取得処理の例について説明する。まず、父端末２０−１は、ＤＳ父を含んだ位置情報取得要求をエージェントサーバ４０に送信する。なお、ここでは、父が父端末２０−１を用いて自身のパーソナルデータを取得する場合を想定するが、父以外の家族（例えば、母、子供など）が自身のパーソナルデータの取得を行ってもよい。
【００７９】
エージェントサーバ４０は、ＤＳ父を含んだ位置情報取得要求を受信すると、自身の記憶装置から、Ｋｅｙ父によって暗号化された住所および緯度・経度を取得し、ＤＳ父と暗号化された緯度・経度とを含んだ位置情報復号要求（第２の復号要求）をサーバ１０に送信する。
【００８０】
サーバ１０においては、通信部１４０によって位置情報復号要求が受信されると、制御部１１０は、位置情報復号要求に基づいて、Ｋｅｙ父を復元し（Ｓ３）、Ｋｅｙ父で緯度・経度を復号する。まず、制御部１１０は、位置情報復号要求に基づいて、Ｋｅｙ父に基づく複数のシェアの一部（ＤＳ父）を取得するとともにＫｅｙ父に基づく複数のシェアの他の一部（ＣＳ父［２］）を取得し、Ｋｅｙ父に基づく複数のシェアの一部（ＤＳ父）と他の一部（ＣＳ父［２］）とに基づいてＫｅｙ父を復元する。
【００８１】
より具体的には、制御部１１０は、位置情報復号要求から、Ｋｅｙ父に基づく複数のシェアの一部（ＤＳ父）を取得するとともに、クラウドストレージ５０−１〜５０−Ｎから、Ｋｅｙ父に基づく複数のシェアの他の一部（ＣＳ父［２］）を取得し、Ｋｅｙ父に基づく複数のシェアの一部（ＤＳ父）と他の一部（ＣＳ父［２］）とを結合させることによってＫｅｙ父を復元する。
【００８２】
そして、制御部１１０は、緯度・経度をＫｅｙ父で復号する。制御部１１０は、エージェントサーバ４０およびホームエージェント３０を介して父端末２０−１に緯度・経度を返信する。
【００８３】
（１．２．８．パーソナルデータの共有処理）
続いて、パーソナルデータを共有する処理の例について説明する。ここでは、パーソナルデータとして、父の位置情報（緯度・経度）を共有する処理の例について説明する。しかし、パーソナルデータは、かかる例に限定されない。また、ここでは、父パーソナルデータが母に共有される例を説明する。しかし、誰のパーソナルデータが誰に共有されるかは限定されない。
【００８４】
図９は、母端末２０−２を利用した父パーソナルデータの共有処理の例について説明するための図である。まず、母端末２０−２は、ＤＳ母を含んだ父位置情報共有要求をエージェントサーバ４０に送信する。エージェントサーバ４０は、ＤＳ母を含んだ父位置情報共有要求を受信すると、自身の記憶装置から、Ｋｅｙ父によって暗号化された緯度・経度を取得し、ＤＳ母と暗号化された緯度・経度とを含んだ父位置情報復号要求（第３の復号要求）をサーバ１０に送信する。
【００８５】
サーバ１０においては、通信部１４０によって父位置情報復号要求が受信されると、制御部１１０は、父位置情報復号要求に基づいて、Ｋｅｙ母を復元し（Ｓ６）、Ｋｅｙ母に基づいて、Ｋｅｙ家族を復元し、Ｋｅｙ家族に基づいて、Ｋｅｙ父を復元し、Ｋｅｙ父で緯度・経度を復号する。まず、制御部１１０は、父位置情報復号要求に基づいて、Ｋｅｙ母に基づく複数のシェアの一部（ＤＳ母）を取得するとともにＫｅｙ母に基づく複数のシェアの他の一部（ＣＳ母［２］）を取得し、Ｋｅｙ母に基づく複数のシェアの一部（ＤＳ母）と他の一部（ＣＳ母［２］）とに基づいてＫｅｙ母を復元する。
【００８６】
より具体的には、制御部１１０は、位置情報復号要求から、Ｋｅｙ母に基づく複数のシェアの一部（ＤＳ母）を取得するとともに、クラウドストレージ５０−１〜５０−Ｎから、Ｋｅｙ母に基づく複数のシェアの他の一部（ＣＳ母［２］）を取得し、Ｋｅｙ母に基づく複数のシェアの一部（ＤＳ母）と他の一部（ＣＳ母［２］）とを結合させることによってＫｅｙ母を復元する。
【００８７】
そして、制御部１１０は、Ｋｅｙ家族の一部または全部に基づく複数のシェアの他の一部（ＣＳ母［１］）を取得し、他の一部（ＣＳ母［１］）とＫｅｙ母とに基づいて、Ｋｅｙ家族を復元する。
【００８８】
より具体的に、制御部１１０は、クラウドストレージ５０−１〜５０−Ｎから、Ｋｅｙ家族の一部または全部に基づく複数のシェアの他の一部（ＣＳ母［１］）を取得し、他の一部（ＣＳ母［１］）とＫｅｙ母とを結合させることによって、Ｋｅｙ家族の一部または全部を復元する。ここでは、ＤＳ家族が復元される場合を想定する（Ｓ７）。制御部１１０は、クラウドストレージ５０−１〜５０−Ｎから、ＤＳ家族に対応するＣＳ家族［１］を取得し、ＤＳ家族とＣＳ家族［１］とを結合させることによってＫｅｙ家族を復元する（Ｓ８）。
【００８９】
そして、制御部１１０は、Ｋｅｙ家族に基づいてＫｅｙ父を復号する（Ｓ９）。制御部１１０は、緯度・経度をＫｅｙ父で復号する。制御部１１０は、エージェントサーバ４０を介して母端末２０−２に緯度・経度を返信する。このとき、エージェントサーバ４０は、父の緯度・経度をそのまま母端末２０−２に返信してもよいが、制御部１１０によって、Ｋｅｙ家族を用いて家の住所も復号される場合が想定される。かかる場合には、エージェントサーバ４０は、家の住所に対応する緯度・経度と父の緯度・経度とに基づいて、父と家との距離に関する情報を母端末２０−２に返信してもよいし、家の住所から最も近い駅と父との距離に関する情報を母端末２０−２に返信してもよい。
【００９０】
（１．２．９．アクセス制御）
上記のようにして、家族鍵、父鍵および母鍵が復元され得る。このとき、鍵の復元には制限が設けられていてよい。すなわち、制御部１１０は、アクセス制御情報に基づいて、鍵を復元するか否かを制御してもよい。例えば、制御部１１０は、子供端末２０−３からアクセスがあった場合には家族鍵を復元しないが、父端末２０−１または母端末２０−２からアクセスがあった場合には家族鍵を復元するようにアクセス制御情報が設定されていてもよい。
【００９１】
具体的に、制御部１１０は、アクセス制御情報に基づいて、家族鍵を復元するか否かを制御してもよい。また、制御部１１０は、アクセス制御情報に基づいて、父鍵を復元するか否かを制御してもよい。また、制御部１１０は、アクセス制御情報に基づいて、母鍵を復元するか否かを制御してもよい。また、制御部１１０は、アクセス制御情報に基づいて、子供鍵を復元するか否かを制御してもよい。
【００９２】
また、上記のようにして、家族共有情報および父パーソナルデータが復号され得る。このとき、各種データの復号には制限が設けられていてよい。すなわち、制御部１１０は、アクセス制御情報に基づいて、データを復号するか否かを制御してもよい。例えば、制御部１１０は、子供端末２０−３からアクセスがあった場合には家族共有情報を復号しないが、父端末２０−１または母端末２０−２からアクセスがあった場合には家族共有情報を復号するようにアクセス制御情報が設定されていてもよい。
【００９３】
（１．２．１０．各種の変形例）
図１０は、各種の変形例について説明するための図である。上記では、１つの家庭内に１台のホームエージェント３０が設けられる場合を主に想定した。しかし、１つの家庭内に複数台のホームエージェント３０が設けられてもよい。例えば、図１０に示すように、制御部１１０は、１つの家庭内に２台目のホームエージェント３０を追加する場合には、Ｋｅｙ家族を再度分割して、１台目のホームエージェント３０が保持するＤＳ家族と異なるＤＳ家族を「２台目」のホームエージェント３０に保持させるのがよい。
【００９４】
また、複数の家庭それぞれに１または複数のホームエージェント３０が設けられてもよい。例えば、図１０に示すように、１つ目の家庭（家族ドメインＸ）の他に２つ目の家庭（家族ドメインＹ）が追加され、１つ目の家庭（家族ドメインＸ）および２つ目の家庭（家族ドメインＹ）それぞれにホームエージェント３０が設けられてもよい。このとき、図１０に示すように、制御部１１０は、１つ目の家庭（家族ドメインＸ）へのアクセスを、２つ目の家族に許可する場合、２つ目の家族ＹのＫｅｙ家族Ｙで１つ目の家族ＸのＫｅｙ家族Ｘを暗号化することによって、相互アクセスを可能としてもよい。
【００９５】
以上、本開示の実施形態に係る情報処理システム１の全体的な機能について説明した。
【００９６】
［１．３．動作例］
続いて、本開示の実施形態に係る情報処理システム１の動作例について説明する。
【００９７】
（１．３．１．家族情報登録処理）
図１１は、家族情報を登録する処理の例を示すシーケンス図である。図１１を参照しながら、家族情報を登録する処理の例について説明する。なお、図１１に示したシーケンス図は、家族情報を登録する処理の一例を示したに過ぎない。したがって、家族情報を登録する処理は、図１１に示したシーケンス図の処理例に限定されない。
【００９８】
図１１に示すように、父端末２０−１は、ＩＤとパスワードとをＩＤプロバイダ６０に送信し（Ｓ１１）、ＩＤプロバイダ６０からＩＤとパスワードとに対応して発行されたトークンが返信されると（Ｓ１２）、トークンを含んだ家族登録要求をホームエージェント３０に送信する（Ｓ１３）。ホームエージェント３０は、トークンを含んだ家族登録要求を受信すると、トークンを含んだ家族登録要求をエージェントサーバ４０に送信する（Ｓ１４）。
【００９９】
エージェントサーバ４０は、トークンを含んだ認証要求をＩＤプロバイダ６０に送信し（Ｓ１５）、ＩＤプロバイダ６０からトークンに対応するＩＤが返信されると（Ｓ１６）、家族鍵生成要求（第１の鍵生成要求）をサーバ１０に送信する（Ｓ１７）。
【０１００】
サーバ１０においては、通信部１４０によって家族鍵生成要求が受信されると、制御部１１０は、家族鍵生成要求に基づいて、家族内共有情報（第１のデータ）を復号可能な家族鍵（第１の鍵）をＫｅｙ家族として生成する（Ｓ１８）。そして、制御部１１０は、Ｋｅｙ家族を秘密分散法によって複数のシェアに分割する（Ｓ１９）。
【０１０１】
制御部１１０は、Ｋｅｙ家族に基づく複数のシェアの他の一部（ＣＳ家族［１］）を秘密分散法によってＣＳ家族［１，１］〜ＣＳ家族［１，Ｎ］に分割し（Ｓ２０）、ＣＳ家族［１，１］がクラウドストレージ５０−１に送信され（Ｓ２１）、ＣＳ家族［１，２］がクラウドストレージ５０−２に送信され、ＣＳ家族［１，Ｎ］がクラウドストレージ５０−Ｎに送信されるように通信部１４０を制御する（Ｓ２２）。
【０１０２】
制御部１１０は、家族鍵生成要求に基づいて、Ｋｅｙ家族に基づく複数のシェアの一部（ＤＳ家族）がエージェントサーバ４０（第１の情報提供装置）に送信されるように通信部１４０を制御する（Ｓ２３）。エージェントサーバ４０は、ＤＳ家族を受信すると、ＤＳ家族に対応する家族ＩＤを作成し（Ｓ２４）、家族ＩＤを自身の記憶装置に登録する（Ｓ２５）。エージェントサーバ４０がＤＳ家族をホームエージェント３０に送信すると（Ｓ２６）、ホームエージェント３０は、ＤＳ家族を受信して保存し（Ｓ２７）、家族登録が完了した旨を父端末２０−１に返信する（Ｓ２８）。
【０１０３】
（１．３．２．ユーザ登録処理）
図１２は、ユーザの例としての父を登録する処理の例を示すシーケンス図である。図１２を参照しながら、ユーザの例としての父を登録する処理の例について説明する。なお、図１２に示したシーケンス図は、ユーザ登録処理の一例を示したに過ぎない。したがって、ユーザ登録処理は、図１２に示したシーケンス図の処理例に限定されない。
【０１０４】
図１２に示すように、父端末２０−１は、ＩＤとパスワードとをＩＤプロバイダ６０に送信し（Ｓ３１）、ＩＤプロバイダ６０からＩＤとパスワードとに対応して発行されたトークンが返信されると（Ｓ３２）、トークンを含んだユーザ登録要求をホームエージェント３０に送信する（Ｓ３３）。ホームエージェント３０は、トークンを含んだユーザ登録要求を受信すると、自身の記憶装置からＤＳ家族を読み出し（Ｓ３４）、ＤＳ家族とトークンとを含んだユーザ登録要求をエージェントサーバ４０に送信する（Ｓ３５）。
【０１０５】
エージェントサーバ４０は、トークンを含んだ認証要求をＩＤプロバイダ６０に送信し（Ｓ３６）、ＩＤプロバイダ６０からトークンに対応するＩＤが返信されると（Ｓ３７）、ＤＳ家族を含んだ父鍵生成要求（第２の鍵生成要求）をサーバ１０に送信する（Ｓ３８）。
【０１０６】
サーバ１０においては、通信部１４０によって父鍵生成要求が受信されると、制御部１１０は、父鍵生成要求からＤＳ家族を取得すると、ＤＳ家族に対応するＣＳ父［１］をクラウドストレージ５０−１〜５０−Ｎから取得し（Ｓ３９、Ｓ４０）、ＤＳ家族とＣＳ父［１］とを結合させることによって、Ｋｅｙ家族（家族鍵）を得る（Ｓ４１）。続いて、制御部１１０は、Ｋｅｙ家族の一部（ＤＳ家族）に基づく複数のシェアの一部を、父パーソナルデータ（第２のデータ）を復号可能な父鍵（第２の鍵）をＫｅｙ父として生成し、他の一部をＣＳ父［１］として生成する（Ｓ４２）。
【０１０７】
制御部１１０は、制御部１１０は、他の一部（ＣＳ父［１］）を秘密分散法によってＣＳ父［１，１］〜ＣＳ父［１，Ｎ］に分割し（Ｓ４３）、ＣＳ父［１，１］がクラウドストレージ５０−１に送信され（Ｓ４４）、ＣＳ父［１，２］がクラウドストレージ５０−２に送信され、ＣＳ父［１，Ｎ］がクラウドストレージ５０−Ｎに送信されるように通信部１４０を制御する（Ｓ４５）。
【０１０８】
一方、制御部１１０は、Ｋｅｙ父をＫｅｙ家族で暗号化することによって、暗号化された鍵（図６には、Ｅｎｃ（Ｋｅｙ家族，Ｋｅｙ父）と表されている）を生成し（Ｓ４６）、生成したＥｎｃ（Ｋｅｙ家族，Ｋｅｙ父）を記憶部１５０に記憶させる（Ｓ４７）。そして、制御部１１０は、Ｋｅｙ父を秘密分散法によって複数のシェアに分割する（Ｓ４８）。
【０１０９】
制御部１１０は、Ｋｅｙ父に基づく複数のシェアの他の一部（ＣＳ父［２］）を秘密分散法によってＣＳ父［２，１］〜ＣＳ父［２，Ｎ］に分割し（Ｓ４９）、ＣＳ父［２，１］がクラウドストレージ５０−１に送信され（Ｓ５０）、ＣＳ父［２，２］がクラウドストレージ５０−２に送信され、ＣＳ父［２，Ｎ］がクラウドストレージ５０−Ｎに送信されるように通信部１４０を制御する（Ｓ５１）。
【０１１０】
制御部１１０は、父鍵生成要求に基づいて、Ｋｅｙ父に基づく複数のシェアの一部（ＤＳ父）がエージェントサーバ４０（第１の情報提供装置）に送信されるように通信部１４０を制御する（Ｓ５２）。エージェントサーバ４０は、ＤＳ父を受信すると、ＤＳ父に対応するユーザＩＤ父を作成し（Ｓ５３）、ユーザＩＤ父を自身の記憶装置に登録する（Ｓ５４）。エージェントサーバ４０がＤＳ父をホームエージェント３０に送信すると（Ｓ５５）、ホームエージェント３０は、ＤＳ父を父端末２０−１に送信し（Ｓ５６）、父端末２０−１は、ＤＳ父を受信して保存する（Ｓ５７）。
【０１１１】
（１．３．３．家族共有情報の保存処理）
図１３は、家族共有情報の例としての住所を登録する処理の例を示すシーケンス図である。図１３を参照しながら、家族共有情報の例としての住所を登録する処理の例について説明する。なお、図１３に示したシーケンス図は、家族共有情報の保存処理の一例を示したに過ぎない。したがって、家族共有情報の保存処理は、図１３に示したシーケンス図の処理例に限定されない。
【０１１２】
まず、父端末２０−１は、住所と緯度・経度とを含んだ住所登録要求をホームエージェント３０に送信する（Ｓ６１）。ホームエージェント３０は、住所と緯度・経度とを含んだ住所登録要求を受信すると、自身の記憶装置からＤＳ家族を取得し（Ｓ６２）、ＤＳ家族と住所と緯度・経度とを含んだ住所登録要求をエージェントサーバ４０に送信する（Ｓ６３）。エージェントサーバ４０は、ホームエージェント３０から住所登録要求を受信すると、ＤＳ家族と住所と緯度・経度とを含んだ住所暗号化要求（第１の暗号化要求）をサーバ１０に送信する（Ｓ６４）。
【０１１３】
サーバ１０においては、通信部１４０によって住所暗号化要求が受信されると、制御部１１０は、住所暗号化要求から、Ｋｅｙ家族に基づく複数のシェアの一部（ＤＳ家族）を取得するとともに、クラウドストレージ５０−１〜５０−Ｎから、Ｋｅｙ家族に基づく複数のシェアの他の一部（ＣＳ家族［１］）を取得し（Ｓ６５〜Ｓ６８）、Ｋｅｙ家族に基づく複数のシェアの一部（ＤＳ家族）と他の一部（ＣＳ家族［１］）とを結合させることによってＫｅｙ家族を復元する（Ｓ６９）。制御部１１０は、復元したＫｅｙ家族で住所および緯度・経度を暗号化し（Ｓ７０）、暗号化した住所および緯度・経度がエージェントサーバ４０に送信されるように通信部１４０を制御する（Ｓ７１）。
【０１１４】
エージェントサーバ４０は、暗号化された住所および緯度・経度を受信すると、暗号化された住所および緯度・経度を保存する。エージェントサーバ４０は、ホームエージェント３０を介して父端末２０−１に住所および緯度・経度の登録が完了した旨を返信する（Ｓ７２、Ｓ７３）。
【０１１５】
（１．３．４．パーソナルデータの保存処理）
図１４は、パーソナルデータの例としての緯度・経度を保存する処理の例を示すシーケンス図である。図１４を参照しながら、パーソナルデータの例としての緯度・経度を保存する処理の例について説明する。なお、図１４に示したシーケンス図は、パーソナルデータの保存処理の一例を示したに過ぎない。したがって、パーソナルデータの保存処理は、図１４に示したシーケンス図の処理例に限定されない。
【０１１６】
まず、父端末２０−１は、自身の記憶装置からＤＳ父を読み出し（Ｓ８１）、ＤＳ父と緯度・経度とを含んだ位置情報保存要求をエージェントサーバ４０に送信する（Ｓ８２）。エージェントサーバ４０は、ＤＳ父と緯度・経度とを含んだ位置情報保存要求を受信すると、ＤＳ父と緯度・経度とを含んだ位置情報暗号化要求（第２の暗号化要求）をサーバ１０に送信する（Ｓ８３）。
【０１１７】
サーバ１０においては、通信部１４０によって位置情報暗号化要求が受信されると、制御部１１０は、位置情報暗号化要求から、Ｋｅｙ父に基づく複数のシェアの一部（ＤＳ父）を取得するとともに、クラウドストレージ５０−１〜５０−Ｎから、Ｋｅｙ父に基づく複数のシェアの他の一部（ＣＳ父［２］）を取得し（Ｓ８４〜Ｓ８７）、Ｋｅｙ父に基づく複数のシェアの一部（ＤＳ父）と他の一部（ＣＳ父［２］）とを結合させることによってＫｅｙ父を復元する（Ｓ８８）。制御部１１０は、復元したＫｅｙ父で緯度・経度を暗号化し（Ｓ８９）、暗号化した緯度・経度がエージェントサーバ４０に送信されるように通信部１４０を制御する（Ｓ９０）。
【０１１８】
エージェントサーバ４０は、暗号化された緯度・経度を受信すると、暗号化された緯度・経度を保存する（Ｓ９１）。エージェントサーバ４０は、父端末２０−１に緯度・経度の登録が完了した旨を返信する（Ｓ９２）。
【０１１９】
（１．３．５．パーソナルデータの共有処理）
図１５は、パーソナルデータの例としての緯度・経度を共有する処理の例を示すシーケンス図である。図１５を参照しながら、パーソナルデータの例としての緯度・経度を共有する処理の例について説明する。なお、図１５に示したシーケンス図は、パーソナルデータの共有処理の一例を示したに過ぎない。したがって、パーソナルデータの共有処理は、図１５に示したシーケンス図の処理例に限定されない。
【０１２０】
まず、母端末２０−２は、ＤＳ母を自身の記憶装置から読み出し（Ｓ１０１）、ＤＳ母を含んだ父位置情報共有要求をエージェントサーバ４０に送信する（Ｓ１０２）。エージェントサーバ４０は、ＤＳ母を含んだ父位置情報共有要求を受信すると、自身の記憶装置から、Ｋｅｙ父によって暗号化された緯度・経度を取得し（Ｓ１０３）、ＤＳ母と暗号化された緯度・経度とを含んだ父位置情報復号要求（第３の復号要求）をサーバ１０に送信する（Ｓ１０４）。
【０１２１】
サーバ１０においては、通信部１４０によって父位置情報復号要求が受信されると、制御部１１０は、位置情報復号要求から、Ｋｅｙ母に基づく複数のシェアの一部（ＤＳ母）を取得するとともに、クラウドストレージ５０−１〜５０−Ｎから、Ｋｅｙ母に基づく複数のシェアの他の一部（ＣＳ母［２］）を取得し（Ｓ１０５〜Ｓ１０７）、Ｋｅｙ母に基づく複数のシェアの一部（ＤＳ母）と他の一部（ＣＳ母［２］）とを結合させることによってＫｅｙ母を復元する（Ｓ１０８）。
【０１２２】
そして、制御部１１０は、クラウドストレージ５０−１〜５０−Ｎから、Ｋｅｙ家族の一部または全部に基づく複数のシェアの他の一部（ＣＳ母［１］）を取得し（Ｓ１０９〜Ｓ１１１）、他の一部（ＣＳ母［１］）とＫｅｙ母とを結合させることによって、ＤＳ家族を復元する（Ｓ１１２）。制御部１１０は、クラウドストレージ５０−１〜５０−Ｎから、ＤＳ家族に対応するＣＳ家族［１］を取得し（Ｓ１１３〜Ｓ１１５）、ＤＳ家族とＣＳ家族［１］とを結合させることによってＫｅｙ家族を復元する（Ｓ１１６）。
【０１２３】
そして、制御部１１０は、Ｋｅｙ家族に基づいてＫｅｙ父を復号する（Ｓ１１７）。制御部１１０は、父の緯度・経度をＫｅｙ父で復号し（Ｓ１１８）、Ｋｅｙ家族で住所を復号する（Ｓ１１９）。制御部１１０は、住所と父の緯度経度とをエージェントサーバ４０に返信する（Ｓ１２０）。エージェントサーバ４０は、住所に対応する緯度・経度と父の緯度・経度とに基づいて、家の住所から最も近い駅と父との距離に関する情報（応答）を生成し（Ｓ１２１）、生成した情報を母端末２０−２に返信する（Ｓ１２２）。
【０１２４】
（１．３．６．家族間での情報共有処理）
図１６は、家族間での情報共有処理の例を示すフローチャートである。図１６を参照しながら、家族間での情報共有処理の例について説明する。なお、図１６に示したフローチャートは、家族間での情報共有処理の一例を示したに過ぎない。したがって、家族間での情報共有処理は、図１６に示したフローチャートの処理例に限定されない。
【０１２５】
図１６に示すように、ここでは、家族Ｘと家族Ｙとの間の情報共有を想定する。また、家族Ｘのメンバが家族Ｙのメンバと今度の休日に一緒に遊びたいと考えた場合を想定する（Ｓ１３１）。このとき、家族Ｘのメンバは、家族Ｙに対して家族Ｘの情報を共有させるか否かを家族Ｘのホームエージェントに対して入力する（Ｓ１３２）。一方、家族Ｙのメンバは、家族Ｘに対して家族Ｙの情報を共有させるか否かを家族Ｙのホームエージェントに対して入力する（Ｓ１４１）。
【０１２６】
エージェントサーバ４０は、家族Ｘのホームエージェントから、家族Ｙに対して家族Ｘの情報を共有させる旨を受信し、家族Ｙのホームエージェントから、家族Ｘに対して家族Ｙの情報を共有させる旨を受信すると、サーバ１０に対して家族Ｘの情報復号要求および家族Ｙの情報復号要求を送信する。
【０１２７】
サーバ１０において、通信部１４０によって家族Ｘの情報復号要求が受信されると、制御部１１０は、暗号化されたＫｅｙ家族ＹをＫｅｙ家族Ｘでロック解除する（復号する）。また、通信部１４０によって家族Ｙの情報復号要求が受信されると、制御部１１０は、暗号化されたＫｅｙ家族ＸをＫｅｙ家族Ｙでロック解除する（復号する）。制御部１１０は、Ｋｅｙ家族Ｘで家族Ｘの行楽履歴および嗜好情報を復号するとともに、Ｋｅｙ家族Ｙで家族Ｙの行楽履歴および嗜好情報を復号し、それぞれの行楽履歴および嗜好情報に基づいて、行き先候補を提示する（Ｓ１５２）。
【０１２８】
家族Ｘのホームエージェントは、提示された行き先候補を候補リストとして表示する（Ｓ１６１）。同様にして、家族Ｙのホームエージェントは、提示された行き先候補を候補リストとして表示する（Ｓ１７１）。家族Ｘのメンバは、候補リストを参照して、行き先を決定した場合、行き先を決定した旨を家族Ｘのホームエージェントに対して入力する（Ｓ１６２）。エージェントサーバ４０は、家族Ｘのホームエージェントから、行き先を決定した旨を受信すると、Ｋｅｙ家族ＸおよびＫｅｙ家族Ｙを再度ロックする（暗号化する）（Ｓ１５３）。
【０１２９】
以上、本開示の実施形態に係る情報処理システム１の動作例について説明した。
【０１３０】
＜２．ハードウェア構成例＞
次に、図１７を参照して、本開示の実施形態に係る情報処理装置（サーバ）１０のハードウェア構成について説明する。図１７は、本開示の実施形態に係る情報処理装置１０のハードウェア構成例を示すブロック図である。なお、図１７に示した例は、情報処理装置１０のハードウェア構成例であるが、個人端末２０、ホームエージェント３０、エージェントサーバ４０、クラウドストレージ５０およびＩＤプロバイダ６０それぞれのハードウェア構成も、図１７に示したハードウェア構成例と同様に実現され得る。
【０１３１】
図１７に示すように、情報処理装置１０は、ＣＰＵ（Ｃｅｎｔｒａｌ  Ｐｒｏｃｅｓｓｉｎｇ  ｕｎｉｔ）９０１、ＲＯＭ（Ｒｅａｄ  Ｏｎｌｙ  Ｍｅｍｏｒｙ）９０３、およびＲＡＭ（Ｒａｎｄｏｍ  Ａｃｃｅｓｓ  Ｍｅｍｏｒｙ）９０５を含む。また、情報処理装置１０は、ホストバス９０７、ブリッジ９０９、外部バス９１１、インターフェース９１３、入力装置９１５、出力装置９１７、ストレージ装置９１９、ドライブ９２１、接続ポート９２３、通信装置９２５を含んでもよい。さらに、情報処理装置１０は、必要に応じて、撮像装置９３３、およびセンサ９３５を含んでもよい。情報処理装置１０は、ＣＰＵ９０１に代えて、またはこれとともに、ＤＳＰ（Ｄｉｇｉｔａｌ  Ｓｉｇｎａｌ  Ｐｒｏｃｅｓｓｏｒ）またはＡＳＩＣ（Ａｐｐｌｉｃａｔｉｏｎ  Ｓｐｅｃｉｆｉｃ  Ｉｎｔｅｇｒａｔｅｄ  Ｃｉｒｃｕｉｔ）と呼ばれるような処理回路を有してもよい。
【０１３２】
ＣＰＵ９０１は、演算処理装置および制御装置として機能し、ＲＯＭ９０３、ＲＡＭ９０５、ストレージ装置９１９、またはリムーバブル記録媒体９２７に記録された各種プログラムに従って、情報処理装置１０内の動作全般またはその一部を制御する。ＲＯＭ９０３は、ＣＰＵ９０１が使用するプログラムや演算パラメータなどを記憶する。ＲＡＭ９０５は、ＣＰＵ９０１の実行において使用するプログラムや、その実行において適宜変化するパラメータなどを一時的に記憶する。ＣＰＵ９０１、ＲＯＭ９０３、およびＲＡＭ９０５は、ＣＰＵバスなどの内部バスにより構成されるホストバス９０７により相互に接続されている。さらに、ホストバス９０７は、ブリッジ９０９を介して、ＰＣＩ（Ｐｅｒｉｐｈｅｒａｌ  Ｃｏｍｐｏｎｅｎｔ  Ｉｎｔｅｒｃｏｎｎｅｃｔ／Ｉｎｔｅｒｆａｃｅ）バスなどの外部バス９１１に接続されている。
【０１３３】
入力装置９１５は、例えば、マウス、キーボード、タッチパネル、ボタン、スイッチおよびレバーなど、ユーザによって操作される装置である。入力装置９１５は、ユーザの音声を検出するマイクロフォンを含んでもよい。入力装置９１５は、例えば、赤外線やその他の電波を利用したリモートコントロール装置であってもよいし、情報処理装置１０の操作に対応した携帯電話などの外部接続機器９２９であってもよい。入力装置９１５は、ユーザが入力した情報に基づいて入力信号を生成してＣＰＵ９０１に出力する入力制御回路を含む。ユーザは、この入力装置９１５を操作することによって、情報処理装置１０に対して各種のデータを入力したり処理動作を指示したりする。また、後述する撮像装置９３３も、ユーザの手の動き、ユーザの指などを撮像することによって、入力装置として機能し得る。このとき、手の動きや指の向きに応じてポインティング位置が決定されてよい。
【０１３４】
出力装置９１７は、取得した情報をユーザに対して視覚的または聴覚的に通知することが可能な装置で構成される。出力装置９１７は、例えば、ＬＣＤ（Ｌｉｑｕｉｄ  Ｃｒｙｓｔａｌ  Ｄｉｓｐｌａｙ）、ＰＤＰ（Ｐｌａｓｍａ  Ｄｉｓｐｌａｙ  Ｐａｎｅｌ）、有機ＥＬ（Ｅｌｅｃｔｒｏ−Ｌｕｍｉｎｅｓｃｅｎｃｅ）ディスプレイ、プロジェクタなどの表示装置、ホログラムの表示装置、スピーカおよびヘッドホンなどの音出力装置、ならびにプリンタ装置などであり得る。出力装置９１７は、情報処理装置１０の処理により得られた結果を、テキストまたは画像などの映像として出力したり、音声または音響などの音として出力したりする。また、出力装置９１７は、周囲を明るくするためライトなどを含んでもよい。
【０１３５】
ストレージ装置９１９は、情報処理装置１０の記憶部の一例として構成されたデータ格納用の装置である。ストレージ装置９１９は、例えば、ＨＤＤ（Ｈａｒｄ  Ｄｉｓｋ  Ｄｒｉｖｅ）などの磁気記憶部デバイス、半導体記憶デバイス、光記憶デバイス、または光磁気記憶デバイスなどにより構成される。このストレージ装置９１９は、ＣＰＵ９０１が実行するプログラムや各種データ、および外部から取得した各種のデータなどを格納する。
【０１３６】
ドライブ９２１は、磁気ディスク、光ディスク、光磁気ディスク、または半導体メモリなどのリムーバブル記録媒体９２７のためのリーダライタであり、情報処理装置１０に内蔵、あるいは外付けされる。ドライブ９２１は、装着されているリムーバブル記録媒体９２７に記録されている情報を読み出して、ＲＡＭ９０５に出力する。また、ドライブ９２１は、装着されているリムーバブル記録媒体９２７に記録を書き込む。
【０１３７】
接続ポート９２３は、機器を情報処理装置１０に直接接続するためのポートである。接続ポート９２３は、例えば、ＵＳＢ（Ｕｎｉｖｅｒｓａｌ  Ｓｅｒｉａｌ  Ｂｕｓ）ポート、ＩＥＥＥ１３９４ポート、ＳＣＳＩ（Ｓｍａｌｌ  Ｃｏｍｐｕｔｅｒ  Ｓｙｓｔｅｍ  Ｉｎｔｅｒｆａｃｅ）ポートなどであり得る。また、接続ポート９２３は、ＲＳ−２３２Ｃポート、光オーディオ端子、ＨＤＭＩ（登録商標）（Ｈｉｇｈ−Ｄｅｆｉｎｉｔｉｏｎ  Ｍｕｌｔｉｍｅｄｉａ  Ｉｎｔｅｒｆａｃｅ）ポートなどであってもよい。接続ポート９２３に外部接続機器９２９を接続することで、情報処理装置１０と外部接続機器９２９との間で各種のデータが交換され得る。
【０１３８】
通信装置９２５は、例えば、通信ネットワーク９３１に接続するための通信デバイスなどで構成された通信インターフェースである。通信装置９２５は、例えば、有線または無線ＬＡＮ（Ｌｏｃａｌ  Ａｒｅａ  Ｎｅｔｗｏｒｋ）、Ｂｌｕｅｔｏｏｔｈ（登録商標）、またはＷＵＳＢ（Ｗｉｒｅｌｅｓｓ  ＵＳＢ）用の通信カードなどであり得る。また、通信装置９２５は、光通信用のルータ、ＡＤＳＬ（Ａｓｙｍｍｅｔｒｉｃ  Ｄｉｇｉｔａｌ  Ｓｕｂｓｃｒｉｂｅｒ  Ｌｉｎｅ）用のルータ、または、各種通信用のモデムなどであってもよい。通信装置９２５は、例えば、インターネットや他の通信機器との間で、ＴＣＰ／ＩＰなどの所定のプロトコルを用いて信号などを送受信する。また、通信装置９２５に接続される通信ネットワーク９３１は、有線または無線によって接続されたネットワークであり、例えば、インターネット、家庭内ＬＡＮ、赤外線通信、ラジオ波通信または衛星通信などである。
【０１３９】
撮像装置９３３は、例えば、ＣＣＤ（Ｃｈａｒｇｅ  Ｃｏｕｐｌｅｄ  Ｄｅｖｉｃｅ）またはＣＭＯＳ（Ｃｏｍｐｌｅｍｅｎｔａｒｙ  Ｍｅｔａｌ  Ｏｘｉｄｅ  Ｓｅｍｉｃｏｎｄｕｃｔｏｒ）などの撮像素子、および撮像素子への被写体像の結像を制御するためのレンズなどの各種の部材を用いて実空間を撮像し、撮像画像を生成する装置である。撮像装置９３３は、静止画を撮像するものであってもよいし、また動画を撮像するものであってもよい。
【０１４０】
センサ９３５は、例えば、測距センサ、加速度センサ、ジャイロセンサ、地磁気センサ、振動センサ、光センサ、音センサなどの各種のセンサである。センサ９３５は、例えば情報処理装置１０の筐体の姿勢など、情報処理装置１０自体の状態に関する情報や、情報処理装置１０の周辺の明るさや騒音など、情報処理装置１０の周辺環境に関する情報を取得する。また、センサ９３５は、ＧＰＳ（Ｇｌｏｂａｌ  Ｐｏｓｉｔｉｏｎｉｎｇ  Ｓｙｓｔｅｍ）信号を受信して装置の緯度、経度および高度を測定するＧＰＳセンサを含んでもよい。
【０１４１】
＜３．むすび＞
以上説明したように、本開示の実施形態によれば、第１の鍵生成要求に基づいて、第１のデータを復号可能な第１の鍵から前記第１の鍵に基づく複数のシェアを生成し、第２の鍵生成要求に基づいて、前記第１の鍵に基づく複数のシェアから前記第１の鍵を復元し、前記第１の鍵の一部または全部に基づく複数のシェアの一部を、第２のデータを復号可能な第２の鍵として前記第１の鍵で暗号化するとともに、前記第２の鍵に基づく複数のシェアを生成する制御部を備える、情報処理装置が提供される。
【０１４２】
かかる構成によれば、秘密分散を階層的に行う場合において特定のユーザのみに秘密情報の復号を許容する柔軟なアクセスコントロールを実現することが可能である。
【０１４３】
以上、添付図面を参照しながら本開示の好適な実施形態について詳細に説明したが、本開示の技術的範囲はかかる例に限定されない。本開示の技術分野における通常の知識を有する者であれば、請求の範囲に記載された技術的思想の範疇内において、各種の変更例または修正例に想到し得ることは明らかであり、これらについても、当然に本開示の技術的範囲に属するものと了解される。
【０１４４】
例えば、コンピュータに内蔵されるＣＰＵ、ＲＯＭおよびＲＡＭなどのハードウェアを、上記した制御部１１０が有する機能と同等の機能を発揮させるためのプログラムも作成可能である。また、該プログラムを記録した、コンピュータに読み取り可能な記録媒体も提供され得る。
【０１４５】
また、本明細書に記載された効果は、あくまで説明的または例示的なものであって限定的ではない。つまり、本開示に係る技術は、上記の効果とともに、または上記の効果に代えて、本明細書の記載から当業者には明らかな他の効果を奏し得る。
【０１４６】
なお、以下のような構成も本開示の技術的範囲に属する。
（１）
第１の鍵生成要求に基づいて、第１のデータを復号可能な第１の鍵から前記第１の鍵に基づく複数のシェアを生成し、第２の鍵生成要求に基づいて、前記第１の鍵に基づく複数のシェアから前記第１の鍵を復元し、前記第１の鍵の一部または全部に基づく複数のシェアの一部を、第２のデータを復号可能な第２の鍵として前記第１の鍵で暗号化するとともに、前記第２の鍵に基づく複数のシェアを生成する制御部を備える、
情報処理装置。
（２）
前記制御部は、前記第１の鍵生成要求に基づいて、前記第１の鍵に基づく複数のシェアの一部が第１の情報提供装置に送信されるように通信部を制御し、前記第２の鍵生成要求に基づいて、前記第１の鍵に基づく複数のシェアの一部を前記第１の情報提供装置から取得する、
前記（１）に記載の情報処理装置。
（３）
前記制御部は、前記第１の鍵生成要求に基づいて、前記第１の鍵に基づく複数のシェアの他の一部が、第２の情報提供装置に送信されるように前記通信部を制御し、前記第２の鍵生成要求に基づいて、前記他の一部を前記第２の情報提供装置から取得する、
前記（２）に記載の情報処理装置。
（４）
前記制御部は、前記第２の鍵生成要求に基づいて、前記第２の鍵に基づく複数のシェアの一部が第１の情報提供装置に送信されるように通信部を制御する、
前記（１）に記載の情報処理装置。
（５）
前記制御部は、前記第２の鍵生成要求に基づいて、前記第２の鍵に基づく複数のシェアの他の一部が、第２の情報提供装置に送信されるように前記通信部を制御する、
前記（４）に記載の情報処理装置。
（６）
前記制御部は、前記第１の鍵の一部または全部に基づく複数のシェアの他の一部が、第１の情報提供装置に送信されるように通信部を制御する、
前記（１）に記載の情報処理装置。
（７）
前記制御部は、第１の暗号化要求に基づいて、前記第１の鍵に基づく複数のシェアの一部を取得するとともに前記第１の鍵に基づく複数のシェアの他の一部を取得し、前記第１の鍵に基づく複数のシェアの一部と前記他の一部とに基づいて前記第１の鍵を復元し、前記第１のデータを前記第１の鍵で暗号化する、
前記（１）〜（６）のいずれか一項に記載の情報処理装置。
（８）
前記制御部は、第１の復号要求に基づいて、前記第１の鍵を復元し、前記第１の鍵で前記第１のデータを復号する、
前記（７）に記載の情報処理装置。
（９）
前記制御部は、第２の暗号化要求に基づいて、前記第２の鍵に基づく複数のシェアの一部を取得するとともに前記第２の鍵に基づく複数のシェアの他の一部を取得し、前記第２の鍵に基づく複数のシェアの一部と前記他の一部とに基づいて前記第２の鍵を復元し、前記第２のデータを前記第２の鍵で暗号化する、
前記（１）〜（８）のいずれか一項に記載の情報処理装置。
（１０）
前記制御部は、第２の復号要求に基づいて、前記第２の鍵を復元し、前記第２の鍵で前記第２のデータを復号する、
前記（９）に記載の情報処理装置。
（１１）
前記制御部は、第３の鍵生成要求に基づいて、前記第１の鍵に基づく複数のシェアから前記第１の鍵を復元し、前記第１の鍵の一部または全部に基づく複数のシェアの一部を第３の鍵として前記第１の鍵で暗号化するとともに、前記第３の鍵に基づく複数のシェアを生成する、
前記（１）に記載の情報処理装置。
（１２）
前記制御部は、前記第３の鍵生成要求に基づいて、前記第３の鍵に基づく複数のシェアの一部が情報提供装置に送信されるように通信部を制御する、
前記（１１）に記載の情報処理装置。
（１３）
前記制御部は、前記第３の鍵生成要求に基づいて、前記第３の鍵に基づく複数のシェアの他の一部が送信されるように前記通信部を制御する、
前記（１２）に記載の情報処理装置。
（１４）
前記制御部は、第３の復号要求に基づいて、前記第３の鍵を復元し、前記第３の鍵に基づいて前記第１の鍵を復元し、前記第１の鍵に基づいて前記第２の鍵を復元し、前記第２の鍵で前記第２のデータを復号する、
前記（１１）〜（１３）のいずれか一項に記載の情報処理装置。
（１５）
前記制御部は、前記第３の復号要求に基づいて、前記第３の鍵に基づく複数のシェアの一部を取得するとともに前記第３の鍵に基づく複数のシェアの他の一部を取得し、前記第３の鍵に基づく複数のシェアの一部と前記他の一部とに基づいて前記第３の鍵を復元する、
前記（１４）に記載の情報処理装置。
（１６）
前記制御部は、前記第１の鍵の一部または全部に基づく複数のシェアの他の一部を取得し、前記他の一部と前記第３の鍵とに基づいて、前記第１の鍵を復元する、
前記（１４）または（１５）に記載の情報処理装置。
（１７）
前記制御部は、アクセス制御情報に基づいて、前記第１の鍵および前記第２の鍵の少なくともいずれか一方を復元するか否かを制御する、
前記（１１）〜（１６）のいずれか一項に記載の情報処理装置。
（１８）
前記制御部は、アクセス制御情報に基づいて、前記第１のデータおよび前記第２のデータの少なくともいずれか一方を復号するか否かを制御する、
前記（１）に記載の情報処理装置。
（１９）
第１の鍵生成要求に基づいて、第１のデータを復号可能な第１の鍵から前記第１の鍵に基づく複数のシェアを生成し、第２の鍵生成要求に基づいて、前記第１の鍵に基づく複数のシェアから前記第１の鍵を復元し、前記第１の鍵の一部または全部に基づく複数のシェアの一部を、第２のデータを復号可能な第２の鍵として前記第１の鍵で暗号化するとともに、前記第２の鍵に基づく複数のシェアを生成することを含む、
情報処理方法。
（２０）
コンピュータを、
第１の鍵生成要求に基づいて、第１のデータを復号可能な第１の鍵から前記第１の鍵に基づく複数のシェアを生成し、第２の鍵生成要求に基づいて、前記第１の鍵に基づく複数のシェアから前記第１の鍵を復元し、前記第１の鍵の一部または全部に基づく複数のシェアの一部を、第２のデータを復号可能な第２の鍵として前記第１の鍵で暗号化するとともに、前記第２の鍵に基づく複数のシェアを生成する制御部を備える、
情報処理装置として機能させるためのプログラム。
【符号の説明】
【０１４７】
１      情報処理システム
１０    サーバ（情報処理装置）
２０−１  父端末（個人端末）
２０−２  母端末（個人端末）
２０−３  子供端末（個人端末）
３０    ホームエージェント
４０    エージェントサーバ
５０    クラウドストレージ
６０    ＩＤプロバイダ
７０    ネットワーク
１１０  制御部
１４０  通信部
１５０  記憶部
Ｍ０    家族ドメイン
Ｍ１    父ドメイン
Ｍ２    母ドメイン
Ｍ３    子供ドメイン
【図１】
2019026372.tif 000003
【図２】
2019026372.tif 000004
【図３】
2019026372.tif 000005
【図４】
2019026372.tif 000006
【図５】
2019026372.tif 000007
【図６】
2019026372.tif 000008
【図７】
2019026372.tif 000009
【図８】
2019026372.tif 000010
【図９】
2019026372.tif 000011
【図１０】
2019026372.tif 000012
【図１１】
2019026372.tif 000013
【図１２】
2019026372.tif 000014
【図１３】
2019026372.tif 000015
【図１４】
2019026372.tif 000016
【図１５】
2019026372.tif 000017
【図１６】
2019026372.tif 000018
【図１７】
2019026372.tif 000019
【国際調査報告】
2019026372.tif 000020
2019026372.tif 000021
2019026372.tif 000022