JP2020010267A - 分散型医療情報共有システム、医療情報提供サーバー及びプログラム - Google Patents

分散型医療情報共有システム、医療情報提供サーバー及びプログラム Download PDF

Info

Publication number
JP2020010267A
JP2020010267A JP2018131950A JP2018131950A JP2020010267A JP 2020010267 A JP2020010267 A JP 2020010267A JP 2018131950 A JP2018131950 A JP 2018131950A JP 2018131950 A JP2018131950 A JP 2018131950A JP 2020010267 A JP2020010267 A JP 2020010267A
Authority
JP
Japan
Prior art keywords
medical information
providing server
encryption
key
terminal
Prior art date
Legal status (The legal status is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the status listed.)
Pending
Application number
JP2018131950A
Other languages
English (en)
Inventor
直一 桑山
Naoichi Kuwayama
直一 桑山
Current Assignee (The listed assignees may be inaccurate. Google has not performed a legal analysis and makes no representation or warranty as to the accuracy of the list.)
Konica Minolta Inc
Original Assignee
Konica Minolta Inc
Priority date (The priority date is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the date listed.)
Filing date
Publication date
Application filed by Konica Minolta Inc filed Critical Konica Minolta Inc
Priority to JP2018131950A priority Critical patent/JP2020010267A/ja
Publication of JP2020010267A publication Critical patent/JP2020010267A/ja
Pending legal-status Critical Current

Links

Images

Abstract

【課題】安全性が高く、かつ利便性の高い方法により、医療データを複数のユーザー間で共有可能な分散型医療情報共有システム、医療情報提供サーバー及びプログラムを提供する。【解決手段】医療情報提供サーバーと、医療情報を提供する提供端末と、医療情報を閲覧する閲覧端末と、合意形成処理を行う分散型共有台帳を管理するブロックチェーンノードと、を備えた分散型医療情報共有システムにおいて、提供端末は、医療情報を、第1の秘密鍵を用いて暗号化する暗号化処理部を備え、医療情報提供サーバーは、第1の秘密鍵に対応する第1の公開鍵及び閲覧端末が復号可能なデータに再暗号化するための再暗号化鍵を、ブロックチェーンノードによってブロックに保存させる保存制御部と、暗号化された医療情報を、ブロックに保存された再暗号化鍵によって再暗号化して、前記閲覧端末に提供する再暗号化部と、を備える。【選択図】図1

Description

