JP2015526049A - キーローテーション情報を有するメタデータツリー - Google Patents

キーローテーション情報を有するメタデータツリー Download PDF

Info

Publication number
JP2015526049A
JP2015526049A JP2015527436A JP2015527436A JP2015526049A JP 2015526049 A JP2015526049 A JP 2015526049A JP 2015527436 A JP2015527436 A JP 2015527436A JP 2015527436 A JP2015527436 A JP 2015527436A JP 2015526049 A JP2015526049 A JP 2015526049A
Authority
JP
Japan
Prior art keywords
node
key
metadata
metadata tree
tree
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.)
Granted
Application number
JP2015527436A
Other languages
English (en)
Other versions
JP6069614B2 (ja
Inventor
リ,ジュン
スワミナサン,ラム
シンガル,シャラド
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.)
Hewlett Packard Development Co LP
Original Assignee
Hewlett Packard Development Co LP
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 Hewlett Packard Development Co LP filed Critical Hewlett Packard Development Co LP
Publication of JP2015526049A publication Critical patent/JP2015526049A/ja
Application granted granted Critical
Publication of JP6069614B2 publication Critical patent/JP6069614B2/ja
Expired - Fee Related legal-status Critical Current
Anticipated expiration legal-status Critical

Links

Images

Classifications

    • GPHYSICS
    • G16INFORMATION AND COMMUNICATION TECHNOLOGY [ICT] SPECIALLY ADAPTED FOR SPECIFIC APPLICATION FIELDS
    • G16HHEALTHCARE INFORMATICS, i.e. INFORMATION AND COMMUNICATION TECHNOLOGY [ICT] SPECIALLY ADAPTED FOR THE HANDLING OR PROCESSING OF MEDICAL OR HEALTHCARE DATA
    • G16H10/00ICT specially adapted for the handling or processing of patient-related medical or healthcare data
    • G16H10/60ICT specially adapted for the handling or processing of patient-related medical or healthcare data for patient-specific data, e.g. for electronic patient records
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06QINFORMATION AND COMMUNICATION TECHNOLOGY [ICT] SPECIALLY ADAPTED FOR ADMINISTRATIVE, COMMERCIAL, FINANCIAL, MANAGERIAL OR SUPERVISORY PURPOSES; SYSTEMS OR METHODS SPECIALLY ADAPTED FOR ADMINISTRATIVE, COMMERCIAL, FINANCIAL, MANAGERIAL OR SUPERVISORY PURPOSES, NOT OTHERWISE PROVIDED FOR
    • G06Q10/00Administration; Management
    • G06Q10/10Office automation; Time management
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F16/00Information retrieval; Database structures therefor; File system structures therefor
    • G06F16/10File systems; File servers
    • G06F16/14Details of searching files based on file metadata
    • G06F16/148File search processing
    • G06F16/152File search processing using file content signatures, e.g. hash values
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F16/00Information retrieval; Database structures therefor; File system structures therefor
    • G06F16/20Information retrieval; Database structures therefor; File system structures therefor of structured data, e.g. relational data
    • G06F16/22Indexing; Data structures therefor; Storage structures
    • G06F16/2228Indexing structures
    • G06F16/2246Trees, e.g. B+trees
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F16/00Information retrieval; Database structures therefor; File system structures therefor
    • G06F16/90Details of database functions independent of the retrieved data types
    • G06F16/907Retrieval characterised by using metadata, e.g. metadata not derived from the content or metadata generated manually
    • GPHYSICS
    • G16INFORMATION AND COMMUNICATION TECHNOLOGY [ICT] SPECIALLY ADAPTED FOR SPECIFIC APPLICATION FIELDS
    • G16HHEALTHCARE INFORMATICS, i.e. INFORMATION AND COMMUNICATION TECHNOLOGY [ICT] SPECIALLY ADAPTED FOR THE HANDLING OR PROCESSING OF MEDICAL OR HEALTHCARE DATA
    • G16H10/00ICT specially adapted for the handling or processing of patient-related medical or healthcare data
    • G16H10/40ICT specially adapted for the handling or processing of patient-related medical or healthcare data for data related to laboratory analysis, e.g. patient specimen analysis
    • GPHYSICS
    • G16INFORMATION AND COMMUNICATION TECHNOLOGY [ICT] SPECIALLY ADAPTED FOR SPECIFIC APPLICATION FIELDS
    • G16ZINFORMATION AND COMMUNICATION TECHNOLOGY [ICT] SPECIALLY ADAPTED FOR SPECIFIC APPLICATION FIELDS, NOT OTHERWISE PROVIDED FOR
    • G16Z99/00Subject matter not provided for in other main groups of this subclass
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L63/00Network architectures or network communication protocols for network security
    • H04L63/06Network architectures or network communication protocols for network security for supporting key management in a packet data network
    • H04L63/062Network architectures or network communication protocols for network security for supporting key management in a packet data network for key distribution, e.g. centrally by trusted party
    • H04L63/064Hierarchical key distribution, e.g. by multi-tier trusted parties
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F21/00Security arrangements for protecting computers, components thereof, programs or data against unauthorised activity
    • G06F21/60Protecting data
    • G06F21/602Providing cryptographic facilities or services
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F21/00Security arrangements for protecting computers, components thereof, programs or data against unauthorised activity
    • G06F21/60Protecting data
    • G06F21/64Protecting data integrity, e.g. using checksums, certificates or signatures
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06QINFORMATION AND COMMUNICATION TECHNOLOGY [ICT] SPECIALLY ADAPTED FOR ADMINISTRATIVE, COMMERCIAL, FINANCIAL, MANAGERIAL OR SUPERVISORY PURPOSES; SYSTEMS OR METHODS SPECIALLY ADAPTED FOR ADMINISTRATIVE, COMMERCIAL, FINANCIAL, MANAGERIAL OR SUPERVISORY PURPOSES, NOT OTHERWISE PROVIDED FOR
    • G06Q2220/00Business processing using cryptography
    • G06Q2220/10Usage protection of distributed data files
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L63/00Network architectures or network communication protocols for network security
    • H04L63/04Network architectures or network communication protocols for network security for providing a confidential data exchange among entities communicating through data packet networks
    • H04L63/0428Network architectures or network communication protocols for network security for providing a confidential data exchange among entities communicating through data packet networks wherein the data content is protected, e.g. by encrypting or encapsulating the payload
    • H04L63/0457Network architectures or network communication protocols for network security for providing a confidential data exchange among entities communicating through data packet networks wherein the data content is protected, e.g. by encrypting or encapsulating the payload wherein the sending and receiving network entities apply dynamic encryption, e.g. stream encryption

Abstract

処理システムにより実行される方法であって、暗号化データストア内の暗号化電子カルテに対応する患者のメタデータツリー内の第1のノードを識別し、第1のヘルスケア関係者のノードキーが第2のヘルスケア関係者によって取り消されたことを示すキーローテーション情報を前記メタデータツリーの第2のノードが含むことに応じて、前記第1のノードの一部が前記第1のヘルスケア関係者の前記ノードキーによって復号化されるのを阻止する、という各ステップを含む方法。【選択図】図10

Description

