(57)【要約】      （修正有）【課題】個人情報の保存や提供等の証跡の信頼性を高めることの可能な情報処理方法を提供する。【解決手段】ユーザ端末１０による情報処理方法は、情データサーバ２０から、データサーバが収集した個人情報を取得するステップと、個人情報を所定の暗号化処理によって暗号化した暗号化個人情報をストレージ４０に保存するステップと、個人情報をハッシュ化し且つタイムスタンプを付してから、デジタル署名を付してブロックチェーン基盤５０に保存するステップと、からなる。【選択図】図１
2020098972.tif 000002
【特許請求の範囲】
【請求項１】
情報処理装置に、
情報収集システムから、前記情報収集システムが収集した個人情報を取得するステップと、
前記個人情報を所定の暗号化処理によって暗号化した暗号化個人情報をストレージに保存するステップと、
前記個人情報をハッシュ化し且つタイムスタンプを付してから、デジタル署名を付して所定のブロックチェーン基盤に保存するステップと、を実行させるプログラム。
【請求項２】
情報処理装置に、
第１情報処理端末から、所定のデータを第２情報処理装置に提供することの指示と、パスフレーズとを受け付けるステップと、
前記所定のデータが暗号化された暗号化データを保存する所定のストレージから前記暗号化データを取得すると共に、当該取得に係る第１アクセスログを所定のブロックチェーン基盤に保存するステップと、
前記暗号化データを所定のデータキーにより復号して復号データを取得するステップと、
前記復号データを前記パスフレーズによって再暗号化することにより、再暗号化データを生成するステップと、
前記再暗号化データを一時ストレージに保存するステップと、
前記一時ストレージから前記再暗号化データを取得すると共に、当該取得に係る第２アクセスログを前記所定のブロックチェーン基盤に保存するステップと、
前記一時ストレージから取得された前記再暗号化データを、前記第２情報処理装置に送信するステップと、
を実行させる情報処理方法。
【発明の詳細な説明】
【技術分野】
【０００１】
本発明は、プログラム及び情報処理方法に関する。
【背景技術】
【０００２】
最近、あらゆるサービス事業においてデータの利活用性の重要性が高まってきている。その中で、サービスを提供する側の事業者ではなく、サービスを利用する側のユーザ自らが自身の個人情報を管理するＰＤＳ（Ｐｅｒｓｏｎａｌ  Ｄａｔａ  Ｓｔｏｒｅ）という技術がある。例えば、特許文献１には、ネットワーク上の情報装置から情報を収集し、該情報をデータベースに格納する情報収集装置であって、前記データベースに格納された情報の利用要求を端末装置から受け付ける受付部と、前記利用要求の対象となる情報について前記情報装置から前記端末装置を経由した収集が必要であるか判断し、必要である場合に、前記端末装置に対し、前記利用要求の対象となる情報を前記情報装置から収集して、収集した情報を所定の宛先に送信する旨の収集依頼を応答する応答部と、前記端末装置において前記情報装置から収集され、所定の不許可情報が除去され、前記宛先に送信された情報を前記データベースに格納する格納部と、を備える情報処理装置が記載されている。
【先行技術文献】
【特許文献】
【０００３】
【特許文献１】特開２０１６−１５２０２４
【発明の概要】
【発明が解決しようとする課題】
【０００４】
個人情報をユーザ自身が管理する場合、例えば企業がユーザの個人情報を管理する場合に比べて、情報漏洩リスク、改ざん、なりすまし等の問題に対してより適切に対処することが望ましい。
【０００５】
そこで本発明は、個人情報の保存や提供等の証跡の信頼性を高めることの可能なプログラム及び情報処理方法を提供することを目的とする。
【課題を解決するための手段】
【０００６】
本発明の一態様に係るプログラムは、情報処理装置に、情報収集システムから、前記情報収集システムが収集した個人情報を取得するステップと、前記個人情報を所定の暗号化処理によって暗号化した暗号化個人情報をストレージに保存するステップと、前記個人情報をハッシュ化し且つタイムスタンプを付してから、デジタル署名を付して所定のブロックチェーン基盤に保存するステップと、を実行させる。
【０００７】
この態様によれば、個人情報の保存の証跡に係る信頼性を高めることが可能となる。
【０００８】
また、本発明の一態様に係る情報処理方法は、情報処理装置に、第１情報処理端末から、所定のデータを第２情報処理装置に提供することの指示と、パスフレーズとを受け付けるステップと、前記所定のデータが暗号化された暗号化データを保存する所定のストレージから前記暗号化データを取得すると共に、当該取得に係る第１アクセスログを所定のブロックチェーン基盤に保存するステップと、前記暗号化データを所定のデータキーにより復号して復号データを取得するステップと、前記復号データを前記パスフレーズによって再暗号化することにより、再暗号化データを生成するステップと、前記再暗号化データを一時ストレージに保存するステップと、前記一時ストレージから前記再暗号化データを取得すると共に、当該取得に係る第２アクセスログを前記所定のブロックチェーン基盤に保存するステップと、前記一時ストレージから取得された前記再暗号化データを、前記第２情報処理装置に送信するステップと、を実行させる。
【０００９】
この態様によれば、個人情報の提供の証跡に係る信頼性を高めることが可能となる。
【発明の効果】
【００１０】
本発明によれば、個人情報の保存や提供等の証跡の信頼性を高めることの可能なプログラム及び情報処理方法を提供することができる。
【図面の簡単な説明】
【００１１】
【図１】本発明の第１実施形態に係る情報処理システム１による事前認証処理を説明するための図である。
【図２】本発明の第１実施形態に係る情報処理システム１による個人情報の保存処理を説明するための図である。
【図３】本発明の第２実施形態に係る情報処理システム１による個人情報の提供処理を説明するための図である。
【発明を実施するための形態】
【００１２】
添付図面を参照して、本発明の好適な実施形態について説明する。（なお、各図において、同一の符号を付したものは、同一又は同様の構成を有する。）
【００１３】
［第１実施形態］
（１）構成
図１を用いて、本発明の第１実施形態に係る情報処理システム１の構成を説明する。図１に示すとおり、情報処理システム１は、通信ネットワークを介して互いに情報を送受信可能に接続されたユーザ端末１０と、データサーバ２０と、管理サーバ３０と、ストレージ４０と、ＢＣ基盤５０とを有する。
【００１４】
ユーザ端末１０は、ユーザが利用する情報処理装置である。ユーザは、ユーザ端末１０を利用することにより、データサーバ２０が収集した個人情報を、ストレージ４０に保存することができる。
【００１５】
データサーバ２０は、個人情報を収集する情報処理装置である。データサーバ２０は、これに限るものではないが、例えば、ユーザが装着等する生体デバイスから収集したユーザの生体データ（例えば、心拍数、血圧、体温等の活動履歴）を個人情報として収集する。具体的には、データサーバ２０は、例えば、信頼されたＩｏＴデータを収集するサーバや、署名付き健診データ、電子カルテ等を収集するサーバであってよい。
【００１６】
管理サーバ３０は、ユーザが自身の個人情報を管理するための管理サービスを提供する情報処理装置である。管理サーバ３０は、例えば、アカウント管理部３１と、アクセスコントロール部３２と、鍵管理部３３とを有する。アカウント管理部３１は、ユーザのアカウントを管理する。アカウントは、例えば、メールアドレスと、当該メールアドレスに対応付けられたパスワードによって識別される。アクセスコントロール部３２は、後述するパブリックストレージへのアクセスを管理する。鍵管理部３３は、ハードウェアの機構を用いて秘密鍵を管理するためのモジュールである。鍵管理部３３は、例えば、ＨＳＭ（Ｈａｒｄｗａｒｅ  Ｓｅｃｕｒｉｔｙ  Ｍｏｄｕｌｅ）であってよい。鍵管理部３３は、秘密鍵ｈＳＫをハードウェアによって厳重に管理している。鍵管理部３３は、例えばエンベロープ暗号化方式等の所定のアルゴリズムを用いて、ハードウェア機構により保護された秘密鍵からデータキーを生成する。
【００１７】
ストレージ４０は、ユーザがデータサーバ２０に収集された個人情報を管理するためのストレージとしての情報処理装置である。ストレージ４０は、例えば、プライベートストレージ４１と、パブリックストレージ４２とを含む。プライベートストレージ４１は、例えば、本人及び本人からの認証を受けた者のみしかアクセスできないストレージである。パブリックストレージ４２は、例えば、本人以外はアクセスできないストレージである。パブリックストレージ４２へのアクセスは、例えば、上述したアクセスコントロール部３２によって管理される。
【００１８】
ブロックチェーン（ＢＣ）基盤５０は、トランザクションが所定の構造によって連なったブロックチェーンを記憶する複数の情報処理装置から構成されたネットワークである。ＢＣ基盤５０が記憶するブロックチェーンに含まれるトランザクションは、例えば、イーサリアムによって記述される。ＢＣ基盤５０のアクセスは、ユーザ端末１０で管理する秘密鍵のサインによりＡＣＬ（Ａｃｃｅｓｓ  Ｃｏｎｔｒｏｌ  Ｌｉｓｔ）を実現している。すなわち、データを取得するためには、当該データの取得要求に係るサインが、当該データの保存時のサインに一致している必要がある。
【００１９】
なお、上述した「情報処理装置」は、例えば、プロセッサと、メモリと、ストレージと、入出力インタフェース（入出力Ｉ／Ｆ）と、通信インタフェース（通信Ｉ／Ｆ）とを含んで構成される。当該「情報処理装置」は、限定ではなく例として、スマートフォン、携帯電話（フィーチャーフォン）、コンピュータ（限定でなく例として、デスクトップ、ラップトップ、タブレットなど）、サーバ装置、メディアコンピュータプラットホーム（限定でなく例として、ケーブル、衛星セットトップボックス、デジタルビデオレコーダなど）、ハンドヘルドコンピュータデバイス（限定でなく例として、ＰＤＡ（Personal Digital Assistant）、電子メールクライアントなど）、ウェアラブル端末（限定でなく例として、メガネ型デバイス、時計型デバイスなど）、他種のコンピュータ、またはコミュニケーションプラットホームを含む。
【００２０】
（２）動作処理
（２−１）事前認証処理
図１を用いて、情報処理システム１による事前認証処理について説明する。
【００２１】
（Ｓ１−１：キーペアＡ作成）
ユーザ端末１０は、所定の鍵生成アルゴリズムを用いて、秘密鍵ＳＫ及び公開鍵ＰＫから成るキーペアＡを作成する。
【００２２】
（Ｓ１−２：アカウント作成）
ユーザ端末１０は、アカウント情報（例えば、メールアドレス及びパスワード等）をもとに作成要求を、管理サーバ３０のアカウント管理部３１に送信する。アカウント管理部３１は、当該メールアドレス宛てに認証コードを送信する。ユーザ端末１０は、ユーザの操作に応じて認証コードの入力を受け付けると、当該認証コードをアカウント管理部３１に送信する。アカウント管理部３１は、ユーザ端末１０から正しい認証コードを受信すると、上記メールアドレス及びパスワードに係るアカウントを作成する。
【００２３】
（Ｓ１−３：認証トークンＡの発行）
アカウント作成により、アカウント管理部３１は、メールアドレス及びパスワードの入力を受け付けると、その応答として認証トークンＡをユーザ端末１０に対して発行する。ここで、認証トークンＡは、鍵管理部３３及びアクセスコントロール部３２にアクセスするためのトークンである。
【００２４】
（Ｓ１−４：データサーバ２０の認証トークンＢの発行）
ユーザ端末１０は、事前に登録してあるアカウント情報（例えば、メールアドレス及びパスワード等）に基づいて、データサーバ２０に認証トークンＢを発行させ、これを取得する。当該処理は、例えば、ＯＡＵＴＨ２認証によって実現される。
【００２５】
（Ｓ１−５：ストレージ４０の認証トークンＣの発行）
ユーザ端末１０は、事前に登録してあるアカウント情報（例えば、メールアドレス及びパスワード等）に基づいて、ストレージ４０に認証トークンＣを発行させ、これを取得する。当該処理は、例えば、ＯＡＵＴＨ２認証によって実現される。
【００２６】
（Ｓ１−６：暗号化用の鍵の生成と取得）
ユーザ端末１０は、認証トークンＡを用いて鍵管理部３３にデータキーＤＫを発行させると共に、鍵管理部３３において管理されている秘密鍵ｈＳＫによって当該データキーＤＫを暗号化して暗号化データキーｅＤＫを生成させ、当該暗号化データキーｅＤＫを取得する。
【００２７】
（Ｓ１−７：暗号化認証トークンＢ、Ｃの保存）
ユーザ端末１０は、データサーバ２０から取得した認証トークンＢ及び、ストレージ４０から取得した認証トークンＣを、鍵管理部３３が生成したデータキーＤＫによって暗号化した上で、秘密鍵ＳＫによるデジタル署名を添えて、ＢＣ基盤５０に保存する。
【００２８】
（Ｓ１−８：暗号化データキーの保存）
ユーザ端末１０は、鍵管理部３３が生成した暗号化データキーｅＤＫを、秘密鍵ＳＫによるデジタル署名を添えて、ＢＣ基盤５０に保存する。以上で、事前認証処理が終了する。
【００２９】
（２−２）個人情報の保存処理
次に、図２を用いて、情報処理システム１による個人情報の保存処理について説明する。
【００３０】
（Ｓ２−１：ログイン）
ユーザ端末１０は、ユーザの操作に応じて、登録済のメールアドレス及びパスワードを含むログイン要求をアカウント管理部３１へ送信する。アカウント管理部３１は、当該ログイン要求に応じてログイン処理を実行する。
【００３１】
（Ｓ２−２：認証トークンＡの発行）
アカウント管理部３１は、ログイン処理の結果、認証トークンＡをユーザ端末１０に対して発行する。
【００３２】
（Ｓ２−３：認証トークンＢ、Ｃの取得）
ユーザ端末１０は、ＢＣ基盤５０から、認証トークンＢ、Ｃを取得する。このとき、ユーザ端末１０は、秘密鍵ＳＫによるデジタル署名を添えたリクエストをＢＣ基盤５０に送信する。ＢＣ基盤５０は、当該デジタル署名が認証トークンＢ、Ｃの保存時のデジタル署名と一致するかを判定し、一致する場合に限り認証トークンＢ、Ｃをユーザ端末１０に送信する。
【００３３】
（Ｓ２−４：活動ログの取得）
ユーザ端末１０は、取得した認証トークンＢを用いて、データサーバ２０が収集した活動ログ（平文データＤ）を取得する。
【００３４】
（Ｓ２−５：暗号化用の鍵の生成と取得）
ユーザ端末１０は、認証トークンＡを用いて鍵管理部３３にデータキーＤＫを発行させると共に、鍵管理部３３において管理されている秘密鍵ｈＳＫによって当該データキーＤＫを暗号化して暗号化データキーｅＤＫを生成させ、当該暗号化データキーｅＤＫ取得する。
【００３５】
（Ｓ２−６：暗号化データキーの保存）
ユーザ端末１０は、鍵管理部３３が生成した暗号化データキーｅＤＫを、秘密鍵ＳＫによるデジタル署名を添えて、ＢＣ基盤５０に保存する。
【００３６】
（Ｓ２−７：平文データＤのハッシュ保存）
ユーザ端末１０は、平文データＤをハッシュ化して得られたハッシュ値にタイムスタンプを付し、秘密鍵ＳＫによるデジタル署名を添えてＢＣ基盤５０に保存する。これにより、後述の暗号化平文データｅＤのストレージ４０への保存を担保することが可能となる。
【００３７】
（Ｓ２−８：暗号化平文データｅＤのストレージ４０への保存）
ユーザ端末１０は、認証トークンＣを用いて、平文データＤをデータキーＤＫにより暗号化して得られた暗号化平文データｅＤを、ストレージ４０へ保存する。以上で、データ保存に係る動作処理が終了する。
【００３８】
第１実施形態に係る情報処理システム１においては、個人情報が保存される際に、タイムスタンプがＢＣ基盤５０に保存される。したがって、個人情報の保存の証跡に係る信頼性を客観的に担保することが可能となる。
【００３９】
［第２実施形態］
（１）構成
図３は、本発明の第２実施形態に係る情報処理システム１の構成を示す概略図である。以下では、第２実施形態に係る情報処理システム１のうち、第１実施形態に係る情報処理システム１と共通の部分については、適宜説明を省略する。
【００４０】
図３に示すとおり、第２実施形態に係る情報処理システム１は、通信ネットワークを介して互いに情報を送受信可能に接続されたユーザ端末１０Ａと、ユーザ端末１０Ｂと、管理サーバ３０と、ストレージ４０と、ＢＣ基盤５０とを有する。ユーザ端末１０Ａは、データ提供者が利用するユーザ端末であり、ユーザ端末１０Ｂは、データ受領者が利用するユーザ端末である。
【００４１】
第２実施形態に係る管理サーバ３０は、トレーダ部３４及び一時ストレージ３５を有している。トレーダ部３４は、ユーザ端末１０Ａ及びユーザ端末１０Ｂの間の個人情報の送受信を仲介する。一時ストレージ３５は、トレーダ部３４がアクセスする一時的なストレージである。
【００４２】
（２）動作処理
図３を用いて、第２実施形態に係る情報処理システム１の個人情報の提供処理について説明する。以下では、ユーザ端末１０Ａ及びユーザ端末１０Ｂの間のデータの送受信は、Ｐｕｂ／Ｓｕｂモデル（出版−購読型モデル、Ｐｕｂｌｉｓｈ／Ｓｕｂｓｃｒｉｂｅモデル）によって実行される。すなわち、データ提供者が利用するユーザ端末１０Ａはサブスクライバとして、データ受領者が利用するユーザ端末１０Ｂはパブリッシャとして、それぞれ機能する。
【００４３】
（Ｓ３−１：ログイン）
ユーザ端末１０Ａは、データ提供者の操作に応じて、登録済のメールアドレス及びパスワードを含むログイン要求をアカウント管理部３１へ送信する。アカウント管理部３１は、当該ログイン要求に応じてログイン処理を実行する。
【００４４】
（Ｓ３−２：認証トークンＡの発行）
アカウント管理部３１は、ログイン処理の結果、認証トークンＡをユーザ端末１０Ａに対して発行する。
【００４５】
（Ｓ３−３：提供依頼登録（ｐｕｂトピック登録））
ユーザ端末１０Ｂは、データ受領者の操作に応じて、パブリッシャとしてメッセージのトピック登録要求と、公開鍵ＰＫｂとをトレーダ部３４に送信する。
【００４６】
（Ｓ３−４：ｐｕｂ一覧取得）
トレーダ部３４は、データ提供を求める文章の一覧（ｐｕｂ一覧）を取得する。取得するその詳細には、その文章を一意に特定するトピック番号と、その文章の発行元を一意に特定する公開鍵（例えば、公開鍵ＰＫｂ）が含まれる。
【００４７】
（Ｓ３−５：暗号化認証トークンＣの取得）
ユーザ端末１０Ａは、ＢＣ基盤５０から、暗号化認証トークンＣを取得する。なお、ユーザ端末１０Ａは、秘密鍵ＳＫａによるデジタル署名をＢＣ基盤５０に送信し、ＢＣ基盤５０は、当該デジタル署名がデータ保存時のデジタル署名に一致している場合に限り、所望の暗号化認証トークンＣをユーザ端末１０Ａに送信する。
【００４８】
（Ｓ３−６：暗号化データキーの取得）
ユーザ端末１０Ａは、ＢＣ基盤５０から、暗号化データキーｅＤＫを取得する。なお、ユーザ端末１０Ａは、秘密鍵ＳＫａによるデジタル署名をＢＣ基盤５０に送信し、ＢＣ基盤５０は、当該デジタル署名がデータ保存時のデジタル署名に一致している場合に限り、所望の暗号化認証トークンＣをユーザ端末１０Ａに送信する。
【００４９】
（Ｓ３−７：パスフレーズの生成）
ユーザ端末１０Ａは、所定のアルゴリズムによりパスフレーズＰＰを生成する。ここで、パスフレーズＰＰは、例えば、ランダムなキーである。
【００５０】
（Ｓ３−８：提供同意ログの登録／パスフレーズＰＰの登録）
ユーザ端末１０Ａは、データ提供に同意するログ及びパスフレーズＰＰを、秘密鍵ＳＫａによるデジタル署名を付して、ＢＣ基盤５０に保存する。このとき、当該ログには、データ受領者を特定するためのデータ受領者に係る公開鍵ＰＫｂが含まれる。また、パスフレーズＰＰは、鍵管理部３３により暗号化される。
【００５１】
（Ｓ３−９：データ提供指示（ｓｕｂ登録））
ユーザ端末１０Ａは、トレーダ部３４に対して、データの提供を指示する。このとき、ユーザ端末１０Ａは、データ提供に係るトピック番号を特定して、暗号化データキーｅＤＫをトレーダ部３４に送信する。
【００５２】
（Ｓ３−１０：ｓｕｂ一覧取得）
ユーザ端末１０Ｂは、データ受領者の操作に応じて、ｓｕｂ一覧を取得して、データの受領を希望するトピック番号を特定して、当該トピックを示す情報をトレーダ部３４に送信する。
【００５３】
（Ｓ３−１１：暗号化データキーの複合）
トレーダ部３４は、鍵管理部３３を介して暗号化データキーｅＤＫを複合する。これにより、データキーＤＫが得られる。
【００５４】
（Ｓ３−１２：暗号化個人情報の取得）
トレーダ部３４は、認証トークンＣを用いて、暗号化された個人情報（暗号化平文データｅＤ）を取得する。このとき、トレーダ部３４は更に、秘密鍵ＳＫｃによるデジタル署名を添えたアクセスログを、ＢＣ基盤５０に登録する。
【００５５】
（Ｓ３−１３：個人情報の復号）
トレーダ部３４は、暗号化された個人情報を、データキーＤＫにより復号する。
【００５６】
（Ｓ３−１４：個人情報の再暗号化）
トレーダ部３４は、復号された個人情報を、パスフレーズＰＰによって再度暗号化する。
【００５７】
（Ｓ３−１５：個人情報の格納）
トレーダ部３４は、再度暗号化された個人情報を、一時ストレージ３５に格納する。
【００５８】
（Ｓ３−１６、Ｓ３−１７：暗号化個人情報の取得）
ユーザ端末１０Ｂは、データ受領者の操作に応じて、暗号化された個人情報をトレーダ部３４を介して一時ストレージ３５から取得する。トレーダ部３４は、一時ストレージ３５から暗号化された個人情報を取得するタイミングで、秘密鍵ＳＫｃによるデジタル署名を添えたアクセスログを、ＢＣ基盤５０に登録する。
【００５９】
（Ｓ３−１８：パスフレーズＰＰの取得）
ユーザ端末１０Ｂは、ＢＣ基盤５０に対して、秘密鍵ＳＫｂによるデジタル署名を添えて、パスフレーズＰＰの要求を送信する。ＢＣ基盤５０は、ユーザ端末１０Ｂから受信したデジタル署名が、上述したＳ３−８に係る公開鍵ＰＫｂに対応するか否かを判定し、対応していると判定した場合にのみ、パスフレーズＰＰをユーザ端末１０Ｂに送信する。以上で、第２実施形態に係る情報処理システム１の個人情報の提供処理が終了する。
【００６０】
第２実施形態に係る情報処理システム１においては、個人情報が提供される際に、所定のタイミングでアクセスログがＢＣ基盤５０に保存される。したがって、個人情報の提供の証跡に係る信頼性を高めることが可能となる。
【００６１】
以上説明した実施形態は、本発明の理解を容易にするためのものであり、本発明を限定して解釈するためのものではない。実施形態が備える各要素並びにその配置、材料、条件、形状及びサイズ等は、例示したものに限定されるわけではなく適宜変更することができる。また、異なる実施形態で示した構成同士を部分的に置換し又は組み合わせることが可能である。
【符号の説明】
【００６２】
１…情報処理システム、１０、１０Ａ、１０Ｂ…ユーザ端末、２０…データサーバ、３０…管理サーバ、４０…ストレージ、５０…ＢＣ基盤
【図１】
2020098972.tif 000003
【図２】
2020098972.tif 000004
【図３】
2020098972.tif 000005