本発明は、分散型医療情報共有システム、医療情報提供サーバー及びプログラムに関する。
近年、医療技術の多様化に伴い、特定機能を持つ病院や診療所等の複数の医療施設が医療情報を共有し、連携して患者の検査や治療を行う医療連携が普及しつつある。例えば、連携先の医療施設からしか参照できない医療情報をクラウドにアップロードし、必要な時に医療情報をダウンロードするシステムが利用されている。
このように医療情報をクラウドに保存するサービスにおいては、情報発生源は医療施設のユーザーであり、閲覧権限の制御及び閲覧権限者も医療施設のユーザーとなる。医療情報は個人情報でもあるため、より安全に医療情報の受け渡しが可能なクラウドサービスが求められている。しかし、医療情報を共有するコミュニティーの規模が大きくなるにつれて、中央集権型サーバーによるデータ共有形式であると、管理コストの増大及び障害に対するリスクが増大する問題があるため、分散されたサーバー間でデータを共有する分散方式が必要となる。
上記した問題に関連して、特許文献1には、再暗号化技術を用いたデータ共有方法が開示されている。具体的には、データの再暗号化に使用する暗号鍵の一部を中継サーバーによって生成し、中継サーバーは閲覧権限者の暗号鍵によって参照できるように復号鍵を再生成し、閲覧権限者からの情報要求時にデータを参照して送信する。
また、特許文献2には、再暗号化技術を用いたデータ共有方法において、複数のユーザー間で共有するデータを保持する再暗号化装置を備え、データの送信者は閲覧権限者ごとに再暗号化に使用する公開暗号鍵を入手し、自身の秘密鍵と閲覧権限者の暗号鍵とを使用して、閲覧権限者ごとに暗号化データを作成する方法が用いられている。
このような再暗号化技術を用いたデータ共有方法では、閲覧者以外の者にデータが漏洩するリスクを低減できるため、比較的安全性が高いといえる。
特開2015−56820号公報 特開2016−139894号公報
しかしながら、再暗号化技術においては、クラウドサービスの管理者と不正なユーザーの結託により、再暗号化鍵を偽造されるリスクを排除できない。即ち、何らかの理由で鍵が漏洩してしまった場合、閲覧権限者以外の者に向けた再暗号化鍵を生成することが可能となるため、不正なユーザーによって医療情報が閲覧されてしまう虞がある。
また、特許文献2のようにデータの送信者が閲覧権限者毎にデータを暗号化させるものとすると、閲覧権限者が追加される度に送信者の秘密鍵を使用した暗号化及び再暗号化が必要となるため、鍵の管理が煩雑化する。
本発明は上記課題に鑑みてなされたものであって、安全性が高く、かつ利便性の高い方法により、医療データを複数のユーザー間で共有可能な分散型医療情報共有システム、医療情報提供サーバー及びプログラムを提供することを目的とする。
上記課題を解決するため、請求項1に記載の分散型医療情報共有システムは、
医療情報を記憶する医療情報提供サーバーと、前記医療情報提供サーバーに医療情報を提供する提供端末と、前記医療情報提供サーバーに記憶された医療情報を閲覧する閲覧端末と、合意形成処理を行う分散型共有台帳を管理するブロックチェーンノードと、を備えた分散型医療情報共有システムにおいて、
前記提供端末は、
医療情報を、第1の秘密鍵を用いて暗号化する暗号化処理部を備え、
前記医療情報提供サーバーは、
前記第1の秘密鍵に対応する第1の公開鍵及び前記閲覧端末が復号可能なデータに再暗号化するための再暗号化鍵を、前記ブロックチェーンノードによってブロックに保存させる保存制御部と、
暗号化された医療情報を、ブロックに保存された前記再暗号化鍵によって再暗号化して、前記閲覧端末に提供する再暗号化部と、を備える
ことを特徴とする。
請求項2に記載の発明は、請求項1に記載の分散型医療情報共有システムにおいて、
前記提供端末は、
前記第1の公開鍵及び前記第1の秘密鍵を生成する第1の暗号鍵生成部を備える
ことを特徴とする。
請求項3に記載の発明は、請求項1又は2に記載の分散型医療情報共有システムにおいて、
前記提供端末は、
暗号化された医療情報を、閲覧端末が復号可能なデータに再暗号化するための再暗号化鍵を生成する再暗号化鍵生成部と、を備える
ことを特徴とする。
請求項4に記載の発明は、請求項3に記載の分散型医療情報共有システムにおいて、
前記再暗号化鍵生成部は、公開先の閲覧端末が変更される場合において、暗号化された医療情報を、新たに閲覧権限を取得した閲覧端末が復号可能なデータに再暗号化するための新規の再暗号化鍵を生成し、
前記再暗号化部は、暗号化された医療情報を、前記新規の再暗号化鍵によって再暗号化して、前記新たに閲覧権限を取得した閲覧端末に提供する
ことを特徴とする。
請求項5に記載の発明は、請求項1から4のいずれか一項に記載の分散型医療情報共有システムにおいて、
前記医療情報提供サーバーは、
前記提供端末により暗号化された医療情報を記憶する記憶部を備える
ことを特徴とする。
請求項6に記載の発明は、請求項1から5のいずれか一項に記載の分散型医療情報共有システムにおいて、
前記閲覧端末は、
第2の公開鍵及び第2の秘密鍵を生成する第2の暗号鍵生成部と、
再暗号化された医療情報を、前記第2の公開鍵を用いて復号する復号処理部と、を備える
ことを特徴とする。
請求項7に記載の医療情報提供サーバーは、
医療情報を記憶する医療情報提供サーバーと、医療情報を、第1の秘密鍵を用いて暗号化する暗号化処理部を備え、前記医療情報提供サーバーに医療情報を提供する提供端末と、前記医療情報提供サーバーに記憶された医療情報を閲覧する閲覧端末と、合意形成処理を行う分散型共有台帳を管理するブロックチェーンノードと、を備えた分散型医療情報共有システムにおける医療情報提供サーバーであって、
前記医療情報提供サーバーは、
前記第1の秘密鍵に対応する第1の公開鍵及び前記閲覧端末が復号可能なデータに再暗号化するための再暗号化鍵を、前記ブロックチェーンノードによってブロックに保存させる保存制御部と、
暗号化された医療情報を、ブロックに保存された前記再暗号化鍵によって再暗号化して、前記閲覧端末に提供する再暗号化部と、を備える
ことを特徴とする。
請求項8に記載の発明は、請求項7に記載の医療情報提供サーバーにおいて、
前記提供端末により暗号化された医療情報を記憶する記憶部を備える
ことを特徴とする。
請求項9に記載のプログラムは、
医療情報を記憶する医療情報提供サーバーと、医療情報を、第1の秘密鍵を用いて暗号化する暗号化処理部を備え、前記医療情報提供サーバーに医療情報を提供する提供端末と、前記医療情報提供サーバーに記憶された医療情報を閲覧する閲覧端末と、合意形成処理を行う分散型共有台帳を管理するブロックチェーンノードと、を備えた分散型医療情報共有システムにおいて、
前記医療情報提供サーバーのコンピューターを、
前記第1の秘密鍵に対応する第1の公開鍵及び前記閲覧端末が復号可能なデータに再暗号化するための再暗号化鍵を、前記ブロックチェーンノードによってブロックに保存させる保存制御部、
暗号化された医療情報を、ブロックに保存された前記再暗号化鍵によって再暗号化して、前記閲覧端末に提供する再暗号化部、として機能させる
ことを特徴とする。
本発明によれば、安全性が高く、かつ利便性の高い方法により、医療データを複数のユーザー間で共有可能な分散型医療情報共有システム、医療情報提供サーバー及びプログラムを提供することができる。
医療情報共有システムのシステム構成の一例を示す図である。 利用者端末のハードウェア構成の一例を示す図である。 情報提供サーバーのハードウェア構成の一例を示す図である。 ブロックチェーンノードのハードウェア構成の一例を示す図である。 医療情報共有システムの各装置の機能的構成の一例を示す図である。 医療情報共有システムの各装置の機能的構成の一例を示す図である。 ブロックチェーンの構成図である。 ブロックチェーン登録シーケンスにおける各装置の動作を示すシーケンス図である。 情報提供サーバー登録時における各装置の動作を示すシーケンス図である。 利用者アカウント登録時における各装置の動作を示すシーケンス図である。 ブロックチェーン登録依頼電文の構成を示す図である。 医療情報登録時における各装置の動作を示すシーケンス図である。 アクセス権限登録時における各装置の動作を示すシーケンス図である。 アクセス権限登録依頼電文の構成を示す図である。 情報開示要求時における各装置の動作を示すシーケンス図である。 情報開示要求登録依頼電文の構成を示す図である。 医療情報開示要求の検索時における各装置の動作を示すシーケンス図である。 医療情報参照時における各装置の動作を示すシーケンス図である。 アクセス権限変更時における各装置の動作を示すシーケンス図である。 アクセス権限削除時における各装置の動作を示すシーケンス図である。 再暗号化依頼電文の構成を示す図である。
以下、図面を参照して本発明に係る医療情報共有システムの実施の形態について説明する。なお、本発明は、図示例に限定されるものではない。
<医療情報共有システム100の構成>
図1に、本実施形態における医療情報共有システム100(分散型医療情報共有システム)のシステム構成を示す。
図1に示すように、医療情報共有システム100は、連携先医療施設1に設置された利用者端末10と、クラウドC上で動作する複数の情報提供サーバー20及びn台のブロックチェーンノード30(1)〜30(n)と、を備えて構成される。利用者端末10、情報提供サーバー20及びブロックチェーンノード30は、インターネット等の通信ネットワークを介してデータ通信可能に接続されている。
なお、本実施形態においては、連携先医療施設1Aに設置された利用者端末10Aは情報提供サーバー20Aに、連携先医療施設1Bに設置された利用者端末10Bは情報提供サーバー20Bに、それぞれアクセスすることを想定しており、各連携先医療施設1内の利用者端末10の数は、特に限定されない。また、情報提供サーバー20の数は、特に限定されない。
利用者端末10は、医療施設におけるユーザーが、情報提供サーバー20に対して医療情報を提供、あるいは情報提供サーバーから医療情報を取得して閲覧を行うために用いるコンピューターである。なお、本実施形態においては、利用者端末10Aは提供端末、利用者端末10Bは閲覧端末として機能する。
利用者端末10は、LAN(Local Area Network)等の施設内ネットワークにより、医療施設内に設置されたPACS(Picture Archiving and Communication System)とデータ通信可能に接続されており、PACSから医療情報を取り込む。PACSは、医療施設内のモダリティーにより生成された医用画像の画像データ等の医療情報を患者情報や検査情報と対応付けて記憶する施設内サーバーである。モダリティーとして、例えば、CR(Computed Radiography)、FPD(Flat Panel Detector)、CT(Computed Tomography)、MRI(Magnetic Resonance Imaging)等が用いられる。
図2に、利用者端末10のハードウェア構成を示す。
図2に示すように、利用者端末10は、制御部11、RAM12、通信部13、操作部14、表示部15、記憶部16等を備えて構成され、各部はバス17等により接続されている。
制御部11は、CPU等により構成され、利用者端末10の各部の処理動作を統括的に制御する。制御部11は、記憶部16に記憶されている各種プログラムを読み出してRAM12に展開し、当該プログラムとの協働により各種処理を実行する。
RAM12は、制御部11により実行制御される各種処理において、記憶部16から読み出された各種プログラム、入力若しくは出力データ及びパラメーター等を一時的に記憶するワークエリアを形成する。
通信部13は、ネットワークインターフェース等により構成され、通信ネットワークを介して接続された情報提供サーバー20や、施設内ネットワークを介して接続された外部機器との間でデータの送受信を行う。
操作部14は、カーソルキー、数字入力キー及び各種機能キー等を備えたキーボードと、マウス等のポインティングデバイスを備えて構成され、キーボードに対するキー操作やマウス操作により入力された操作信号を制御部11に出力する。例えば、操作部14は、利用者端末10を操作するユーザーが情報提供サーバー20にアップロードする医療情報を指定する際や、情報提供サーバー20からダウンロードする医療情報を指定する際に用いられる。
表示部15は、LCD(Liquid Crystal Display)等のモニターを備えて構成されており、制御部11から入力される表示信号の指示に従って、各種画面を表示する。
記憶部16は、HDDや半導体の不揮発性メモリー等により構成される。記憶部16は、制御部11により実行される各種プログラムを記憶しているほか、各種プログラムを実行するために必要なパラメーターやデータを記憶している。
情報提供サーバー20は、連携先医療施設1において生成された医療情報を蓄積するとともに、管理する。なお、情報提供サーバー20は医療情報提供サーバーとして機能する。
図3に、情報提供サーバー20のハードウェア構成を示す。
図3に示すように、情報提供サーバー20は、制御部21、RAM(Random Access Memory)22、通信部23、記憶部24等を備えて構成されており、各部はバス25により接続されている。
制御部21は、CPU(Central Processing Unit)等により構成され、情報提供サーバー20の各部の処理動作を統括的に制御する。制御部21は、記憶部24に記憶されている各種プログラムを読み出してRAM22に展開し、当該プログラムとの協働により各種処理を実行する。
RAM22は、制御部21により実行制御される各種処理において、記憶部24から読み出された各種プログラム、入力若しくは出力データ及びパラメーター等を一時的に記憶するワークエリアを形成する。
通信部23は、ネットワークインターフェース等により構成され、通信ネットワークを介して接続された利用者端末10及びブロックチェーンノード30との間でデータの送受信を行う
記憶部24は、HDD(Hard Disk Drive)や半導体の不揮発性メモリー等により構成される。記憶部24は、制御部21により実行される各種プログラムを記憶しているほか、各種プログラムを実行するために必要なパラメーターやデータを記憶している。
ブロックチェーンノード30は、ブロックチェーン技術が導入されたコンピューターであり、ブロックチェーンを管理する。各ブロックチェーンノード30は、分散型ネットワークにより相互に接続されている。なお、医療情報共有システム100においては、n台(n≧3)のブロックチェーンノード30を有する。
図4に、ブロックチェーンノード30のハードウェア構成を示す。
図4に示すように、ブロックチェーンノード30は、制御部31、RAM(Random Access Memory)32、通信部33、記憶部34等を備えて構成されており、各部はバス35により接続されている。
制御部31は、CPU(Central Processing Unit)等により構成され、ブロックチェーンノード30の各部の処理動作を統括的に制御する。制御部31は、記憶部34に記憶されている各種プログラムを読み出してRAM32に展開し、当該プログラムとの協働により各種処理を実行する。
RAM32は、制御部31により実行制御される各種処理において、記憶部34から読み出された各種プログラム、入力若しくは出力データ及びパラメーター等を一時的に記憶するワークエリアを形成する。
通信部33は、ネットワークインターフェース等により構成され、通信ネットワークを介して接続された他のブロックチェーンノード30及び情報提供サーバー20との間でデータの送受信を行う
記憶部34は、HDD(Hard Disk Drive)や半導体の不揮発性メモリー等により構成される。記憶部34は、制御部31により実行される各種プログラムを記憶しているほか、各種プログラムを実行するために必要なパラメーターやデータを記憶している。
続いて、医療情報共有システム100の機能的構成を説明する。
図5は、利用者端末10が情報提供サーバー20に医療情報を提供する際における各装置の機能的構成を示す図であり、この場合、利用者端末10A、情報提供サーバー20A及びn台のブロックチェーンノード30が必要となる。
利用者端末10の制御部11は、公開鍵及び秘密鍵を生成する公開鍵・秘密鍵生成部101、ユーザー識別UUID及び医療情報識別UUIDを生成するUUID生成部102、再暗号化鍵を生成する再暗号化鍵生成部105、情報提供サーバーに送信する各種データを暗号化する送信データ暗号化部107、利用者アカウントの認証を行うユーザー認証部111として機能する。
また、通信部13は、情報提供サーバー20に依頼電文を送信する依頼電文送信部110として機能する。
また、操作部14は、各種送信データを入力する送信データ入力部103、アクセス権限の付与に必要な情報を入力するアクセス権限入力部109として機能する。
また、記憶部16は、当該利用者端末10が提供する医療情報を参照する利用者アカウントのユーザー識別UUIDを記憶する参照先ユーザーUUID管理部104、送信する医療情報毎の秘密鍵を記憶する送信データ毎秘密鍵管理部106、当該利用者端末10を利用する利用者アカウント毎の秘密鍵を記憶する利用者毎秘密鍵管理部108として機能する。
情報提供サーバー20Aの制御部21は、自身が記憶するブロックチェーンを検索するブロックチェーン検索部203、ブロックチェーンを生成するブロックチェーン生成部204として機能する。
また、通信部23は、利用者端末10から依頼電文を受信する依頼電文受信部202、ブロックチェーンノード30からブロックチェーンを受信するブロックチェーン受信部207、ブロックチェーンノード30にブロックチェーン承認結果を送信するブロックチェーン承認結果送信部208として機能する。
また、記憶部24は、利用者端末10から受信した依頼電文を記憶する依頼電文保存部201、暗号化された医療情報を記憶する暗号化データ記憶部205、ブロックチェーンを記憶するブロックチェーン保存部206、ブロックチェーン承認結果を記憶するブロックチェーン承認結果記憶部209として機能する。
ブロックチェーンノード30の制御部31は、情報提供サーバー20を管理する情報提供サーバー管理部301、自身が記憶するブロックチェーンを検索するブロックチェーン検索部302、ブロックチェーンを管理するブロックチェーン管理部303として機能する。
また、通信部33は、情報提供サーバー20との間でブロックチェーンの送受信を行うブロックチェーン通信部304、情報提供サーバー20にブロックチェーンの検証結果を送信するブロックチェーン検証結果送信部306として機能する。
また、記憶部34は、ブロックチェーンを記憶するブロックチェーン保存部305、ブロックチェーンの承認結果を記憶するブロックチェーン承認結果記憶部307として機能する。
なお、公開鍵・秘密鍵生成部101は第1の暗号鍵生成部、送信データ暗号化部107は暗号化処理部、ブロックチェーン生成部204は保存制御部として機能する。
図6は、利用者端末10が情報提供サーバー20から医療情報を取得する際における各装置の機能的構成を示す図であり、この場合、利用者端末10B、情報提供サーバー20B、情報提供サーバー20A、及びn台のブロックチェーンノード30が必要となる。
利用者端末10の制御部11は、ユーザー認証部112、公開鍵・秘密鍵生成部115、情報提供サーバー20Aから受信した再暗号化された医療情報を復号する受信データ復号部118として機能する。
また、通信部13は、依頼電文送信部113、情報提供サーバー20Aから医療情報を受信するデータ受信部119として機能する。
また、操作部14は、情報提供サーバー20Aから取得する医療情報を選択するデータ選択部114として機能する。
また、表示部15は、情報提供サーバー20Aから受信した医療情報を表示する受信データ表示部117として機能する。
また、記憶部16は、利用者毎秘密鍵管理部116として機能する。
情報提供サーバー20Bの制御部21は、ブロックチェーン検索部212として機能する。
また、通信部23は、依頼電文受信部211、依頼電文を情報提供サーバー20Aに転送する依頼電文転送部213、ブロックチェーン受信部214として機能する。
また、記憶部24は、依頼電文保存部210、ブロックチェーン保存部215として機能する。
情報提供サーバー20Aの制御部21は、再暗号化鍵を用いて暗号化された医療情報を再暗号化するデータ再暗号化部218として機能する。
また、通信部23は、依頼電文受信部216、利用者端末10に医療情報を送信するデータ送信部219として機能する。
また、記憶部24は、暗号化データ記憶部217として機能する。
ブロックチェーンノード30の制御部31は、情報提供サーバー管理部308、ブロックチェーン検索部309、ブロックチェーン管理部310として機能する。
また、通信部33は、ブロックチェーン通信部311として機能する。
また、記憶部34は、ブロックチェーン保存部312として機能する。
なお、公開鍵・秘密鍵生成部115は第2の暗号鍵生成部、受信データ復号部118は復号処理部、データ再暗号化部218は再暗号化部として機能する。
<医療情報の共有>
次に、本実施形態に係る医療情報共有システム100における、医療情報の共有方法について説明する。
医療情報をクラウドC上に保存する場合、医療情報は公開鍵暗号記述によりデータを暗号化したうえで送信され、複数の閲覧権限者で共有される。このとき、(1)一つの復号鍵を複数の閲覧権限者で共有する方式、(2)閲覧権限者毎の復号鍵で復号できるように暗号化して配信する方式、(3)再暗号化鍵で鍵の付け替えを可能とし、ダウンロード時に鍵の付け替えを行う方式、が想定される。
(1)の方式では、暗号化のための鍵は一つであるため管理が容易である一方、一つしかない復号鍵が漏洩した場合、医療情報の漏洩を阻止できないという問題がある。
(2)の方式では、各閲覧権限者が復号鍵を共有しないため、セキュリティ上は好ましい一方で、情報提供者が閲覧権限者すべての暗号化鍵を使用して暗号化しなければならないうえ、閲覧権限者の増減に合わせて再度暗号化して送信する必要に迫られ、情報提供者にとって管理が煩雑化するという問題がある。
(3)の方式について、再暗号化技術は、暗号化されたデータを復号することなく別のユーザーの鍵に付け替え可能な暗号方式である。即ち、暗号化した医療情報を特定の利用者のみが復号可能となるように再暗号化することにより、情報提供者自身が、当該利用者のみに閲覧権限を与えることと同等の効果がある。
一方で、不正なクラウドCの管理者とユーザーが結託して、再暗号化鍵と秘密鍵から本来存在しないはずの再暗号化鍵が偽造されてしまうおそれがある。即ち、再暗号化技術によれば利便性と一定以上の安全性を確保可能である一方で、なりすましのリスクを排除することができない。
そこで、本発明においては、再暗号化技術を用いて、医療情報を利便性高く管理する一方で、アクセス権限や再暗号化鍵などの重要な情報を、ブロックチェーン技術によりブロックチェーンで管理することで、不正な利用者に医療情報を閲覧されるリスクを排除することを特徴とする。
[再暗号化技術]
一般的な再暗号化技術について説明する。
暗号鍵KでデータMを暗号化する暗号演算をEnc(K,M)と表記し、鍵同士の合成演算を(・)と表記すると、ここでの再暗号化技術においては以下の性質を持つことを前提とする。
1.暗号化を行わない鍵0が一つだけ存在し、K・0=0・K=Kとなる。即ち、以下の式(1)が成立する。
Enc(0,M)=M ・・・(1)
2.鍵Kで暗号化したデータを復元する逆元の鍵K−1が一つだけ存在し、以下の式(2)が成立する。
−1・K=0 ・・・(2)
3.0ではない鍵Kと鍵Kを用いて、以下の式(3)が成立する。
Enc(K,Enc(K,M))=Enc(K,・K,M) ・・・(3)
なお、0ではない鍵Kと鍵Kに関して、セキュリティ上、K,・K≠K・Kであることが望ましい。ただし、K,・K=K・Kであってもよい。
また、鍵0以外の合成鍵で、それがどの鍵から合成されたのかを明らかにすることが可能な、現実的な計算方法は存在しないことを前提とする。即ち、任意の合成鍵が別の合成鍵と同じ値となり、このような異なる鍵の組み合わせを求めることが現実的に不可能であることが前提である。
これらの性質を持つ暗号演算と合成演算とにより、鍵の付け替えを行う場合、元の鍵の逆元の鍵K−1と、付け替える予定の鍵Jとの合成鍵がある場合、以下の式(4)により鍵の付け替えが可能となる。
Enc(J・K−1,Enc(K,M))
=Enc(J・K−1・K,M)
=Enc(J,M) ・・・(4)
即ち、鍵Kで暗号化されたデータMを、再暗号化鍵J・K−1を用いて、復号することなく鍵Jに付け替えることが可能である。
[ブロックチェーン技術]
ブロックチェーンとは、分散型台帳技術とも呼ばれ、ビザンチン障害(Byzantine Faults)を含む不特定多数のノードを用いて、時間の経過とともにその時点の合意が覆る確率が0へ収束するプロトコル、又はその実装のことを指す。
図7は、ブロックチェーンに登録されるブロックの構造を示す図である。ブロックBLは、それぞれブロックヘッダー410と登録データ420とを備える。
ブロックヘッダー410は、ブロック識別子411、開始時間412、ノード識別記号413、前ブロックのハッシュ値414、及び署名データ415を備えて構成される。
ブロック識別子411とは、複数のブロックの間に順序関係を明らかにするものであって、次のブロック識別子が何であるかを判別する可能なものが用いられる。ここでは、自然数(1,2,3,・・・)を使用するものとし、例えばブロック400Aが有するブロック識別子411が「5」である場合、次に生成されるブロック400Bのブロック識別子411は「6」である。
開始時間412は、ブロックの生成を開始した時点からの経過時間を表す。
ノード識別記号413は、ブロックを承認したブロックチェーンノード30を識別する記号である。ここでは、ブロックチェーンノード30のIPアドレスを使用するものとする。
前ブロックのハッシュ値414は、一つ前のブロックを要約した値である。ただし、先頭のブロック(Genesis Block)400は、前ブロックのハッシュ値414を持たず、運用開始前に登録された値を前ブロックのハッシュ値として保有している。
署名データ415は、当該ブロック400が正規のブロックであることを確認可能にするバイナリーデータである。ここでは、登録データ420と前ブロックのハッシュ値414を、ブロックを承認したブロックチェーンノード30の秘密鍵で暗号化したデータとする。したがって、承認したブロックチェーンノード30を特定できれば、署名データ415を公開鍵で復号し、実際のハッシュ値と比較することで正当性を確認することができる。
登録データ420は、後述する各シーケンスにおいてブロック400に登録されるデータである。
続いて、合意形成アルゴリズムについて説明する。合意形成アルゴリズムは、現在のブロックチェーンの末尾にどのブロックを接続するかを、ブロックチェーンノード間で決定するアルゴリズムである。本実施形態においては、PBFT(Practical Byzantine Fault Tolerance)を使用する。
PBFTは、ビザンチン障害の発生に係らず正常に合意形成可能なアルゴリズムである。ビザンチン障害とは、故障や不正によりその系で異常な出力を行うブロックチェーンノード30が存在する場合に、全体として正しい合意形成が行われなくなる障害を指し、PBFTでは以下のようにすることで、このような問題に影響されることなく合意形成を行うことを可能とする。
PBFTにおいては、ブロックの追加提案をできるブロックチェーンノード30(ここでは提案ノードと表記)を任意の方法で一台決定する。また、ブロックの承認をするブロックチェーンノード30(ここでは承認ノードと表記)のうち、ブロックの追加をする権限を有するブロックチェーンノード30(ここではリーダーノードと表記)を任意の方法で一台決定する。
ここで、承認ノードの可用性を判断する故障許容ノード数fを設定した場合に、3f+1台以上の承認ノードからブロックの承認を受けた場合に、新規ブロックがブロックチェーンに追加されることとなり、換言すると提案ノードがトランザクションをコミットできることとなる。
本実施形態においては、情報提供サーバー20が提案ノードとして機能し、ブロックチェーンノード30のうちの一台がリーダーノード、その他のブロックチェーンノード30が承認ノードとして機能する。
図8は、新規ブロックをブロックチェーンに追加するブロックチェーン登録シーケンスにおける、各装置の動作を示すフローチャートである。
まず、情報提供サーバー20は提案ノードとして、ブロックチェーン追加権限要求を行う(ステップS101)。このとき、当該情報提供サーバー20のIPアドレスを、リーダーノードとしてのブロックチェーンノード30(1)に送信する。
ブロックチェーンノード30(1)は、情報提供サーバー20からの依頼でなければ無視するが、情報提供サーバー20からの依頼であることを確認すると、承認ノードとしてのブロックチェーンノード30(2)に対して、ブロックチェーン追加権限要求を行う(ステップS102)。一方で、ブロックチェーンノード30(1)は自身のキャッシュの中で、追加可能なブロック識別子411を情報提供サーバー20に応答する(ステップS103)。
ブロックチェーンノード30(2)は、情報提供サーバー20からの依頼でなければ無視するが、情報提供サーバー20からの依頼であることを確認すると、自身のキャッシュの中で追加可能なブロック識別子411を情報提供サーバー20に応答する(ステップS104)。
一方で、ブロックチェーンノード30(2)は、ブロックチェーンノード30(3)に対してブロックチェーン追加権限要求を行う(ステップS102)。
全てのブロックチェーンノード30がブロック識別子411を情報提供サーバー20に応答するまで以上の処理を繰り返す。即ち、ステップS104の処理をn−1回、ステップS105の処理をn−2回繰り返す。
情報提供サーバー20は、ブロックチェーンノード30(1)に対して、ブロックチェーン登録依頼要求を行う(ステップS106)。ブロックチェーン登録依頼要求は、n台のブロックチェーンノード30から応答されたブロック識別子411のうち、3f+1以上のブロックチェーンノード30から共通して応答されたブロック識別子411を選択し、登録データ420及び前ブロックのハッシュ値414を含むブロックチェーン登録依頼電文の内容で登録要求する。
ブロックチェーンノード30(1)は、処理済みの登録要求は無視する一方、未処理の登録要求であることを確認すると、ブロックチェーンノード30(2)に対してブロックチェーン登録依頼要求を行う(ステップS107)。
一方で、ブロックチェーンノード30(1)は、前ブロックのハッシュ値414が正しいこと、及びブロック識別子411と情報提供サーバー20のIPアドレスが正しいことを検証し、情報提供サーバー20にブロック検証結果を応答する(ステップS108)。なお、署名データ415は、登録データ420のハッシュ値をブロックチェーンノード30(1)の秘密鍵で署名して生成する。
ブロックチェーンノード30(2)〜(n)は、各々がブロック検証結果を情報提供サーバー20に応答するとともに(ステップS109)、他のブロックチェーンノード30にブロックチェーン登録依頼要求を行う(ステップS110)。したがって、ステップS109及びステップS110の処理は、それぞれn−1回あるいはn−2回繰り返される。
情報提供サーバー20は、応答された結果のうち、3f+1以上のブロックチェーンノード30が成功応答した場合に、応答された署名データ415を含めたブロックを正式に登録し、ブロックチェーン承認通知をブロックチェーンノード30(1)に送信する(ステップS111)。ブロックチェーン承認通知には、ブロック識別子411、登録データ420及び署名データ415が含まれる。
なお、情報提供サーバー20は、失敗と判断した場合、ブロックチェーン追加権限要求からやり直す。
ブロックチェーンノード30(1)は、処理済みの承認通知は無視する一方、未処理の承認通知であることを確認すると、ブロックチェーンノード30(2)に対してブロックチェーン承認通知を行う(ステップS112)。
一方で、ブロックチェーンノード30(1)は、署名データ415を確認し、不正な署名であればブロックチェーンに追加しないが、正しく署名されていることを確認すると、ブロックチェーンに追加し、情報提供サーバー20にブロック承認完了通知を送信する(ステップS114)。
ブロックチェーンノード30(2)〜(n)は、各々が署名データ415を確認し(ステップS115)、ブロック承認完了通知を情報提供サーバー20に送信するとともに(ステップS116)、他のブロックチェーンノード30にブロックチェーン承認通知を送信する(ステップS117)。したがって、ステップS115及びステップS116の処理は、それぞれn−1回繰り返され、ステップS117の処理は、n−2回繰り返される。
以上のようにして、ブロックチェーン登録シーケンスを完了する。
[医療情報共有システムの動作]
以下、本実施形態に係る医療情報共有システム100の動作について説明する。医療情報共有システム100が、医療情報の共有を開始し、完了するまでの基本シーケンスは以下である。なお、以下では連携先医療施設1Aにおいて医療情報をクラウドCに保存し、連携先医療施設1Bにおいて当該医療情報を閲覧するものとする。
(1)情報提供サーバー20A,20Bを登録する。
(2)利用者アカウントA,Bのユーザー識別情報と公開鍵をブロックチェーンに登録する。
(3)利用者端末10Aから医療情報を入力し、当該医療情報のデータを暗号化したうえで情報提供サーバー20Aに送信する。
(4)利用者端末10Aから送信した医療情報のアクセス権限をブロックチェーンに登録する。
(5)利用者アカウントBに紐づくアクセス権限登録のブロックが存在する場合、再暗号化した医療情報を利用者端末10Bに送信する。
(6)利用者アカウントAに紐づくアクセス権限登録を追加又は削除する。
(1)情報提供サーバーの登録
情報提供サーバー20を、新規のブロックを追加提案可能な提案ノードとして運用開始する場合、当該情報提供サーバー20を識別する情報及びネットワーク情報を、ブロックチェーンノード30のサーバー群に個別の設定として登録する。この設定方法については特に限定されない。ブロックチェーンノード30のサーバー群は、登録された情報提供サーバー20だけを、提案ノードとして認識する。
図9は、各装置の動作を示すシーケンス図である。
まず、情報提供サーバー20が、リーダーノードであるブロックチェーンノード30(1)に対して情報提供サーバー登録要求を行う(ステップS201)。このとき、情報提供サーバー20は、IPアドレスやノード名などの識別情報を送信する。
続いて、ブロックチェーンノード30(1)は、当該自身が管理しているブロックチェーンのブロックを返信する(ステップS202)。なお、情報提供サーバー20が接続許可を設定済みでなければ、ブロックチェーンノード30(1)はステップS201の要求を無視する。
情報提供サーバー20は、ブロックチェーンノード30(1)からブロックチェーンのブロックを取得すると、キャッシュに保存し(ステップS203)、ブロックのハッシュ値と次のブロックで保持しているハッシュ値が同一か否かを確認する(ステップS204)。
一方で、ブロックチェーンノード30(1)は、他の承認ノードであるブロックチェーンノード30(2)〜30(n)に対して、情報提供サーバー20の識別情報を通知して共有する(ステップS205)。
通知を受け取ると、ブロックチェーンノード30(2)〜(n)は、各々が管理しているブロックチェーンのブロックを、情報提供サーバー20に返信する(ステップS206、207)。また、ブロックチェーンノード30(2)〜(n)は、情報提供サーバー20の識別情報を他のブロックチェーンノードに通知して共有し(ステップS208)、受け取ったブロックチェーンノード30は、既に受け取った内容と同じである場合には、無視する。
情報提供サーバー20は、ブロックチェーンノード30(2)〜(n)からブロックチェーンのブロックを取得すると、キャッシュに保存されたブロックと同一であるか否かを判断する(ステップS208)。情報提供サーバー20は、ブロックチェーンノード30から応答された結果のうち、3f+1台以上のブロックチェーンノード30からのブロックが同じであれば、正しいブロックであると判断し、キャッシュに保存する(ステップS209)。
以上の処理を情報提供サーバー20A及び20Bについて実行することで、情報提供サーバー20A及び20Bが新規のブロックを追加提案可能な提案ノードとして機能することが可能となる。
(2)利用者アカウントの登録
連携先医療施設1Aの利用者端末10Aを用いて医療情報を提供する利用者アカウントAと、連携先医療施設1Bの利用者端末10Bを用いて医療情報を閲覧する利用者アカウントBと、をそれぞれ登録する必要がある。したがって、利用者端末10Aは、利用者を認証する情報が入力されると、当該情報に基づくユーザー識別UUIDと、当該ユーザー識別UUIDに紐づく公開暗号鍵のペア(公開鍵KA及び秘密鍵KA −1)を生成し、ユーザー識別UUIDと公開鍵KAがブロックチェーンに登録されることで、利用者アカウントAの登録が完了する。
ここで、UUID(Universal Unique Identifier)とは、分散システム上で統制なしに作成できる識別子として設計されたIDであり、将来にわたって重複しないことを前提に用いることができる。
図10は、各装置の動作を示すシーケンス図である。以下では、利用者アカウントAを登録する場合を説明する。
まず、利用者端末10Aは、利用者を認証する情報が入力されると、ユーザー識別UUIDを生成する(ステップS301)。続いて、利用者端末10Aは、ユーザー識別UUIDに紐づく公開鍵KA及び秘密鍵KA −1を生成する(ステップS302)。
続いて、利用者端末10Aは、任意の文字列を生成し、秘密鍵KA −1で暗号化したものを、公開鍵確認情報とする(ステップS303)。なお、任意の文字列は利用者端末10Aしか知りえない情報である。
次いで、利用者端末10Aは、情報提供サーバー20Aに対してブロックチェーン登録依頼要求を行う(ステップS304)。
図11は、ステップS304で送信されるブロックチェーン登録依頼電文の構造を示した図である。図11に示すように、ブロックチェーン登録依頼電文510は、利用者アカウントAのユーザー識別UUID511と、登録依頼電文の種別(ここでは、ユーザー識別登録)を表す種別情報512と、公開鍵(ここでは、公開鍵KA)を表す公開鍵情報513と、上記した公開鍵確認情報514と、を備えて構成される。
したがって、ここでは、登録データ420としてユーザー識別UUID511、公開鍵情報513、公開鍵確認情報514を送信する。
情報提供サーバー20はブロックチェーン登録依頼要求を受け付けると、電文構成が正しい場合には、ブロックの追加を要求し、ブロックチェーンノード30との間で図8に示すブロックチェーン登録シーケンスを実行する(ステップS305)。
ブロックが登録されると、情報提供サーバー20Aは、利用者端末10Aに対してブロックチェーン登録依頼応答を行う(ステップS306)。
利用者端末10Aは、ユーザー識別UUIDを用いて情報提供サーバー20Aからブロックチェーンを取得し、ブロックチェーンに登録された公開鍵確認情報を自身の秘密鍵KA −1で復号して、正常に登録されたか否かを判断する。
以上の処理を、利用者アカウントBについても同様に実行する。
なお、情報提供サーバー20Aが不正なプログラムで制御されている場合には、ブロックの登録が偽装されている可能性があるが、その他の信頼できる複数の情報提供サーバー20に対して問い合わせを行い、正しく登録されていることを確認するものとしてもよい。
(3)利用者端末からの医療情報の送信
利用者アカウントAによってログインされた利用者端末10Aから、医療情報を入力する。このとき、閲覧権限者が決まっている必要はない。医療情報のデータをMとし、利用者端末10A内で、鍵の付け替え可能な再暗号化技術Encによって暗号化される。この時の暗号化に使用する鍵は、一時的に生成した付け替え用の鍵KAと、利用者端末10A内で生成した再暗号化用の公開鍵KAとの合成鍵KA・KAである。また、暗号化されたデータは、Enc(KA・KA,M)で表され、情報提供サーバー20Aに送信される。なお、この時点で当該暗号化データを復元できるのは、逆元の鍵KA −1と秘密鍵KA −1とを有する利用者端末10Aのみである。
図12は、各装置の動作を示すシーケンス図である。
医療情報Mが入力されると(ステップS401)、当該医療情報Mに紐づく医療情報識別UUIDを生成するとともに(ステップS402)、鍵付け替え用の鍵KAとその逆元の鍵KA −1をその都度新たに生成する(ステップS403)。
次いで、利用者端末10は、鍵付け替え用の鍵KAと公開鍵KAとを合成して再暗号化鍵KA・KAとし(ステップS404)、医療情報Mを再暗号化鍵KA・KAで暗号化して、暗号化医療情報Enc(KA・KA,M)を生成する(ステップS405)。
続いて、利用者端末10Aは、情報提供サーバー20に対して医療情報登録依頼要求を行う(ステップS406)。ここでは、登録データ420として、医療情報識別UUID及び暗号化医療情報Enc(KA・KA,M)が送信される。
情報提供サーバー20Aは、暗号化医療情報を受け取ると、医療情報識別UUIDと暗号化医療情報Enc(KA・KA,M)を紐づけた状態で保存し、利用者端末10Aに医療情報を登録した旨を応答する(ステップS407)。
これ以降は、情報提供サーバー20A及び利用者端末10Aは、医療情報識別UUIDを管理し、情報提供サーバー20Aは、利用者端末10Aから医療情報識別UUIDによる問い合わせがあった場合に、医療情報識別UUIDに紐づく医療情報を応答する。
なお、情報提供サーバー20は、自分自身が管理していない医療情報識別UUIDに関する要求電文を受信した場合、他の情報提供サーバー20に転送するとともに、転送済みの電文を再度受け取った場合には転送しないものとする。
なお、送信した医療情報を閲覧者によってアクセス可能範囲を分ける場合には、その範囲毎に、鍵付け替え用の鍵KAとは異なる一時的な付け替え用の鍵KA及びその逆元の鍵KA −1を生成し、当該範囲に対して合成された暗号鍵KA・KA・KAを使用して暗号化し、Enc(KA・KA・KA,M’)を生成して送信する。
(4)医療情報へのアクセス権限の登録
(4−1)利用者アカウントAによる利用者アカウントBへのアクセス権限付与
利用者アカウントAは、送信した医療情報を利用者端末10Bの利用者アカウントBに閲覧権限を付与する場合に、利用者アカウントBのアクセス権限をブロックチェーンに登録する。なお、利用者アカウントAと利用者アカウントBは、事前に互いのユーザー識別UUIDを、医療情報共有システムとは無関係に知っていることを前提とする。また、情報提供サーバー20には、ユーザー識別UUIDが残される可能性があるが、それがどのアカウントと紐づいているかを情報提供サーバー20が知る必要はない。
図13は、各装置の動作を示すシーケンス図である。
利用者端末10Aは、アクセス権限を与えるユーザー識別UUIDを選択する(ステップS501)。ここでは、利用者アカウントBにアクセス権限を与えるため、利用者アカウントBに紐づくユーザー識別UUIDを選択する。
次いで、利用者端末10Aは、情報提供サーバー20Aに対して、ブロックチェーン情報取得要求を行う(ステップS502)。このとき、利用者端末10Aは、利用者アカウントBのユーザー識別UUIDを送信する。
ブロックチェーン情報取得要求を受け付けると、情報提供サーバー20Aは、ユーザー識別UUIDの公開鍵KBが情報提供サーバー20Aのキャッシュに存在しない場合、ブロックチェーンノード30から取得するために、ブロックチェーンノード30に対してブロックチェーン情報取得要求を行う(ステップS503)。n台のブロックチェーンノード30は、それぞれユーザー識別UUIDの公開鍵KBを取得し、情報提供サーバー20Aに応答する(ステップS504)。
情報提供サーバー20Aは、公開鍵KBの情報として3f+1台のブロックチェーンノード30から同値が応答された時、当該値が正しいと判断し(ステップS505)、利用者端末10Aに対してユーザー識別UUIDの公開鍵KBを送信し、ブロックチェーン情報取得応答を行う(ステップS506)。
利用者端末10Aは、ユーザー識別UUIDに紐づく秘密鍵KA −1と、医療情報識別UUIDに紐づく秘密鍵KA −1と、アクセス権限を与えるユーザー識別UUIDに紐づく公開鍵KBとから、再暗号化鍵KB・KA −1・KA −1を生成する(ステップS507)。
続いて、利用者端末10Aは、情報提供サーバー20Aに対してアクセス権限登録依頼電文を送信して、ブロックチェーン登録依頼要求を行う(ステップS508)。
図14は、アクセス権限登録依頼電文520の構成の一例である。アクセス権限登録依頼電文520は、医療情報識別UUID521と、種別情報522と、アクセス権限リスト523と、アクセス権限付与先情報524と、復号後のハッシュ値525と、等を有する。
医療情報識別UUID521は、利用者アカウントAが利用者アカウントBに参照を期待する医療情報に紐づいている。
種別情報522は、当該ブロックチェーン登録依頼の種別を表し、ここではアクセス権限登録である。
アクセス権限リスト523は、医療情報識別UUID以外での検索可能な項目(ここでは、検索1及び検索2の各項目)が存在する場合には、項目を表す検索1用のハッシュ値と、検索2用のハッシュ値と、等がそれぞれ分けて登録される。なお、当該データを保存する情報提供サーバー20のIPアドレスが、保存先IPアドレスとして保存される。なお、アクセス権限リスト523は、情報提供サーバー20が参照することが可能である。
アクセス権限付与先情報524(#1)には、相手先ユーザー識別UUIDとして利用者アカウントBのユーザー識別UUIDと、再暗号化鍵KB・KA −1・KA −1と、が登録される。なお、アクセス権限付与先情報524は、一つのブロックに複数同時に登録することができる。したがって、複数の利用者アカウントにアクセス権限を付与する場合には、それぞれ異なるアクセス権限付与先情報524(#2、#3、・・・)に分けて登録される。
復号後のハッシュ値525は、暗号化医療情報Enc(KA・KA,M)を復号したデータをハッシュ関数により演算して得られたハッシュ値であり、後述するように、利用者アカウントBによる再暗号化された医療情報の復号時に、当該医療情報が正しいものであるかを確認する際に用いられる。
したがって、ここでは、登録データ420として医療情報識別UUID521、アクセス権限付与先情報524(相手先ユーザー識別UUID及び再暗号化鍵)が送信される。
なお、医療情報識別UUID521及び種別情報522は、誰にでも検索可能であるが、その他の項目については、自身の再暗号化鍵以外は入手しても活用することができない。
情報提供サーバー20Aがブロックチェーン登録依頼要求を受け付けると、情報提供サーバー20A及びブロックチェーンノード30は、図8に示すブロックチェーン登録シーケンスを行う(ステップS509)。ブロックチェーン登録シーケンスが完了すると、情報提供サーバー20Aは利用者端末10Aに対してブロックチェーン登録依頼応答を行い(ステップS510)、制御を終了する。
以上説明した方法により、情報提供サーバー20又はブロックチェーンノード30が不正侵入されて、再暗号化鍵が入手されても、ユーザー識別UUIDに紐づく秘密鍵KB −1は利用者端末10Bのみが保有するため、情報提供サーバー20及びブロックチェーンノード30は再暗号化された医療情報を復号することができない。
仮に秘密鍵KB −1を有する利用者端末10Bが不正に操作された場合、または情報提供者である利用者端末10Aが誤って利用者端末10Bにアクセス権限を付与してしまったとしても、KA −1・KA −1は流出するが、KA −1自体は流出しない。したがって、利用者端末10Aから利用者端末10Bに共有された暗号化医療情報Enc(KA・KA,M)は流出するが、その他の情報は流出しない。
なお、アクセス権限を追加する場合には、後述するように図18のシーケンスにしたがって処理を行い、アクセス権限の一部を削除する場合には、図19のシーケンスにしたがって処理を行う。
(4−2)利用者アカウントBによるアクセス権限付与の要求
一方で、利用者アカウントBが、利用者アカウントAに、ある特定の検索項目に合致する医療情報の入手を希望した場合には、利用者アカウントBは、特定の検索項目に合致する医療情報識別UUIDの一覧を作成し、それぞれの医療情報識別UUIDに紐づくアクセス権限のブロックチェーン登録依頼電文を、情報提供サーバー20Bに送信する。
図15は、各装置の動作を示すシーケンス図である。
利用者端末10Bは、検索項目のハッシュ値を求める(ステップS601)。続いて、情報提供サーバー20Bに対して、情報検索依頼要求を行う(ステップS602)。このとき、利用者アカウントBのユーザー識別UUIDと、ステップS601で求めた検索項目のハッシュ値とを送信することで、ハッシュ値による情報検索を要求する。
情報提供サーバー20Bは、ハッシュ値によって自身のキャッシュを検索する(ステップS603)。情報提供サーバー20Bは、検索が完了すると、利用者端末10Bに対して情報検索応答を行う(ステップS604)。
利用者端末10Bは、情報提供サーバー20Bに対して情報開示要求登録依頼電文を送信して、医療情報開示要求を行う(ステップS605)。
図16は、情報開示要求登録依頼電文530の構成の一例である。情報開示要求登録依頼電文530は、医療情報識別UUID531と、種別情報532と、アクセス権限リスト533と、情報提供ユーザー識別UUID534と、情報開示ユーザー識別UUID535と、等を有する。
医療情報識別UUID531は、利用者アカウントBが閲覧を希望する医療情報に紐づいている。
種別情報532は、ここでは情報開示要求である。
アクセス権限リスト533は、情報開示を要求する検索項目(ここでは、検索1及び検索2の各項目)をリストとした情報である。
情報提供ユーザー識別UUID534は、情報提供者である利用者アカウントAのユーザー識別UUIDを表す。
情報開示ユーザー識別UUID535は、情報の提供を依頼する利用者アカウントBのユーザー識別UUIDを表す。
したがって、ここでは、登録データ420として、医療情報識別UUID531、情報提供ユーザー識別UUID534、情報開示ユーザー識別UUID535が送信される。
情報提供サーバー20Bが医療情報開示要求を受け付けると、情報提供サーバー20及びブロックチェーンノード30は、図8に示すブロックチェーン登録シーケンスを行う(ステップS606)。ブロックチェーン登録シーケンスが完了すると、情報提供サーバー20Bは利用者端末10Bに対して医療情報開示要求応答を行い(ステップS607)、制御を終了する。
一方で、利用者端末10Aは、定期的に情報提供ユーザー識別UUIDとして自身を利用する利用者アカウントAが登録されたブロックチェーンのブロックを検索する。当該ブロックの存在を確認した場合、情報開示要求を行ったユーザー識別UUIDを確認し、問題がないと判別できる場合には、アクセス権限登録のブロックチェーン登録依頼電文を情報提供サーバー20Aに送信する。
図17は、各装置の動作を示すシーケンス図である。
利用者端末10Aは、自らを利用する利用者アカウントのユーザー識別UUIDに紐づく医療情報開示要求を、任意の契機で検索する(ステップS701)。利用者端末10Aは、検索を行うタイミングであると判断した場合に、情報提供サーバー20Aに対して、医療情報開示要求検索を要求する(ステップS702)。このとき、利用者アカウントAのユーザー識別UUIDを情報提供サーバー20Aに送信する。
情報提供サーバー20Aは、ユーザー識別UUIDを糸口に、情報開示要求検索を実行する(ステップS703)。情報提供サーバー20Aは、ブロックチェーンノード30に対して、ブロックチェーン情報取得要求を行う(ステップS704)。このとき、情報提供サーバー20は、利用者アカウントAのユーザー識別UUIDをブロックチェーンノード30に送信する。
各ブロックチェーンノード30は、ブロックチェーン情報取得要求を受け付けると、医療情報開示要求検索を実行し、検索結果として医療情報識別UUID及び相手先ユーザー識別UUIDの情報を、情報提供サーバー20Aに応答する(ステップS705)。即ち、n台のブロックチェーンノード30からの応答がなされる。
情報提供サーバー20Aは、3f+1台以上のブロックチェーンノード30から同値が応答された時、当該値は正しいと判断し(ステップS706)、利用者端末10Aに対して医療情報識別UUID及び情報開示要求を行った相手先ユーザー識別UUID(ここでは、利用者アカウントBのユーザー識別UUID)の情報を送信し、医療情報検索応答を行い(ステップS707)、制御を終了する。
以上の処理によって情報開示要求が検出された場合、相手先ユーザー識別UUIDが既知で、指定された医療情報識別UUIDの情報開示に問題がないと判断した場合、図13のアクセス権限付与時のブロックチェーン登録シーケンスが実行される。
(5)再暗号化した医療情報の送信
利用者アカウントBが利用者端末10Bにログインすると、利用者端末10Bが利用者アカウントBのユーザー識別UUIDに紐づくアクセス権限登録のブロックが存在するか否かを、自身が通信を行う情報提供サーバー20Bに問い合わせ、情報提供サーバー20Bから医療情報を取得し、利用者アカウントBによって閲覧可能とする。
図18は、各装置の動作を示すシーケンス図である。
利用者端末10Bは、検索項目のハッシュ値を求める(ステップS801)。次いで、利用者端末10Bは、情報提供サーバー20Bに対してアクセス権限検索要求を行い、利用者アカウントBのアクセス権限登録のブロックの存在を問い合わせる(ステップS802)。このとき、利用者端末10Bは、利用者アカウントBのユーザー識別UUID及び検索項目のハッシュ値を送信する。
情報提供サーバー20Bは、ハッシュ値による自身のキャッシュの検索を実行し、自身のキャッシュに存在する場合には検索結果を利用者端末10Bに応答する(ステップS803)。
情報提供サーバー20Bは、自身のキャッシュに存在しない場合には、ブロックチェーンノード30に対してブロックチェーン情報取得要求を行う(ステップS804)。このとき、情報提供サーバー20Bは、ブロックチェーンノード30に医療情報識別UUIDを送信する。
各ブロックチェーンノード30は、ブロックを検索してブロックチェーン情報取得応答を行う(ステップS805)。即ち、n台のブロックチェーンノード30からの応答がなされる。このとき、ブロックチェーンノード30は、医療情報識別UUID及び保存IP先アドレスを情報提供サーバー20Bに送信する。
続いて、情報提供サーバー20Bは、利用者端末10Bに対して、医療情報識別UUID及び保存先IPアドレスを送信してアクセス権限検索応答を行う(ステップS806)。
利用者端末10Bは、保存先IPアドレスに紐づく情報提供サーバー20Aに対して、医療情報識別UUID及び情報提供ユーザー識別UUIDを送信することで、医療情報参照要求を行う(ステップS807)。
情報提供サーバー20Aは、自身のキャッシュに再暗号化鍵が存在しない場合、ブロックチェーンノード30に対して医療情報識別UUIDを送信することで、ブロックチェーン情報取得要求を行う(ステップS808)。
n台のブロックチェーンノード30は、それぞれ情報提供サーバー20Aに対して再暗号化鍵を送信することで、ブロックチェーン情報取得応答を行う(ステップS809)。なおブロックには、上記したように暗号化医療情報Enc(KA・KA,M)に対応する再暗号化鍵KB・KA −1・KA −1が保存されている。
情報提供サーバー20Aは、3f+1台以上のブロックチェーンノード30から同値が応答された時、当該値は正しいと判断する(ステップS810)。
続いて、情報提供サーバー20Aは、再暗号化鍵KB・KA −1・KA −1によって暗号化医療情報Enc(KA・KA,M)を再暗号化する(ステップS811)
次いで、情報提供サーバー20Aは、再暗号化した医療情報を、利用者端末10Bに送信することで、医療情報参照要求応答を行う(ステップS812)
ここで、再暗号化鍵KB・KA −1・KA −1による暗号化医療情報Enc(KA・KA,M)の再暗号化においては、以下の式(5)が成立し、鍵の付け替えに成功する。
Enc(KB・KA −1・KA −1,(Enc(KA・KA,M))
=Enc(KB・KA −1・KA −1・KA・KA,M)
=Enc(KB・KA −1・KA,M)
=Enc(KB,M) ・・・(5)
利用者端末10Bに再暗号化医療情報Enc(KB,M)が送信されると、利用者端末10Bは、利用者端末10Bのみが保有する秘密鍵KB −1によって復号して医療情報Mを取得して(ステップS813)、制御を終了する。
ここで、秘密鍵KB −1による再暗号化医療情報Enc(KB,M)の復号においては、以下の式(6)が成立する。
Enc(KB −1,Enc(KB,M))
=Enc(KB −1・KB,M)
=M ・・・(6)
なお、もし暗号化医療情報がEnc(KA・KA,M)でなければ、利用者端末10Bはダウンロードに成功しても、元の医療情報に秘密鍵KB −1を用いて復元することができない。これは、アクセス権限登録において登録した復号後のハッシュ値525と、実際に復号したデータのハッシュ値との比較を行うことで確認可能である。
(6)アクセス権限登録の追加または削除
(6−1)アクセス権限登録の追加
利用者アカウントAが、新たに利用者アカウントCにアクセス権限を付与する場合は、以下のようにしてアクセス権限登録を行う。
図19は、各装置の動作を示すシーケンス図である。
利用者端末10Aは、新たにアクセス権限を与える利用者アカウントCに紐づくユーザー識別UUIDを事前に知っていることを前提とし、選択する(ステップS901)。
ステップS902及びステップS903の処理は、図13におけるステップS502及びステップS503の処理と同様であるため、説明を省略する。
ステップS904では、n台のブロックチェーンノード30は、それぞれユーザー識別UUIDの公開鍵KCを取得し、情報提供サーバー20Aに応答する。
ステップS905及びステップS906の処理は、図13におけるステップS505及びステップS506の処理と同様であるため、説明を省略する。
ステップS907では、利用者端末10Aは、自身の秘密鍵KA −1と、医療情報識別UUIDに紐づく逆元の鍵KA −1と、アクセス権限を与えるユーザー識別UUIDに紐づく公開鍵KCとから、再暗号化鍵KC・KA −1・KA −1を生成する。
ステップS908〜ステップS910の処理は、図13におけるステップS508〜ステップS510の処理と同様であるため、説明を省略する。
したがって、利用者アカウントCが利用する利用者端末10においては、再暗号化鍵KC・KA −1・KA −1によって再暗号化された医療情報Enc(KC,M)を、秘密鍵KC −1によって復号化して医療情報Mを取得することが可能となる。
(6−2)アクセス権限登録の削除
利用者アカウントAが、特定の医療情報についてのアクセス権限を付与した利用者アカウントを削除する場合には、以下のようにしてアクセス権限登録の削除を行う。
図20は、各装置の動作を示すシーケンス図である。
利用者端末10Aは、アクセス権限の削除に係る医療情報識別UUIDを選択する(ステップS1001)。
続いて、利用者端末10Aは、鍵付け替え用の鍵KA及びその逆元の鍵KA −1とは異なる、一度しか使用しない鍵付け替え用の鍵KAt2及びその逆元の鍵KAt2 −1を生成する(ステップS1002)。さらに、利用者端末10Aは、鍵付け替え用の鍵KAt2と鍵KAの逆元の鍵KA −1とから、再暗号化鍵KAt2・KA −1を生成する(ステップS1003)。
続いて、利用者端末10Aは、再暗号化依頼要求電文を情報提供サーバー20Aに送信することにより、再暗号化依頼要求を行う(ステップS1004)。
図21は、再暗号化依頼要求電文540の構成の一例である。再暗号化依頼要求電文540は、医療情報識別UUID541と、種別情報542と、再暗号化鍵543と、再暗号化前のハッシュ値544と、再暗号化後のハッシュ値と、等を有する。
医療情報識別UUID521は、アクセス権限の削除に係る医療情報に紐づいている。
種別情報522は、ここでは再暗号化である。
再暗号化鍵543は、ここではKAt2・KA −1である。
再暗号化前のハッシュ値544は、暗号化医療情報Enc(KA・KA,M)を再暗号化鍵KAt2・KA −1で再暗号化する前のデータをハッシュ関数により演算して得られたハッシュ値である。
再暗号化後のハッシュ値545は、暗号化医療情報Enc(KA・KA,M)を再暗号化鍵KAt2・KA −1で再暗号化した後のデータをハッシュ関数により演算して得られたハッシュ値である。
再暗号化依頼要求を受け付けると、情報提供サーバー20Aは、医療情報識別UUIDに紐づく暗号化医療情報Enc(KA・KA,M)を、再暗号化鍵KAt2・KA −1で再暗号化する(ステップS1005)。即ち、以下の式(7)が成立する。
Enc(KAt2・KA −1,(Enc(KA・KA,M))
=Enc(KAt2・KA −1・KA・KA,M)
=Enc(KAt2・KA,M) ・・・(7)
これにより、KAt2 −1及びKA −1を保有する利用者端末10A以外の全ての利用者端末で、一時的に再暗号化された医療情報を復号できなくなる。
情報提供サーバー20Aは、再暗号化依頼応答を利用者端末10Aに送信すると(ステップS1006)、制御を終了する。
なお、利用者アカウントAが、新たに他の利用者アカウントにアクセス権限を付与する場合、新たなアクセス権限のブロックチェーン登録依頼電文を情報提供サーバー20Aに送信する。これにより、医療情報Mを閲覧可能な利用者アカウントに紐づくアクセス権限登録のブロックは複数存在することとなるが、新しいアクセス権限登録を正しいものとすることで、制御することが可能である。
以上説明したように、本実施形態に係る医療情報共有システム100においては、利用者端末10Aは、秘密鍵を用いて医療情報を暗号化し、情報提供サーバー20Aは、秘密鍵に対応する公開鍵及び再暗号化鍵をブロックチェーンノードに保存させるとともに、暗号化された医療情報を、再暗号化鍵によって再暗号化して、利用者端末10Bに提供する。
したがって、情報提供サーバー20は暗号化されたデータのみを管理することになるため、情報提供サーバー20の増加などの際の医療情報の管理も簡便である。また、ブロックチェーン技術によって鍵の偽装および漏洩を防ぎ、閲覧権限者が管理する復号鍵でのみ復元できるようにすることで、医療情報が不正なユーザーによって閲覧されないようリスクを低減させ、安全性を向上させることができる。
また、本実施形態に係る医療情報共有システム100においては、利用者端末10自身が暗号化鍵及び再暗号化鍵を生成するため、効率的であるとともに、意図しない鍵で医療情報が暗号化あるいは再暗号化されるおそれがない。
また、本実施形態に係る医療情報共有システム100においては、アクセス権限を付与する利用者端末10が追加または変更される場合において、暗号化された医療情報を、新たに閲覧権限を取得した利用者端末10が復号可能なデータに再暗号化するための新規の再暗号化鍵を生成し、当該新規の再暗号化鍵によって再暗号化して新たに閲覧権限を取得した利用者端末10に提供することを特徴とする。
したがって、閲覧権限を付与する利用者端末10において再暗号化・再送する必要がなく、また、再暗号化の際に復号して元のデータを公開先以外に参照されるリスクがないため、安全に公開先を変更することができる。また、暗号化鍵及び再暗号化鍵は常に利用者端末10で生成・合成され、ブロックチェーンに保存されるため、意図しない鍵で更新されず、効率的かつ安全性が高い。
[他の実施形態]
以上、本発明に係る実施形態に基づいて具体的に説明したが、医療情報共有システム100を構成する各装置の細部構成及び各装置の細部動作に関しても、本発明の趣旨を逸脱することのない範囲で適宜変更可能である。
また、上記の説明では、本発明に係るプログラムのコンピューター読み取り可能な媒体としてHDDや半導体の不揮発性メモリー等を使用した例を開示したが、この例に限定されない。その他のコンピューター読み取り可能な媒体として、CD−ROM等の可搬型記録媒体を適用することが可能である。また、本発明に係るプログラムのデータを、通信回線を介して提供する媒体として、キャリアウエーブ(搬送波)も適用される。
100 医療情報共有システム
10A 利用者端末(提供端末)
101 公開鍵・秘密鍵生成部(第1の暗号鍵生成部)
105 再暗号化鍵生成部
107 送信データ暗号化部(暗号化処理部)
115 公開鍵・秘密鍵生成部(第2の暗号鍵生成部)
118 受信データ復号部(復号処理部)
10B 利用者端末(閲覧端末)
20 情報提供サーバー(医療情報提供サーバー)
204 ブロックチェーン生成部(保存制御部)
218 データ再暗号化部(再暗号化部)
30 ブロックチェーンノード

Claims (9)

  1. 医療情報を記憶する医療情報提供サーバーと、前記医療情報提供サーバーに医療情報を提供する提供端末と、前記医療情報提供サーバーに記憶された医療情報を閲覧する閲覧端末と、合意形成処理を行う分散型共有台帳を管理するブロックチェーンノードと、を備えた分散型医療情報共有システムにおいて、
    前記提供端末は、
    医療情報を、第1の秘密鍵を用いて暗号化する暗号化処理部を備え、
    前記医療情報提供サーバーは、
    前記第1の秘密鍵に対応する第1の公開鍵及び前記閲覧端末が復号可能なデータに再暗号化するための再暗号化鍵を、前記ブロックチェーンノードによってブロックに保存させる保存制御部と、
    暗号化された医療情報を、ブロックに保存された前記再暗号化鍵によって再暗号化して、前記閲覧端末に提供する再暗号化部と、を備える
    ことを特徴とする分散型医療情報共有システム。
  2. 前記提供端末は、
    前記第1の公開鍵及び前記第1の秘密鍵を生成する第1の暗号鍵生成部を備える
    ことを特徴とする請求項1に記載の分散型医療情報共有システム。
  3. 前記提供端末は、
    暗号化された医療情報を、閲覧端末が復号可能なデータに再暗号化するための再暗号化鍵を生成する再暗号化鍵生成部と、を備える
    ことを特徴とする請求項1又は2に記載の分散型医療情報共有システム。
  4. 前記再暗号化鍵生成部は、公開先の閲覧端末が変更される場合において、暗号化された医療情報を、新たに閲覧権限を取得した閲覧端末が復号可能なデータに再暗号化するための新規の再暗号化鍵を生成し、
    前記再暗号化部は、暗号化された医療情報を、前記新規の再暗号化鍵によって再暗号化して、前記新たに閲覧権限を取得した閲覧端末に提供する
    ことを特徴とする請求項3に記載の分散型医療情報共有システム。
  5. 前記医療情報提供サーバーは、
    前記提供端末により暗号化された医療情報を記憶する記憶部を備える
    ことを特徴とする請求項1から4のいずれか一項に記載の分散型医療情報共有システム。
  6. 前記閲覧端末は、
    第2の公開鍵及び第2の秘密鍵を生成する第2の暗号鍵生成部と、
    再暗号化された医療情報を、前記第2の公開鍵を用いて復号する復号処理部と、を備える
    ことを特徴とする請求項1から5のいずれか一項に記載の分散型医療情報共有システム。
  7. 医療情報を記憶する医療情報提供サーバーと、医療情報を、第1の秘密鍵を用いて暗号化する暗号化処理部を備え、前記医療情報提供サーバーに医療情報を提供する提供端末と、前記医療情報提供サーバーに記憶された医療情報を閲覧する閲覧端末と、合意形成処理を行う分散型共有台帳を管理するブロックチェーンノードと、を備えた分散型医療情報共有システムにおける医療情報提供サーバーであって、
    前記医療情報提供サーバーは、
    前記第1の秘密鍵に対応する第1の公開鍵及び前記閲覧端末が復号可能なデータに再暗号化するための再暗号化鍵を、前記ブロックチェーンノードによってブロックに保存させる保存制御部と、
    暗号化された医療情報を、ブロックに保存された前記再暗号化鍵によって再暗号化して、前記閲覧端末に提供する再暗号化部と、を備える
    ことを特徴とする医療情報提供サーバー。
  8. 前記提供端末により暗号化された医療情報を記憶する記憶部を備える
    ことを特徴とする請求項7に記載の医療情報提供サーバー。
  9. 医療情報を記憶する医療情報提供サーバーと、医療情報を、第1の秘密鍵を用いて暗号化する暗号化処理部を備え、前記医療情報提供サーバーに医療情報を提供する提供端末と、前記医療情報提供サーバーに記憶された医療情報を閲覧する閲覧端末と、合意形成処理を行う分散型共有台帳を管理するブロックチェーンノードと、を備えた分散型医療情報共有システムにおいて、
    前記医療情報提供サーバーのコンピューターを、
    前記第1の秘密鍵に対応する第1の公開鍵及び前記閲覧端末が復号可能なデータに再暗号化するための再暗号化鍵を、前記ブロックチェーンノードによってブロックに保存させる保存制御部、
    暗号化された医療情報を、ブロックに保存された前記再暗号化鍵によって再暗号化して、前記閲覧端末に提供する再暗号化部、として機能させる
    ためのプログラム。
JP2018131950A 2018-07-12 2018-07-12 分散型医療情報共有システム、医療情報提供サーバー及びプログラム Pending JP2020010267A (ja)

Priority Applications (1)

Application Number Priority Date Filing Date Title
JP2018131950A JP2020010267A (ja) 2018-07-12 2018-07-12 分散型医療情報共有システム、医療情報提供サーバー及びプログラム

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
JP2018131950A JP2020010267A (ja) 2018-07-12 2018-07-12 分散型医療情報共有システム、医療情報提供サーバー及びプログラム

Publications (1)

Publication Number Publication Date
JP2020010267A true JP2020010267A (ja) 2020-01-16

Family

ID=69152359

Family Applications (1)

Application Number Title Priority Date Filing Date
JP2018131950A Pending JP2020010267A (ja) 2018-07-12 2018-07-12 分散型医療情報共有システム、医療情報提供サーバー及びプログラム

Country Status (1)

Country Link
JP (1) JP2020010267A (ja)

Cited By (15)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN111261250A (zh) * 2020-01-19 2020-06-09 江苏恒宝智能系统技术有限公司 一种基于区块链技术的医疗数据共享方法、装置、电子设备及存储介质
CN111415718A (zh) * 2020-02-29 2020-07-14 重庆邮电大学 一种基于区块链和条件代理重加密的电子处方共享方法
CN111641641A (zh) * 2020-05-29 2020-09-08 兰州理工大学 基于可搜索代理重加密的区块链数据共享方法
CN112039892A (zh) * 2020-08-31 2020-12-04 中国信息通信研究院 一种数据共享方法以及相关装置
CN112261015A (zh) * 2020-10-12 2021-01-22 北京沃东天骏信息技术有限公司 基于区块链的信息共享方法、平台、系统以及电子设备
CN113239255A (zh) * 2021-05-13 2021-08-10 杭州趣链科技有限公司 异构数据资源的共享方法、装置、计算机设备及介质
WO2021172589A1 (ja) * 2020-02-28 2021-09-02 株式会社シーズ 情報処理システム、及びプログラム
JP2021131865A (ja) * 2020-02-19 2021-09-09 バイドゥ オンライン ネットワーク テクノロジー (ベイジン) カンパニー リミテッド ブロックチェーンによるデータ処理方法、装置、デバイス、媒体、及びプログラム
JP2021136694A (ja) * 2020-02-26 2021-09-13 バイドゥ オンライン ネットワーク テクノロジー (ベイジン) カンパニー リミテッド ブロックチェーンネットワークに基づくデータ共有方法、装置、機器及び媒体
JP7011019B1 (ja) 2020-10-30 2022-02-14 サークレイス株式会社 ユーザ情報管理システム、ユーザ情報管理方法及びコンピュータプログラム
CN114070617A (zh) * 2021-11-16 2022-02-18 上海柯林布瑞信息技术有限公司 基于区块链的医疗数据共享方法和装置
WO2022102418A1 (ja) * 2020-11-10 2022-05-19 ソニーグループ株式会社 情報処理装置、情報処理方法及び情報処理プログラム
KR20220124674A (ko) * 2020-04-29 2022-09-14 주식회사 디케이아이테크놀로지 블록체인과 피케이아이기술을 이용한 개인의료기록 공유방법
CN115150397A (zh) * 2022-07-07 2022-10-04 中国电信股份有限公司 资源共享方法及装置、存储介质及电子设备
JP7357174B1 (ja) * 2022-09-28 2023-10-05 株式会社Idホールディングス 閲覧手続管理システム、閲覧手続管理方法

Citations (4)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP2013101280A (ja) * 2011-11-09 2013-05-23 Alps Electric Co Ltd 光学装置及び光受信モジュール
JP2016012897A (ja) * 2014-06-30 2016-01-21 Kddi株式会社 暗号化データ管理システム、プロキシサーバ、ユーザ端末、暗号化データ管理方法およびコンピュータプログラム
JP6340107B1 (ja) * 2017-04-10 2018-06-06 アイビーシー株式会社 電子証明システム
JP2018107625A (ja) * 2016-12-26 2018-07-05 日本電信電話株式会社 データ配信システム、データ生成装置、仲介装置、データ配信方法、及びプログラム

Patent Citations (4)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP2013101280A (ja) * 2011-11-09 2013-05-23 Alps Electric Co Ltd 光学装置及び光受信モジュール
JP2016012897A (ja) * 2014-06-30 2016-01-21 Kddi株式会社 暗号化データ管理システム、プロキシサーバ、ユーザ端末、暗号化データ管理方法およびコンピュータプログラム
JP2018107625A (ja) * 2016-12-26 2018-07-05 日本電信電話株式会社 データ配信システム、データ生成装置、仲介装置、データ配信方法、及びプログラム
JP6340107B1 (ja) * 2017-04-10 2018-06-06 アイビーシー株式会社 電子証明システム

Non-Patent Citations (1)

* Cited by examiner, † Cited by third party
Title
王立華 他: "PRINCESS:プロキシ暗号化技術を活用したセキュアなストレージシステム", 2014年 暗号と情報セキュリティシンポジウム, JPN6022005155, 21 January 2014 (2014-01-21), pages 1 - 6, ISSN: 0004866634 *

Cited By (25)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN111261250A (zh) * 2020-01-19 2020-06-09 江苏恒宝智能系统技术有限公司 一种基于区块链技术的医疗数据共享方法、装置、电子设备及存储介质
US11630821B2 (en) 2020-02-19 2023-04-18 Baidu Online Network Technology (Beijing) Co., Ltd. Blockchain-based data processing method and apparatus, device, and medium
JP2021131865A (ja) * 2020-02-19 2021-09-09 バイドゥ オンライン ネットワーク テクノロジー (ベイジン) カンパニー リミテッド ブロックチェーンによるデータ処理方法、装置、デバイス、媒体、及びプログラム
JP7066890B2 (ja) 2020-02-19 2022-05-13 バイドゥ オンライン ネットワーク テクノロジー(ペキン) カンパニー リミテッド ブロックチェーンによるデータ処理方法、装置、デバイス、媒体、及びプログラム
JP7096920B2 (ja) 2020-02-26 2022-07-06 バイドゥ オンライン ネットワーク テクノロジー(ペキン) カンパニー リミテッド ブロックチェーンネットワークに基づくデータ共有方法、装置、機器及び媒体
JP2021136694A (ja) * 2020-02-26 2021-09-13 バイドゥ オンライン ネットワーク テクノロジー (ベイジン) カンパニー リミテッド ブロックチェーンネットワークに基づくデータ共有方法、装置、機器及び媒体
WO2021172589A1 (ja) * 2020-02-28 2021-09-02 株式会社シーズ 情報処理システム、及びプログラム
CN111415718A (zh) * 2020-02-29 2020-07-14 重庆邮电大学 一种基于区块链和条件代理重加密的电子处方共享方法
CN111415718B (zh) * 2020-02-29 2024-02-09 沈培君 一种基于区块链和条件代理重加密的电子处方共享方法
KR20220124674A (ko) * 2020-04-29 2022-09-14 주식회사 디케이아이테크놀로지 블록체인과 피케이아이기술을 이용한 개인의료기록 공유방법
KR102605710B1 (ko) 2020-04-29 2023-11-24 주식회사 디케이아이테크놀로지 블록체인과 피케이아이기술을 이용한 개인의료기록 공유방법
CN111641641A (zh) * 2020-05-29 2020-09-08 兰州理工大学 基于可搜索代理重加密的区块链数据共享方法
CN111641641B (zh) * 2020-05-29 2021-07-30 兰州理工大学 基于可搜索代理重加密的区块链数据共享方法
CN112039892B (zh) * 2020-08-31 2022-11-29 中国信息通信研究院 一种数据共享方法以及相关装置
CN112039892A (zh) * 2020-08-31 2020-12-04 中国信息通信研究院 一种数据共享方法以及相关装置
CN112261015B (zh) * 2020-10-12 2023-05-12 北京沃东天骏信息技术有限公司 基于区块链的信息共享方法、平台、系统以及电子设备
CN112261015A (zh) * 2020-10-12 2021-01-22 北京沃东天骏信息技术有限公司 基于区块链的信息共享方法、平台、系统以及电子设备
JP7011019B1 (ja) 2020-10-30 2022-02-14 サークレイス株式会社 ユーザ情報管理システム、ユーザ情報管理方法及びコンピュータプログラム
JP2022073280A (ja) * 2020-10-30 2022-05-17 サークレイス株式会社 ユーザ情報管理システム、ユーザ情報管理方法及びコンピュータプログラム
WO2022091619A1 (ja) * 2020-10-30 2022-05-05 サークレイス株式会社 ユーザ情報管理システム、ユーザ情報管理方法及びコンピュータプログラム
WO2022102418A1 (ja) * 2020-11-10 2022-05-19 ソニーグループ株式会社 情報処理装置、情報処理方法及び情報処理プログラム
CN113239255A (zh) * 2021-05-13 2021-08-10 杭州趣链科技有限公司 异构数据资源的共享方法、装置、计算机设备及介质
CN114070617A (zh) * 2021-11-16 2022-02-18 上海柯林布瑞信息技术有限公司 基于区块链的医疗数据共享方法和装置
CN115150397A (zh) * 2022-07-07 2022-10-04 中国电信股份有限公司 资源共享方法及装置、存储介质及电子设备
JP7357174B1 (ja) * 2022-09-28 2023-10-05 株式会社Idホールディングス 閲覧手続管理システム、閲覧手続管理方法

Similar Documents

Publication Publication Date Title
JP2020010267A (ja) 分散型医療情報共有システム、医療情報提供サーバー及びプログラム
JP6547079B1 (ja) 登録・認可方法、装置及びシステム
US9922207B2 (en) Storing user data in a service provider cloud without exposing user-specific secrets to the service provider
JP6082589B2 (ja) 暗号鍵管理プログラム、データ管理システム
JP6826290B2 (ja) 証明書配付システム、証明書配付方法、および証明書配付プログラム
CN104641592B (zh) 用于无证书认证加密(clae)的方法和系统
US10708047B2 (en) Computer-readable recording medium storing update program and update method, and computer-readable recording medium storing management program and management method
US11741241B2 (en) Private data processing
KR101982237B1 (ko) 클라우드 컴퓨팅 환경에서의 속성 기반 암호화를 이용한 데이터 공유 방법 및 시스템
RU2512139C2 (ru) Способ и устройство для генерации и аутентификации псевдонима
JP2010061103A (ja) 高速検索可能な暗号化のための方法、装置およびシステム
KR20090121628A (ko) Srm 장치간의 안전 정보 교환 시스템 및 방법
US20140156988A1 (en) Medical emergency-response data management mechanism on wide-area distributed medical information network
US20200035339A1 (en) Blockchain security system for secure record access across multiple computer systems
CN112118245A (zh) 密钥管理方法、系统和设备
JP6976405B2 (ja) アクセス管理システム、及びそのプログラム
JP2009212689A (ja) 共通鍵自動配布システム、クライアント、第三者認証機関側サーバ、及び共通鍵自動共有方法
JP5494171B2 (ja) ファイル管理システム、ストレージサーバ、クライアント、ファイル管理方法およびプログラム
JP5586397B2 (ja) セキュア・ネットワーク・ストレージ・システム、方法、クライアント装置、サーバ装置、及びプログラム
JP2003244123A (ja) 共通鍵管理システム、共通鍵管理サーバ、共通鍵管理方法、及び共通鍵管理プログラム
JPH11331145A (ja) 情報共有システム、情報保管装置およびそれらの情報処理方法、並びに記録媒体
KR20160128170A (ko) 비밀키 암호화 및 복원을 제공하는 단말, 서버 및 방법
WO2009153974A1 (ja) データ管理システム、データ管理方法、およびコンピュータプログラム
CN113766512A (zh) 一种医疗大数据信息安全处理方法及系统
JP2011130021A (ja) 証跡管理方法

Legal Events

Date Code Title Description
A621 Written request for application examination

Free format text: JAPANESE INTERMEDIATE CODE: A621

Effective date: 20210419

A977 Report on retrieval

Free format text: JAPANESE INTERMEDIATE CODE: A971007

Effective date: 20220126

A131 Notification of reasons for refusal

Free format text: JAPANESE INTERMEDIATE CODE: A131

Effective date: 20220208

A521 Request for written amendment filed

Free format text: JAPANESE INTERMEDIATE CODE: A523

Effective date: 20220406

A131 Notification of reasons for refusal

Free format text: JAPANESE INTERMEDIATE CODE: A131

Effective date: 20220906

A601 Written request for extension of time

Free format text: JAPANESE INTERMEDIATE CODE: A601

Effective date: 20221104

A02 Decision of refusal

Free format text: JAPANESE INTERMEDIATE CODE: A02

Effective date: 20230307