本出願は、「Protocols for Reading and Writing Electronic Medical Data Asynchronously in an Untrusted Cloud Storage」と題する2012年8月15日出願の米国仮特許出願第61/683,702号、及び「Metadata Tree Journaling with Access Right Revocation in an Electronic Medical Cloud Data Store」と題する2012年8月15日出願の米国仮特許出願第61/683,705号を優先権主張の基礎とするものである。
電子カルテ(EHR:Electronic Health Records)は、ヘルスケア関係者(例えば、患者、ヘルスケア提供者、支払者(payers)、及び研究者)が健康情報に対するケア及びアクセスの統合を改善することを可能にする。
EHRは、ヘルスケア情報に対するアクセスを容易にすることが可能であるが、ヘルスケア情報の共有は、多くの複雑な技術的問題と法的な問題を伴うものである。その技術的な問題は、様々な関係者に同時アクセスを提供する態様、及び必要に応じて関係者のアクセスを取り消す態様を含み得るものである。かかる問題は、かかる共有を行うと共にヘルスケア情報の一貫性、プライバシー、及びセキュリティを確保することを可能にするための資源及び専門知識を有していないヘルスケア関係者にとって、大きな負担となり得るものである。
電子カルテ格納処理環境の実施形態を示すブロック図である。 電子カルテ格納処理環境の実施形態を示すブロック図である。 電子カルテ格納処理環境の実施形態を示すブロック図である。 暗号化データストア内のメタデータツリージャーナル及び暗号化された電子カルテの一実施形態を示すブロック図である。 メタデータツリーノードの一例を示すブロック図である。 メタデータツリージャーナルの一例を示すブロック図である。 メタデータツリージャーナルの一例を示すブロック図である。 メタデータサマリツリーの一例を示すブロック図である。 ヘルスケア関係者システムの一例を示すブロック図である。 メタデータ完全性検証システムの一例を示すブロック図である。 同時処理環境におけるメタデータツリーを使用した暗号化電子カルテへのアクセスの一実施形態を示す概略図である。 同時処理環境におけるメタデータツリーを使用した暗号化電子カルテの格納処理の一実施形態を示す概略図である。 埋め込まれたキー取り消し情報を有するメタデータの一部の一実施形態を示すブロック図である。
以下の詳細な説明で参照する添付図面は該詳細な説明の一部を成すものであり、同図面には、本開示の要旨を実施し得る特定の実施形態が例示されている。本開示の範囲から逸脱することなく他の実施形態を用いること及び構造的又は論理的な変更を行うことが可能であることが理解されよう。よって、以下の詳細な説明は制限的な意味で解釈されるべきではなく、本開示の範囲は特許請求の範囲によって画定されるものである。
本書で説明する実施形態は、ヘルスケア関係者(例えば、患者、ヘルスケア提供者、支払者、及び研究者)間での電子カルテ(EHR)のセキュアでシームレスな共有を可能にするEHR格納処理環境を提供するものである。該環境は、患者の暗号化されたEHR(以下「暗号化EHR」と称す)を格納する暗号化データストアと、各患者のメタデータツリージャーナルを格納するメタデータツリーストアとを含む。各メタデータツリージャーナルは、暗号化データストア内の患者のEHRへのマッピングを提供する対応する患者のメタデータツリーを再構築するために使用することが可能なものである。各患者毎のメタデータツリージャーナルは、権限のあるヘルスケア関係者(例えばヘルスケア提供者)が患者のEHRへのアクセス及び格納を行うことを可能にするために、該権限のあるヘルスケア関係者によってアクセスすることが可能となっている。
該環境はまた、患者のメタデータツリージャーナルに対する同時読み書きアクセスをサポートするためにメタデータ完全性検証手段を含む。該メタデータ完全性検証手段は、メタデータツリーのコミット状態(committed state)を表すメタデータツリーに関する完全性情報を格納する。ヘルスケア関係者システムは、該完全性情報を使用して、一貫性があり最新バージョンのメタデータツリーがメタデータツリージャーナルから再構築されることを確実にする。
前記メタデータストアは、追加のみで変更不可能なストレージ・フレームワークを提供するジャーナリング機構を使用して各メタデータツリージャーナルを格納する。ヘルスケア関係者システムは、メタデータストア内の患者のメタデータツリージャーナルにアクセスし、該メタデータツリージャーナルと前記検証手段からの完全性情報とを使用してメタデータツリーを再構築し、該再構築されたメタデータツリーを前記完全性情報を使用して検証する。検証済みのメタデータツリーを使用して、ヘルスケア関係者システムは、暗号化データストア内の暗号化EHRにアクセスし及び/又は暗号化データストア内にEHRを格納する。EHRを格納する際に、ヘルスケア関係者システムはまた、前記ジャーナリング機構を使用してメタデータストア上のメタデータツリージャーナルを更新させ、及び検証手段上の完全性情報を更新させる。
前記環境は、暗号化EHRのためのレコードキー、メタデータツリーのノードのためのノードキー、及びメタデータツリーの構造のためのメタデータツリーキーを使用してEHRに対するアクセスを制御する。暗号化EHRを暗号化データストア内に格納するヘルスケア関係者は、レコードキーを使用してEHRを暗号化する。かかるヘルスケア関係者はまた、対応する暗号化EHRのためのノードをメタデータツリーに追加する。該ノードは、対応するノードキーで暗号化された対応する暗号化EHRへの参照を含む。また、メタデータツリーの構造がメタデータツリーキーを使用して暗号化され、これにより、該メタデータツリーに対するアクセスが、該メタデータツリーキーを有する患者の権限のあるヘルスケア関係者に制限される。
1人以上のヘルスケア関係者が、1人の患者のメタデータツリーの様々なサブツリーを管理することが可能である。1つのサブツリーを管理するにあたり、ヘルスケア関係者は、患者の他の権限のあるヘルスケア関係者に対するアクセスの許可及び取り消しのために、該サブツリー内の対応するノードのノードキーを管理する。ヘルスケア関係者は、他のヘルスケア関係者に所定のノード及びレコードキーを提供することによりアクセスを許可する。ヘルスケア関係者は、ノードキーをローテートさせてメタデータツリーの対応するノードに取り消し情報を埋め込むことによりアクセスを取り消す。キーの取り消し後、アクセスが取り消されたヘルスケア関係者は、該取り消し後に格納された暗号化EHRにアクセスすること又は新たな暗号化EHRを暗号化データストアに格納することができなくなる。しかし、取り消されたヘルスケア関係者は、該取り消しの前に格納された暗号化EHRにはアクセスし続けることが可能である。
本書で用いる場合、用語「ヘルスケア関係者」(「関係者」とも称す)とは、患者、ヘルスケア提供者、支払者、研究者、又は患者に対応するヘルスケア情報を生成し及び/又は使用する該患者のヘルスケアプロセスに関与する他の適当な者を意味する。用語「患者」とは、ヘルスケア提供者から少なくとも1つのヘルスケアサービスを受ける者を意味する。用語「ヘルスケア提供者」(「提供者」とも称す)とは、少なくとも1つのヘルスケアサービスを患者に提供する者及び/又は機関を意味する。
用語「電子カルテ(EHR)」とは、ヘルスケア関係者により生成されて少なくとも1つのマシン読み取り可能記憶媒体上に電子形式で格納された一組のヘルスケア情報を意味する。用語「暗号化電子カルテ」とは、レコードキーで暗号化された電子カルテを意味する。
用語「メタデータ」とは、少なくとも1レコード(例えば、1つの電子カルテ)を記述する一組の情報を意味する。用語「メタデータツリー」とは、メタデータを含む一組のノードを意味し、その各ノードは該一組のノード内の少なくとも1つの他のノードと特定の関係を有している。用語「メタデータツリージャーナル」とは、メタデータツリーのノードを格納するために追加のみ且つ変更不可能なジャーナリング機構により生成されたデータ構造を意味する。
用語「レコードキー」とは、患者のEHRの暗号化及び復号化に使用される暗号化キーを意味する。用語「ノードキー」とは、患者のメタデータツリー内のノードの一部の暗号化及び復号化に使用される暗号化キーを意味する。用語「メタデータツリーキー」とは、患者のメタデータツリーの少なくとも一部の暗号化及び復号化に使用される暗号化キーを意味する。
図1Aは、電子カルテ格納処理環境10の一例10Aを示すブロック図である。該環境10Aは、電子カルテ(EHR)格納手段20と一組のヘルスケア関係者システム30(1)-30(m)(mは2以上の整数)を含む。該環境10Aは、EHR格納手段20及び関係者システム30を使用して患者のEHRの作成、アクセス、格納、管理、及び共有を行う能力を提供する。
EHR格納手段20は、データアクセスフロント(data access front)22、暗号化データストア24、及びメタデータストア26を含む。データアクセスフロント22は、関係者システム30と通信して、暗号化データストア24及びメタデータストア26に対するアクセスを管理する。暗号化データストア24は、関係者システム30により生成され提供された患者の暗号化EHRを格納する。該暗号化EHRは、レコードキーを用いて関係者システム30により暗号化され及び復号化される。暗号化データストア24は、暗号化EHRを格納するための任意の適当な種類、個数、及び/又は構成のマシン読み取り可能記憶媒体を含む。EHRが暗号化されているため、及び暗号化データストア24が暗号化キー(例えば、レコードキー)を格納しないため、暗号化データストア24は、信頼できるデータストアとすることも信頼できないデータストアとすることも可能である(例えば、暗号化データストア24は、1つ以上の信頼できない第三者により所有され又は運営されているものとすることが可能である)。
メタデータストア26は、1つ以上の権限のある関係者システム30により生成され提供された各患者毎のメタデータツリージャーナル(例えば、図2に示すメタデータツリージャーナル60)を格納する。メタデータストア26は、メタデータツリージャーナルのためのストレージ・フレームワークを提供するためのジャーナリング機構(追加のみ且つ変更不可能なもの)を実施する。以下で更に詳述するように、各メタデータツリージャーナルを関係者システム30により使用して、暗号化データストア24内の患者のEHRに対するマッピングを提供する対応する患者のメタデータツリー(例えば、図2に示すメタデータツリー70)を再構築することが可能である。
図2は、メタデータツリージャーナル60及び暗号化データストア24内の暗号化電子カルテ80の一例を示すブロック図である。メタデータツリージャーナル60はノード62を含み、該ノード62はコミット(committed)ノード72,74,76及び非コミット(uncommitted)ノード79を含む。コミットノード72,74,76はメタデータツリー70を包括的に形成し、該メタデータツリー70は関係者システム30により再構築することが可能である。メタデータツリー70は、1つのルートノード72、任意の個数の中間ノード74、及び対応する1つの暗号化EHR80についての1つのリーフノード76を有する階層的なツリー構造を表している。ルートノード72は、患者を識別する情報を含むことが可能であり、中間ノード74は、EHR80の(例えば、提供者による又は治療状態等の患者情報のカテゴリによる)論理的なグループ化を表し、リーフノード76は、暗号化データストア24内の対応する暗号化EHR80への参照78を含む。該参照78は、暗号化データストア24内の暗号化EHR80にアクセスするために関係者システム30により使用される。
図3は、メタデータツリーノード62の一例を示すブロック図である。メタデータツリーノード62は、ノード識別子91、親識別子92、関係者識別子93、名称94、バージョン95、タイプ96、論理カウンタ97、キーローテーション情報98、及び参照78を含む。ノード識別子91は、ノード62のグローバル一意識別子(GUID)であり、親識別子92は、ノード62の親ノードのノード識別子91である。関係者識別子93は、ノード62を作成したヘルスケア関係者を識別する情報である。名称94は、ノード62を作成したヘルスケア関係者に与えられた名称である。バージョン95は、ノード62のバージョン番号である。タイプ96は、新規、更新、又はキー取り消しといった、ノード62の種類である。論理カウンタ97は、親ノード下のノード62の番号順を表すカウンタ値である(例えば、中間ノード74(すなわちリーフノード76の親ノード)の下のi番目のリーフノード76の論理カウンタ97)。キーローテーション情報98は、ノード62の任意の子ノードの取り消されたノードキーを識別するために使用することが可能である。参照78は、暗号化データストア24内の暗号化EHR80のロケーションを識別するものである。
本書で言及する場合、「新規」というタイプ96が指定されたメタデータツリーノード62は、新規ノード62と称することとする。「更新」というタイプ96が指定されたメタデータツリーノード62は、更新ノード62と称し、「キー取り消し」というタイプ96が指定されたメタデータツリーノード62は、取り消しノード62と称することとする。
メタデータツリーノード62の他の例では、タイムスタンプ、ノード62を作成したヘルスケア関係者のディジタル署名、及びノード62に対応する暗号化EHR80を作成したヘルスケア関係者のディジタル署名といった他の適当な情報をメタデータツリーノード62内に格納することが可能である。
メタデータストア26により実施されるジャーナリング機構は、非提携提供者(例えば、異なる無関係の企業のもとで活動している提供者)がメタデータストア26に対して更新を同時に格納することを可能にする。該ジャーナリング機構の「追加のみ且つ変更不可能」という特性により、ノード62が更新された際に、メタデータツリージャーナル60がオリジナルノード62と更新されたノード62を両方とも格納することが確実となる。
メタデータストア26は、図4Aの例で示すような完全(full)メータデータツリージャーナリング又は図4Bの例で示すような増分(incremental)メタデータツリージャーナリングといった任意の適当や種類のジャーナリング機構を実施することが可能である。
図4Aの例では、メタデータストア26Aは、完全メタデータツリージャーナリングを実施しており、この場合には、関係者システム30により実行されるあらゆる書き込み操作が、更新されたメタデータツリー70全体を、メタデータストア26A内のメタデータツリージャーナル60Aに格納する。このため、図4Aに示すように、最初の書き込み操作は、該書き込み操作についての追加ノード62を有するメタデータツリー全体70(1)を、メタデータツリージャーナル60Aに格納する。同様に、n番目の書き込み操作は、該書き込み操作についての追加ノード62を有するメタデータツリー全体70(n)を、メタデータツリージャーナル60Aに格納する。
図4Bに示す例では、メタデータストア26Bは、増分メタデータツリージャーナリングを実施しており、この場合には、関係者システム30により実行されるあらゆる書き込み操作が、メタデータストア26B内のメタデータツリージャーナル60B内に以前に格納されたノード62を再び格納することなく、該書き込み操作についての追加ノード62をメタデータツリージャーナル60Bに格納する。このため、図4Bに示すように、最初の書き込み操作は、該書き込み操作についての追加ノード62(1)をメタデータツリージャーナル60Bに格納する。同様に、p番目の書き込み操作は、該書き込み操作についての追加ノード62(p)をメタデータツリージャーナル60Bに格納する。
図1Aを参照すると、メタデータストア26により格納される各メタデータツリー70の構造的な各部(すなわち、少なくとも各ツリー70の各ノード62内のノード識別子91、親識別子92、関係者識別子93)は、メタデータツリーキーを使用して暗号化される。このメタデータツリーの暗号化は、環境10Aが、患者の権限のあるヘルスケア関係者に対し、該患者のメタデータツリー70へのアクセスを、該メタデータツリーキーを用いて制限することを可能にする。該メタデータツリーキーは、患者により生成された該患者に固有のキーとすることが可能である。該メタデータツリーキーは、例えば、患者がヘルスケア関係者に登録する際に該ヘルスケア関係者に提供することが可能であり、又は特定のヘルスケア関係者(例えば、かかりつけ医)から別のヘルスケア関係者(例えば、顧問医師)へ提供することが可能である。
各メタデータツリー70の他の部分(すなわち、少なくとも各ノード62内の参照78)は、ノード62を生成した関係者システム30によりノードキーを使用して更に暗号化される。このノードキーによる暗号化は、権限のないヘルスケア関係者が暗号化データストア24内の暗号化EHRへの参照78を取得することを阻止し、これにより、権限のないヘルスケア関係者が暗号化データストア24内の暗号化EHRにアクセスすることが防止される。該ノードキーは、関係者により生成された関係者に固有のキーとすることが可能である。ノードキーは、暗号化EHR80及びメタデータツリー70内の対応するノード76を格納しているヘルスケア関係者から別のヘルスケア関係者へと提供して、該別のヘルスケア関係者がノード76内の参照78を復号化することにより暗号化データストア24内の暗号化EHRを見つけることができるようにすることが可能である。
患者、ヘルスケア提供者、支払者、研究者、及び患者のヘルスケアプロセスに関与するその他の者(図示せず)を含む関係者は、対応する関係者システム30と対話して、対応するデータアクセスアダプタ32を使用してEHRストア20と通信し、患者のEHRを作成し、アクセスし、格納し、管理し、及び共有する。各データアクセスアダプタ32は、EHRストア20上のデータアクセスフロント22と通信して、暗号化データストア24及びメタデータストア26にアクセスする。
環境10Aはまた、患者のメタデータツリージャーナル60に対する同時読み書きアクセスをサポートするために関係者システム30で実施されたメタデータ完全性検証手段34を含む。該メタデータ完全性検証手段34は、メタデータツリー70のコミット状態を表すメタデータツリー70に関する完全性情報150(図7に示す)を格納する。関係者システム30は、メタデータ完全性検証手段34からアクセスされる該完全性情報150を使用して、一貫性のある最新バージョンのメタデータツリー70がメタデータツリージャーナル60から再構築されることを確実にする。このため、メタデータ完全性検証手段34は、暗号化データストア24に対する読み書きアクセスが、有効なバージョンのメタデータツリー70に基づいて関係者システム30により実行されることを確実にする。
完全性情報150は、メタデータツリージャーナル60内の最も最近コミットされたメタデータツリーのハッシュ及びメタデータサマリツリー(図5にメタデータサマリツリー100として示す)を含む。該ハッシュ及びサマリは、暗号化データストア24に暗号化EHRを格納し及び対応するノード62をメタデータツリー70に追加するプロセスの一部として、関係者システム30により生成される。該完全性情報150内のハッシュ及びメタデータサマリツリーは、メタデータツリー70のコミット状態を表し、該ハッシュはコミット(committed)ハッシュとも称され、該メタデータサマリツリーはコミット(committed)メタデータサマリツリーとも称される。
完全性情報150内のハッシュは、メタデータツリー70のインオーダートラバーサル(in-order traversal)の関数として生成することが可能であり、該インオーダートラバーサルは、メタデータツリー70内の各ノード62の論理カウンタ97を使用して決定される。一例では、前記ハッシュは、メタデータツリー70のインオーダートラバーサル全体の関数として生成することが可能である。
別の一例では、ルートノード72(式1ではRootNodeと称す)から開始し、Hcurrentの初期値を式1を用いてルートノード72のハッシュの関数として計算することが可能である。
Hcurrent=Hash(RootNode) (式1)
次いで、論理カウンタ97を使用してツリー70のインオーダートラバーサルが実行され、この場合、(式2でCurrentNodeと称す)各ノード74,76で、式1を使用して値Hcurrentが更新される。
Hcurrent=Hash(Hash(CurrentNode)‖Hcurrent) (式2)
前記トラバーサルの最後のノード74又は76のハッシュがHcurrentに含められた後、最終的なHcurrentがメタデータツリー70全体のハッシュを記録する。
完全性情報150内のメタデータサマリツリー100は、図5の例に示すように、論理カウンタ97に基づいてメタデータツリー70のノード62の順序付けを記録する。メタデータサマリツリー100内の各ノード102は、メタデータツリー70内のノード62に対応し、及び対応するノード62の論理カウンタ97及び関係者識別子93のそれぞれのコピー107,103を含む。
環境10Aにおいて、関係者システム30は、関係者システム30(1)上のメタデータ完全性検証手段34上の完全性情報150にアクセスし、及び該メタデータ完全性検証手段34へ完全性情報150を提供する。関係者システム30(1)は、例えば、患者のかかりつけ医又は該患者と関係のある他の関係者に対応するものとすることが可能である。図1Bに示す環境10の別の例10Bでは、関係者システム30は、データアクセスフロント22を介して、メタデータ完全性検証手段34上の完全性情報150にアクセスし、及び該メタデータ完全性検証手段34に完全性情報150を提供する。
図1Cに示す環境10の更に別の例では、メタデータ完全性検証手段34は、2つ以上の関係者システム30にわたって(メタデータ完全性検証手段34(1)-34(m)として)分散させることが可能である。この例では、各メタデータ完全性検証手段34(1)-34(m)は、関係者システム30の対応する関係者によって管理されるメタデータツリー70の対応するサブツリーについてハッシュ及びメタデータサマリツリーを格納する。該ハッシュ及びメタデータサマリは、メタデータツリー70全体ではなく、対応するサブツリーのインオーダートラバーサルを用いて上述したように生成することが可能である。
図6ないし図9を参照して以下で更に詳述するように、関係者システム30は、メタデータストア26上の患者のメタデータツリージャーナル60にアクセスし、該ジャーナル60とメタデータ完全性検証手段34からの完全性情報150とを使用してメタデータツリー70を再構築し、及び該再構築したメタデータツリー70を完全性情報150を使用して検証する。検証済みのメタデータツリー70を使用して、関係者システム30は、暗号化データストア24上の暗号化EHR80にアクセスし、及び/又は該暗号化データストア24にEHRを格納する。暗号化EHR80を格納する際、関係者システム30はまた、ジャーナリング機構を使用してメタデータストア26上のメタデータツリージャーナル60を更新させ、及びメタデータ完全性検証手段34上の完全性情報150を更新させる。
環境10、EHRストア20、及び関係者システム30は、1つ以上のメモリに格納されている命令を実行するための1つ以上のプロセッサをそれぞれが含む、適当な種類、個数、及び構成の処理システムを用いて実施することが可能である。詳細には、データアクセスフロント22、暗号化データストア24、及びメタデータストア26は、実施形態によっては複数の異なる処理システムを使用して実施することが可能である。関係者システム30の一例を図6に示し、以下で詳述する。更に、任意の適当な種類、個数、及び構成の有線/無線ネットワーク装置(図示せず)を使用して、該処理システムが通信できるようにすることが可能である。
図6は、ヘルスケア関係者システム30の一例を示すブロック図である。関係者システム30は、メモリシステム124に格納されている一組の命令を実行するよう構成された一組の1つ以上のプロセッサ122、メモリシステム124、及び少なくとも1つの通信装置126を含む。該プロセッサ122、メモリシステム124、及び通信装置126は、任意の適当な種類、個数、及び/又は構成のコントローラ、バス、インタフェイス、及び/又はその他の有線もしくは無線接続を含む、一組の相互接続128を使用して通信する。
関係者システム30は、サーバコンピュータ、ラップトップコンピュータ、タブレットコンピュータ、デスクトップコンピュータ、処理能力を有する携帯電話(すなわち、スマートフォン)、又は処理能力を有する他の適当な種類の電子装置といった、任意の適当な処理装置又はその一部を表している。各プロセッサ122は、メモリシステム124に格納されている命令にアクセスし及び該命令を実行し、並びに該メモリシステム124内のデータにアクセスし及び該メモリシステム124内にデータを格納するよう構成されている。メモリシステム124は、命令及びデータを格納するよう構成された、任意の適当な種類、個数、及び構成の揮発性もしくは不揮発性のマシン読み取り可能記憶媒体を含む。マシン読み取り可能記憶媒体の例として、ハードディスクドライブ、ランダムアクセスメモリ(RAM)、リードオンリーメモリ(ROM)、フラッシュメモリドライブ及びカード、並びにその他の適当な種類の磁気的及び/又は光学的なディスクが挙げられる。マシン読み取り可能記憶媒体は、物品又は製品の一部とみなされる。物品又は製品とは、1つ以上の製造された構成要素を意味する。通信装置126は、関係者システム30が1つ以上の有線又は無線ネットワークを介して通信することを可能にする任意の適当な種類、個数、及び/又は構成の通信装置を含む。
図7は、メタデータ完全性検証手段34を実施するメタデータ完全性検証システム140の一実施形態を示すブロック図である。メタデータ完全性検証システム140は、メモリシステム144内に格納されている一組の命令を実行するよう構成された一組をなす1つ以上のプロセッサ142、メモリシステム144、及び少なくとも1つの通信装置146を含む。該プロセッサ142、メモリシステム144、及び通信装置146は、任意の適当な種類、個数、及び/又は構成のコントローラ、バス、インタフェイス、及び/又はその他の有線もしくは無線接続を含む一組の相互接続148を使用して通信し、それぞれ、前記プロセッサ122、メモリシステム124、及び通信装置126と同様に構成され動作するものである。
図1Aないし図1Cに関して上述したように、メタデータ完全性検証システム140は、図1Aに示すように単一の関係者システム30と一体化させることが可能であり、図1Bに示すように関係者システム30とは別個にすることが可能であり、又は図1Cに示すように2つ以上の関係者システム30にわたって分散させることが可能である。
図6を参照すると、データアクセスアダプタ32は、プロセッサ122により実行された際にデータアクセスアダプタ32の機能を該プロセッサ122に実行させる複数の命令を含み、これについて図8−10を参照して説明することとする。
図8は、同時処理環境においてメタデータツリー70(n)又は70を使用して暗号化EHR80にアクセスする一例を示す概略図である。図6及び図8を参照すると、データアクセスアダプタ32は、矢印151で示すように、データアクセスフロント22を介してメタデータストア26上の患者12のメタデータツリージャーナル60にアクセスする。メタデータストア26は、矢印152に示すように、データアクセスフロント22を介して関係者システム30へメタデータツリージャーナル60を提供する。図4Aに示すように完全メタデータツリージャーナリングを用いる実施形態では、メタデータストア26により提供されるメタデータツリージャーナル60は、最も最近の完全なメタデータツリー70(n)を含む。図4Bに示すように増分メタデータツリージャーナリングを用いる実施形態では、メタデータストア26により提供されるメタデータツリージャーナル60は、メタデータツリージャーナル60に格納された全てのノード62を含む。
データアクセスアダプタ32は、矢印153で示すように、メタデータ完全性検証手段34上のメタデータツリージャーナル60の完全性情報150にアクセスする。メタデータ完全性検証手段34は、矢印154で示すように、完全性情報150を関係者システム30へ提供する。
データアクセスアダプタ32は、矢印155で示すように、完全性情報150を使用してメタデータツリージャーナル60からメタデータツリー70を再構築する。図4Aに示す完全メタデータツリージャーナリングを用いる実施形態では、データアクセスアダプタ32は、メタデータツリーキー132を使用して最も最近の完全なメタデータツリー70(n)を復号化する。データアクセスアダプタ32は、インオーダートラバーサルからメタデータツリー70(n)を再構築し、及びメタデータサマリツリー100(図5に示す)を使用して識別された任意の非コミットノード62を削除する。データアクセスアダプタ32は、非コミットノード62を、論理カウンタ97及び関係者識別子93がメタデータサマリツリー100内の対応するノード102の論理カウンタ107及び関係者識別子103と一致しないノード62として識別する。例えば、メタデータツリー70(n)内に同じ論理カウンタ97を有する2つのノード62が現れた場合には、データアクセスアダプタ32は、メタデータサマリツリー100内の対応するノード102の関係者識別子103が一致しないノード62を削除する。
図4Bに示すように増分メタデータツリージャーナリングを用いる実施形態では、データアクセスアダプタ32は、メタデータツリーキー132を使用してメタデータツリージャーナル60の全てを復号化し、及びインオーダートラバーサルを使用して全てのノード62でメタデータツリー70を再構築する。データアクセスアダプタ32は、論理カウンタ97及び関係者識別子93がメタデータサマリツリー100内の対応するノード102の論理カウンタ107及び関係者識別子103と一致しない非コミットノード62を全て削除する。例えば、同じ論理カウンタ97を有する2つのノード62が完全メタデータツリー70内に現れた場合には、データアクセスアダプタ32は、メタデータサマリツリー100内の対応するノード102の関係者識別子103が一致しないノード62を削除する。
データアクセスアダプタ32は、矢印156で示すように、完全性情報150を用いて再構築されたメタデータツリー70を検証する。該再構築されたメタデータツリー70(n)又は70から非コミットノード62を削除した後、データアクセスアダプタ32は、メタデータツリー70(n)又は70のローカルハッシュ(例えば、上記例で説明したようなメタデータツリー70(n)又は70のインオーダートラバーサルのハッシュ)を含むローカル完全性情報134を生成し、該ローカルハッシュを完全性情報150からのコミット(committed)ハッシュと比較する。該ローカルハッシュが該コミットハッシュと異なる場合には、データアクセスアダプタ32は、再構築されたメタデータツリー70(n)又は70が有効でない(すなわち、メタデータツリージャーナル60内の最も一貫性のある又は最も新しいメタデータツリーではない)と判定し、矢印157で示すように、矢印151-156を繰り返す。例えば、メタデータツリージャーナルに対する書き込みは、矢印151,153の各機能が生じる時の間に生じる。ローカルハッシュがコミットハッシュと同じである場合には、データアクセスアダプタ32は、再構築されたメタデータツリー70(n)又は70が有効であると判定する。
データアクセスアダプタ32は、矢印158で示すように、暗号化EHR80に対応する再構築されたメタデータツリー70(n)又は70内のノード76を判定する。データアクセスアダプタ32は、ノードキー136を使用してノード76を復号化する。該ノードキー136は、メタデータツリージャーナル60内へのノード76の格納処理の一部として関係者システム30内で生成され、又はメタデータツリージャーナル60内にノード76を格納した別の関係者システム30によって関係者システム30に提供され得るものである。ノード76を復号化することにより、データアクセスアダプタ32は、該ノード76から参照78を復号化して、暗号化データストア24内の所望の暗号化EHR80にアクセスすることが可能となる。
データアクセスアダプタ32は、矢印159で示すように、データアクセスフロント22を介して暗号化データストア24内の暗号化EHR80にアクセスする。暗号化データストア24は、矢印160で示すように、データアクセスフロント22を介して所望の暗号化EHR80を提供する。データアクセスアダプタ32は、暗号化EHR80を格納し、及び矢印161で示すようにレコードキー139を使用して暗号化EHR80を復号化EHR138へと復号化する。レコードキー139は、暗号化データストア24内への暗号化EHR80の格納処理の一部として関係者システム30内で生成され、又は暗号化EHR80を暗号化データストア24内に格納した別の関係者システム30によって関係者システム30へ提供され得るものである。データアクセスアダプタ32は、関係者に対して復号化EHR138を表示その他の態様で出力することが可能である。
図9は、同時処理環境においてメタデータツリー70(n)又は70を使用して暗号化EHR80を格納する一例を示す概略図である。図6、図8、及び図9を参照すると、データアクセスアダプタ32は、矢印171で示すように、再構築されたメタデータツリー70(n)又は70が有効になるまで図8の矢印151-157の機能を実行する。データアクセスアダプタ32は、矢印172で示すように、EHR138についてノード76のメタデータツリー70(n)又は70内のロケーションを判定する。
データアクセスアダプタ32は、矢印173で示すように、レコードキー139を使用してEHR138を暗号化EHR80へと暗号化する。レコードキー139は、暗号化データストア24内への暗号化EHR80の格納処理の一部として関係者システム30により生成され、又はノード76を含むメタデータツリー70(n)又は70のサブツリーを管理している別の関係者システム30により関係者システム30へ提供され得るものである。
データアクセスアダプタ32は、矢印174で示すように、暗号化EHR80をデータアクセスフロント22を介して暗号化データストア24へ提供する。データアクセスアダプタ32は、矢印175で示すように、データアクセスフロント22を介してメタデータストア26内のメタデータツリージャーナル60を更新させる。
図4Aに示すように完全メタデータツリージャーナリングを用いる実施形態では、データアクセスアダプタ32は、格納された暗号化EHR80への参照78を有するノード76を作成し、該ノード76をメタデータツリー70(n)に追加して更新されたメタデータツリー70(N+1)を形成することにより、メタデータツリージャーナル60を更新させる。データアクセスアダプタ32は、ノード76をノードキー136で暗号化し、更新されたメタデータツリー70(N+1)をメタデータツリーキー132で暗号化し、該更新され暗号化されたメタデータツリー70(N+1)をメタデータストア26内のメタデータツリージャーナル60に提供する。
図4Bに示すように増分メタデータツリージャーナリングを用いる実施形態では、データアクセスアダプタ32は、格納された暗号化EHR80への参照78を有するノード76を作成し、該ノード76をノードキー136で暗号化することにより、メタデータツリージャーナル60を更新させる。データアクセスアダプタ32は、該暗号化されたノード76を(メタデータツリー70へ提供することなく)メタデータストア26へ提供して、該暗号化されたノード76をメタデータツリージャーナル60に追加する。データアクセスアダプタ32はまた、ノード76をメタデータツリー70に追加して、更新されたメタデータツリー70についてローカル完全性情報134を生成することを可能にする。
完全メタデータツリージャーナリング及び増分メタデータツリージャーナリングの何れの場合も、データアクセスアダプタ32は、メタデータツリージャーナル60の更新処理の一部としてノードキー136を生成することが可能であり、又はノード76が追加されたメタデータツリー70(n)のサブツリーを管理している別の関係者システム30からノードキー136を受信することが可能である。
データアクセスアダプタ32は、矢印176で示すように、更新されたメタデータツリー70(N+1)又は70のメタデータ完全性検証手段34へのコミット(commit)を試みる。このために、データアクセスアダプタ32は、メタデータツリー70(N+1)又は70についてローカル完全性情報134を生成し、該ローカル完全性情報134は、メタデータツリー70(N+1)又は70のハッシュ(例えば、上記例で説明したようにメタデータツリー70(N+1)又は70のインオーダートラバーサルのハッシュ)と、メタデータツリー70(N+1)又は70のメタデータサマリツリー100とを含む。データアクセスアダプタ32は、ローカル完全性情報134、並びにコミット(coommitted)完全性情報150からメタデータ完全性検証手段34へコミットハッシュを提供する。
データアクセスアダプタ32からのローカル完全性情報134及びコミットハッシュの受信に応じて、メタデータ完全性検証手段34は、該データアクセスアダプタ32からのコミットハッシュを、該メタデータ完全性検証手段34上のコミット完全性情報150内に格納されているコミットハッシュと比較する。該データアクセスアダプタ32からのハッシュが該メタデータ完全性検証手段34上に格納されているハッシュと一致する場合には、メタデータ完全性検証手段34は、該ローカル完全性情報134をメタデータ完全性検証手段34上のコミット完全性情報150にコミットして、矢印177で示すようにデータアクセスアダプタ32に成功状態を提供する。
データアクセスアダプタ32からのハッシュが、メタデータ完全性検証手段34上に格納されているハッシュと一致しない場合には、該メタデータ完全性検証手段34は、該メタデータ完全性検証手段34上のコミット完全性情報150にローカル完全性情報134をコミットせず、データアクセスアダプタ32に拒絶状態を提供する。例えば、別の関係者システム30が、矢印171,176の各機能が生じるときの間にメタデータツリージャーナル60に異なる更新されたメタデータツリー70(N+1)又は70をコミットしている可能性がある。データアクセスアダプタ32は、矢印178で示すように、更新されたメタデータツリー70(N+1)又は70がメタデータ完全性検証手段34によって成功裏にコミットされるまで、矢印171-177の機能を繰り返す。
上記例では、データアクセスアダプタ32は、該データアクセスアダプタ32により実行されるメタデータストア26の各読み出し及び書き込みの読み書き進捗を記録するためのロギングサービスを含むことが可能である。データアクセスアダプタ32が、メタデータストア26に対する読み出し又は書き込みの実行中に動作不能になった(例えばクラッシュした)場合には、データアクセスアダプタ32は、該ログにアクセスして、該データアクセスアダプタ32が動作可能になった際に、完了していない読み出し又は書き込み操作を再開させる。
上述のように、様々な関係者が様々な関係者システム30を使用してメタデータツリー70の様々なサブツリーを管理することが可能である。1つのサブツリーを管理するために、関係者は、患者の権限のあるヘルスケア関係者に対してアクセスの許可又は取り消しを行うために、該サブツリー内のノード74,76に対応する複数のノードキーを管理する。関係者は、選択されたノード及びレコードキーを別の関係者に提供することにより、アクセスを許可する。関係者は、ノードキーをローテートしてメタデータツリーの対応するノード内に取り消し情報を埋め込むことにより、アクセスを取り消す。
メタデータツリー70のサブツリーに対する他の関係者のアクセスを取り消すために、データアクセスアダプタ32は、該サブツリーの親ノード74内のキーローテーション情報を(例えば、取り消されたノードキーのハッシュをキーローテーション情報98に追加することにより)更新させ、及び親ノード74下に取り消しノード76(すなわち「キー取り消し」に設定されたタイプ96を有するノード)を追加することにより、キー取り消し情報をメタデータツリー70内に埋め込む。データアクセスアダプタ32は、図9に図示し上述した機能171,175-178を使用して、更新された親ノード74及び取り消しノード76でメタデータツリージャーナル60を更新させ、及び更新されたメタデータツリー70(N+1)又は70をコミットする。
キー取り消しの後、更新されたノードキーを有さない関係者は、該取り消しの後に暗号化データストア24に格納されたサブツリーに対応する暗号化EHR80にアクセスすることができなくなり、又は該サブツリーに対応する新たな暗号化EHR80を暗号化データストア24に格納することができなくなる。しかし、取り消された関係者は、該取り消しの前に暗号化データストア24に格納された暗号化EHR80にアクセスすることは可能であり続ける。
図10は、埋め込まれたキー取り消し情報を有するメタデータツリー70の一部の一例を示すブロック図である。同図の例では、取り消しノード76(3),76(5)で示すように、2つの別個のキー取り消しが1つの親ノード74(1)について生じている。ノード76(1),76(2)の暗号化及び復号化に使用された第1バージョンのノードキーは、取り消しノード76(3)で示すように取り消され、ノード76(4)の暗号化及び復号化に使用された第2バージョンのノードキーは、取り消しノード76(5)で示すように取り消されている。ノード76(6)の暗号化及び復号化に使用された第3バージョンのノードキーはアクティブなままである。第1バージョンが取り消された際に、該第1の取り消しを実行するデータアクセスアダプタ32が、(例えば、該第1のバージョンのノードキーのハッシュをキーローテーション情報98に追加することにより)前記サブツリーの親ノード74(1)内にキーローテーション情報98を追加して該第1のバージョンのノードキーが取り消されたことを示す。同様に、第2の取り消しを実行するデータアクセスアダプタ32は、(例えば、該第2のバージョンのノードキーのハッシュをキーローテーション情報98に追加することにより)前記サブツリーの親ノード74(1)内にキーローテーション情報98を追加して該第2のバージョンのノードキーが取り消されたことを示す。
図10の例では、第1のバージョンのノードキーを有する関係者システム30は、ノード76(1),76(2)にアクセスすることが可能であるが、ノード76(4),76(6)にアクセスすることはできず、及び親ノード74(1)下に新たなノード76を追加することはできない。第2のバージョンのノードキーを有する関係者システム30は、ノード76(1),76(2),76(4)にアクセスすることが可能であるが、ノード76(6)にアクセスすることはできず、及び親ノード74(1)下に新たなノード76を追加することはできない。第3のバージョンのノードキーを有する関係者システム30は、ノード76(1),76(2),76(4),76(6)にアクセスすることが可能であり、及び親ノード74(1)下に新たなノード76を追加することが可能である。
キー取り消しを実行するために、データアクセスアダプタ32は、親ノード74(1)内のキーローテーション情報98を調べて、関係者システム30上のノードキーが既に取り消されているか否かを判定する。例えば、データアクセスアダプタ32は、該ノードキーのハッシュがキーローテーション情報98内に存在するか否かを判定することが可能である。該ノードキーのハッシュがキーローテーション情報98内に存在する場合には、データアクセスアダプタ32は、該ノードキーの取り消し前に作成されたノード76に対する読み出しアクセスのみを許可し、親ノード74(1)下への新たなノード76の追加を許可しない。該ノードキーのハッシュがキーローテーション情報98内に存在しない場合には、データアクセスアダプタ32は、該ノードキーが取り消されていないと判定して、全てのノード76の読み出しと親ノード74(1)下への新たなノード76の追加を許可する。
上記実施形態では、レコードキーは、患者キー、提供者識別子、及び暗号化EHR80に対応するメタデータツリー70内のノード62のロケーションに基づいて、各暗号化EHR80毎に一意に生成することが可能である。各患者キーは、対応する患者の一意の暗号化キーであり、各提供者識別子は、提供者の各患者毎に提供者キーを生成するために患者キーと組み合わせて使用される情報を表すものである。前記ロケーションは、メタデータツリー70内の完全修飾経路(fully qualified path)(すなわち、URI(Uniform Resource Identifier))を表すものである。提供者は、提供者キー及び対応するロケーションの関数として各レコードキーを生成することが可能である。患者は、提供者識別子及びメタデータツリー70にアクセスし、患者キーと該提供者識別子を使用して提供者キーを生成し、及び該提供者キーと所望の暗号化EHR80に対応するメタデータツリー70内のノード62のロケーションとを使用してレコードキーを生成することにより、レコードキーの生成を行うことが可能である。
上記実施形態は、患者のメタデータツリージャーナルに対する同時読み書きプロトコルを有利にサポートすることが可能であると同時に、関係者が一貫性のある最新バージョンのメタデータツリーを再構築できることを確実にするものである。該実施形態は、該実施形態の規模の拡大又は縮小を可能とすべく、鍵(locks)を使用することなく該同時性を提供する。更に、該実施形態は、暗号化データストア又はメタデータストアが信頼できるエンティティであることを必要としない。更に、該実施形態は、必要に応じてアクセス権を取り消すための機構を提供する。

