IP Force 特許公報掲載プロジェクト 2022.1.31 β版

知財求人 - 知財ポータルサイト「IP Force」

▶ 株式会社IDホールディングスの特許一覧

特開2024-49373閲覧手続管理システム、閲覧手続管理方法
<>
  • 特開-閲覧手続管理システム、閲覧手続管理方法 図1
  • 特開-閲覧手続管理システム、閲覧手続管理方法 図2
  • 特開-閲覧手続管理システム、閲覧手続管理方法 図3
  • 特開-閲覧手続管理システム、閲覧手続管理方法 図4
  • 特開-閲覧手続管理システム、閲覧手続管理方法 図5
  • 特開-閲覧手続管理システム、閲覧手続管理方法 図6
  • 特開-閲覧手続管理システム、閲覧手続管理方法 図7
  • 特開-閲覧手続管理システム、閲覧手続管理方法 図8
  • 特開-閲覧手続管理システム、閲覧手続管理方法 図9
  • 特開-閲覧手続管理システム、閲覧手続管理方法 図10
  • 特開-閲覧手続管理システム、閲覧手続管理方法 図11
  • 特開-閲覧手続管理システム、閲覧手続管理方法 図12
  • 特開-閲覧手続管理システム、閲覧手続管理方法 図13
  • 特開-閲覧手続管理システム、閲覧手続管理方法 図14
  • 特開-閲覧手続管理システム、閲覧手続管理方法 図15
  • 特開-閲覧手続管理システム、閲覧手続管理方法 図16
  • 特開-閲覧手続管理システム、閲覧手続管理方法 図17
  • 特開-閲覧手続管理システム、閲覧手続管理方法 図18
  • 特開-閲覧手続管理システム、閲覧手続管理方法 図19
  • 特開-閲覧手続管理システム、閲覧手続管理方法 図20
< >
(19)【発行国】日本国特許庁(JP)
(12)【公報種別】公開特許公報(A)
(11)【公開番号】P2024049373
(43)【公開日】2024-04-09
(54)【発明の名称】閲覧手続管理システム、閲覧手続管理方法
(51)【国際特許分類】
   G16H 10/60 20180101AFI20240402BHJP
