(19)【発行国】日本国特許庁(JP)
(12)【公報種別】公開特許公報(A)
(11)【公開番号】P2024122229
(43)【公開日】2024-09-09
(54)【発明の名称】病院情報装置、病院情報システム、方法及びプログラム
(51)【国際特許分類】
G16H 70/00 20180101AFI20240902BHJP
H04L 9/32 20060101ALI20240902BHJP
【FI】
G16H70/00
H04L9/32 200Z
【審査請求】未請求
【請求項の数】9
【出願形態】OL
(21)【出願番号】P 2023029665
(22)【出願日】2023-02-28
(71)【出願人】
【識別番号】594164542
【氏名又は名称】キヤノンメディカルシステムズ株式会社
(74)【代理人】
【識別番号】110003708
【氏名又は名称】弁理士法人鈴榮特許綜合事務所
(72)【発明者】
【氏名】吉田 淳一
(72)【発明者】
【氏名】沓名 康成
(72)【発明者】
【氏名】野呂 恭平
(72)【発明者】
【氏名】寺井 公一
(72)【発明者】
【氏名】大野 亮一
(72)【発明者】
【氏名】オン グアン イ
【テーマコード(参考)】
5L099
【Fターム(参考)】
5L099AA00
(57)【要約】
【課題】病院情報の管理を支援すること。
【解決手段】実施形態に係る病院情報装置は、取得部と、付与部と、算出部と、生成部とを具備する。取得部は、操作者に表示された病院情報の内容に関する表示データと、前記操作者が前記表示データに対して行った編集操作の内容に関する編集データとを取得する。付与部は、前記編集操作が行われるごとに、前記表示データに識別子を付与する。算出部は、前記編集操作が行われるごとに、前回の前記編集操作に対応する古いハッシュ値と、今回の前記編集操作に対応する前記識別子及び前記編集データとを用いて新しいハッシュ値を算出する。生成部は、前記編集操作が行われるごとに、前記古いハッシュ値と、今回の前記編集操作に対応する前記識別子及び前記編集データとを含むブロックを生成することで、ブロックチェーンを生成する。
【選択図】
図1
【特許請求の範囲】
【請求項1】
操作者に表示された病院情報の内容に関する表示データと、前記操作者が前記表示データに対して行った編集操作の内容に関する編集データとを取得する取得部と、
前記編集操作が行われるごとに、前記表示データに識別子を付与する付与部と、
前記編集操作が行われるごとに、前回の前記編集操作に対応する古いハッシュ値と、今回の前記編集操作に対応する前記識別子及び前記編集データとを用いて新しいハッシュ値を算出する算出部と、
前記編集操作が行われるごとに、前記古いハッシュ値と、今回の前記編集操作に対応する前記識別子及び前記編集データとを含むブロックを生成することで、ブロックチェーンを生成する生成部と、
を具備する病院情報装置。
【請求項2】
前記表示データ及び前記識別子を互いに対応付けた対応テーブルと、前記ブロックチェーンとを記憶部に記録する記録部と、
前記記憶部から読み出した前記対応テーブル及び前記ブロックチェーンを用いて、前記表示データ及び前記編集データのうち少なくとも一方の整合性を検証する検証部と、
を更に具備する請求項1に記載の病院情報装置。
【請求項3】
前記検証部は、前記整合性に関する検証結果を表示部に表示させる、
請求項2に記載の病院情報装置。
【請求項4】
前記検証部は、前記整合性が満たされない場合、警告を表示部に表示させる、
請求項2に記載の病院情報装置。
【請求項5】
前記表示データは、前記病院情報に関する情報項目の名称と、前記情報項目に入力された入力値とのうち少なくとも1つを含む、
請求項1から4のいずれか1項に記載の病院情報装置。
【請求項6】
前記編集データは、前記編集操作に関する操作内容及び操作日時と、前記操作者の名称とのうち少なくとも1つを含む、
請求項1から4のいずれか1項に記載の病院情報装置。
【請求項7】
操作者により操作される端末と、病院情報装置とを具備する病院情報システムであって、
前記端末は、前記病院情報装置から病院情報の内容に関する表示データを取得する取得部と、前記操作者に前記表示データを表示する表示部と、前記操作者による操作に応じて前記表示データに対して編集操作を行う編集部と、前記編集操作の内容に関する編集データを前記病院情報装置に送信する送信部と、を具備し、
前記病院情報装置は、
前記表示データと、前記端末から送信された前記編集データとを取得する取得部と、
前記編集操作が行われるごとに、前記表示データに識別子を付与する付与部と、
前記編集操作が行われるごとに、前回の前記編集操作に対応する古いハッシュ値と、今回の前記編集操作に対応する前記識別子及び前記編集データとを用いて新しいハッシュ値を算出する算出部と、
前記編集操作が行われるごとに、前記古いハッシュ値と、今回の前記編集操作に対応する前記識別子及び前記編集データとを含むブロックを生成することで、ブロックチェーンを生成する生成部と、を具備する、
病院情報システム。
【請求項8】
操作者に表示された病院情報の内容に関する表示データと、前記操作者が前記表示データに対して行った編集操作の内容に関する編集データとを取得し、
前記編集操作が行われるごとに、前記表示データに識別子を付与し、
前記編集操作が行われるごとに、前回の前記編集操作に対応する古いハッシュ値と、今回の前記編集操作に対応する前記識別子及び前記編集データとを用いて新しいハッシュ値を算出し、
前記編集操作が行われるごとに、前記古いハッシュ値と、今回の前記編集操作に対応する前記識別子及び前記編集データとを含むブロックを生成することで、ブロックチェーンを生成する、
方法。
【請求項9】
コンピュータに、
操作者に表示された病院情報の内容に関する表示データと、前記操作者が前記表示データに対して行った編集操作の内容に関する編集データとを取得する取得機能と、
前記編集操作が行われるごとに、前記表示データに識別子を付与する付与機能と、
前記編集操作が行われるごとに、前回の前記編集操作に対応する古いハッシュ値と、今回の前記編集操作に対応する前記識別子及び前記編集データとを用いて新しいハッシュ値を算出する算出機能と、
前記編集操作が行われるごとに、前記古いハッシュ値と、今回の前記編集操作に対応する前記識別子及び前記編集データとを含むブロックを生成することで、ブロックチェーンを生成する生成機能と、
を実現させるプログラム。
【発明の詳細な説明】
【技術分野】
【0001】
本明細書及び図面に開示の実施形態は、病院情報装置、病院情報システム、方法及びプログラムに関する。
【背景技術】
【0002】
病院情報システムは、操作者から病院情報に対する編集操作を受け付ける。情報のセキュリティ及び信憑性を確保するために、病院情報システムは、操作者が病院情報に対して行った編集操作の内容に関する履歴(すなわち、監査ログ)を記録する。
【0003】
しかしながら、多数の操作者が病院情報システムを利用する場合、病院情報システムが監査ログを変更し、又は管理することが煩雑となる。さらに、監査ログが不正に変更され、又は削除された場合、病院情報システムが病院情報の信憑性を検証することが困難となる。
【先行技術文献】
【特許文献】
【0004】
【発明の概要】
【発明が解決しようとする課題】
【0005】
本明細書及び図面に開示の実施形態が解決しようとする課題の一つは、病院情報の管理を支援することである。ただし、本明細書及び図面に開示の実施形態により解決しようとする課題は上記課題に限られない。後述する実施形態に示す各構成による各効果に対応する課題を他の課題として位置づけることもできる。
【課題を解決するための手段】
【0006】
実施形態に係る病院情報装置は、取得部と、付与部と、算出部と、生成部とを具備する。取得部は、操作者に表示された病院情報の内容に関する表示データと、前記操作者が前記表示データに対して行った編集操作の内容に関する編集データとを取得する。付与部は、前記編集操作が行われるごとに、前記表示データに識別子を付与する。算出部は、前記編集操作が行われるごとに、前回の前記編集操作に対応する古いハッシュ値と、今回の前記編集操作に対応する前記識別子及び前記編集データとを用いて新しいハッシュ値を算出する。生成部は、前記編集操作が行われるごとに、前記古いハッシュ値と、今回の前記編集操作に対応する前記識別子及び前記編集データとを含むブロックを生成することで、ブロックチェーンを生成する。
【図面の簡単な説明】
【0007】
【
図1】本実施形態に係る病院情報システムの構成例を示すブロック図。
【
図2】本実施形態に係る病院情報装置の構成例を示すブロック図。
【
図3】本実施形態に係る操作者端末の構成例を示すブロック図。
【
図4】本実施形態に係る病院情報システムの第1動作例を示すフローチャート。
【
図5】本実施形態に係る対応テーブルの例を示す図。
【
図6】本実施形態に係るブロックチェーンの例を示す図。
【
図7】本実施形態に係る病院情報システムの第2動作例を示すフローチャート。
【
図8】本実施形態に係る対応テーブルとブロックチェーンとの間の対応付けの例を示す図。
【
図9】本実施形態に係る表示データの整合性の検証例を示す図。
【発明を実施するための形態】
【0008】
以下、図面を参照しながら実施形態に係る病院情報装置、病院情報システム、方法及びプログラムについて説明する。以下の実施形態では、同一の参照符号を付した部分は同様の動作を行うものとして、重複する説明を適宜、省略する。
【0009】
図1は、本実施形態に係る病院情報システム100の構成例を示すブロック図である。病院情報システム100は、病院の各部門(例:事務部門、検査部門、診断部門)を互いに連結し、病院の業務を支援するシステムである。例えば、病院情報システム100は、クライアントサーバシステムである。病院情報システム100は、各構成として病院情報装置1、複数の操作者端末2、医用データ生成装置3、医用データ処理装置4及び病院情報記憶装置5を含む。各構成は、共通の信号伝送路であるバスを介して互いに通信可能に接続される。
【0010】
病院情報装置1は、病院情報(例:患者情報、検査情報、診断情報)を処理する装置である。病院情報装置1は、病院情報システム100におけるサーバとして機能する。病院情報装置1は、高速な情報処理を実行可能なワークステーションでもよい。
【0011】
操作者端末2は、操作者(例:事務職員、検査技師、診断医)により操作される端末である。操作者端末2は、病院情報システム100におけるクライアントとして機能する。操作者端末2は、デスクトップPC、ノートPC、スマートフォン、タブレット端末又はウェアラブル端末でもよい。
【0012】
医用データ生成装置3は、医用データ(例:医用画像データ、バイタルサインデータ)を生成する装置である。医用データ生成装置3は、医用画像診断装置(例:X線診断装置、X線CT装置、MRI装置、超音波診断装置、核医学検査装置)又はウェアラブルデバイス(例:血圧計、心拍計)でもよい。本実施形態に係る医用データ生成装置3は、生成した医用データを医用データ処理装置4に送信する。
【0013】
医用データ処理装置4は、医用データ生成装置3から送信された医用データを処理する装置である。例えば、医用データ処理装置4は、医用画像データ又はバイタルサインデータを再構成し、解析し、又は加工する。医用データ処理装置4は、病院情報システム100におけるサーバとして機能する。医用データ処理装置4は、高速な情報処理を実行可能なワークステーションでもよい。本実施形態に係る医用データ処理装置4は、処理した医用データを病院情報記憶装置5に送信する。
【0014】
病院情報記憶装置5は、病院情報を記憶する装置である。病院情報記憶装置5は、記憶媒体(例:磁気的記憶媒体、電磁的記憶媒体、光学的記憶媒体、半導体メモリ)でもよいし、記憶媒体との間で情報を読み書きする駆動装置でもよい。本実施形態に係る病院情報記憶装置5は、医用データ処理装置4から送信された医用データを病院情報として記憶する。
【0015】
図2は、本実施形態に係る病院情報装置1の構成例を示すブロック図である。病院情報装置1は、各構成として処理回路11、メモリ12及び通信IF13を含む。各構成は、共通の信号伝送路であるバスを介して互いに通信可能に接続される。
【0016】
処理回路11は、病院情報装置1の全体の動作を制御する回路である。処理回路11は、少なくとも1つのプロセッサを含む。プロセッサは、CPU(Central Processing Unit)、GPU(Graphics Processing Unit)、特定用途向け集積回路(ASIC:Application Specific Integrated Circuit)、プログラマブル論理デバイス(例:単純プログラマブル論理デバイス(SPLD:Simple Programmable Logic Device)、複合プログラマブル論理デバイス(CPLD:Complex Programmable Logic Device)、フィールドプログラマブルゲートアレイ(FPGA:Field Programmable Gate Array))などの回路を意味する。プロセッサがCPUである場合、CPUはメモリ12に記憶された各プログラムを読み出して実行することで、各機能を実現する。プロセッサがASICである場合、各機能がASICの回路内に論理回路として直接、組み込まれる。プロセッサは、単一の回路として構成されてもよいし、独立した複数の回路を互いに組み合わせて構成されてもよい。本実施形態に係る処理回路11は、各機能(取得機能111、付与機能112、記録機能113、算出機能114、生成機能115、検証機能116、送信機能117、システム制御機能118)を実現する。
【0017】
取得機能111は、各種のデータ又は情報を取得する機能である。例えば、取得機能111は、操作者に表示された病院情報の内容に関する表示データD1と、操作者が表示データD1に対して行った編集操作の内容に関する編集データD2とを取得する。表示データD1は、操作者に表示された病院情報に関する情報項目の名称と、情報項目に入力された入力値とのうち少なくとも1つを含む。編集データD2は、表示データD1に対して行われた編集操作に関する操作内容及び操作日時と、操作者の名称とのうち少なくとも1つを含む。取得機能111は、取得部の一例である。
【0018】
付与機能112は、各種のデータ又は情報を付与する機能である。例えば、付与機能112は、表示データD1に対して編集操作が行われるごとに、表示データD1に識別子I(すなわち、一意キー)を付与する。付与機能112は、付与部の一例である。
【0019】
記録機能113は、各種のデータ又は情報を記録する機能である。例えば、記録機能113は、表示データD1及び識別子Iを互いに対応付けた対応テーブルTと、ブロックチェーンCとをメモリ12に記録する。記録機能113は、記録部の一例である。
【0020】
算出機能114は、各種のデータ又は情報を算出する機能である。例えば、算出機能114は、表示データD1に対して編集操作が行われるごとに、前回の編集操作に対応する古いハッシュ値と、今回の編集操作に対応する識別子I及び編集データD2とを用いて新しいハッシュ値を算出する。算出機能114は、算出部の一例である。
【0021】
生成機能115は、各種のデータ又は情報を生成する機能である。例えば、生成機能115は、表示データD1に対して編集操作が行われるごとに、前回の編集操作に対応する古いハッシュ値と、今回の編集操作に対応する識別子I及び編集データD2とを含むブロックを生成することで、ブロックチェーンCを生成する。生成機能115は、生成部の一例である。
【0022】
検証機能116は、各種の事実を検証する機能である。例えば、検証機能116は、メモリ12から読み出した対応テーブルT及びブロックチェーンCを用いて、表示データD1及び編集データD2のうち少なくとも一方の整合性を検証する。さらに、検証機能116は、整合性に関する検証結果をディスプレイに表示させる。検証機能116は、整合性が満たされない場合、警告をディスプレイに表示させる。検証機能116は、検証部の一例である。
【0023】
送信機能117は、各種のデータ又は情報を送信する機能である。例えば、送信機能117は、操作者端末2からの表示要求に応じて、表示データD1を操作者端末2に送信する。さらに、送信機能117は、表示データD1及び編集データD2のうち少なくとも一方の整合性に関する検証結果を操作者端末2に送信する。送信機能117は、送信部の一例である。
【0024】
システム制御機能118は、処理回路11が行う各種の動作を制御する機能である。例えば、システム制御機能118は、処理回路11が各機能(取得機能111、付与機能112、記録機能113、算出機能114、生成機能115、検証機能116、送信機能117)を実現するためのオペレーティングシステム(OS)を提供する。システム制御機能118は、システム制御部の一例である。
【0025】
メモリ12は、各種のデータ又は情報を記憶する装置である。メモリ12は、プロセッサにより読取可能な記憶媒体(例:磁気的記憶媒体、電磁的記憶媒体、光学的記憶媒体、半導体メモリ)でもよいし、記憶媒体との間でデータ又は情報を読み書きする駆動装置でもよい。本実施形態に係るメモリ12は、処理回路11に各機能(取得機能111、付与機能112、記録機能113、算出機能114、生成機能115、検証機能116、送信機能117、システム制御機能118)を実現させる各プログラムを記憶する。メモリ12は、記憶部の一例である。
【0026】
通信IF13は、病院情報システム100に含まれる各構成との間で、各種のデータ又は情報を通信するインタフェースである。本実施形態に係る通信IF13は、操作者端末2又は病院情報記憶装置5との間で、各種のデータ又は情報を通信する。通信IF13は、通信部の一例である。
【0027】
図3は、本実施形態に係る操作者端末2の構成例を示すブロック図である。操作者端末2は、各構成として処理回路21、メモリ22、入力IF23、ディスプレイ24及び通信IF25を含む。各構成は、共通の信号伝送路であるバスを介して互いに通信可能に接続される。
【0028】
処理回路21は、操作者端末2の全体の動作を制御する回路である。操作者端末2の処理回路21は、病院情報装置1の処理回路11と同様なハードウェア構成を有する。本実施形態に係る処理回路21は、各機能(取得機能211、編集機能212、送信機能213、表示制御機能214、システム制御機能215)を実現する。
【0029】
取得機能211は、各種のデータ又は情報を取得する機能である。例えば、取得機能211は、表示データD1を取得する。さらに、取得機能211は、表示データD1及び編集データD2のうち少なくとも一方の整合性に関する検証結果を取得する。取得機能211は、取得部の一例である。
【0030】
編集機能212は、各種のデータ又は情報を編集する機能である。例えば、編集機能212は、操作者による操作に応じて、表示データD1に対して編集操作を行う。編集機能212は、編集部の一例である。
【0031】
送信機能213は、各種のデータ又は情報を送信する機能である。例えば、送信機能213は、操作者が閲覧したい病院情報をディスプレイ24に表示させるための表示要求を病院情報装置1に送信する。さらに、送信機能213は、操作者により行われた編集操作の内容に関する編集データD2を病院情報装置1に送信する。送信機能213は、送信部の一例である。
【0032】
表示制御機能214は、各種の対象に各種のデータ又は情報を表示させる機能である。例えば、表示制御機能214は、表示データD1に基づいて、病院情報の登録画面をディスプレイ24に表示させる。さらに、表示制御機能214は、表示データD1及び編集データD2のうち少なくとも一方の整合性に関する検証結果をディスプレイ24に表示させる。表示制御機能214は、警告をディスプレイ24に表示させる。表示制御機能214は、表示制御部の一例である。
【0033】
システム制御機能215は、処理回路21が行う各種の動作を制御する機能である。例えば、システム制御機能215は、処理回路21が各機能(取得機能211、編集機能212、送信機能213、表示制御機能214)を実現するためのオペレーティングシステム(OS)を提供する。システム制御機能215は、システム制御部の一例である。
【0034】
メモリ22は、各種のデータ又は情報を記憶する装置である。操作者端末2のメモリ22は、病院情報装置1のメモリ12と同様なハードウェア構成を有する。本実施形態に係るメモリ22は、処理回路21に各機能(取得機能211、編集機能212、送信機能213、表示制御機能214、システム制御機能215)を実現させる各プログラムを記憶する。メモリ22は、記憶部の一例である。
【0035】
入力IF23は、操作者から各種の操作を受け付けるインタフェースである。入力IF23は、操作者から受け付けた各種の操作を電気信号に変換し、電気信号を処理回路21に伝送する。入力IF23は、マウス、キーボード、ボタン、パネルスイッチ、スライダースイッチ、トラックボール、操作パネル又はタッチパネルでもよい。入力IF23は、入力部の一例である。
【0036】
ディスプレイ24は、各種のデータ又は情報を表示する装置である。ディスプレイ24は、液晶ディスプレイ、プラズマディスプレイ、有機ELディスプレイ又はLEDディスプレイでもよい。ディスプレイ24は、入力IF23としての機能を兼ねるタッチパネル式ディスプレイでもよい。ディスプレイ24は、表示部の一例である。
【0037】
通信IF25は、病院情報システム100に含まれる各構成との間で、各種のデータ又は情報を通信するインタフェースである。本実施形態に係る通信IF25は、病院情報装置1との間で各種のデータ又は情報を通信する。通信IF25は、通信部の一例である。
【0038】
図4は、本実施形態に係る病院情報システム100の第1動作例を示すフローチャートである。本動作例では、操作者が病院情報に対して行った編集操作の内容がブロックチェーンCとして記録される。以下では、病院情報装置1と操作者端末2との間、又は病院情報装置1と病院情報記憶装置5との間で、各種のデータ又は情報が通信される。
【0039】
(ステップS101)まず、操作者端末2は、病院情報装置1に表示要求を送信する。具体的には、操作者端末2は送信機能213により、所望の病院情報をディスプレイ24に表示させるための表示要求を病院情報装置1に送信する。表示要求には、操作者が閲覧したい病院情報の所在情報(例:アドレス)が含まれてもよい。
【0040】
(ステップS102)次に、病院情報装置1は、操作者端末2に表示データD1を送信する。具体的には、病院情報装置1は取得機能111により、ステップS101で送信された表示要求を取得する。病院情報装置1は、取得した表示要求に対応する病院情報を病院情報記憶装置5から読み出す。病院情報装置1は送信機能117により、読み出した病院情報を表示データD1として操作者端末2に送信する。
【0041】
(ステップS103)続いて、操作者端末2は、病院情報の登録画面(不図示)をディスプレイ24に表示させる。具体的には、操作者端末2は取得機能211により、ステップS102で送信された表示データD1を取得する。操作者端末2は表示制御機能214により、取得した表示データD1に基づいて、病院情報の登録画面をディスプレイ24に表示させる。病院情報の登録画面には、病院情報に関する情報項目の名称と、情報項目に入力された入力値とが含まれる。
【0042】
第一に、病院情報が患者情報である場合、患者情報の登録画面には、「患者番号、患者氏名、性別、生年月日」などの情報項目が含まれる。第二に、病院情報が検査情報である場合、検査情報の登録画面には、「医用画像データ、バイタルサインデータ、検査データ」などの情報項目が含まれる。第三に、病院情報が診断情報である場合、診断情報の登録画面には、「所見、病名、診断結果」などの情報項目が含まれる。各情報項目には、既に入力値が入力されていてもよいし、入力されていなくともよい。入力値は、テキストデータ、画像データ又は音声データでもよい。
【0043】
(ステップS104)続いて、操作者端末2は、病院情報を編集する。具体的には、操作者端末2は編集機能212により、ステップS103で表示された病院情報の登録画面において、所望の病院情報を編集する。第一に、操作者が事務職員である場合、事務職員は操作者端末2の入力IF23を介して、所定の患者Aに関する患者情報を入力し、変更し、又は削除する。第二に、操作者が検査技師である場合、検査技師は操作者端末2の入力IF23を介して、所定の患者Aに関する検査情報を入力し、変更し、又は削除する。第三に、操作者が診断医である場合、診断医は操作者端末2の入力IF23を介して、所定の患者Aに関する診断情報を入力し、変更し、又は削除する。操作者端末2は、表示データD1に対する編集操作の内容を編集データD2としてメモリ22に記録する。
【0044】
(ステップS105)続いて、操作者端末2は、病院情報装置1に編集データD2を送信する。具体的には、操作者端末2は送信機能213により、ステップS104で記録された編集データD2を病院情報装置1に送信する。
【0045】
(ステップS106)続いて、病院情報装置1は、表示データD1に識別子Iを付与する。具体的には、病院情報装置1は付与機能112により、ステップS102で送信された表示データD1に識別子Iを付与する。識別子Iは、複数の桁数の文字列でもよい。ステップS106は、ステップS103、S104又はS105の前に実行されてもよい。
【0046】
(ステップS107)続いて、病院情報装置1は、対応テーブルTを記録する。具体的には、病院情報装置1は記録機能113により、ステップS102で送信された表示データD1と、ステップS106で表示データD1に付与された識別子Iとを互いに対応付けることで、対応テーブルTを生成する。病院情報装置1は記録機能113により、生成した対応テーブルTをメモリ12に記録する。
【0047】
(ステップS108)続いて、病院情報装置1は、ハッシュ値を計算する。具体的には、病院情報装置1は取得機能111により、ステップS105で送信された編集データD2を取得する。病院情報装置1は算出機能114により、前回の編集操作に対応する古いハッシュ値と、今回の編集操作に対応する識別子I及び編集データD2とを用いて、新しいハッシュ値を算出する。特に、病院情報装置1は算出機能114により、古いハッシュ値、識別子I、編集データD2及びナンス(nonce:number used once)をハッシュ関数に適用することで、新しいハッシュ値を算出する。ハッシュ値は、固定の桁数の文字列でもよい。
【0048】
(ステップS109)続いて、病院情報装置1は、ブロックチェーンCを生成する。具体的には、病院情報装置1は生成機能115により、ステップS108で算出された古いハッシュ値と、今回の編集操作に対応する識別子I及び編集データD2とを含むブロックを生成することで、ブロックチェーンCを生成する。
【0049】
(ステップS110)最後に、病院情報装置1は、ブロックチェーンCを記録する。具体的には、病院情報装置1は記録機能113により、ステップS109で生成されたブロックチェーンCをメモリ12に記録する。このとき、メモリ12には、対応テーブルT及びブロックチェーンCが互いに対応付けて記録される。ステップS110の後、病院情報装置1、操作者端末2及び病院情報記憶装置5は、一連の動作を終了する。
【0050】
図5は、本実施形態に係る対応テーブル200の例を示す図である。対応テーブル200には、識別子Iと表示データD1とが互いに対応付けられた複数のレコード210、220、230…が記録される。表示データD1には、複数の情報項目の名称と、複数の情報項目のそれぞれに入力された入力値とが含まれる。
【0051】
第一に、レコード210には、識別子「XXXXXX」に対応付けて、情報項目「項目A」-入力値「値a1」、情報項目「項目B」-入力値「値b1」、…、情報項目「項目E」-入力値「項目e1」が記録される。第二に、レコード220には、識別子「YYYYYY」に対応付けて、情報項目「項目A」-入力値「値a2」、情報項目「項目B」-入力値「値b2」、…、情報項目「項目E」-入力値「項目e1」が記録される。第三に、レコード230には、識別子「ZZZZZZ」に対応付けて、情報項目「項目A」-入力値「値a3」、情報項目「項目B」-入力値「値b2」、…、情報項目「項目E」-入力値「項目e1」が記録される。
【0052】
図6は、本実施形態に係るブロックチェーン300の例を示す図である。ブロックチェーン300には、時系列に沿った複数のブロック310、320、330…が含まれる。各ブロックには、前回のブロックのハッシュ値と、今回のブロックの識別子I、編集データD2及びナンスとが含まれる。
【0053】
以下では、Nは2以上の自然数と想定する。第一に、(N-1)番目のブロック310には、(N-2)番目のブロックのハッシュ値と、ブロック310の識別子I、編集データD2及びナンスとが含まれる。第二に、N番目のブロック320には、(N-1)番目のブロック310のハッシュ値と、ブロック320の識別子I、編集データD2及びナンスとが含まれる。第三に、(N+1)番目のブロック330には、N番目のブロック320のハッシュ値と、ブロック330の識別子I、編集データD2及びナンスとが含まれる。なお、0番目のブロックには、ハッシュ値が含まれなくともよい。
【0054】
図7は、本実施形態に係る病院情報システム100の第2動作例を示すフローチャートである。本動作例では、病院情報に係るデータ(表示データD1、編集データD2)の整合性が検証される。以下では、病院情報装置1と操作者端末2との間で、各種のデータ又は情報が通信される。
【0055】
(ステップS201)まず、操作者端末2は、病院情報装置1に検証要求を送信する。具体的には、操作者端末2は送信機能213により、病院情報に係るデータの整合性を検証するための検証要求を病院情報装置1に送信する。検証要求には、操作者が検証したい特定の病院情報を指定する情報(例:情報項目の名称)が含まれてもよい。
【0056】
(ステップS202)次に、病院情報装置1は、対応テーブルT及びブロックチェーンCを読み出す。具体的には、病院情報装置1は取得機能111により、ステップS201で送信された検証要求を取得する。病院情報装置1は、取得した検証要求に対応する対応テーブルT及びブロックチェーンCをメモリ12から読み出す。
【0057】
(ステップS203)続いて、病院情報装置1は、データの整合性を検証する。具体的には、病院情報装置1は検証機能116により、ステップS202で読み出した対応テーブルT及びブロックチェーンCを用いて、表示データD1及び編集データD2のうち少なくとも一方の整合性を検証する。
【0058】
(ステップS204)続いて、病院情報装置1は、検証結果を送信する。具体的には、病院情報装置1は送信機能117により、ステップS203で検証された表示データD1及び編集データD2のうち少なくとも一方の整合性に関する検証結果を、操作者端末2に送信する。
【0059】
(ステップS205)最後に、操作者端末2は、検証結果を表示する。具体的には、操作者端末2は取得機能211により、ステップS204で送信された検証結果を取得する。操作者端末2は表示制御機能214により、取得した検証結果をディスプレイ24に表示させる。ステップS205の後、病院情報装置1及び操作者端末2は、一連の動作を終了する。
【0060】
図8は、本実施形態に係る対応テーブル200とブロックチェーン300との間の対応付けの例を示す図である。具体的には、対応テーブル200に含まれる複数のレコード210、220、230…が、ブロックチェーン300に含まれる複数のブロック310、320、330…と対応付けられる。第一に、レコード210は、(N-1)番目のブロック310の識別子「XXXXXXX」により、ブロック310と対応付けられる。第二に、レコード220は、N番目のブロック320の識別子「YYYYYY」により、ブロック320と対応付けられる。第三に、レコード230は、(N+1)番目のブロック330の識別子「ZZZZZZ」により、ブロック330と対応付けられる。
【0061】
上記のように、病院情報装置1は識別子Iを用いて、対応テーブルTに含まれる各レコードと、ブロックチェーンCに含まれる各ブロックとを互いに対応付けて管理する。すなわち、病院情報装置1は、病院情報に係るデータ(表示データD1、編集データD2)を、対応テーブルT及びブロックチェーンCを用いて多元的に管理できる。
【0062】
図9は、本実施形態に係る表示データD1の整合性の検証例を示す図である。本検証例では、レコード210の表示データD1に含まれる情報項目「項目A」について、入力値が「値a1」から「値a99」に不正に変更されている。
【0063】
ここで、(N-1)番目のブロック310には、識別子「XXXXXX」により対応付けられたレコード210のデータが含まれる。レコード210に含まれる表示データD1の入力値が変更されると、ブロック310の各要素(古いハッシュ値、識別子I、編集データD2、ナンス)から算出される、N番目のブロック320のハッシュ値が変更される。ブロック320のハッシュ値が変更されると、ブロック320の各要素から算出される、(N+1)番目のブロック330のハッシュ値が変更される。
【0064】
上記のように、対応テーブルTのレコードに含まれる表示データD1が不正に変更されると、ブロックチェーンCの各ブロックに含まれるハッシュ値が連鎖的に変更される。例えば、病院情報装置1は、所定の時点で記録されたブロックチェーンCの各ブロックに含まれるハッシュ値の情報と、別の時点で記録されたブロックチェーンCの各ブロックに含まれるハッシュ値の情報とを互いに比較する。これにより、病院情報装置1は、両者の時点の間に表示データD1が不正に変更されたか否か(すなわち、表示データD1の整合性)を検証できる。両者の情報に齟齬がある場合、病院情報装置1は、表示データD1が不正に変更された可能性があることを示す警告を、ディスプレイに表示させてもよい。例えば、病院情報装置1は、診断結果に対して診断に必要な情報が不足している場合、警告をディスプレイに表示させる。
【0065】
なお、(N-1)番目のブロック310に含まれる編集データD2が不正に変更されると、上記と同様な原理により、後続のブロック320、330…に含まれるハッシュ値が連鎖的に変更される。例えば、病院情報装置1は、所定の時点で記録されたブロックチェーンCの各ブロックに含まれるハッシュ値の情報と、別の時点で記録されたブロックチェーンCの各ブロックに含まれるハッシュ値の情報とを互いに比較する。これにより、病院情報装置1は、両者の時点の間に編集データD2が不正に変更されたか否か(すなわち、編集データD2の整合性)を検証できる。両者の情報に齟齬がある場合、病院情報装置1は、編集データD2が不正に変更された可能性があることを示す警告を、ディスプレイに表示させてもよい。
【0066】
以上、実施形態に係る病院情報装置1、病院情報システム100、方法及びプログラムについて説明した。本実施形態によれば、病院情報装置1は、ブロックチェーンCを用いて、病院情報に対する編集操作の履歴を記録する。これにより、病院情報装置1は、病院情報に対する不正な編集操作を排除できるし、病院情報の信憑性を検証できる。
【0067】
さらに、病院情報装置1は、ブロックチェーンCを用いて、診断医が診断時に使用した情報を記録する。これにより、病院情報装置1は、診断時における病院情報に係るデータ(表示データD1、編集データD2)の整合性を検証できる。すなわち、病院情報装置1は、所望のタイミングで病院情報の追跡可能性(トレーサビリティ)を検証できる。
【0068】
以上説明した少なくとも1つの実施形態によれば、病院情報の管理を支援することができる。
【0069】
いくつかの実施形態を説明したが、これらの実施形態は、例として提示したものであり、発明の範囲を限定することは意図していない。これら実施形態は、その他の様々な形態で実施されることが可能であり、発明の要旨を逸脱しない範囲で、種々の省略、置き換え、変更、実施形態同士の組み合わせを行うことができる。これら実施形態やその変形は、発明の範囲や要旨に含まれると同様に、特許請求の範囲に記載された発明とその均等の範囲に含まれるものである。
【符号の説明】
【0070】
1 病院情報装置
2 操作者端末
3 医用データ生成装置
4 医用データ処理装置
5 病院情報記憶装置
11,21 処理回路
12,22 メモリ
13,25 通信IF
23 入力IF
24 ディスプレイ
100 病院情報システム
111,211 取得機能
112 付与機能
113 記録機能
114 算出機能
115 生成機能
116 検証機能
117,213 送信機能
118,215 システム制御機能
200 対応テーブル
210,220,230 レコード
212 編集機能
214 表示制御機能
300 ブロックチェーン
310,320,330 ブロック