Claims (15)

  1. 処理システムにより実行される方法であって、
    暗号化データストア内の暗号化電子カルテに対応する患者のメタデータツリー内の第1のノードを識別し、
    第1のヘルスケア関係者の第1のノードキーが第2のヘルスケア関係者によって取り消されたことを示すキーローテーション情報を前記メタデータツリーの第2のノードが含むことに応じて、前記第1のノードの一部が前記第1のヘルスケア関係者の前記第1のノードキーを用いて復号化されるのを阻止する、
    という各ステップからなる方法。
  2. 前記第1のノードの前記一部が、前記暗号化データストア内の前記暗号化電子カルテへの参照を含む、請求項1に記載の方法。
  3. 前記第1のノードキーが前記第1のノードにとって有効であることを前記キーローテーション情報が示していることに応じて前記第1のノードの前記一部を前記第1のノードキーを用いて復号化するステップを更に含む、請求項2に記載の方法。
  4. 前記参照を用いて前記暗号化データストア内の前記暗号化電子カルテにアクセスし、
    前記暗号化電子カルテへをレコードキーを用いて復号化する、
    という各ステップを更に含む、請求項3に記載の方法。
  5. 前記第1のノードキーに対応する前記メタデータツリー内の取り消しノードに続いて前記第1のノードが生じたことに応じて、前記第1のノードの前記一部が前記ノードキーを用いて復号化されるのを阻止するステップを更に含む、請求項1に記載の方法。
  6. 前記第1のノードキーが前記第2のヘルスケア関係者により取り消された後に該第2のヘルスケア関係者から第2のノードキーを受信し、
    該第2のノードキーが前記第1のノードにとって有効であることを前記キーローテーション情報が示していることに応じて、該第2のノードキーを用いて前記第1のノードの前記一部を復号化する、
    という各ステップを更に含む、請求項1に記載の方法。
  7. 一組をなす1つ以上のプロセッサと、
    一組の命令を格納したメモリと
    を備えた処理システムであって、前記一組の命令が、前記一組のプロセッサにより実行された際に、
    メタデータストア内の患者のメタデータツリーにアクセスし、該メタデータツリーが、キーローテーション情報を有する第1のノードを含み、
    第1のヘルスケア関係者の第1のノードキーが第2のヘルスケア関係者によって取り消されたことを前記キーローテーション情報が示していることに応じて、前記患者の暗号化電子カルテが前記第1のヘルスケア関係者により暗号化データストア内に格納されるのを阻止する、
    という各ステップを前記一組のプロセッサに実行させるものである、処理システム。
  8. 前記一組の命令が、前記一組のプロセッサにより実行された際に、
    前記第1のヘルスケア関係者の前記第1のノードキーが前記第2のヘルスケア関係者によって取り消されたことを前記キーローテーション情報が示していることに応じて、前記メタデータストア内の前記患者の前記メタデータツリーが前記第1のヘルスケア関係者によって更新されることを阻止する、
    というステップを前記一組のプロセッサに実行させるものである、請求項7に記載の処理システム。
  9. 前記一組の命令が、前記一組のプロセッサにより実行された際に、
    前記第1のノードキーが前記第1のノードにとって有効であることを前記キーローテーション情報が示していることに応じて、前記暗号化電子カルテを前記第1のヘルスケア関係者から前記暗号化データストアへ提供する、
    というステップを前記一組のプロセッサに実行させるものである、請求項7に記載の処理システム。
  10. 前記一組の命令が、前記一組のプロセッサにより実行された際に、
    前記第1のノードキーが前記第1のノードにとって有効であることを前記キーローテーション情報が示していることに応じて、少なくとも、前記メタデータツリー内の前記第1のノードの下に作成され且つ前記暗号化電子カルテに対応する第2のノードを、前記メタデータストアに提供する、
    というステップを前記一組のプロセッサに実行させるものである、請求項9に記載の処理システム。
  11. 前記一組の命令が、前記一組のプロセッサにより実行された際に、
    前記第1のノードキーが前記第2のヘルスケア関係者によって取り消された後に該第2のヘルスケア関係者から第2のノードキーを受信し、
    該第2のノードキーが前記第1のノードにとって有効であることを前記キーローテーション情報が示していることに応じて、前記第1のヘルスケア関係者から前記暗号化データストアへ前記暗号化電子カルテを提供する、
    という各ステップを前記一組のプロセッサに実行させるものである、請求項7に記載の処理システム。
  12. 命令を格納した少なくとも1つのマシン読み取り可能記憶媒体を含む物品であって、該命令が、処理システムにより実行された際に、
    メタデータストアから患者の第1のメタデータツリーを受信し、該メタデータツリーが第1のキーローテーション情報を有する第1のノードを含み、
    第2のノードを前記メタデータストアに提供し、該第2のノードが、第1のノードキーから第2のノードキーへのローテーションを示す第2のキーローテーション情報を含む前記第1のノードを更新させ、
    第3のノードを前記メタデータストアに提供し、該第3のノードが、前記第1のノードの下に作成され且つ前記第1のノードキーから前記第2のノードキーへのローテーションを示すものである、
    という各ステップを前記処理システムに実行させるものである物品。
  13. 前記第2のローテーション情報が前記第1のノードキーのハッシュを含む、請求項12に記載の物品。
  14. 前記命令が、前記処理システムにより実行された際に、
    前記第1のメタデータツリーを含む第1のメタデータツリージャーナルを前記メタデータストアから受信し、
    前記第2のノード及び前記第3のノードを含むよう第2のメタデータツリーを生成し、
    前記第1のメタデータツリー及び前記第2のメタデータツリーを含む第2のメタデータツリージャーナルを前記メタデータストアへ提供する、
    という各ステップを前記処理システムに実行させるものである、請求項12に記載の物品。
  15. 前記命令が、前記処理システムにより実行された際に、
    一組の増分更新を含むメタデータツリージャーナルを前記メタデータストアから受信し、
    該一組の増分更新から前記第1のメタデータツリーを再構築し、
    前記第2のノード及び前記第3のノードを前記メタデータストア内の前記メタデータツリージャーナルに提供する、
    という各ステップを前記処理システムに実行させるものである、請求項12に記載の物品。