【FI】
G16H10/60
【審査請求】有
【請求項の数】2
【出願形態】OL
(21)【出願番号】P 2023161785
(22)【出願日】2023-09-25
(62)【分割の表示】P 2023032503の分割
【原出願日】2023-03-03
(31)【優先権主張番号】P 2022154939
(32)【優先日】2022-09-28
(33)【優先権主張国・地域又は機関】JP
(71)【出願人】
【識別番号】519355600
【氏名又は名称】株式会社IDホールディングス
(74)【代理人】
【識別番号】100111970
【弁理士】
【氏名又は名称】三林 大介
(72)【発明者】
【氏名】牧野 剛明
【テーマコード(参考)】
5L099
【Fターム(参考)】
5L099AA23
(57)【要約】
【課題】複数の診察機関で作成された診察データの可用性を十分に確保する。
【解決手段】複数の診察ノード2の中の要求ノード2aが作成ノード2bに対して、対象診察データの閲覧を求める要求メッセージを作成して作成ノードに送信する。作成ノードは、要求メッセージと共に受け取った対象患者の署名を認証して、要求ノードに対象診察データの閲覧権限を設定するように依頼する依頼メッセージを作成して認証ノード3に送信する。依頼メッセージには、対象患者および自己の署名をメッセージに含めるか、添付しておく。認証ノードは、依頼メッセージを受け取ると、要求ノードに対象診察データの閲覧権限を設定するブロックデータを生成し、複数の診察ノードに送信してブロックチェーン形式で記憶させる。
【選択図】図3
【特許請求の範囲】
【請求項1】
患者を診察することによって診察データを作成すると共に、複数のブロックデータをブロックチェーン形式で記憶する複数の診察ノードと、前記ブロックデータを生成して前記診察ノードに記憶させる認証ノードとが通信回線で接続されることによって形成され、複数の前記診察ノード間で前記診察データを閲覧する手続を管理する閲覧手続管理システムであって、
前記診察ノードは、
複数のブロックデータをブロックチェーン形式で記憶するブロックデータ記憶部と、
前記診察データを作成すると、前記診察ノードに接続されたデータベースに出力する診察データ出力部と
を備えており、
複数の前記診察ノードの中には、他の前記診察ノードで作成された前記診察データの閲覧を要求する要求ノードと、前記要求ノードから閲覧を要求された前記診察データである対象診察データを作成した作成ノードとが含まれており、
前記要求ノードは、前記作成ノードに対して前記対象診察データの閲覧を要求するメッセージであって、前記対象診察データの診察対象である対象患者の署名が付与された所定の署名用データを含むか、前記対象患者の署名が付与された前記署名用データが添付された前記メッセージである要求メッセージを作成すると、前記要求メッセージを前記作成ノードに送信する要求メッセージ送信部を有しており、
前記作成ノードは、
前記要求メッセージを受け取ると、前記要求メッセージと共に受け取った前記署名用データの前記対象患者の署名を認証する患者署名認証部と、
前記対象患者の署名の認証が成功した場合には、前記対象診察データを特定するための診察データ特定情報と、前記要求ノードを特定するための要求ノード特定情報とを取得する特定情報取得部と、
前記要求ノードが前記対象診察データを閲覧可能となる閲覧権限の設定を依頼するためのメッセージであって、前記診察データ特定情報と、前記要求ノード特定情報とを含むと共に、前記対象患者の署名付きの前記署名用データおよび前記作成ノードの署名付きの前記署名用データを更に含むか、前記対象患者の署名付きの前記署名用データおよび前記作成ノードの署名付きの前記署名用データが添付された前記メッセージである依頼メッセージを作成する依頼メッセージ作成部と、
前記依頼メッセージを前記認証ノードに送信する依頼メッセージ送信部と
を有しており、
前記認証ノードは、
前記依頼メッセージを受け取ると、前記対象患者の署名および前記作成ノードの署名を含み、前記要求ノードに対して前記対象診察データの閲覧権限を設定する前記ブロックデータを生成するブロックデータ生成部と、
生成した前記ブロックデータを複数の前記診察ノードに送信するブロックデータ送信部と
を備えることを特徴とする閲覧手続管理システム。
【請求項2】
患者を診察することによって診察データを作成すると共に複数のブロックデータをブロックチェーン形式で記憶する複数の診察ノードと、前記ブロックデータを生成して前記診察ノードに出力する認証ノードとが通信回線で接続されたネットワーク上で通信することにより、複数の前記診察ノード間で前記診察データを閲覧する手続を管理する閲覧手続管理方法であって、
複数の前記診察ノードの中で、他の前記診察ノードで作成された前記診察データの閲覧を要求する要求ノードが、前記要求ノードから閲覧を要求された前記診察データである対象診察データを作成した作成ノードに対して送信するメッセージであって、前記対象診察データの閲覧を要求すると共に、前記対象診察データの診察対象である対象患者の署名が付与された所定の署名用データを含むか、前記対象患者の署名が付与された前記署名用データが添付された前記メッセージである要求メッセージを作成して、前記作成ノードに送信する工程と、
前記作成ノードが、前記要求メッセージと共に受け取った前記署名用データの前記対象患者の署名を認証する工程と、
前記対象患者の署名の認証が成功した場合には、前記対象診察データを特定するための診察データ特定情報と、前記要求ノードを特定するための要求ノード特定情報とを、前記作成ノードが取得する工程と、
前記対象診察データを前記要求ノードが閲覧可能となる閲覧権限の設定を依頼するためのメッセージであって、前記診察データ特定情報と、前記要求ノード特定情報とを含むと共に、前記対象患者の署名付きの前記署名用データおよび前記作成ノードの署名付きの前記署名用データを更に含むか、前記対象患者の署名付きの前記署名用データおよび前記作成ノードの署名付きの前記署名用データが添付された前記メッセージである依頼メッセージを、前記作成ノードが作成して、前記認証ノードに送信する工程と、
前記認証ノードが前記依頼メッセージを受け取ると、前記認証ノードが、前記対象患者の署名と前記作成ノードの署名とを含み、前記要求ノードに対して前記対象診察データの閲覧権限を設定する前記ブロックデータを生成して、複数の前記診察ノードに送信する工程と
を備えることを特徴とする閲覧手続管理方法。
【発明の詳細な説明】
【技術分野】
【0001】
本発明は、患者を診察することによって診察データを作成し、通信回線で接続された複数の診察ノードが、互いの診察データを閲覧する手続を管理する技術に関する。
【背景技術】
【0002】
医師が患者を診察する際には、患者が他の医療機関で受診した時の診察記録(例えば検査画像や検査数値や医師の所見など)を参照する必要が生じることがある。このような場合、患者が以前に受信した医療機関に依頼して、診察記録を提供して貰うことになる。
【0003】
ところが、依頼を受けた医療機関にとっては、依頼に応じて診察記録を提供すれば良いという単純な話ではない。その理由は、次のようなものである。先ず、診察記録は単に検査結果(検査画像や検査数値など)を記載したものではなく、医師の長年の臨床経験や、医学的な知識や、それらを踏まえた医療方針などが反映されて生み出される創作物である。このため、診察記録には医師の著作権が混入している可能性がある。加えて、診察記録は患者にとっては極めて敏感な個人情報となり得るため、取扱いによっては患者のプライバシー権を侵害する虞がある。これらの事情から、依頼に応じてむやみに診察記録を提供すると、予期せぬ訴訟に巻き込まれる虞が生じるためである。実際に医療の現場では、複数の医療機関で診察記録を積極的に相互利用しようとしても、上述した事情が障害となっている旨が報告されている(非特許文献1)。
【0004】
これに対して、複数の医療機関で作成された診察記録を診察記録データベースに記憶すると共に、診察記録を参照するための記録識別情報をブロックチェーンデータベースに記憶し、更に、登録情報データベースに、患者を識別する患者識別情報に対応付けて記録識別情報を記憶しておくことで、保険会社などの第三者機関が患者の診察記録を長期に亘って参照できるようにした技術が提案されている(特許文献1)。
【0005】
あるいは、患者の処方箋データをブロックチェーンデータベースに記憶しておき、医者が処方箋を発行する場合や、薬剤師が処方箋を参照する場合は、患者が端末を操作することによって、医者または薬剤師に対してブロックチェーンデータベース上での処方箋データへのアクセス権限を付与し、処方箋の会計処理が終わったら、医者または薬剤師のアクセス権限を剥奪するようにした技術が提案されている(特許文献2)。
【先行技術文献】
【特許文献】
【0006】
【特許文献1】特許第6801922号公報
【特許文献2】特許第6936763号公報
【非特許文献1】前田まゆみ、「診療録の法的考察―判例からの分析―」、医学教育、2005年6月、第36巻、第3号、p.153-157
【発明の概要】
【発明が解決しようとする課題】
【0007】
しかし、上述した従来の技術では、複数の医療機関に保存されている診察記録の可用性を十分に担保することができないという問題があった。例えば、上述した特許文献1に記載の技術では、保険会社などが過去の診察記録を容易に入手可能であるものの、診察記録を入手あるいは提供する行為が、患者や診察記録を作成した医師の同意に基づく行為であることを立証することができない。このため、診察記録を入手あるいは提供したことで予期せぬ訴訟に巻き込まれる虞がある。また、上述した特許文献2に記載の技術では、処方箋に基づいて調剤する際に、患者の同意に基づいて処方箋の提供を受けたことを立証可能であるものの、診察記録の提供を受ける際に、医師や患者の同意に基づいて提供を受けたことは立証することができない。このため、処方箋や診察記録を入手あるいは提供したことで予期せぬ訴訟に巻き込まれる虞がある。
【0008】
この発明は、従来の技術が有する上述した課題を解決するために成されたものであり、医療機関に保存されている診察記録を入手あるいは提供する際に、該当する患者および医師の同意が得られていることを後日に容易に立証可能でありながら、簡単な手続で診察記録を入手あるいは提供可能とすることで、診察記録の可用性を十分に担保することが可能な診察記録管理システムを実現することを目的とする。
【課題を解決するための手段】
【0009】
上述した課題を解決するために、本発明の閲覧手続管理システムは、次の構成を採用した。すなわち、
患者を診察することによって診察データを作成すると共に、複数のブロックデータをブロックチェーン形式で記憶する複数の診察ノードと、前記ブロックデータを生成して前記診察ノードに記憶させる認証ノードとが通信回線で接続されることによって形成され、複数の前記診察ノード間で前記診察データを閲覧する手続を管理する閲覧手続管理システムであって、
前記診察ノードは、
複数のブロックデータをブロックチェーン形式で記憶するブロックデータ記憶部と、
前記診察データを作成すると、前記診察ノードに接続されたデータベースに出力する診察データ出力部と
を備えており、
複数の前記診察ノードの中には、他の前記診察ノードで作成された前記診察データの閲覧を要求する要求ノードと、前記要求ノードから閲覧を要求された前記診察データである対象診察データを作成した作成ノードとが含まれており、
前記要求ノードは、前記作成ノードに対して前記対象診察データの閲覧を要求するメッセージであって、前記対象診察データの診察対象である対象患者の署名が付与された所定の署名用データを含むか、前記対象患者の署名が付与された前記署名用データが添付された前記メッセージである要求メッセージを作成すると、前記要求メッセージを前記作成ノードに送信する要求メッセージ送信部を有しており、
前記作成ノードは、
前記要求メッセージを受け取ると、前記要求メッセージと共に受け取った前記署名用データの前記対象患者の署名を認証する患者署名認証部と、
前記対象患者の署名の認証が成功した場合には、前記対象診察データを特定するための診察データ特定情報と、前記要求ノードを特定するための要求ノード特定情報とを取得する特定情報取得部と、
前記要求ノードが前記対象診察データを閲覧可能となる閲覧権限の設定を依頼するためのメッセージであって、前記診察データ特定情報と、前記要求ノード特定情報とを含むと共に、前記対象患者の署名付きの前記署名用データおよび前記作成ノードの署名付きの前記署名用データを更に含むか、前記対象患者の署名付きの前記署名用データおよび前記作成ノードの署名付きの前記署名用データが添付された前記メッセージである依頼メッセージを作成する依頼メッセージ作成部と、
前記依頼メッセージを前記認証ノードに送信する依頼メッセージ送信部と
を有しており、
前記認証ノードは、
前記依頼メッセージを受け取ると、前記対象患者の署名および前記作成ノードの署名を含み、前記要求ノードに対して前記対象診察データの閲覧権限を設定する前記ブロックデータを生成するブロックデータ生成部と、
生成した前記ブロックデータを複数の前記診察ノードに送信するブロックデータ送信部と
を備えることを特徴とする。
【0010】
また、上述した本発明の閲覧手続管理システムに対応する本発明の閲覧手続管理方法は、次の構成を採用した。すなわち、
患者を診察することによって診察データを作成すると共に複数のブロックデータをブロックチェーン形式で記憶する複数の診察ノードと、前記ブロックデータを生成して前記診察ノードに出力する認証ノードとが通信回線で接続されたネットワーク上で通信することにより、複数の前記診察ノード間で前記診察データを閲覧する手続を管理する閲覧手続管理方法であって、
複数の前記診察ノードの中で、他の前記診察ノードで作成された前記診察データの閲覧を要求する要求ノードが、前記要求ノードから閲覧を要求された前記診察データである対象診察データを作成した作成ノードに対して送信するメッセージであって、前記対象診察データの閲覧を要求すると共に、前記対象診察データの診察対象である対象患者の署名が付与された所定の署名用データを含むか、前記対象患者の署名が付与された前記署名用データが添付された前記メッセージである要求メッセージを作成して、前記作成ノードに送信する工程と、
前記作成ノードが、前記要求メッセージと共に受け取った前記署名用データの前記対象患者の署名を認証する工程と、
前記対象患者の署名の認証が成功した場合には、前記対象診察データを特定するための診察データ特定情報と、前記要求ノードを特定するための要求ノード特定情報とを、前記作成ノードが取得する工程と、
前記対象診察データを前記要求ノードが閲覧可能となる閲覧権限の設定を依頼するためのメッセージであって、前記診察データ特定情報と、前記要求ノード特定情報とを含むと共に、前記対象患者の署名付きの前記署名用データおよび前記作成ノードの署名付きの前記署名用データを更に含むか、前記対象患者の署名付きの前記署名用データおよび前記作成ノードの署名付きの前記署名用データが添付された前記メッセージである依頼メッセージを、前記作成ノードが作成して、前記認証ノードに送信する工程と、
前記認証ノードが前記依頼メッセージを受け取ると、前記認証ノードが、前記対象患者の署名と前記作成ノードの署名とを含み、前記要求ノードに対して前記対象診察データの閲覧権限を設定する前記ブロックデータを生成して、複数の前記診察ノードに送信する工程と
を備えることを特徴とする。
【0011】
このような本発明の閲覧手続管理システムおよび閲覧手続管理方法では、要求ノードが他の診察ノードで作成された診察データの閲覧を要求する場合には、作成ノードに対して診察データ(対象診察データ)の閲覧を求める要求メッセージを作成して、作成ノードに送信する。作成ノードは、要求メッセージと共に送られてくる対象患者の署名に基づいて、対象患者の同意が得られていることを確認すると、要求ノードに対して対象診察データの閲覧権限を設定するように依頼する依頼メッセージを作成して、認証ノードに送信する。認証ノードは、依頼メッセージを受け取ると、要求ノードに対して対象診察データの閲覧権限を設定するブロックデータを生成して、要求ノードを含む複数の診察ノードに送信する。複数の診察ノードでは、認証ノードから送信されてきたブロックデータがブロックチェーン形式で記憶される。
【0012】
こうすれば、複数の診察ノードに記憶されているブロックデータを調べれば、要求ノードに対する対象診察データの閲覧権限が、対象患者および作成ノードの同意に基づいて設定されたことを容易に確認することができる。このため要求ノードにとっては、対象患者および作成ノードの同意を得た上で対象診察データを閲覧したことを、後日になっても容易に立証することができる。また、作成ノードにとっては、対象患者の同意に基づいて、要求ノードに対象診察データを閲覧させたことを、後日になっても容易に立証することができる。その結果、他の診察ノードで作成された診察データを閲覧したり、他の診察ノードに診察データを閲覧させたりした場合でも、予期せぬ訴訟に巻き込まれる虞がないので、診察ノードの可用性を十分に確保することが可能となる。
【図面の簡単な説明】
【0013】
図1】本実施例の閲覧手続管理システム1の概要を示す説明図である。
図2】診察ノード2や認証ノード3にブロックチェーン形式で記憶されている複数のブロックデータ10を例示した説明図である。
図3】閲覧手続管理システム1の診察ノード2や認証ノード3にブロックデータ10が記憶される様子を概念的に示した説明図である。
図4】診察ノード2の内部構造を示したブロック図である。
図5】認証ノード3の内部構造を示したブロック図である。
図6】患者が閲覧手続管理システム1に登録する際に患者端末6および認証ノード3で実行される処理についての説明図である。
図7】診察ノード2が診察データを閲覧手続管理システム1に登録する際に診察ノード2および認証ノード3で実行される処理についての説明図である。
図8】診察データの登録するための登録メッセージに含まれる複数の情報を示した説明図である。
図9】診察データを登録するために認証ノード3によって作成されるブロックデータ10を示した説明図である。
図10】要求ノード2aが作成ノード2bに対して診察データの閲覧を要求する際に患者端末6および要求ノード2aで実行される処理についての説明図である。
図11】要求ノード2aが作成ノード2bに対して診察データの閲覧を要求する際に要求ノード2aおよび作成ノード2bで実行される処理についての説明図である。
図12】要求ノード2aが作成ノード2bに対して診察データの閲覧を要求する際に作成ノード2bおよび認証ノード3で実行される処理についての説明図である。
図13】患者端末6が署名する承諾メッセージの文面を例示した説明図である。
図14】要求ノード2aが作成する要求メッセージに含まれる複数の情報を示した説明図である。
図15】作成ノード2bが作成する依頼メッセージに含まれる複数の情報を示した説明図である。
図16】認証ノード3によって作成される閲覧許諾のブロックデータ10を示した説明図である。
図17】第1変形例の要求メッセージを例示した説明図である。
図18】第1変形例の依頼メッセージを例示した説明図である。
図19】要求メッセージに対象患者および要求ノード2aの署名が添付される第2変形例についての説明図である。
図20】依頼メッセージに対象患者および作成ノード2bの署名が添付される第2変形例についての説明図である。
【発明を実施するための形態】
【0014】
A.閲覧手続管理システム1の概要 :
図1は、本実施例の閲覧手続管理システム1の概要を示す説明図である。本実施例の閲覧手続管理システム1は、患者を診察することによって診察データを作成する複数の診察ノード2や、認証ノード3が、インターネットなどの通信回線5を介して接続されることによって形成されている。ここで、診察データとは、医師が患者を診察することによって作成された診療録をデータ化したものであり、診療録には検査画像や検査数値や医師のメモなども含まれる。また、後述するように診察ノード2は、複数のブロックデータをブロックチェーン形式で記憶することが可能となっており、認証ノード3が後述する方法で新たなブロックデータを生成して、通信回線5を介して診察ノード2に送信すると、診察ノード2に新たなブロックデータが追加されるようになっている。
【0015】
それぞれの診察ノード2には専用のデータサーバ4が接続されており、診察ノード2は診察データを作成するとデータサーバ4に診察データを記憶しておき、必要に応じてデータサーバ4から診察データを読み出して閲覧することができる。また、他の診察ノード2で作成された診察データを閲覧する必要が生じた場合は、その診察データを作成した診察ノード2に対して、閲覧を要求するメッセージを送信することで、必要とする診察データを閲覧することが可能となる。尚、以下では、他の診察ノード2で作成された診察データの閲覧を要求する診察ノード2を「要求ノード2a」と称し、要求ノード2aが閲覧を要求する対象の診察データを「対象診察データ」と称し、その対象診察データを作成した診察ノード2を「作成ノード2b」と称するものとする。
【0016】
また、本実施例では、診察ノード2毎に専用のデータサーバ4が接続されているものとして説明するが、これに限らず、例えば複数の診察ノード2を共用のデータサーバ4に接続して、それら診察ノード2が診察データを作成すると共用のデータサーバ4に記憶するようにしても良い。あるいは、全ての診察ノード2を中央のデータサーバ4に接続して、全ての診察ノード2で作成された診察データは中央のデータサーバ4に記憶されるようにしても良い。尚、本実施例のデータサーバ4は、本発明における「データベース」に対応する。
【0017】
更に、通信回線5には複数の認証ノード3も接続されている。複数の認証ノード3は通信回線5を介して診察ノード2と通信可能となっており、診察ノード2が診察データを作成したり、要求ノード2aの要求に応じて作成ノード2bが診察データの閲覧を許諾する度にブロックデータを作成する。そして、複数の認証ノード3で作成されたブロックデータは、複数の認証ノード3の合意によって確定されて、全ての診察ノード2に一斉に送信される。その結果、全ての診察ノード2には、複数のブロックデータがブロックチェーン形式で蓄積されるようになっている。また、ブロックデータは、複数の認証ノード3にもブロックチェーン形式で蓄積される。
【0018】
尚、本実施例では、認証ノード3は患者を診察しないので診察データも作成しないとしているため、図1に示した例では、認証ノード3にはデータサーバ4が接続されていない。しかし、認証ノード3でも患者を診察して診察データを作成しても良い。この場合は、認証ノード3にもデータサーバ4が接続されており、認証ノード3で作成された診察データはデータサーバ4に記憶される。
【0019】
また、診察ノード2で診察を受ける患者は、スマートフォンなどの患者端末6に専用のアプリケーションをインストールすることで、患者端末6から通信回線5を介して閲覧手続管理システム1に接続することが可能となる。あるいは患者端末6のWebブラウザを用いて、閲覧手続管理システム1に接続しても良い。
【0020】
図2は、診察ノード2や認証ノード3にブロックチェーン形式で記憶されている複数のブロックデータ10を例示した説明図である。図2に示した例では、5つのブロックデータ10a~10eがブロックチェーン形式で記憶されている状態が概念的に示されている。図示されるように、ブロックデータ10はデータ形式が同一のデータ(すなわち、同じ種類のデータ)である必要はなく、図2に示した例では3種類のブロックデータ10が記憶されている。すなわち、3つのブロックデータ10a,10b,10dは、互いに同じデータ形式を有する同じ種類のデータであるが、ブロックデータ10cやブロックデータ10eは、他のブロックデータとは異なる種類のデータとなっている。
【0021】
また、これらのブロックデータ10a~10dは、ブロックチェーン形式で記憶されている。ここで、ブロックチェーン形式とは次のような形式である。例えば、図2中のブロックデータ10bに着目すると、ブロックデータ10bの中には前のブロックデータ10aのハッシュ値が含まれている。周知のように、ハッシュ値とは、任意のデータに対してハッシュ関数と呼ばれる特別な操作を行うことによって得られる値である。また、ハッシュ関数は、どのようなサイズのデータであっても同じデータ長のハッシュ値に変換し、変換前のデータの一部でも異なれば変換したハッシュ値は全く異なる値となり、更に、ハッシュ値からは変換前のデータに戻すことが不可能であるという性質を有している。従って、ハッシュ値と元のデータとの間には一対一の関係が成立しており、ハッシュ値は変換前のデータを一意的に代表すると考えて良い。
【0022】
図2のブロックデータ10bの中には、前のブロックデータ10aのハッシュ値が含まれており、ブロックデータ10bのハッシュ値は、後ろのブロックデータ10cの中に含まれている。そのブロックデータ10cのハッシュ値は、その後ろのブロックデータ10dの中に含まれており、ブロックデータ10dのハッシュ値は、更に後のブロックデータ10eの中に含まれている。その結果、5つのブロックデータ10a~10eは、鎖のように一つずつ繋がった状態となっている。このような状態が、ブロックチェーン形式と呼ばれる状態である。診察ノード2や認証ノード3には、このようなブロックチェーン形式で複数のブロックデータ10が記憶されている。尚、本実施例では、複数のブロックデータが、前のブロックデータのハッシュ値を用いて繋がっているものとしているが、これは、前のブロックデータのハッシュ値が、前のブロックデータを一意的に代表するという特性を有するためである。従って、前のブロックデータのハッシュ値の代わりに、前のブロックデータを特定する情報(例えば、前のブロックデータのURL(Uniform Resouce Location )やURN(Uniform Resouce Name )など)を用いて、複数のブロックデータを繋げるようにしても良い。また、これらのブロックデータ10は、次のようにして診察ノード2や認証ノード3に記憶される。
【0023】
図3は、閲覧手続管理システム1の診察ノード2や認証ノード3にブロックデータ10が記憶される様子を概念的に示した説明図である。例えば、本実施例の診察ノード2は、患者を診察して診察データを作成すると、その診察データをデータサーバ4に記憶すると共に、診察データを登録するように要請するメッセージ(以下、登録メッセージ)を閲覧手続管理システム1に送信する。すると、その登録メッセージが閲覧手続管理システム1の複数の認証ノード3によって認証されて、認証を通った場合は、複数の認証ノード3の合意によって、診察データを登録するためのブロックデータ10が作成される。そして、そのブロックデータ10が認証ノード3から複数の診察ノード2に送信されて、診察ノード2および認証ノード3に記憶される。図2中のブロックデータ10aやブロックデータ10b、ブロックデータ10dは、このようにして記憶されたブロックデータ10である。尚、このようなブロックデータ10が作成される詳細な動作については後述する。
【0024】
また、ブロックデータ10の記憶後に、別の診察ノード2から閲覧手続管理システム1に診察データの登録メッセージが送信されてきた場合には、その前に記憶したブロックデータ10に続けて新たなブロックデータ10がブロックチェーン形式で記憶される。図3に示した例では、4つの診察ノード2から送信された診察データの登録メッセージに対応して、4つのブロックデータ10がブロックチェーン形式で記憶される。
【0025】
患者が、患者端末6から閲覧手続管理システム1に対して登録を申請するメッセージ(以下、登録申請メッセージ)を送信した場合には、その登録申請メッセージが閲覧手続管理システム1の認証ノード3によって認証される。そして、認証を通った場合は、患者を登録するためのブロックデータ10が診察ノード2および認証ノード3に記憶される。図2中のブロックデータ10eは、このようにして記憶されたブロックデータ10である。このようなブロックデータ10が作成される詳細な手続きについても後述する。
【0026】
また、要求ノード2aが作成ノード2bに対して診察データの閲覧を要求するメッセージ(以下、要求メッセージ)を送信すると、それに対して作成ノード2bが閲覧権限の設定を依頼するメッセージ(以下、依頼メッセージ)を閲覧手続管理システム1に送信する。すると、その依頼メッセージが閲覧手続管理システム1の複数の認証ノード3によって認証されて、認証を通った場合は、複数の認証ノード3の合意によって、要求ノード2aに閲覧権限を設定するブロックデータ10が作成されて、診察ノード2および認証ノード3に記憶される。図2中のブロックデータ10cは、このようにして記憶されたブロックデータ10である。以下では、図2中のブロックデータ10cのように、要求ノード2aに閲覧権限を設定するブロックデータ10を、特に「閲覧許諾のブロックデータ10」と称することがある。尚、図2のブロックデータ10c中に、「患者と作成ノードによる基準値の二重署名」とあるのは、患者が基準値に署名したものに重ねて作成ノード2bが署名したものを指している。また、閲覧許諾のブロックデータ10が作成される詳細な手続きについても後述する。
【0027】
このように、本実施例の閲覧手続管理システム1では、診察ノード2や、要求ノード2aや、作成ノード2bなどが、閲覧手続管理システム1に対して(あるいは閲覧手続管理システム1を介して)メッセージを送信すると、そのメッセージが認証ノード3によって認証されて、診察ノード2および認証ノード3にブロックデータ10がブロックチェーン形式で記憶されていく。特に、要求ノード2aの要求に応じて、作成ノード2bが認証ノード3に送信する依頼メッセージには、診察データの対象である患者(以下、対象患者)および作成ノード2bによる二重署名が含まれており、依頼メッセージを受信した認証ノード3は二重署名を認証して、認証できた場合に、閲覧許諾のブロックデータ10(図2中のブロックデータ10cを参照)を作成する。従って、対象患者および作成ノード2bの二重署名を認証できなかった場合には、閲覧許諾のブロックデータ10が作成されることはなく、診察ノード2や認証ノード3に閲覧許諾のブロックデータ10が記憶されることも無い。尚、対象患者および作成ノード2bの二重署名の代わりに、対象患者の署名および作成ノード2bの署名を依頼メッセージに含めておき、依頼メッセージを受け取った認証ノード3は、対象患者の署名および作成ノード2bの署名を認証しても良い。
【0028】
このことから、要求ノード2aは、閲覧許諾のブロックデータ10を確認した上で対象診察データを閲覧している限り、対象患者や作成ノード2bの同意を得た上で対象診察データを閲覧したことを、後日になっても容易に立証することができる。加えて、ブロックデータ10はブロックチェーン形式で記憶されているため、後からブロックデータ10の内容を改竄することは困難である。更に、ブロックデータ10は複数の診察ノード2および認証ノード3に重複して記憶されているため、たとえ仮に、ある診察ノード2のブロックデータ10を改竄できたとしても、他の複数の診察ノード2および認証ノード3のブロックデータ10と照合することで、改竄されていることが分かってしまう。従って、閲覧許諾のブロックデータ10が改竄されていないことも容易に立証することができる。その結果、要求ノード2aは、閲覧手続管理システム1を介して作成ノード2bに診察データの閲覧を要求しておけば、その診察データを閲覧したことで、予期せぬ訴訟に巻き込まれる虞を回避することができる。
【0029】
また、作成ノード2bにとっても、閲覧手続管理システム1を介して要求ノード2aに診察データの閲覧を許諾しておけば、予期せぬ訴訟に巻き込まれる虞を回避することができる。すなわち、閲覧許諾のブロックデータ10には対象患者の署名が含まれているため、作成ノード2bが対象患者の署名の無いまま、要求ノード2aに対して閲覧を許諾しようとして閲覧手続管理システム1にメッセージを送信しても、認証ノード3の認証が通らないため、閲覧許諾のブロックデータ10が作成されることがない。その結果、作成ノード2bは、閲覧手続管理システム1を介して要求ノード2aに対象診察データの閲覧を許諾しておけば、患者の同意のないまま勝手に診察データの閲覧を許諾してしまい、予期せぬ訴訟に巻き込まれる虞を回避することができる。
【0030】
そして、このような大きな利点が得られるにも拘らず、要求ノード2aや作成ノード2bにとっては、診察データの閲覧を要求したり、要求に応じて閲覧を許諾したりする連絡を、閲覧手続管理システム1を介して行っているに過ぎない。このため、要求ノード2aや作成ノード2bに大きな負担をかけることなく、診察データの可用性を担保することが可能となる。以下では、こうしたことを実現する閲覧手続管理システム1の詳細について説明する。
【0031】
B.診察ノード2および認証ノード3の内部構造 :
図4は、本実施例の閲覧手続管理システム1を形成する診察ノード2の内部構造を示したブロック図である。図示されるように、診察ノード2の内部には、診察データ作成部20や、診察データ出力部21、メッセージ受信部22、署名認証部23、メッセージ作成部24、特定情報取得部25、メッセージ送信部26、ブロックデータ受信部27、ブロックデータ記憶部28などが搭載されている。尚、これらの「部」は、診察ノード2に搭載されている機能を表す抽象的な概念であり、これらの「部」に対応する部品が存在することを示しているわけではない。これらの「部」は、診察ノード2に内蔵されたマイクロコンピュータで実行されるソフトウェアプログラムとして実現することもできるし、診察ノード2に搭載されたLSIやICなどによるハードウェアとして実現することもできる。更には、ソフトウェアプログラムとハードウェアとを組み合わせることによって実現しても良い。
【0032】
診察データ作成部20は、患者を診察した診療録を読み込んでデータ化することによって診察データを作成し、作成した診察データを診察データ出力部21に出力する。診察データ出力部21はデータサーバ4に接続されており、診察データ作成部20から受け取った診察データをデータサーバ4に記憶する。
【0033】
メッセージ受信部22は、インターネットなどの通信回線5に接続されており、通信回線5を介して送信されてきたメッセージを受信すると、そのメッセージを署名認証部23および特定情報取得部25に出力する。詳細には後述するが、メッセージ受信部22が受信するメッセージには、要求ノード2aから送信された診察データの閲覧を要求するための要求メッセージなどが含まれる。
【0034】
署名認証部23は、受け取ったメッセージに署名が含まれていた場合には、その署名を認証する。尚、メッセージに患者の署名が含まれている場合は、その署名を署名認証部23が認証するから、本実施例の署名認証部23は本発明における「患者署名認証部」に対応する。そして、認証が通った場合は、認証の結果をメッセージ作成部24および特定情報取得部25に出力する。
【0035】
メッセージ作成部24は、認証が通った旨の結果を受け取ると、受け取っていたメッセージに対応するメッセージを作成する。例えば、要求ノード2aからの要求メッセージを受け取っていた場合には、閲覧許諾のブロックデータ10の作成を依頼する依頼メッセージを作成する。また、作成ノード2bに対して診察データの閲覧を要求する場合には、要求メッセージを作成する。これらのメッセージを作成するためには所定の情報(以下、特定情報)が必要となるが、これらの特定情報は特定情報取得部25から供給される。すなわち、特定情報取得部25は、署名認証部23での認証が通った旨の通知を受け取ると、メッセージ受信部22から受け取っていたメッセージの中から特定情報を抽出して、メッセージ作成部24に出力するようになっている。尚、診察ノード2が作成ノード2bである場合は、メッセージ作成部24が依頼メッセージを作成するから、本実施例のメッセージ作成部24は本発明における「依頼メッセージ作成部」に対応する。
【0036】
メッセージ作成部24は、こうして作成したメッセージをメッセージ送信部26に出力する。メッセージ送信部26は通信回線5に接続されており、通信回線5に接続された診察ノード2や認証ノード3に向かってメッセージを送信する。尚、診察ノード2が要求ノード2aである場合は、メッセージ送信部26が要求メッセージを送信し、診察ノード2が作成ノード2bである場合は、メッセージ送信部26が依頼メッセージを送信するから、本実施例のメッセージ作成部24は本発明における「要求メッセージ送信部」および「依頼メッセージ送信部」に対応する。
【0037】
また、ブロックデータ受信部27も通信回線5に接続されており、認証ノード3から送信されてきた新たなブロックデータ10を受信すると、そのブロックデータ10をブロックデータ記憶部28に出力する。ブロックデータ記憶部28は、ブロックデータ受信部27から新たなブロックデータ10を受け取ると、図2を用いて前述したブロックチェーン形式で記憶する。
【0038】
また、図5は、本実施例の閲覧手続管理システム1を形成する認証ノード3の内部構造を示したブロック図である。図示されるように、認証ノード3の内部には、メッセージ受信部30や、署名認証部31、ブロックデータ作成部32、特定情報取得部33、ブロックデータ送信部34、ブロックデータ記憶部35などが搭載されている。尚、これらの「部」も、認証ノード3に搭載されている機能を表す抽象的な概念であり、これらの「部」に対応する部品が存在することを示しているわけではない。これらの「部」は、認証ノード3に内蔵されたマイクロコンピュータで実行されるソフトウェアプログラムとして実現することもできるし、診察ノード2に搭載されたLSIやICなどによるハードウェアとして実現することもできる。更には、ソフトウェアプログラムとハードウェアとを組み合わせることによって実現しても良い。
【0039】
認証ノード3のメッセージ受信部30は、インターネットなどの通信回線5に接続されており、通信回線5を介して送信されてきたメッセージを受信すると、そのメッセージを署名認証部31および特定情報取得部33に出力する。詳細には後述するが、認証ノード3のメッセージ受信部30には、患者端末6からの登録申請メッセージや、診察ノード2からの登録メッセージや依頼メッセージなど送信されてくる。
【0040】
認証ノード3の署名認証部31は、メッセージ受信部30から受け取ったメッセージに署名が含まれていた場合には、その署名を認証する。尚、詳細には後述するが、受け取ったメッセージが作成ノード2bからの依頼メッセージであった場合には、その作成ノード2bの署名が含まれているので、作成ノード2bの署名を認証することになる。従って、本実施例の署名認証部31は本発明における「作成ノード署名認証部」に対応する。そして、認証が通った場合は、認証の結果をブロックデータ作成部32および特定情報取得部33に出力する。また、メッセージ受信部30から受け取ったメッセージが患者端末6からの登録申請メッセージであった場合には、そのメッセージに含まれている患者の署名を認証することになる。
【0041】
ブロックデータ作成部32は、メッセージに含まれる署名の認証が通った旨の結果を受け取ると、メッセージに対応するブロックデータ10を作成する。ブロックデータ10を作成するためには所定の特定情報が必要となるが、これらの特定情報は特定情報取得部33から供給される。すなわち、特定情報取得部33は、署名認証部31での認証が通った旨の通知を受け取ると、メッセージ受信部30から受け取っていたメッセージの中から特定情報を抽出して、ブロックデータ作成部32に出力するようになっている。ブロックデータ作成部32は、こうして受け取った特定情報に基づいてブロックデータ10を作成する。また、閲覧手続管理システム1には複数の認証ノード3が存在するが(図1参照)、それぞれの認証ノード3のブロックデータ作成部32でブロックデータ10が作成される。そこで、それぞれの認証ノード3のブロックデータ作成部32は、作成したブロックデータ10の内容を互いに照合し、齟齬が生じている内容については多数決による合意によって内容を決定してブロックデータ10を確定させる。
【0042】
ブロックデータ作成部32は、こうして確定させたブロックデータ10をブロックデータ送信部34およびブロックデータ記憶部35に出力する。ブロックデータ送信部34は通信回線5に接続されており、通信回線5に接続された複数の診察ノード2に向かってブロックデータ10を送信する。こうして送信されたブロックデータ10は、図4を用いて前述した診察ノード2のブロックデータ受信部27で受診されて、ブロックデータ記憶部28にブロックチェーン形式で記憶される。
【0043】
本実施例の閲覧手続管理システム1は、上述した内部構造を有する複数の診察ノード2および認証ノード3が通信回線5で接続されており、診察ノード2および認証ノード3が以下のように動作することによって実現されている。
【0044】
C.患者端末6の登録動作 :
本実施例の閲覧手続管理システム1では、診察ノード2で診察を受ける患者が、閲覧手続管理システム1に対して自らをあらかじめ登録しておく必要がある。閲覧手続管理システム1に患者を登録する際には、患者の患者端末6および認証ノード3で次のような処理が実行される。
【0045】
図6は、診察ノード2で診察を受ける患者が閲覧手続管理システム1に登録する際に、患者端末6および認証ノード3で実行される処理を示した説明図である。図示されるように、閲覧手続管理システム1に患者を登録する際には、患者端末6では登録申請処理が実行され、認証ノード3では登録受付処理が実行される。患者端末6の登録申請処理では、先ず始めに患者端末6に専用のアプリケーション(以下、専用アプリ)をインストールする(STEP10)。続いて、インストールした専用アプリを起動させて、秘密鍵および公開鍵を作成する(STEP11)。患者が自分専用の秘密鍵を作成すると、秘密鍵と対になる公開鍵を専用アプリが自動的に生成する。尚、本実施例では、患者端末6に専用アプリをインストールしておき、専用プリを用いて秘密鍵および公開鍵を作成するものとして説明するが、これに限らず、例えば、患者端末6の閲覧用アプリ(Webブラウザなど)上で動作する拡張アプリケーションを用いて秘密鍵および公開鍵を作成しても良い。
【0046】
その後、患者が専用アプリを用いて、閲覧手続管理システム1への登録を申請する旨の意思表示のメッセージ(登録申請メッセージ)を作成すると(STEP12)、専用アプリが秘密鍵を用いて登録申請メッセージに署名した後、公開鍵と一緒に、閲覧手続管理システム1に対して送信する(STEP13)。すると、このメッセージは閲覧手続管理システム1の認証ノード3によって受診される。
【0047】
認証ノード3では、以下のような登録受付処理が行われる。先ず、患者端末6から送信されてきた登録申請メッセージを受信する(STEP20)。続いて、登録申請メッセージの署名を認証する(STEP21)。すなわち、患者端末6から送信されてきた登録申請メッセージは公開鍵と一緒に送信されており、登録申請メッセージは患者の秘密鍵によって署名されている。そこで、署名されたメッセージを公開鍵で復号することによって、登録申請メッセージが正しく復号できた場合、そのメッセージは、同時に送られてきた公開鍵と対になる秘密鍵を有する人(ここでは、患者)によって署名されたことになる。しかも、メッセージの内容は、閲覧手続管理システム1への登録を申請する旨の意思を表示する内容となっている。従って、認証が通っていれば、確かに患者が閲覧手続管理システム1への登録を申請していると考えて良い。
【0048】
そこで、認証が通った場合は(STEP22:yes)、閲覧手続管理システム1上での患者のアドレス(以下、患者アドレス)を設定して、そのアドレスを患者端末6に返信する(STEP23)。患者端末6では、こうして返信されてきた患者アドレスを受け取ると、患者端末6内に記憶した後(STEP14)、登録申請処理を終了する。
【0049】
また、認証ノード3では、患者アドレスを患者端末6に返信した後は(STEP23)、患者アドレスを登録するためのブロックデータ10を作成して、他の認証ノード3との合意の元で、そのブロックデータ10を全ての診察ノード2に送信した後(STEP24)、登録受付処理を終了する。尚、STEP24でブロックデータ10を送信する際に、認証ノード3自身もそのブロックデータ10を記憶しておく。その結果、診察ノード2(および認証ノード3)内には、患者アドレスを登録するブロックデータ10がブロックチェーン形式で記憶される。図2中のブロックデータ10(e)は、このようにして記憶されたものである。これに対して、認証が通らなかった場合は(STEP22:no)、患者端末6に向かってエラーメッセージを送信して(STEP25)、登録受付処理を終了する。
【0050】
尚、上述した説明では、患者端末6側で作成した登録申請メッセージに署名して、認証ノード3に送信するものとした。しかし、患者端末6からは署名を付けずに登録申請メッセージを送信してもよい。そして、そのメッセージを受け取った認証ノード3は、署名用のチャレンジコードなどを患者端末6に返信して、そのチャレンジコードに署名して患者端末6から認証ノード3に返信するようにしてもよい。
【0051】
また、上述した説明では、患者端末6の専用アプリを起動させる際には、認証は不要としているが、例えばパスワードを用いた認証や生体認証が通らなければ、専用アプリが起動しないようにしても良い。こうすれば、第三者が勝手に登録を申請したり、登録した公開鍵を変更したりする事態を回避することができる。
【0052】
D.診察データの登録動作 :
図7は、患者を診察した診察ノード2が診察データを閲覧手続管理システム1に登録する際に、診察ノード2および認証ノード3で実行される処理を示した説明図である。図示されるように、閲覧手続管理システム1に診察データを登録する際には、診察ノード2では診察データ送信処理が実行され、認証ノード3では診察データ登録処理が実行される。診察データ送信処理では、先ず始めに診療録をデータ化することによって診察データを作成して、その診察データをデータサーバ4に記憶する(STEP30)。続いて、記憶した診察データを特定するための情報(以下、診察データ特定情報)を取得する(STEP31)。診察データ特定情報とは、後日にデータサーバ4から診察データを読み出す際に、診察データを特定するための情報である。診察データ特定情報としては、診察データを保存した場所を示すURL(Uniform Resouce Location )や、診察データに固有の名称であるURN(Uniform Resouce Name )などを用いることができる。
【0053】
診察データ特定情報を取得したら、その情報のハッシュ値を算出する(STEP32)。前述したようにハッシュ値とは、任意のデータにハッシュ関数を作用させることによって得られる値であり、ハッシュ値と元のデータとの間には一対一の関係がある。ハッシュ値が得られたら、そのハッシュ値に対して、診察ノード2の秘密鍵を用いて署名する(STEP33)。診察ノード2は閲覧手続管理システム1に登録する際に、秘密鍵および公開鍵を生成しており、公開鍵については閲覧手続管理システム1に登録されている。
【0054】
続いて、診察データの対象患者の患者アドレスを取得する(STEP34)。患者アドレスとは、患者が閲覧手続管理システム1に登録することによって付与される患者に固有のアドレスであり、患者の患者端末6の専用アプリ内に記憶されている(図6のSTEP14参照)。患者アドレスは、患者端末6の画面に表示されたアドレスを見ながら、診察ノード2の画面上で手入力しても良いし、患者端末6と診察ノード2との間で通信することによって患者アドレスを取得しても良い。
【0055】
以上のような準備が終わったら、以下のような情報を含む登録メッセージ(すなわち、診察データの登録を申請するメッセージ)を作成して、閲覧手続管理システム1に送信する(STEP35)。図8は、登録メッセージに含まれる情報を示した説明図である。図示されるように、登録メッセージには、患者アドレスと、診察ノード特定情報と、診察データ特定情報と、診察ノードの署名を付けたハッシュ値とが含まれている。ここで、患者アドレスや、診察データ特定情報や、署名を付けたハッシュ値は、図7のSTEP34や、STEP31や、STEP32で取得されている。また、診察ノード特定情報とは、診察ノード2が自らを特定する情報(例えば、診察ノード2の閲覧手続管理システム1上でのアドレス)であり、診察ノード2は閲覧手続管理システム1に登録する際に設定された情報を記憶している。図7のSTEP35では、これらの情報を含んだ登録メッセージを作成して、閲覧手続管理システム1に送信する。そして、送信後は、一定時間が経過するまで待機することによって、後述するエラーメッセージが戻って来ないことを確認した後、診察データ送信処理を終了する。
【0056】
また、診察ノード2が閲覧手続管理システム1に送信した登録メッセージは、認証ノード3によって受信される。そして、登録メッセージを受け取った認証ノード3では、以下のような診察データ登録処理が実行される。先ず、登録メッセージに含まれる署名を認証する(STEP40)。前述したように、登録メッセージには、診察ノード特定情報や、診察データ特定情報や、診察データ特定情報の署名付きのハッシュ値が含まれている。そこで、署名付きのハッシュ値を、診察ノード特定情報に基づいて取得した診察ノード2の公開鍵を用いて復号する。また、登録メッセージには診察データ特定情報が含まれているので、その診察データ特定情報のハッシュ値を算出する。そして、算出したハッシュ値と、復号して得られたハッシュ値とを比較して、一致していれば認証が通ったものと判断し(STEP41:yes)、一致していなければ認証が通っていないものと判断する(STEP41:no)。
【0057】
その結果、認証が通った場合は(STEP41:yes)、診察データのブロックデータ10を作成する(STEP42)。図9は、認証ノード3によって作成されるブロックデータ10を示した説明図である。図8に示したデータ(登録メッセージに含まれている情報)と、図9のブロックデータ10とを比較すれば明らかなように、図9のブロックデータ10は、登録メッセージに含まれる情報から、署名付きのハッシュ値を削除して、「受診通し番号」を加えたデータの組(以下、データ組11と称する)に、前のブロックデータのハッシュ値を追加した内容となっている。
【0058】
ここで、受診通し番号とは、患者アドレスの患者にとって(何れの診察ノード2であるかを問わずに)何回目の受診であるかを示す番号である。すなわち、図2中のブロックデータ10aやブロックデータ10bに例示するように、診察ノード2や認証ノード3には、患者が診察ノード2で受診して診察データが作成される度に、ブロックチェーン形式でブロックデータ10が記憶されており、そのブロックデータ10には、対象患者の患者アドレスが含まれている。従って、認証ノード3は、記憶している複数のブロックデータ10を検索することで、患者アドレス毎に受診回数を調べることができ、今回の受診が、その患者にとって何回目の受診であるかも調べることができる。仮に、今回の受診がN回目であったとすれば、受診通し番号はNとなる。図7のSTEP42では、こうして生成したデータ組11に前のブロックデータ10のハッシュ値を追加することによって、診察データを登録するためのブロックデータ10を作成する。
【0059】
こうしてブロックデータ10を作成したら、他の認証ノード3との合意の元で、そのブロックデータ10を全ての診察ノード2に送信した後(STEP43)、登録受付処理を終了する。その結果、診察ノード2内には、診察データを登録するブロックデータ10がブロックチェーン形式で記憶される。また、STEP43でブロックデータ10を診察ノード2に送信する際には、認証ノード3自身も、そのブロックデータを記憶する。認証ノード3は、こうしてブロックデータ10を送信すると共に自らも記憶した後、診察データ登録処理を終了する。
【0060】
以上のように、患者が診察ノード2を受診して、診察ノード2が診察データを作成すると、以上のような手続きを踏むことによって、図2中のブロックデータ10aやブロックデータ10bに例示するようなブロックデータ10が診察ノード2や認証ノード3内に記憶される。また、患者を診察する診察ノード2が、別の診察ノード2で作成された診察データを閲覧する必要が生じた場合には、以下のような手続きを踏むことによって、図2中のブロックデータ10cに例示するようなブロックデータ10(すなわち、閲覧許諾のブロックデータ10)が作成される。
【0061】
E.診察データの閲覧要求動作 :
図10図12は、閲覧許諾のブロックデータ10を作成して、診察ノード2や認証ノード3に記憶する際に実行される処理を示した説明図である。図10には、要求ノード2a(診察データの閲覧を要求する診察ノード2)と、対象患者(閲覧しようとする診察データの患者)の患者端末6との間で実行される処理が示されており、図11には、要求ノード2aと作成ノード2b(閲覧しようとする診察データを作成した診察ノード2)との間で実行される処理が示されている。そして、図12には、作成ノード2bと認証ノード3との間で実行される処理が示されている。
【0062】
図10に示されるように、閲覧許諾のブロックデータ10を作成する際には、先ず始めに要求ノード2aで閲覧要求処理が開始され、それに合わせて患者端末6では署名処理が開始される。要求ノード2aは閲覧要求処理を開始すると、承諾メッセージを作成する(STEP60)。図13は、承諾メッセージの文面を例示した説明図である。図示されるように、承諾メッセージは、要求ノード2aが対象診察データ(閲覧しようとしている診察データ)を閲覧することを、対象患者が承諾する内容となっている。要求ノード2aは承諾メッセージを作成すると、対象患者の患者端末6に送信する(STEP61)。
【0063】
尚、閲覧の態様には、画面上で診察データの内容を確認することはできるが、閲覧者の元には診察データが保存されない態様と、画面上で確認した診察データが閲覧者の手元に保存されて再び確認可能な態様と、単純に診察データを送信して貰う態様などを考えることができる。本明細書中で「閲覧」とは、上記の何れの態様も含んだ概念である。
【0064】
対象患者の患者端末6では、承諾メッセージを受信すると、署名処理が開始される。署名処理では、患者端末6の画面上に承諾メッセージを表示する(STEP50)。対象患者は、表示された承諾メッセージの内容を確認して、内容に異存が無ければ、承諾した日付を記入した後、閲覧期限を設定する(STEP51)。そして、閲覧手続管理システム1への登録時に作成した秘密鍵を用いて承諾メッセージに署名した後(STEP52)、要求ノード2aに返信する(STEP53)。返信後は、一定時間が経過するまで待機することによって、後述するエラーメッセージが戻って来ないことを確認した後、署名処理を終了する。尚、本実施例の承諾メッセージは、本発明における「署名用データ」に対応する。
【0065】
要求ノード2aの閲覧要求処理では、患者端末6から返信されてきた署名付きの承諾メッセージを受け取ると、対象患者の公開鍵を用いて認証する(STEP62)。対象患者の公開鍵は、閲覧手続管理システム1に登録する際に、全ての診察ノード2にブロックデータ10として記憶されている。そこで、要求ノード2aはその公開鍵を用いて署名付きの承諾メッセージを復号して、正しく復号されているか否かを確認することによって認証する(STEP63)。その結果、正しく復号されている場合は、認証が通ったものと判断して(STEP63:yes)、今後は作成ノード2bとの間で、以下のような処理を開始する。これに対して、正しく復号されていなかった場合は、認証が通らなかったものと判断して(STEP63:no)、その旨のエラーメッセージを患者端末6に送信した後(STEP64)、閲覧要求処理を終了する。
【0066】
要求ノード2aは、患者端末6の署名付きの承諾メッセージの認証が通ると(STEP63:yes)、今度は、その署名付きの承諾メッセージを、自分の秘密鍵を用いて署名する(図11のSTEP65)。すなわち、承諾メッセージは、患者端末6および要求ノード2aによって二重署名されることになる。
【0067】
続いて、閲覧を要求する診察データを特定するために、患者アドレスの受診通し番号を選択する(STEP66)。すなわち、作成ノード2bのデータサーバ4に対象患者の診察データが多数記憶されている場合、必ずしも全ての診察データを閲覧する必要があるとは限らないので、患者アドレスの受診通し番号を選択することによって、閲覧を要求する診察データを特定する。また、受診通し番号を選択しない場合は、全ての診察データの閲覧を要求しているものと見なされる。
【0068】
以上のような準備が終わったら、以下のような情報を含む要求メッセージ(すなわち、診察データの閲覧を要求するメッセージ)を作成して、作成ノード2bに送信する(STEP67)。図14は、要求メッセージに含まれる情報を示した説明図である。図示されるように、要求メッセージには、患者アドレスと、受診通し番号と、要求ノード特定情報と、承諾メッセージと、対象患者および要求ノード2aによって二重署名された承諾メッセージと、閲覧期限とが含まれている。ここで、要求ノード特定情報とは、要求ノード2aが自らを特定する情報(例えば、要求ノード2aの閲覧手続管理システム1上でのアドレス)である。また、患者アドレスは、患者を診察する際に患者の患者端末6から取得することができる。更に、承諾メッセージは要求ノード2aが図10のSTEP60で作成したメッセージであり、二重署名された承諾メッセージや、受診通し番号は、図11のSTEP65およびSTEP66で取得している。加えて、閲覧期限は、図10のSTEP62で患者端末6の署名付きの承諾メッセージを認証した際に取得している。そこで、診察データの閲覧を要求し、且つ、これらの情報を含んだ要求メッセージを作成して、閲覧手続管理システム1の作成ノード2bに送信する(STEP67)。そして、送信後は、一定時間が経過するまで待機することによって、後述するエラーメッセージが戻って来ないことを確認した後、閲覧要求処理を終了する。
【0069】
尚、ここでは、要求ノード2aが自らを特定するために、要求ノード特定情報を含めた要求メッセージを作成ノード2bに送信するものとして説明している。しかし、作成ノード2bは、送信されてきた要求メッセージのヘッダ部分を解析することによって、要求ノード特定情報を取得することができる。従って、要求ノード特定情報は、実質的に要求メッセージに含まれていれば良く、明示的に含まれている必要はない。
【0070】
また、作成ノード2bでは、要求ノード2aから送信されてきた要求メッセージを受信すると、以下のような閲覧許諾処理を開始する。先ず、受信した要求メッセージには、対象患者と要求ノード2aとによって二重署名された承諾メッセージが含まれているので、その二重署名を認証する(STEP70)。すなわち、初めに要求ノード2aの公開鍵を用いて、二重署名された承諾メッセージを復号し、復号した結果を更に対象患者の公開鍵を用いて復号する。要求ノード2aから受信した要求メッセージには要求ノード特定情報や患者アドレスが含まれているので、要求ノード2aの公開鍵や対象患者の公開鍵は取得することができる。
【0071】
こうして2つの公開鍵を用いて復号した結果が、元の承諾メッセージと一致した場合は、認証が通ったものと判断することができる(STEP71:yes)。尚、本実施例では、復号して得られたメッセージが、承諾メッセージと一致するか否かによって、認証が通ったか否かを判断しているが、復号した結果、意味を成す承諾メッセージが得られた場合は認証が通ったものと判断し、意味を成さない文字列しか得られなかった場合は、認証が通らなかったものと判断しても良い。こうすれば、要求ノード2aが送信する要求メッセージに、承諾メッセージを含める必要がなくなるので、要求メッセージのデータ量を小さくすることができる。
【0072】
認証が通っていれば、作成ノード2bは、確かに要求ノード2aが対象患者から承諾を得た上で、診察データの閲覧を要求していることを確認できたことになる。これに対して、一致しなかった場合は、認証が通らなかったものと判断することができる(STEP71:no)。認証が通らなかった場合は、要求ノード2aが対象患者の承諾を得ずに勝手に診察データの閲覧を要求しているか、要求ノード2aではない何者かが要求ノード2aと偽って診察データの閲覧を要求している可能性がある。そこで、認証が通らなかった場合は(STEP71:no)、要求ノード2aに対して認証が通らない旨のエラーメッセージを送信して(STEP72)、閲覧許諾処理を終了する。
【0073】
これに対して、認証が通った場合は(STEP71:yes)、対象患者の署名付きの承諾メッセージを、今度は作成ノード2bの秘密鍵を用いて署名することによって、対象患者および作成ノード2bによる二重署名を作成する(STEP73)。対象患者の署名付きの承諾メッセージは、STEP70で、対象患者および要求ノード2aによる二重署名を認証した際に取得されている。
【0074】
その後、必要な情報を含む依頼メッセージを作成する(STEP74)。ここで、依頼メッセージとは、認証ノード3に対して閲覧許諾のブロックデータ10の作成を依頼するメッセージである。また、依頼メッセージには、図15に示した一組の情報が含まれている。図14図15とを比較すれば明らかなように、図15の一組の情報は、図14の情報(すなわち、要求ノード2aの要求メッセージに含まれていた情報)に対して、作成ノード2bを特定するための情報(以下、作成ノード特定情報)が追加されると共に、「患者と要求ノード2aによる二重署名」が「患者と作成ノード2bによる二重署名」に変更されたものとなっている。作成ノード特定情報としては、閲覧手続管理システム1上での作成ノード2bのアドレスなどを用いることができる。
【0075】
尚、図15に示した一組の情報には、患者アドレスおよび患者アドレスの受診通し番号が含まれているので、これらの情報に基づいて、対象診察データ(すなわち、要求ノード2aが閲覧を要求している診察データ)を特定することができる。しかし、対象診察データを直接的に特定するための診察データ特定情報(例えば、前述したURLやURNなど)を追加しても良い。作成ノード2bは、これらの情報を含んだ依頼メッセージを作成する。
【0076】
また、本実施例の作成ノード2bは、要求ノード2aから送信されてきた要求メッセージに、図14に示した各種の情報が含まれているので、それらの情報を用いて、図15に示した一組の情報を作成するものとして説明した。しかし、要求メッセージに含まれる二重署名の認証が通った場合には(図11のSTEP71:yes)、作成ノード2bが自ら調べることによって、これらの情報を取得するようにしても良い。この場合は、要求メッセージには、作成ノード2bでは取得が困難な情報(例えば、患者アドレスや、受信通し番号や、対象患者および作成ノード2bによる二重署名など)を含めておけば良い。
【0077】
作成ノード2bは、こうして依頼メッセージを作成したら、依頼メッセージを閲覧手続管理システム1の認証ノード3に送信する(図12のSTEP75)。そして、送信後は、一定時間が経過するまで待機することによって、後述するエラーメッセージが戻って来ないことを確認した後、閲覧許諾処理を終了する。
【0078】
認証ノード3は、以上のようにして作成ノード2bから送信されてきた依頼メッセージを受信すると、以下のような閲覧許諾登録処理を開始する。先ず、受信した依頼メッセージには、対象患者と作成ノード2bとによって二重署名された承諾メッセージが含まれている。そこで、対象患者の公開鍵および作成ノード2bの公開鍵を用いて、作成ノード2bがSTEP70で認証した時と同様な方法によって、二重署名された承諾メッセージを認証する(STEP80)。そして、認証が通ったか否かを判断して(STEP81)、認証が通らなかった場合は(STEP81:no)、作成ノード2bに対して認証が通らない旨のエラーメッセージを送信して(STEP82)、閲覧許諾登録処理を終了する。
【0079】
これに対して、認証が通った場合は(STEP81:yes)、要求ノード2aが診察データを閲覧することに、対象患者も作成ノード2bも同意していることを確認できたことになる。そこで、認証ノード3は、閲覧許諾のブロックデータ10を作成する(STEP83)。ここで、閲覧許諾のブロックデータ10とは、要求ノード2aに閲覧権限を設定するブロックデータ10である。図16には、認証ノード3によって作成される閲覧許諾のブロックデータ10を示した説明図である。図15に示したデータ(要求メッセージに含まれている情報)と、図16のブロックデータ10とを比較すれば明らかなように、図16の閲覧許諾のブロックデータ10は、要求メッセージに含まれていた一組のデータの組(以下、データ組12)に、前のブロックデータのハッシュ値を追加した内容となっている。
【0080】
認証ノード3は、こうして閲覧許諾のブロックデータ10を作成したら、他の認証ノード3との合意の元で、その閲覧許諾のブロックデータ10を全ての診察ノード2に送信する(STEP43)。その結果、診察ノード2内には、閲覧許諾のブロックデータ10がブロックチェーン形式で記憶される。また、認証ノード3は、STEP84で閲覧許諾のブロックデータ10を送信する際に、認証ノード3自身もそのブロックデータを記憶する。こうして閲覧許諾のブロックデータ10を送信すると共に自らも記憶したら(STEP84)、要求ノード2aおよび作成ノード2bに向けて閲覧用パスワードを送信した後(STEP85)、閲覧許諾登録処理を終了する。
【0081】
要求ノード2aは、閲覧用パスワードを受け取ると、作成ノード2bに対して確認用パスワードを提示することにより、対象診察データを閲覧することができる。要求ノード2aおよび作成ノード2bは、お互いにブロックチェーン形式で記憶している閲覧許諾のブロックデータ10を参照することで、対象患者の承諾が得られており、作成ノード2bも許諾していることを確認することができるので、安心して診察データを作成ノード2bに要求し、また、診察データを要求ノード2aに提供することができる。
【0082】
加えて、閲覧許諾のブロックデータ10は、閲覧手続管理システム1を形成する全ての診察ノード2および認証ノード3に、ブロックチェーン形式で記憶されているので、後から改竄することは事実上、不可能である。従って、要求ノード2aにとっては、対象患者および作成ノード2bの同意の元で診察データを閲覧したことを、後日に確実に立証することができる。また、作成ノード2bにとっても、対象患者の承諾を得た上で、要求ノード2aの要求に応じて診察データを提供したことを、後日に確実に立証することができる。その結果、予期せぬ訴訟に巻き込まれる虞が無くなるため、それぞれの診察ノード2のデータサーバ4に記憶されている診察データを、診察ノード2間で有効活用することが可能となる。そして、このように大きな利点が得られるにも拘わらず、要求ノード2aにとっては、単に診察データの閲覧を要求し、作成ノード2bにとっては要求を許諾する手続きを、閲覧手続管理システム1を介して行っているだけなので、要求ノード2aおよび作成ノード2bの何れにとっても、大きな負担になることも無い。
【0083】
F.変形例 :
上述した本実施例には幾つかの変形例を考えることができる。以下ではこれらの変形例について、本実施例との相違点を中心として簡単に説明する。
【0084】
F-1.第1変形例 :
上述した本実施例では、要求ノード2aが作成する要求メッセージには、対象患者および要求ノード2aによる二重署名が含まれているものとして説明した(図14参照)。また、作成ノード2bが作成する依頼メッセージには、対象患者および作成ノード2bによる二重署名が含まれているものとして説明した(図15参照)。しかし、図14の要求メッセージについては対象患者と要求ノード2aとが署名していれば十分であり、図15の依頼メッセージについては対象患者と作成ノード2bとが署名していれば十分である。従って、要求メッセージや依頼メッセージでの署名の方法などについては異なっていても良い。
【0085】
例えば、要求メッセージについては、図14に示したように対象患者および要求ノード2aが二重署名した承諾メッセージを含めるのではなく、図17のように、対象患者による署名が付された承諾メッセージと、要求ノード2aによる署名が付された承諾メッセージとを含む要求メッセージとしてもよい。すなわち、対象患者が署名する承諾メッセージは要求ノード2aが対象患者に供給しているから、要求ノード2aは署名前の承諾メッセージに対して署名することによって、自らの署名が付された承諾メッセージを作成することができる。従って、図17に示すように、対象患者から受け取った署名付きの承諾メッセージと、自らの署名付きの承諾メッセージとを含んだ要求メッセージを作成してもよい。
【0086】
また、依頼メッセージについては、図15に示したように対象患者および作成ノード2bが二重署名した承諾メッセージを含めるのではなく、図18のように、対象患者による署名が付された承諾メッセージと、作成ノード2bによる署名が付された承諾メッセージとを含む要求メッセージとしてもよい。すなわち、作成ノード2bは、要求メッセージに含まれる対象患者および要求ノード2aの署名を認証するために、署名前の承諾メッセージも取得しているから(図14参照)、作成ノード2bは署名前の承諾メッセージに対して署名することによって、自らの署名が付された承諾メッセージを作成することができる。従って、図18に示すように、対象患者から受け取った署名付きの承諾メッセージと、自らの署名付きの承諾メッセージとを含んだ依頼メッセージを作成してもよい。
【0087】
更に、署名の方法としては、上述した公開鍵と秘密鍵とを用いた方式の代わりに、他の署名方法を用いることもできる。例えば、患者の秘密鍵と作成ノード2bの秘密鍵とを用いて楕円曲線上で二重署名を行う方法(Elliptic Curve Digital Signature Algorithm)が知られているので、この方法を用いてもよい。
【0088】
F-2.第2変形例 :
上述した本実施例や第1変形例では、要求ノード2aが作成する要求メッセージは、対象患者および要求ノード2aの署名(すなわち、署名付きの承諾メッセージ)を含んだメッセージであるものとして説明した。同様に、作成ノード2bが作成する依頼メッセージは、対象患者および作成ノード2bの署名(すなわち、署名付きの承諾メッセージ)を含んだメッセージであるものとして説明した。しかし、要求メッセージや依頼メッセージは必ずしも署名を含んだメッセージでなくてもよい。
【0089】
例えば、要求メッセージについては、対象患者および要求ノード2aの署名を含まないメッセージとしておく。そして、要求ノード2aが作成ノード2bに要求メッセージを送信する際には、図19に示したように、署名を含まない要求メッセージに、対象患者および要求ノード2aの二重署名(すなわち、二重署名付きの承諾メッセージ)を添付して送信してもよい。あるいは、対象患者および要求ノード2aの二重署名の代わりに、対象患者の署名(すなわち、署名付きの承諾メッセージ)および要求ノード2aの署名(すなわち、署名付きの承諾メッセージ)を添付して送信してもよい。
【0090】
また、依頼メッセージについても、対象患者および作成ノード2bの署名を含まないメッセージとしてもよい。そして、作成ノード2bが認証ノード3に依頼メッセージを送信する際には、図20に示したように、署名を含まない依頼メッセージに、対象患者および作成ノード2bの二重署名(すなわち、二重署名付きの承諾メッセージ)を添付して送信してもよい。あるいは、対象患者および作成ノード2bの二重署名の代わりに、対象患者の署名(すなわち、署名付きの承諾メッセージ)および作成ノード2bの署名(すなわち、署名付きの承諾メッセージ)を添付して送信してもよい。
【0091】
以上、本実施例および各種変形例の閲覧手続管理システム1について説明したが、本発明は上記の実施例および変形例に限られるものではなく、その要旨を逸脱しない範囲において種々の態様で実施することが可能である。
【符号の説明】
【0092】
1…閲覧手続管理システム、 2…診察ノード、 2a…要求ノード、
2b…作成ノード、 3…認証ノード、 4…データサーバ、
5…通信回線、 6…患者端末、 10…ブロックデータ、
11…データ組、 12…データ組、 20…診察データ作成部、
21…診察データ出力部、 22…メッセージ受信部、 23…署名認証部、
24…メッセージ作成部、 25…特定情報取得部、
26…メッセージ送信部、 27…ブロックデータ受信部、
28…ブロックデータ記憶部、 30…メッセージ受信部、
31…署名認証部、 32…ブロックデータ作成部、 33…特定情報取得部、
34…ブロックデータ送信部、 35…ブロックデータ記憶部。
図1
図2
図3
図4
図5
図6
図7
図8
図9
図10
図11
図12
図13
図14
図15
図16
図17
図18
図19
図20