JP2015527436A 2012-08-15 2012-09-12 キーローテーション情報を有するメタデータツリー Expired - Fee Related JP6069614B2 (ja)

Applications Claiming Priority (5)

Application Number Priority Date Filing Date Title
US201261683705P 2012-08-15 2012-08-15
US201261683702P 2012-08-15 2012-08-15
US61/683,705 2012-08-15
US61/683,702 2012-08-15
PCT/US2012/054885 WO2014028039A1 (en) 2012-08-15 2012-09-12 Metadata tree with key rotation information

Publications (2)

Publication Number Publication Date
JP2015526049A true JP2015526049A (ja) 2015-09-07
JP6069614B2 JP6069614B2 (ja) 2017-02-01

Family

ID=50101380

Family Applications (2)

Application Number Title Priority Date Filing Date
JP2015527435A Expired - Fee Related JP6064195B2 (ja) 2012-08-15 2012-09-12 メタデータ完全性バリデータを用いたメタデータツリーの検証
JP2015527436A Expired - Fee Related JP6069614B2 (ja) 2012-08-15 2012-09-12 キーローテーション情報を有するメタデータツリー

Family Applications Before (1)

Application Number Title Priority Date Filing Date
JP2015527435A Expired - Fee Related JP6064195B2 (ja) 2012-08-15 2012-09-12 メタデータ完全性バリデータを用いたメタデータツリーの検証

Country Status (7)

Country Link
US (2) US11373736B2 (ja)
EP (2) EP2885760A4 (ja)
JP (2) JP6064195B2 (ja)
CN (2) CN104737195A (ja)
AU (2) AU2012387666B2 (ja)
CA (2) CA2881962A1 (ja)
WO (2) WO2014028039A1 (ja)

Families Citing this family (9)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN104737195A (zh) 2012-08-15 2015-06-24 惠普发展公司,有限责任合伙企业 具有密钥旋转信息的元数据树
EP3185464B1 (en) * 2015-12-21 2020-05-20 Hewlett-Packard Development Company, L.P. Key generation information trees
CN105915567A (zh) * 2016-07-06 2016-08-31 杨炳 一种安全移动电子健康记录访问控制系统
JP6362242B1 (ja) * 2017-09-19 2018-07-25 雅晴 古川 情報管理装置
US10715323B2 (en) * 2017-12-29 2020-07-14 Ebay Inc. Traceable key block-chain ledger
JP6420513B1 (ja) * 2018-03-19 2018-11-07 雅晴 古川 情報管理装置
CN111047295B (zh) * 2019-12-13 2023-04-07 红云红河烟草(集团)有限责任公司 一种卷烟制丝加工过程的数据采集方法
US11804949B2 (en) * 2021-03-19 2023-10-31 Raytheon Bbn Technologies Corp. Subscriber revocation in a publish-subscribe network using attribute-based encryption
US11558185B2 (en) 2021-03-19 2023-01-17 Raytheon Bbn Technologies Corp. Stream-based key management

Citations (6)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP2002543497A (ja) * 1999-04-23 2002-12-17 オラクル コーポレーション デシジョンツリーを生成するためのシステムおよび方法
JP2004192639A (ja) * 2002-12-05 2004-07-08 Microsoft Corp サーバーレス分散ファイルシステムにおけるセキュアリカバリ
JP2004326356A (ja) * 2003-04-23 2004-11-18 Minolta Co Ltd 情報処理装置
JP2008509477A (ja) * 2004-08-02 2008-03-27 株式会社ジャストシステム 文書のある表現における変更を別の表現に反映させるための文書処理及び管理方法
JP2009519511A (ja) * 2005-12-05 2009-05-14 サーセン コーポレイション 文書データセキュリティ管理方法及びそのシステム
JP2011118550A (ja) * 2009-12-01 2011-06-16 Fuji Xerox Co Ltd プログラム及び情報処理システム

Family Cites Families (38)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JPH08163488A (ja) 1994-12-12 1996-06-21 Matsushita Electric Ind Co Ltd 動画像ダイジェスト生成方法及び動画像ダイジェスト生成装置
JP2001352321A (ja) * 2000-04-06 2001-12-21 Sony Corp 情報処理システム、情報処理方法、および情報記録媒体、並びにプログラム提供媒体
AU7182701A (en) 2000-07-06 2002-01-21 David Paul Felsher Information record infrastructure, system and method
US6968456B1 (en) * 2000-08-08 2005-11-22 Novell, Inc. Method and system for providing a tamper-proof storage of an audit trail in a database
US7440904B2 (en) * 2000-10-11 2008-10-21 Malik M. Hanson Method and system for generating personal/individual health records
US7043637B2 (en) * 2001-03-21 2006-05-09 Microsoft Corporation On-disk file format for a serverless distributed file system
US7181017B1 (en) 2001-03-23 2007-02-20 David Felsher System and method for secure three-party communications
US20030074564A1 (en) * 2001-10-11 2003-04-17 Peterson Robert L. Encryption system for allowing immediate universal access to medical records while maintaining complete patient control over privacy
US8589400B2 (en) * 2001-11-30 2013-11-19 Intelligent Medical Objects, Inc. Longitudinal electronic record system and method
KR100562895B1 (ko) 2002-05-13 2006-03-21 주식회사 바이오폴리메드 약물의 간세포 표적화를 위한 생물학적 활성 고분자 결합체
KR100924773B1 (ko) * 2002-09-16 2009-11-03 삼성전자주식회사 메타데이터 암호화 및 복호화 방법과 암호화된 메타데이터관리 방법 및 그 시스템
US7152073B2 (en) * 2003-01-30 2006-12-19 Decode Genetics Ehf. Method and system for defining sets by querying relational data using a set definition language
JP2004326358A (ja) 2003-04-23 2004-11-18 Mitsubishi Electric Information Systems Corp 医事支援システム及びこのシステムに用いられる医事支援システム用プログラム
US20050004924A1 (en) * 2003-04-29 2005-01-06 Adrian Baldwin Control of access to databases
US7697690B2 (en) * 2003-07-21 2010-04-13 Hewlett-Packard Development Company, L.P. Windowed backward key rotation
US7340471B2 (en) * 2004-01-16 2008-03-04 Unisys Corporation Saving and restoring an interlocking trees datastore
AU2005241560A1 (en) * 2004-05-05 2005-11-17 Ims Software Services, Ltd. Data encryption applications for multi-source longitudinal patient-level data integration
WO2006021943A1 (en) 2004-08-09 2006-03-02 Nice Systems Ltd. Apparatus and method for multimedia content based
JP4301513B2 (ja) * 2004-11-26 2009-07-22 インターナショナル・ビジネス・マシーンズ・コーポレーション ポリシーを用いたアクセス制御効果の判定方法
US20060129435A1 (en) 2004-12-15 2006-06-15 Critical Connection Inc. System and method for providing community health data services
US20060184554A1 (en) * 2005-02-17 2006-08-17 Microsoft Corporation System and method for extensible metadata architecture for digital images using in-place editing
US7702640B1 (en) 2005-12-29 2010-04-20 Amazon Technologies, Inc. Stratified unbalanced trees for indexing of data items within a computer system
US20070239998A1 (en) 2006-04-11 2007-10-11 Medox Exchange, Inc. Dynamic binding of access and usage rights to computer-based resources
US20070294317A1 (en) * 2006-06-15 2007-12-20 Dan Allan Christy Apparatus and Method for Journaling and Recovering Indexes that Cannot be Fully Recovered During Initial Program Load
US7577658B2 (en) 2006-10-06 2009-08-18 Microsoft Corporation Hierarchical locking in B-tree indexes
CN101536021A (zh) * 2006-11-01 2009-09-16 微软公司 健康集成平台api
US8832073B2 (en) * 2007-06-29 2014-09-09 Alcatel Lucent Method and apparatus for efficient aggregate computation over data streams
US8065166B2 (en) 2007-10-30 2011-11-22 Onemednet Corporation Methods, systems, and devices for managing medical images and records
US8176018B1 (en) * 2008-04-30 2012-05-08 Netapp, Inc. Incremental file system differencing
WO2010102069A2 (en) 2009-03-04 2010-09-10 Masimo Corporation Medical monitoring system
JP5749257B2 (ja) 2009-06-26 2015-07-15 トラステッド ロジック データ検証方法
US20110119089A1 (en) * 2009-11-19 2011-05-19 Carlisle Jeffrey A System and Method for Personal Electronic Medical Records
JP5515914B2 (ja) 2010-03-19 2014-06-11 富士通株式会社 ファイル管理プログラム、ファイル管理装置及びファイル管理方法
US9406186B2 (en) * 2010-05-12 2016-08-02 Capital One Financial Corporation System and method for providing limited access to data
CN101976322B (zh) * 2010-11-11 2012-05-23 清华大学 基于一种完整性校验的安全元数据管理方法
CN102567394B (zh) * 2010-12-30 2015-02-25 国际商业机器公司 获取平面数据的层级信息的方法和装置
US9361467B2 (en) * 2012-02-29 2016-06-07 Sap Se Owner-controlled access control to released data
CN104737195A (zh) 2012-08-15 2015-06-24 惠普发展公司,有限责任合伙企业 具有密钥旋转信息的元数据树

Patent Citations (6)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP2002543497A (ja) * 1999-04-23 2002-12-17 オラクル コーポレーション デシジョンツリーを生成するためのシステムおよび方法
JP2004192639A (ja) * 2002-12-05 2004-07-08 Microsoft Corp サーバーレス分散ファイルシステムにおけるセキュアリカバリ
JP2004326356A (ja) * 2003-04-23 2004-11-18 Minolta Co Ltd 情報処理装置
JP2008509477A (ja) * 2004-08-02 2008-03-27 株式会社ジャストシステム 文書のある表現における変更を別の表現に反映させるための文書処理及び管理方法
JP2009519511A (ja) * 2005-12-05 2009-05-14 サーセン コーポレイション 文書データセキュリティ管理方法及びそのシステム
JP2011118550A (ja) * 2009-12-01 2011-06-16 Fuji Xerox Co Ltd プログラム及び情報処理システム

Non-Patent Citations (2)

* Cited by examiner, † Cited by third party
Title
JPN6016005965; 北野 拓哉 他: '半構造化データモデルを利用したXML文書管理システムの試作' 第57回(平成10年後期)全国大会講演論文集(3) 5V-5, 19981005, p.3-283〜3-284, 社団法人情報処理学会 *
JPN6016005967; Sujoy Basu, et al.: 'Fusion: Managing Healthcare Records at Cloud Scale' COMPUTER Volume 45, Issue 11, 20120822, pp.42-49, IEEE *

Also Published As

Publication number Publication date
US20150278450A1 (en) 2015-10-01
US10025903B2 (en) 2018-07-17
EP2885763A1 (en) 2015-06-24
WO2014028039A1 (en) 2014-02-20
US20150242641A1 (en) 2015-08-27
EP2885760A4 (en) 2016-05-18
WO2014028038A1 (en) 2014-02-20
AU2012387666A1 (en) 2015-03-05
EP2885760A1 (en) 2015-06-24
AU2012387667B2 (en) 2016-03-17
EP2885763A4 (en) 2016-03-23
CN104737195A (zh) 2015-06-24
JP6064195B2 (ja) 2017-01-25
JP2015527006A (ja) 2015-09-10
US11373736B2 (en) 2022-06-28
CA2881983A1 (en) 2014-02-20
JP6069614B2 (ja) 2017-02-01
AU2012387667A1 (en) 2015-03-05
CA2881962A1 (en) 2014-02-20
AU2012387666B2 (en) 2016-02-11
CN104704528B (zh) 2018-12-07
CN104704528A (zh) 2015-06-10

Similar Documents

Publication Publication Date Title
JP6069614B2 (ja) キーローテーション情報を有するメタデータツリー
EP3637673B1 (en) Secure data sharing
Zhuang et al. A patient-centric health information exchange framework using blockchain technology
US20160034713A1 (en) Decentralized Systems and Methods to Securely Aggregate Unstructured Personal Data on User Controlled Devices
JP6300800B2 (ja) 記録のための暗号化データ記憶装置
US20090193267A1 (en) Secure electronic medical record storage on untrusted portal
JP2020519097A (ja) 一致コホートの作成およびブロックチェーンを使用した保護データの交換
US20150242570A1 (en) Electronic health record system with customizable compliance policies
AU2012387668B2 (en) Metadata tree of a patient with lockboxes
Arora et al. Attribute-based Access Control Model in Healthcare Systems with Blockchain Technology
Mohammadi et al. SCALHEALTH: Scalable Blockchain Integration for Secure IoT Healthcare Systems
Rajkumar et al. Hospital health monitoring on cloud using blockchain technology

Legal Events

Date Code Title Description
A977 Report on retrieval

Free format text: JAPANESE INTERMEDIATE CODE: A971007

Effective date: 20160204

A131 Notification of reasons for refusal

Free format text: JAPANESE INTERMEDIATE CODE: A131

Effective date: 20160223

A521 Request for written amendment filed

Free format text: JAPANESE INTERMEDIATE CODE: A523

Effective date: 20160513

TRDD Decision of grant or rejection written
A01 Written decision to grant a patent or to grant a registration (utility model)

Free format text: JAPANESE INTERMEDIATE CODE: A01

Effective date: 20161025

A711 Notification of change in applicant

Free format text: JAPANESE INTERMEDIATE CODE: A711

Effective date: 20161115

A61 First payment of annual fees (during grant procedure)

Free format text: JAPANESE INTERMEDIATE CODE: A61

Effective date: 20161124

R150 Certificate of patent or registration of utility model

Ref document number: 6069614

Country of ref document: JP

Free format text: JAPANESE INTERMEDIATE CODE: R150

S111 Request for change of ownership or part of ownership

Free format text: JAPANESE INTERMEDIATE CODE: R313113

R360 Written notification for declining of transfer of rights

Free format text: JAPANESE INTERMEDIATE CODE: R360

R360 Written notification for declining of transfer of rights

Free format text: JAPANESE INTERMEDIATE CODE: R360

R371 Transfer withdrawn

Free format text: JAPANESE INTERMEDIATE CODE: R371

S111 Request for change of ownership or part of ownership

Free format text: JAPANESE INTERMEDIATE CODE: R313113

R350 Written notification of registration of transfer

Free format text: JAPANESE INTERMEDIATE CODE: R350

LAPS Cancellation because of no payment of annual fees