KR20200016458A - Blockchain-based phr platform server operating method and phr platform server operating system - Google Patents

Blockchain-based phr platform server operating method and phr platform server operating system Download PDF

Info

Publication number
KR20200016458A
KR20200016458A KR1020180091607A KR20180091607A KR20200016458A KR 20200016458 A KR20200016458 A KR 20200016458A KR 1020180091607 A KR1020180091607 A KR 1020180091607A KR 20180091607 A KR20180091607 A KR 20180091607A KR 20200016458 A KR20200016458 A KR 20200016458A
Authority
KR
South Korea
Prior art keywords
blockchain
medical record
header
medical
phr
Prior art date
Application number
KR1020180091607A
Other languages
Korean (ko)
Other versions
KR102170892B1 (en
Inventor
류세현
최명선
김광호
Original Assignee
주식회사 유비케어
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 주식회사 유비케어 filed Critical 주식회사 유비케어
Priority to KR1020180091607A priority Critical patent/KR102170892B1/en
Publication of KR20200016458A publication Critical patent/KR20200016458A/en
Application granted granted Critical
Publication of KR102170892B1 publication Critical patent/KR102170892B1/en

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
    • 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
    • G16H50/00ICT specially adapted for medical diagnosis, medical simulation or medical data mining; ICT specially adapted for detecting, monitoring or modelling epidemics or pandemics
    • G16H50/70ICT specially adapted for medical diagnosis, medical simulation or medical data mining; ICT specially adapted for detecting, monitoring or modelling epidemics or pandemics for mining of medical data, e.g. analysing previous cases of other patients
    • 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
    • G16H80/00ICT specially adapted for facilitating communication between medical practitioners or patients, e.g. for collaborative diagnosis, therapy or health monitoring
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L67/00Network arrangements or protocols for supporting network services or applications
    • H04L67/01Protocols
    • H04L67/10Protocols in which an application is distributed across nodes in the network
    • H04L67/1097Protocols in which an application is distributed across nodes in the network for distributed storage of data in networks, e.g. transport arrangements for network file system [NFS], storage area networks [SAN] or network attached storage [NAS]

Abstract

Disclosed are a blockchain-based PHR platform server management method and a PHR platform server management system. According to an embodiment of the present invention, the blockchain-based PHR platform server management method includes the following steps: collecting a first medical treatment record document written from an EMR terminal, thereby retaining the document in a multi-distributed storage; extracting patient information from the first medical treatment record document, thereby recording the information in a registry as a header for the first medical treatment record document; blocking a storage position value of the first medical treatment record document in the multi-distributed storage and a hash value about the header based on a blockchain core, thereby connecting the values to a blockchain; and searching the blockchain for a block designated by the hash value selected from a header list listing a plurality of hash values in interconnection with the occurrence of an inquiry request, and then, providing a storage position value of the found block to the EMR terminal having created the inquiry request. Therefore, the present invention is capable of safely storing or inquiring into medical treatment records and health data of patients.

Description

블록체인 기반의 PHR 플랫폼 서버 운영 방법 및 PHR 플랫폼 서버 운영 시스템{BLOCKCHAIN-BASED PHR PLATFORM SERVER OPERATING METHOD AND PHR PLATFORM SERVER OPERATING SYSTEM}Blockchain based PHR platform server operating method and PHR platform server operating system {BLOCKCHAIN-BASED PHR PLATFORM SERVER OPERATING METHOD AND PHR PLATFORM SERVER OPERATING SYSTEM}

본 발명은 의료기관의 EMR 단말에서 작성되어 공유된 진료정보를 블록체인을 기반으로 보관 유지 함으로써, 임의의 EMR 단말에서 진료정보를 안전하게 조회할 수 있게 하는, 블록체인 기반의 PHR플랫폼 서버 운영 방법 및 PHR 플랫폼 서버 운영 시스템에 관한 것이다.The present invention provides a blockchain-based PHR platform server operating method and PHR to securely look up the treatment information from any EMR terminal by maintaining the medical information created and shared in the EMR terminal of the medical institution based on the block chain A platform server operating system.

본 발명은 환자에 의해 공개로 설정된 EMR 단말에 대해 상기 환자의 진료정보 조회를 허용 함으로써, 환자를 중심으로 진료정보의 교류가 이루어질 수 있게 하는, 블록체인 기반의 PHR 플랫폼 서버 운영 방법 및 PHR 플랫폼 서버 운영 시스템에 관한 것이다.The present invention allows the EMR terminal set to be opened by the patient to allow the patient's medical information inquiry, thereby enabling the exchange of medical information centered on the patient, block chain based PHR platform server operating method and PHR platform server It is about an operating system.

현재 의료기관에서는 정부에서 정한 표준 고시에 따라 진료의뢰서, 진료회송서, 진료기록요약지, 영상의학판독소견서 등과 같은 환자의 진료기록을 타의료기관과 온라인으로 교환할 수 있게 되어 있다.Currently, medical institutions are allowed to exchange their medical records with other medical institutions on the basis of the government's standard notices.

하지만 기존의 온라인 진료정보 교류 시스템에서는 의료기관 간에 개별적으로 진료정보가 교류되고 있다. 이때문에, 임의의 의료기관에서 환자의 모든 진료기록을 조회하고자 하는 경우, 환자가 방문한 각 의료기관에 일일이 조회를 요청해야 하는 번거로움이 있으며, 기존의 온라인 진료정보 시스템을 통해서는 현실적으로 환자의 모든 진료기록이 전송되기 어려울 수 있다.However, in the existing online medical care information exchange system, medical care information is individually exchanged between medical institutions. For this reason, if any medical institution wants to search all the patient's medical records, it is cumbersome to request each medical institution visited by the patient individually. Records can be difficult to transfer.

또한, 기존에는 환자가 배제된 상태에서 의료기관 간에 진료정보가 교환되고 있어, 환자가 자신의 진료정보를 공개할 의료기관을 능동적으로 선택하기 어렵고, 공개할 일부의 진료정보를 선택할 수 있는 방법이 없었다.In addition, since medical information is exchanged between medical institutions in a state where patients are excluded, it is difficult for a patient to actively select a medical institution to disclose his / her medical information, and there is no method of selecting some medical information to be disclosed.

이에 따라 환자를 배제한 상태에서 의료기관 간에 실시되는 기존의 온라인 진료 교류를 환자를 중심으로 진료 교류로 개편할 필요가 있다.Accordingly, it is necessary to reorganize existing online medical care exchanges conducted between medical institutions with the exception of patients into medical care exchanges centering on patients.

뿐만 아니라, 기존의 온라인 진료정보 교류 시스템에서는, 중앙의 서버와 거점 의료기관에 환자의 진료기록이 저장되고 있고, 각 진료기록에 환자정보가 포함되어 있어 해킹될 경우 환자의 모든 정보가 누출될 우려가 있다.In addition, in the existing on-line medical information exchange system, the patient's medical records are stored in the central server and base medical institution, and the patient records are included in each medical record. have.

이에 분산 저장 기술을 활용하여 온라인 진료정보 교류 시스템의 안전성을 강화할 필요가 있다.Therefore, it is necessary to reinforce the safety of the online medical care information exchange system by using distributed storage technology.

또한, 현재의 진료정보 교류 시스템에서는 진료기록을 공인인증서를 이용해 암호화 하여 전달하고 있기 때문에 진료기록을 공유 또는 조회하는 각 의료기관의 단말(예, EMR 시스템이 설치된 PC)은 공인인증서를 설치해야 하고, 유효기간 경과시 공인인증서를 갱신해야 하는 번거로움이 있다.In addition, in the current medical information exchange system, medical records are encrypted and delivered using an official certificate, so terminals of each medical institution that share or search medical records (eg, PCs with an EMR system) must install an official certificate. There is a hassle to renew the certificate after the expiration date.

이에 진료정보 교류 시스템은 공인인증서의 설치, 갱신의 불편함 없이 편리하게 진료정보를 교환할 수 있도록 할 필요가 있다.Therefore, the medical information exchange system needs to be able to exchange medical information conveniently without the inconvenience of installing and renewing the certificate.

또한 기존에는 환자가 자신의 진료기록을 의료기관에 신청해서 우편 등으로 발급 받아 조회하거나, 타 의료기관, 보험사, 입사 예정의 회사 등에 제출해야 하므로, 환자가 온라인 진료정보 교류 시스템을 활용하는 데 제약과 불편함이 있으므로, 환자가 사용 중인 건강 관리용 어플리케이션 등을 통해 자신의 모든 진료기록에 손쉽게 접근해서, 조회 또는 진료기록의 제출을 이용할 수 있게 할 필요가 있다. 이때 진료기록의 제출 형태를 원본으로 제출할지 일부 항목을 숨기거나 익명 처리해서 제출할지를 환자 스스로 지정할 수 있게 할 필요가 있다.In addition, in the past, patients have to submit their medical records to medical institutions and receive them by mail, etc., or submit them to other medical institutions, insurance companies, or companies that are planning to join companies. Therefore, it is necessary for the patient to easily access all his / her medical records through the health care application being used, and to use the inquiry or the submission of medical records. At this time, it is necessary to allow the patient to designate whether to submit the medical record submission form as the original or hide some items or submit them anonymously.

이에 따라, 다수의 의료기관에서 작성된 진료정보를, 환자를 중심으로, 간편하면서도 안전하게 온라인 교류할 수 있게 지원하는 기술이 요구되고 있다.Accordingly, there is a demand for a technology that enables simple and safe online exchange of medical information created by a large number of medical institutions, centering on patients.

본 발명의 실시예는 환자에 관해 작성된 진료기록을 다수의 의료기관으로부터 수집하여 블록체인 기반의 PHR 플랫폼 서버에 유지하고, 블록체인을 활용하여 PHR 플랫폼 서버에 유지된 진료기록의 안전한 조회 서비스를 지원하는 것을 목적으로 한다.An embodiment of the present invention collects the medical records written about the patient from a plurality of medical institutions to maintain on the blockchain-based PHR platform server, and supports a secure inquiry service of the medical records maintained on the PHR platform server using the blockchain For the purpose of

본 발명의 실시예는 다중 분산 저장소에 유지되는 진료기록의 저장위치값을 블록화 하여 블록체인에 연결하고, 조회가 요청된 진료기록의 저장위치값을 블록체인으로부터 확인하여 EMR 단말에 제공 함으로써, 다수의 의료기관 간 진료기록의 교류 시 높은 보안성을 보장하는 것을 목적으로 한다.Embodiment of the present invention by blocking the storage location value of the medical record maintained in the multi-distributed storage to connect to the blockchain, by checking the storage location value of the medical record requested from the block chain to provide to the EMR terminal, It is aimed at ensuring high security in the exchange of medical records between medical institutions.

또한, 본 발명의 실시예는 환자에 의해 공개로 설정된 EMR 단말에 한해 환자 자신의 진료기록의 조회를 허용 함으로써, 의료기관 간에 진료기록의 교류가, 환자 중심으로 실시되도록 하는 것을 다른 목적으로 한다.In addition, an embodiment of the present invention is another object to allow the exchange of medical records between the medical institutions, the patient center by allowing the inquiry of the patient's own medical records only to the EMR terminal set to be open by the patient.

또한, 본 발명의 실시예는 환자 단말의 PHR 어플리케이션을 통해 수집한 환자의 다양한 건강데이터(예, 라이프 로그, 걸음수, 이동거리, 처방전 등)를 블록체인 기반의 PHR 플랫폼 서버에 유지하고, 조회를 요청하는 EMR 단말로 환자의 건강데이터를 제공 함으로써, 건강데이터를 활용해 환자의 상태를 종합적으로 파악할 수 있게 지원하는 것을 다른 목적으로 한다.In addition, the embodiment of the present invention maintains various health data (eg, life log, steps, distance, prescription, etc.) of the patient collected through the PHR application of the patient terminal to the blockchain-based PHR platform server, and lookup By providing the patient's health data to the EMR terminal requesting the, it is another object to support the comprehensive understanding of the patient's condition by using the health data.

또한, 본 발명의 실시예는 조회 요청을 통해 환자 자신의 진료기록 및 건강데이터를 PHR 어플리케이션 상에서 언제든지 손쉽게 열람할 수 있게 하는 것을 다른 목적으로 한다.In addition, an embodiment of the present invention is another object to make it easy to view the patient's own medical records and health data at any time on the PHR application through the inquiry request.

본 발명의 일실시예에 따른 블록체인 기반의 PHR 플랫폼 서버 운영 방법은, EMR 단말로부터 작성된 제1 진료기록문서를 수집하여, 다중 분산 저장소에 유지하는 단계와, 상기 제1 진료기록문서 내 환자정보를 추출하여, 상기 제1 진료기록문서에 대한 헤더로서 레지스트리에 기록하는 단계와, 블록체인 코어를 기반으로, 상기 다중 분산 저장소에서의 상기 제1 진료기록문서의 저장위치값과, 상기 헤더에 대한 해쉬값을 블록화 하여, 블록체인으로 연결하는 단계, 및 조회 요청의 발생에 연동하여, 다수의 해쉬값을 나열한 헤더 리스트 중 선택되는 해쉬값에 의해 지정되는 블록을, 상기 블록체인으로부터 검색하고, 검색된 상기 블록을 구성하는 저장위치값을, 상기 조회 요청을 발생한 EMR 단말로 제공하는 단계를 포함한다.The method for operating a blockchain-based PHR platform server according to an embodiment of the present invention includes collecting first medical record documents created from an EMR terminal and maintaining them in multiple distributed storages, and patient information in the first medical record documents. Extracting and recording the data as a header for the first medical record document in a registry, based on a blockchain core, a storage location value of the first medical record document in the multi-distributed storage, and Blocking hash values, connecting them to the blockchain, and retrieving a block designated by a hash value selected from a header list that lists a plurality of hash values in association with the occurrence of an inquiry request from the blockchain. And providing the storage location value constituting the block to the generated EMR terminal.

본 발명의 다른 실시예에 따른 블록체인 기반의 PHR 플랫폼 서버 운영 방법은, 일정 주기로 다중 분산 저장소에 유지되는 진료기록문서로부터, 헤더로서 추출한 환자정보에, 해쉬 함수를 적용하여 제1 해쉬값으로 변환하는 단계와, 상기 제1 해쉬값을 나열해 작성한 헤더 리스트를, 조회 요청을 발생하는 EMR 단말에 전달하는 단계와, 상기 헤더 리스트에서 선택되는 선택 해쉬값을 이용하여, 상기 환자정보와 관련해서 생성된 블록을, 블록체인으로부터 검색하는 단계, 및 상기 블록 내에 포함되는 저장위치값에 의해 상기 다중 분산 저장소로부터 식별되는 제3 진료기록문서를, 상기 EMR 단말에 디스플레이 하는 단계를 포함한다.According to another embodiment of the present invention, a blockchain-based PHR platform server operating method converts a patient function extracted as a header into a first hash value from patient records extracted as headers from medical records maintained in multiple distributed storages at regular intervals. Generating a header list by listing the first hash value, transmitting the header list created to the EMR terminal generating the inquiry request, and using a selection hash value selected from the header list. Retrieving the selected block from the blockchain, and displaying, on the EMR terminal, a third medical record document identified from the multiple distributed storages by a storage location value included in the block.

또한, 본 발명의 일실시예에 따른 블록체인 기반의 PHR 플랫폼 서버 운영 시스템은, EMR 단말로부터 작성된 제1 진료기록문서를 수집하여, 다중 분산 저장소에 유지하고, 상기 제1 진료기록문서 내 환자정보를 추출하여, 상기 제1 진료기록문서에 대한 헤더로서 레지스트리에 기록하는 기록부와, 블록체인 코어를 기반으로, 상기 다중 분산 저장소에서의 상기 제1 진료기록문서의 저장위치값과, 상기 헤더에 대한 해쉬값을 블록화 하여, 블록체인으로 연결하는 블록화부, 및 조회 요청의 발생에 연동하여, 다수의 해쉬값을 나열한 헤더 리스트 중 선택되는 해쉬값에 의해 지정되는 블록을, 상기 블록체인으로부터 검색하고, 검색된 상기 블록을 구성하는 저장위치값을, 상기 조회 요청을 발생한 EMR 단말로 제공하는 처리부를 포함한다.In addition, the blockchain-based PHR platform server operating system according to an embodiment of the present invention, collects the first medical record document created from the EMR terminal, and maintains it in multiple distributed storage, the patient information in the first medical record document Extracts a recording unit for recording in the registry as a header for the first medical record document, and a storage location value of the first medical record document in the multi-distributed storage based on a blockchain core, and A block block unit for blocking hash values and connecting them to the block chain, and a block designated by a hash value selected from a header list in which a plurality of hash values are listed in association with occurrence of an inquiry request, searching from the block chain; And a processing unit which provides the storage location value constituting the retrieved block to the EMR terminal which generated the inquiry request.

또한, 본 발명의 다른 실시예에 따른 블록체인 기반의 PHR 플랫폼 서버 운영 시스템은, 일정 주기로 다중 분산 저장소에 유지되는 진료기록문서로부터, 헤더로서 추출한 환자정보에, 해쉬 함수를 적용하여 제1 해쉬값으로 변환하는 변환부와, 상기 제1 해쉬값을 나열해 작성한 헤더 리스트를, 조회 요청을 발생하는 EMR 단말에 전달하는 전달부, 및 상기 헤더 리스트에서 선택되는 선택 해쉬값을 이용하여, 상기 환자정보와 관련해서 생성된 블록을, 블록체인으로부터 검색하고, 상기 블록 내에 포함되는 저장위치값에 의해 상기 다중 분산 저장소로부터 식별되는 제3 진료기록문서를, 상기 EMR 단말에 디스플레이 하는 처리부를 포함한다.In addition, the blockchain-based PHR platform server operating system according to another embodiment of the present invention, the first hash value by applying a hash function to the patient information extracted as a header from the medical record document maintained in multiple distributed storage at regular intervals The patient information by using a conversion unit for converting the data into a header, a delivery unit for transmitting the header list created by listing the first hash value to an EMR terminal generating an inquiry request, and a selection hash value selected from the header list. And a processing unit for retrieving a block generated in association with the blockchain, and displaying, on the EMR terminal, a third medical record document identified from the multiple distributed storages by a storage location value included in the block.

본 발명의 일실시예에 따르면, 진료기록을 구성하는 헤더와 바디를, PHR 플랫폼 서버 내 레지스트리와 다중 분산 저장소에 각각 구분해서 저장하고, 저장위치값을 블록화하여 블록체인에 연결 함으로써, 환자정보와 진료기록을 함께 보관하는 기존의 중앙집중식 진료정보교류 시스템에 비해, 정보의 유출 위험을 큰폭으로 낮출 수 있어 높은 보안성을 유지할 수 있다. According to an embodiment of the present invention, the header and the body constituting the medical record are stored separately in the registry and multiple distributed storage in the PHR platform server, and the storage location value is blocked and connected to the blockchain, thereby providing patient information and Compared with the existing centralized medical information exchange system that keeps medical records together, the risk of information leakage can be greatly reduced, thus maintaining high security.

또한 본 발명의 일실시예에 따르면, 상기 저장위치값을 이용해서 식별한 진료기록의 위변조 여부를, 진료기록을 구성하는 헤더와 바디 각각에 해쉬 함수를 적용한 해쉬값의 비교를 통해 손쉽게 확인할 수 있다.In addition, according to an embodiment of the present invention, whether or not the forgery of the medical record identified using the storage location value can be easily confirmed by comparing the hash value to which a hash function is applied to each of the header and the body constituting the medical record. .

또한 본 발명의 일실시예에 따르면, EMR 단말에서 진료기록의 보관을 위해 별도의 공인인증서를 설치할 필요 없이, 블록체인이라는 간편한 암호화 방식을 활용하여, 환자의 진료기록 및 건강데이터를 안전하게 저장하거나 조회할 수 있다.In addition, according to an embodiment of the present invention, without the need to install a separate certificate for the storage of medical records in the EMR terminal, by utilizing a simple encryption method called blockchain, the patient's medical records and health data safely stored or retrieved can do.

도 1은 본 발명의 일실시예에 따른 블록체인 기반의 PHR 플랫폼 서버 운영 시스템의 구성을 도시한 블록도이다.
도 2는 본 발명의 다른 실시예에 따른 블록체인 기반의 PHR 플랫폼 서버 운영 시스템을 도시한 구성도이다.
도 3은 본 발명의 실시예들에 따른 PHR 플랫폼 서버 운영 시스템에서, 진료기록문서의 일례를 도시한 도면이다.
도 4a, 4b는 본 발명의 실시예들에 따른 PHR 플랫폼 서버 운영 시스템에서, 레지스트리에 기록되는 데이터 필드의 일례를 도시한 표이다.
도 5는 본 발명의 다른 실시예에 따른 PHR 플랫폼 서버 운영 시스템에서, 진료기록문서를 저장하는 과정을 도시한 도면이다.
도 6은 본 발명의 다른 실시예에 따른 PHR 플랫폼 서버 운영 시스템에서, 조회 요청에 따라 EMR 단말에 진료기록문서를 제공하는 과정을 도시한 도면이다.
도 7은 본 발명의 다른 실시예에 따른 PHR 플랫폼 서버 운영 시스템에서, 조회 요청에 따라 환자 단말에 진료기록문서를 제공하는 과정을 도시한 도면이다.
도 8은 본 발명의 일실시예에 따른 블록체인 기반의 PHR 플랫폼 서버 운영 방법의 순서를 도시한 도면이다.
1 is a block diagram showing the configuration of a blockchain-based PHR platform server operating system according to an embodiment of the present invention.
2 is a block diagram showing a blockchain-based PHR platform server operating system according to another embodiment of the present invention.
3 is a diagram illustrating an example of a medical record document in the PHR platform server operating system according to embodiments of the present invention.
4A and 4B are tables showing an example of data fields recorded in a registry in a PHR platform server operating system according to embodiments of the present invention.
5 is a diagram illustrating a process of storing a medical record document in the PHR platform server operating system according to another embodiment of the present invention.
6 is a diagram illustrating a process of providing a medical record document to an EMR terminal according to an inquiry request in a PHR platform server operating system according to another embodiment of the present invention.
7 is a diagram illustrating a process of providing a medical record document to a patient terminal according to an inquiry request in the PHR platform server operating system according to another embodiment of the present invention.
8 is a diagram illustrating a procedure of a blockchain-based PHR platform server operating method according to an embodiment of the present invention.

이하에서, 첨부된 도면을 참조하여 실시예들을 상세하게 설명한다. 그러나, 실시예들에는 다양한 변경이 가해질 수 있어서 특허출원의 권리 범위가 이러한 실시예들에 의해 제한되거나 한정되는 것은 아니다. 실시예들에 대한 모든 변경, 균등물 내지 대체물이 권리 범위에 포함되는 것으로 이해되어야 한다.Hereinafter, exemplary embodiments will be described in detail with reference to the accompanying drawings. However, various changes may be made to the embodiments so that the scope of the patent application is not limited or limited by these embodiments. It is to be understood that all changes, equivalents, and substitutes for the embodiments are included in the scope of rights.

실시예에서 사용한 용어는 단지 설명을 목적으로 사용된 것으로, 한정하려는 의도로 해석되어서는 안된다. 단수의 표현은 문맥상 명백하게 다르게 뜻하지 않는 한, 복수의 표현을 포함한다. 본 명세서에서, "포함하다" 또는 "가지다" 등의 용어는 명세서 상에 기재된 특징, 숫자, 단계, 동작, 구성요소, 부품 또는 이들을 조합한 것이 존재함을 지정하려는 것이지, 하나 또는 그 이상의 다른 특징들이나 숫자, 단계, 동작, 구성요소, 부품 또는 이들을 조합한 것들의 존재 또는 부가 가능성을 미리 배제하지 않는 것으로 이해되어야 한다.The terminology used herein is for the purpose of description and should not be construed as limiting. Singular expressions include plural expressions unless the context clearly indicates otherwise. In this specification, terms such as "comprise" or "have" are intended to indicate that there is a feature, number, step, action, component, part, or combination thereof described on the specification, one or more other features. It is to be understood that the present invention does not exclude the possibility of the presence or the addition of numbers, steps, operations, components, components, or a combination thereof.

다르게 정의되지 않는 한, 기술적이거나 과학적인 용어를 포함해서 여기서 사용되는 모든 용어들은 실시예가 속하는 기술 분야에서 통상의 지식을 가진 자에 의해 일반적으로 이해되는 것과 동일한 의미를 가지고 있다. 일반적으로 사용되는 사전에 정의되어 있는 것과 같은 용어들은 관련 기술의 문맥 상 가지는 의미와 일치하는 의미를 가지는 것으로 해석되어야 하며, 본 출원에서 명백하게 정의하지 않는 한, 이상적이거나 과도하게 형식적인 의미로 해석되지 않는다.Unless defined otherwise, all terms used herein, including technical or scientific terms, have the same meaning as commonly understood by one of ordinary skill in the art. Terms such as those defined in the commonly used dictionaries should be construed as having meanings consistent with the meanings in the context of the related art, and shall not be construed in ideal or excessively formal meanings unless expressly defined in this application. Do not.

또한, 첨부 도면을 참조하여 설명함에 있어, 도면 부호에 관계없이 동일한 구성 요소는 동일한 참조부호를 부여하고 이에 대한 중복되는 설명은 생략하기로 한다. 실시예를 설명함에 있어서 관련된 공지 기술에 대한 구체적인 설명이 실시예의 요지를 불필요하게 흐릴 수 있다고 판단되는 경우 그 상세한 설명을 생략한다.In addition, in the description with reference to the accompanying drawings, the same components will be given the same reference numerals regardless of the reference numerals and duplicate description thereof will be omitted. In the following description of the embodiment, if it is determined that the detailed description of the related known technology may unnecessarily obscure the gist of the embodiment, the detailed description thereof will be omitted.

본 발명의 블록체인(Block Chain) 기반의 PHR(Personal Health Record) 플랫폼 서버 운영 시스템은, 의료기관의 EMR과 연계하여, 블록체인 기반에서 환자 단말의 PHR 어플리케이션을 통해, 환자의 PHR 정보의 조회, 제출 서비스를 제공할 수 있다.Blockchain-based Personal Health Record (PHR) platform server operating system of the present invention, in connection with the EMR of the medical institution, through the PHR application of the patient terminal on the blockchain, inquiry, submission of the PHR information of the patient Can provide services.

환자는 PHR 어플리케이션을 통해 의료기관에서 진료 받은 정보와, 자신의 스마트폰으로 수집한 활동량, 혈압, 혈당, 식단 정보 등의 라이프 로그(건강데이터)와 같은 PHR 정보를 조회할 수 있고, 이러한 정보들에 대한 공개 여부를 설정할 수 있다.Through the PHR application, patients can view PHR information such as information received from medical institutions and lifelogs (health data) such as activity volume, blood pressure, blood sugar, and diet information collected by their smartphones. You can set the visibility of the

도 1은 본 발명의 일실시예에 따른 블록체인 기반의 PHR 플랫폼 서버 운영 시스템의 구성을 도시한 블록도이다.1 is a block diagram showing the configuration of a blockchain-based PHR platform server operating system according to an embodiment of the present invention.

도 1을 참조하면, 본 발명의 일실시예에 따른 블록체인 기반의 PHR 플랫폼 서버 운영 시스템(100)은, 기록부(110), 블록화부(120) 및 처리부(130)를 포함하여 구성할 수 있다. 또한, 실시예에 따라 PHR 플랫폼 서버 운영 시스템(100)은, 변환부(140), 전달부(150), 확인부(160), 출력부(170), 레지스트리(101) 및 다중 분산 저장소(102)를 각각 추가하여 구성할 수 있다.Referring to FIG. 1, a blockchain-based PHR platform server operating system 100 according to an embodiment of the present invention may include a recording unit 110, a blocker 120, and a processor 130. . In addition, according to an embodiment, the PHR platform server operating system 100 may include a conversion unit 140, a delivery unit 150, a confirmation unit 160, an output unit 170, a registry 101, and multiple distributed repositories 102. ) Can be added separately.

기록부(110)는 일정 주기로 EMR 단말로부터 작성된 제1 진료기록문서를 수집하여 다중 분산 저장소(102)에 유지한다.The recorder 110 collects the first medical record document created from the EMR terminal at regular intervals and maintains it in the multi-distributed storage 102.

이와 함께, 기록부(110)는 상기 제1 진료기록문서 내 환자정보를 추출하여, 상기 제1 진료기록문서에 대한 헤더로서 레지스트리(101)에 기록한다.In addition, the recording unit 110 extracts the patient information in the first medical record document, and records it in the registry 101 as a header for the first medical record document.

일례로, 기록부(110)는 EMR 단말에서 진료기록문서의 저장 요청이 발생되면, 상기 저장 요청 내 의료기관 식별정보(예, '요양기관번호', 'EMR ID')가 인증 처리 됨에 따라 부여되는 액세스 토큰을 사용해서 EMR 단말로부터 전송되는 제1 진료기록문서를, 수집할 수 있다.For example, the recorder 110, when a request for storing a medical record document is generated in the EMR terminal, access granted to the medical institution identification information (eg, 'care institution number', 'EMR ID') in the storage request is authenticated. The token may be used to collect the first medical record document transmitted from the EMR terminal.

기록부(110)는 상기 헤더를, 다중 분산 저장소(102)와 별도로 마련된 레지스트리(101)에 기록하고, 제1 진료기록문서에서 상기 헤더를 제외한 진단내역, 담당의 소견, 주의사항, 처방내역, 검사기록, 처치기록, 수술기록 및 접종기록 중 적어도 하나의 데이터를, 바디로서 추출하여, 다중 분산 저장소(102)에 유지할 수 있다. 즉 기록부(110)는 수집된 제1 진료기록문서의 환자정보와, 실제 진료 데이터를 구분해서 보관하여, 보안성을 보다 강화할 수 있다.The recorder 110 records the header in the registry 101 provided separately from the multi-distributed storage 102, and diagnoses the diagnosis, findings, precautions, prescriptions, and tests of the first medical record document except the header. At least one data of the record, the treatment record, the operation record, and the inoculation record may be extracted as a body and maintained in the multiple distributed reservoirs 102. That is, the recording unit 110 may further classify and store the patient information of the collected first medical record document and the actual medical data, thereby further securing the security.

이때 기록부(110)는 다중 분산 저장소(102)에 유지된 제1 진료기록문서(바디)에 대한 인덱스로서, 제1 진료기록문서의 헤더가 아닌 새로운 문서ID를 할당 함으로써, 레지스트리(101)와 다중 분산 저장소(102)가 모두 해킹되더라도, 다중 분산 저장소(102)에 유지된 데이터가, 어느 환자의 진료기록에 해당하는지 연관성을 알 수 없게 하여 보안성을 높일 수 있다.At this time, the recording unit 110 is an index for the first medical record document (body) maintained in the multi-distributed storage 102, and by assigning a new document ID instead of the header of the first medical record document, Even if the distributed storage 102 is all hacked, it is possible to increase the security by not knowing the association between the data held in the multiple distributed storage 102 corresponds to the patient's medical record.

또한, 기록부(110)는 제1 진료기록문서에서 추출한 바디를, 다중 분산 저장소(102) 중 임의로 선택된 어느 하나의 분산 저장소에 나눠서 유지 함으로써, 한 곳의 분산 저장소가 해킹이 되더라도 환자의 모든 진료기록이 유출되는 것을 방지할 수 있다.In addition, the recorder 110 divides and maintains the body extracted from the first medical record document in any one of the multi-distributed storage 102 distributed storage randomly, so that even if one distributed storage is hacked, all the medical records of the patient This can be prevented from leaking.

실시예에 따라, PHR 플랫폼 서버 운영 시스템(100)은, 변환부(140)를 더 포함하여 구성할 수 있다.According to an embodiment, the PHR platform server operating system 100 may further include a conversion unit 140.

변환부(140)는 상기 제1 진료기록문서에서 추출한 헤더에, 해쉬 함수를 적용하여 제1 해쉬값으로 변환한다. 또한, 변환부(140)는 상기 제1 진료기록문서에서 추출한 바디에, 해쉬 함수를 적용해서 제2 해쉬값으로 변환한다.The conversion unit 140 converts the first hash value by applying a hash function to the header extracted from the first medical record document. In addition, the conversion unit 140 converts the second hash value by applying a hash function to the body extracted from the first medical record document.

상기 해쉬 함수는, 하나의 문자열을, 이를 상징하는 다른 값이나 키로 변환하는 함수로서, 문자열의 길이를 줄이거나 문자열의 내용을 감추기 위해 사용될 수 있다.The hash function is a function that converts one string into another value or key that symbolizes the string, and may be used to reduce the length of the string or to hide the contents of the string.

기록부(110)는 상기 헤더와 상기 제1 해쉬값을, 환자식별키에 연관시켜 레지스트리(101)에 기록할 수 있다. 상기 환자식별키는 환자정보를 조합한 문자열에 해쉬 함수를 적용한 키 값일 수 있다.The recording unit 110 may record the header and the first hash value in the registry 101 in association with the patient identification key. The patient identification key may be a key value to which a hash function is applied to a string combining patient information.

이때, 기록부(110)는 상기 헤더를 레지스트리(101)에 기록하지 않고 후술하는 블록화부(120)를 통해 블록화 되도록 할 수 있다. 이 경우 레지스트리(101)는 상기 제1 해쉬값 만이 환자식별키에 연관되어 기록되며, 상기 헤더(환자 정보)를 자체적으로 보관하지 않게 되므로, 보안성을 높일 수 있게 된다.In this case, the recording unit 110 may block the header through the blocker 120 to be described later without recording the header in the registry 101. In this case, the registry 101 records only the first hash value in association with the patient identification key, and does not store the header (patient information) by itself, thereby increasing security.

또한 PHR 플랫폼 서버 운영 시스템(100)은 다중 분산 저장소(102)에 유지된 제1 진료기록문서(바디)의 저장위치값을 블록화부(120)를 통해 블록화 하여 블록체인에 저장되도록 함으로써, 보안성을 높일 수 있다.In addition, the PHR platform server operating system 100 by blocking the storage location value of the first medical record document (body) maintained in the multi-distributed storage 102 through the blocker 120 to be stored in the block chain, security Can increase.

블록화부(120)는 블록체인 코어를 기반으로, 다중 분산 저장소(102)에서의 상기 제1 진료기록문서의 저장위치값과, 상기 헤더에 대한 제1 해쉬값을 블록화 하여, 블록체인으로 연결한다.The blocker 120 blocks and stores the storage location value of the first medical record document and the first hash value of the header in the multi-distributed storage 102 based on the blockchain core and connects the blockchain to the blockchain. .

여기서 상기 저장위치값은, 제1 진료기록문서(즉 바디)가 다중 분산 저장소(102)에 유지됨에 따라 할당되는 상기 문서ID와, 제1 진료기록문서가 유지된 분산 저장소의 접속 URL을 포함할 수 있다.Here, the storage location value may include the document ID assigned as the first medical record document (that is, the body) is maintained in the multiple distributed storage 102 and the access URL of the distributed storage where the first medical record document is maintained. Can be.

블록화부(120)는 블록체인 코어를 기반으로 상기 저장위치값과, 상기 헤더의 제1 해쉬값 및 상기 바디의 제2 해쉬값을 포함하는 블록을 생성하고, 생성한 블록을 각 노드로 배포해 동기화 하여 이전 주기에 수집한 제2 진료기록문서로 구성한 블록체인에 연결(추가)할 수 있다.The blocker 120 generates a block including the storage location value, the first hash value of the header, and the second hash value of the body based on a blockchain core, and distributes the generated block to each node. It can be synchronized and connected (added) to the blockchain composed of the second medical records collected in the previous cycle.

이때, 블록화부(120)는 상기 헤더가, 다중 분산 저장소(102)와 별도로 마련된 레지스트리(101)에 유지되지 않는 경우, 상기 헤더를 더 포함하여 상기 블록을 생성할 수도 있다. 이 경우, 레지스트리(101)에는 상기 헤더의 제1 해쉬값만 기록되므로, 상기 헤더(환자 정보)의 해킹 위험이 없어 보안성을 보다 높일 수 있다.In this case, when the header is not maintained in the registry 101 provided separately from the multi-distributed storage 102, the blocker 120 may further include the header to generate the block. In this case, since only the first hash value of the header is recorded in the registry 101, there is no risk of hacking of the header (patient information), thereby improving security.

실시예에 따라, 블록화부(120)는 상기 저장위치값을, AWS(Amazon Web Service)의 KMS(Key Management Service)를 이용하여 생성된 복수의 데이터 중 제1 데이터키('평문 데이터키')로 암호화 하고, 암호화된 저장위치값과, 복호화에 사용될 제2 데이터키('암호화된 데이터키'), 헤더의 제1 해쉬값 및 바디의 제2 해쉬값을 포함하는 블록을 생성할 수도 있다.According to an embodiment, the blocker 120 may use the storage location value as a first data key ('plain data key') of a plurality of data generated using a key management service (KMS) of Amazon Web Service (AWS). And a block including an encrypted storage location value, a second data key ('encrypted data key') to be used for decryption, a first hash value of the header, and a second hash value of the body.

이 경우, 각 EMR 단말에서는 암호화를 위해 별도의 공인 인증서를 설치할 필요 없이, 블록체인을 기반으로 안전하면서도 간편하게 진료기록문서의 저장을 실행할 수 있다.In this case, each EMR terminal can safely and easily store the medical record document based on the blockchain without installing a separate authorized certificate for encryption.

처리부(130)는 조회 요청의 발생에 연동하여, 다수의 해쉬값을 나열한 헤더 리스트 중 선택되는 해쉬값에 의해 지정되는 블록을, 상기 블록체인으로부터 검색하고, 검색된 상기 블록을 구성하는 저장위치값을, 상기 조회 요청을 발생한 EMR 단말로 제공한다.In response to the occurrence of the inquiry request, the processor 130 searches for the block designated by the hash value selected from a header list that lists a plurality of hash values from the block chain, and retrieves a storage location value constituting the retrieved block. It provides the inquiry request to the generated EMR terminal.

일례로 EMR 단말은 의료기관 식별정보(예, '요양기관번호', 'EMR ID')를 포함해서 조회 요청을 발생하고, 처리부(130)는 상기 의료기관 식별정보를 인증 처리하여 EMR 단말에 액세스 토큰을 부여할 수 있다. EMR 단말은 액세스 토큰을 사용하여 진료기록문서를 조회하려는 환자의 진료기록 리스트를 요청할 수 있다.For example, the EMR terminal generates an inquiry request including medical institution identification information (eg, 'nursing institution number' and 'EMR ID'), and the processor 130 authenticates the medical institution identification information to provide an access token to the EMR terminal. It can be given. The EMR terminal may request a medical record list of a patient who wants to inquire the medical record document using the access token.

실시예에 따라, PHR 플랫폼 서버 운영 시스템(100)은 특정 환자에 관해 유지된 진료기록문서의 리스트를 조회 요청을 발생한EMR 단말로 전달하여, 진료기록문서를 작성한 의료기관에 제한되지 않고 환자의 모든 진료기록문서 중에서 조회하려는 진료기록문서를 선택할 수 있도록 하기 위해, 전달부(150)를 더 포함하여 구성할 수 있다.According to an embodiment, the PHR platform server operating system 100 delivers a list of medical records maintained for a specific patient to the EMR terminal that generated the inquiry request, and is not limited to the medical institution that created the medical records. In order to be able to select a medical record document to be searched from the record document, it may be configured to further include a delivery unit 150.

변환부(140)는 다중 분산 저장소(102)에 기 유지되어 있는 제2 진료기록문서로부터 추출된 환자정보에, 해쉬 함수를 적용하여 해쉬값으로 변환한다. 이 경우, 해쉬값의 리스트는 환자의 리스트를 의미할 수 있다.The conversion unit 140 converts the hash value by applying a hash function to the patient information extracted from the second medical record document previously held in the multiple distributed storage 102. In this case, the list of hash values may mean a list of patients.

이때, 변환부(140)는 진료기록문서가 작성된 요양기관을 식별할 수 있는 요양기관정보와 진료명 및 작성일시 등의 데이터 필드를 헤더로서 더 추출하여 해쉬 함수를 적용한 해쉬값으로 변환할 수 있다. 이 경우 해쉬값의 리스트는 환자 별 진료기록문서의 리스트를 의미할 수도 있다.In this case, the conversion unit 140 may further extract data fields, such as medical institution information and treatment name and creation date and time, which can identify a nursing institution for which the medical record document is created, as a header, and convert the data field into a hash value to which a hash function is applied. . In this case, the list of hash values may mean a list of medical record documents for each patient.

전달부(150)는 다수의 해쉬값을 나열한 상기 헤더 리스트를, 상기 EMR 단말에 전달한다.The delivery unit 150 delivers the header list that lists a plurality of hash values to the EMR terminal.

즉 전달부(150)는 상기 헤더 리스트로서, 조회 요청이 발생한 시점까지 다중 분산 저장소(102)에 유지된 특정 환자의 모든 진료기록문서(제1 및 제2 진료기록문서)의 리스트를, 전달할 수 있다.That is, the delivery unit 150 may deliver, as the header list, a list of all medical record documents (first and second medical record documents) of a specific patient maintained in the multi-distributed storage 102 until the inquiry request occurs. have.

처리부(130)는 상기 헤더 리스트에서 선택되는 해쉬값을 포함하는 블록을, 블록체인으로부터 검색하고, 검색된 상기 블록을 구성하는 저장위치값에 의해 다중 분산 저장소(102)로부터 식별되는 진료기록문서를, EMR 단말에 디스플레이 할 수 있다.The processor 130 retrieves a block including a hash value selected from the header list from the blockchain, and retrieves a medical record document identified from the multi-distributed storage 102 by a storage location value constituting the retrieved block. It can be displayed on the EMR terminal.

이때, 블록화부(120)에 의해, 상기 저장위치값이, AWS(Amazon Web Service)의 KMS(Key Management Service)를 이용하여 생성된 복수의 데이터키 중 제1 데이터키로 암호화 되어 상기 블록 내에 포함된 경우, 처리부(130)는 상기 블록 내에 더 포함되는, 상기 복수의 데이터키 중 제2 데이터키를 이용하여 복호화 한 상기 저장위치값을 EMR 단말로 제공(반환)할 수 있다.In this case, the storage unit 120, the storage location value is encrypted with a first data key of a plurality of data keys generated using a Key Management Service (KMS) of Amazon Web Service (AWS) is included in the block In this case, the processor 130 may provide (return) the storage location value decoded using the second data key of the plurality of data keys, which is further included in the block, to the EMR terminal.

이에 따라, EMR 단말에서는 상기 저장위치값에 따라 다중 분산 저장소(102) 내 조회하려는 진료기록문서에 접근해서 디스플레이 할 수 있다.Accordingly, the EMR terminal can access and display the medical record document to be queried in the multiple distributed storage 102 according to the storage location value.

일례로 변환부(140)에 의해 진료기록문서 내 요양기관정보 또는 서식종별정보가 상기 헤더로서 더 추출되어 환자정보와 함께 해쉬값으로 변환되는 경우, 처리부(130)는 상기 환자정보와 관련하여 생성된 블록 중, 선택된 해쉬값에 따른 특정 요양기관 또는 특정 서식과 더 관련되는 블록을 선별하고, 선별한 블록 내에 포함되는 진료기록문서의 저장위치값을, EMR 단말에 제공할 수 있다.For example, when the medical institution information or form type information in the medical record document is further extracted as the header and converted into a hash value together with the patient information by the conversion unit 140, the processing unit 130 generates the information related to the patient information. Among the blocks, the block further associated with the specific care institution or the specific format according to the selected hash value may be selected, and the storage position value of the medical record document included in the selected block may be provided to the EMR terminal.

이를 통해, 처리부(130)는 같은 환자의 진료기록문서 중에서도, EMR 단말에 의해 선택되는 특정 의료기관에서 작성, 발신 또는 수신된 진료기록문서 또는 특정 종류(예, 진료의뢰서 등)의 진료기록문서를 EMR 단말에 제공할 수 있다.Through this, the processor 130 EMR among the medical record documents of the same patient, the medical record document created or sent or received at a specific medical institution selected by the EMR terminal or a medical record document of a specific type (eg, a medical request, etc.) It can be provided to the terminal.

실시예에 따라, PHR 플랫폼 서버 운영 시스템(100)은 확인부(160)를 더 포함하여 구성할 수도 있다.According to an embodiment, the PHR platform server operating system 100 may further include a check unit 160.

확인부(160)는 상기 EMR 단말로의 디스플레이 전에, 진료기록문서에 대한 위변조 여부를 확인한다.Confirmation unit 160 confirms whether the forgery for the medical record document, before displaying to the EMR terminal.

일례로, 처리부(130)는 상기 저장위치값과 함께, 상기 검색된 블록으로부터 확인한 상기 바디의 해쉬값과, 레지스트리(101) 또는 상기 검색된 블록으로부터 확인한 상기 헤더를 EMR 단말로 제공할 수 있다.For example, the processor 130 may provide the EMR terminal with the storage location value, the hash value of the body identified from the searched block, and the header identified from the registry 101 or the searched block.

확인부(160)는 상기 저장위치값에 따라 확인한 바디에, 해쉬 함수를 적용한 해쉬값이, 상기 바디의 해쉬값과 일치하는지 확인하고, 상기 헤더에 해쉬 함수를 적용한 해쉬값이, 상기 헤더 리스트에서 선택한 해쉬값과 일치하는지를 확인할 수 있다.The identification unit 160 checks whether the hash value to which the hash function is applied to the body checked according to the storage location value matches the hash value of the body, and the hash value to which the hash function is applied to the header is determined from the header list. You can check whether it matches the hash value you selected.

처리부(130)는 일치하는 경우, 상기 헤더와 상기 바디를 조합한 진료기록문서를 위조 또는 변조되지 않은 것으로 확인하여, 상기 진료기록문서를 EMR 단말에 디스플레이 할 수 있다.The processor 130 may determine that the medical record document combining the header and the body is not forged or tampered with, and display the medical record document on the EMR terminal.

실시예에 따라, PHR 플랫폼 서버 운영 시스템(100)은 환자 스스로 자신의 진료기록문서의 조회를 허용할 EMR 단말 또는 환자 단말을 지정할 수 있도록, 출력부(170)를 더 추가하여 구성할 수 있다.According to an embodiment, the PHR platform server operating system 100 may further configure the output unit 170 so that the patient can designate the EMR terminal or the patient terminal to allow the inquiry of his or her medical records.

기록부(110)는 환자의 단말에 기록된 처방전 및 라이프 로그 중 적어도 하나의 건강데이터를, 상기 환자의 단말에 설치된 PHR 어플리케이션을 통해 일정 주기로 수집하여 다중 분산 저장소(102)에 더 유지할 수 있다.The recorder 110 may collect the health data of at least one of the prescription and the life log recorded in the terminal of the patient at regular intervals through a PHR application installed in the terminal of the patient, and may further maintain the multiple data in the distributed storage 102.

출력부(170)는 상기 건강데이터 및 상기 진료기록문서 중 적어도 하나의 PHR 정보가 다중 분산 저장소(102)에 유지됨에 따라, 상기 PHR 정보를 공개할 EMR 단말 또는 상기 PHR 정보의 공개 범위를 설정하는 인터페이스를, PHR 어플리케이션으로 출력할 수 있다.As the output unit 170 maintains at least one PHR information among the health data and the medical record document in the multi-distributed storage 102, the output unit 170 sets an EMR terminal or a disclosure range of the PHR information to be released. The interface can be output to a PHR application.

처리부(130)는 상기 조회 요청을 발생한 단말이, 상기 환자의 단말에 의해 상기 인터페이스에서 공개로 설정된 의료기관의 EMR 단말 또는 연구기관의 서버인 경우, 상기 조회 요청에 응답하여, 다중 분산 저장소(102) 내 상기 PHR 정보에 대한 접근(예를 들어, 진료기록정보 또는 건강데이터의 조회, 진료기록문서의 제출 등)을 허용할 수 있다.The processor 130, in response to the inquiry request, when the terminal generating the inquiry request is an EMR terminal of a medical institution or a server of a research institute set to be open on the interface by the terminal of the patient, the multi-distributed storage 102 Access to the PHR information may be allowed (for example, inquiry of medical record information or health data, submission of medical record documents, etc.).

예를 들어, 처리부(130)는 연구기관에서 환자의 진료기록문서 또는 건강데이터와 같은 PHR 정보를 전달받기를 원하는 경우, 다중 분산 저장소(102)에서 확인한 진료기록문서를 FHIR 형태로 변환하여 해당 연구기관의 시스템으로 전송할 수 있다.For example, if the processor 130 wants to receive PHR information such as a patient's medical record document or health data from a research institute, the research unit converts the medical record document confirmed in the multi-distributed storage 102 into the FHIR form to study the study. Can be transferred to the institution's system.

또한, 처리부(130)는 상기 조회 요청이, 상기 인터페이스에서 공개로 설정된 환자의 PHR 어플리케이션에서 발생한 경우, 상기 PHR 정보의 접근을 허용할 수 있다.In addition, the processor 130 may allow access to the PHR information when the inquiry request is generated in the PHR application of the patient set to be public in the interface.

구체적으로, 변환부(140)는 환자의 단말에서 PHR 어플리케이션에 대한 로그인 계정 생성 시 입력되는 환자정보를, 해쉬 함수를 적용하여 해쉬값으로 변환하고, 기록부(110)는 상기 해쉬값을, PHR 어플리케이션을 관리하는 앱 서버 내에 유지되는 상기 로그인 계정과 별도로, 환자의 단말에 유지할 수 있다. 처리부(130)는 PHR 어플리케이션을 통해 환자의 단말로부터 조회 요청이 수신되면, 상기 환자정보로 변환한 해쉬값을, 선택 해쉬값으로서 이용하여 블록체인으로부터 블록을 검색하고, 검색된 블록 내 저장위치값에 따라, 다중 분산 저장소(102)로부터 식별한 환자의 진료기록문서를, PHR 어플리케이션에 디스플레이 할 수 있다.Specifically, the conversion unit 140 converts the patient information input when generating a login account for the PHR application in the terminal of the patient to a hash value by applying a hash function, and the recording unit 110 converts the hash value into the PHR application. Apart from the login account maintained in the app server managing the, it can be maintained on the terminal of the patient. When the inquiry request is received from the terminal of the patient through the PHR application, the processing unit 130 searches for a block from the blockchain using the hash value converted into the patient information as the selected hash value, and searches for the storage location value in the retrieved block. Accordingly, the patient's medical record document identified from the multiple distributed repositories 102 can be displayed in the PHR application.

이처럼, 본 발명에 따르면, 환자의 로그인 계정과 환자정보의 해쉬값을 별도의 공간에 유지하여 보안성을 높일 수 있고, 환자의 단말에서 PHR 어플리케이션을 통해 공개로 지정한 의료기관, 가족, 지인의 단말에 환자의 진료기록문서 또는 건강데이터를 안전하게 제공할 수 있어, 환자 중심의 진료정보의 교류를 지원할 수 있다.As described above, according to the present invention, the security value can be improved by maintaining the hash value of the patient's login account and patient information in a separate space, and the terminal of the medical institution, family, or acquaintance designated by the patient's terminal through the PHR application. The patient's medical records or health data can be securely provided to support the exchange of patient-centered medical information.

또한, 처리부(130)는 환자의 단말에서 PHR 어플리케이션을 통해 진료기록문서의 제출이 요청되면, 헤더 리스트(환자의 진료기록문서의 리스트)에서 선택된 해쉬값과 연관되는 저장위치값을 블록체인으로부터 확인하여, 환자의 단말에서 저장위치값에 의해 식별되는 다중 분산 저장소(102) 내 전자기록문서의 바디를, 타 의료기관, 보험사, 입사 예정의 회사 등의 입력된 전송처로 전송한 후 PHR 어플리케이션으로 제출 완료를 통보할 수 있다.In addition, the processor 130 checks the storage location value associated with the hash value selected from the header list (list of patient's medical record documents) from the blockchain when the patient terminal is requested to submit the medical record document through the PHR application. By transmitting the body of the electronic record document in the multi-distributed storage 102 identified by the storage location value at the terminal of the patient to an input destination such as another medical institution, insurance company, company to be joined, etc., the submission to the PHR application is completed. Can be informed.

이때, 처리부(130)는 환자의 단말에서 PHR 어플리케이션을 통해 설정한 제출 형태(예, 원본, 일부 항목 숨김, 익명 처리)와 전송처에서 사용되는 양식에 따라, 진료기록문서/건강데이터(PHR 정보)의 포맷을 예컨대 FHIR 형태로 변환해서 제출할 수 있다.At this time, the processor 130 according to the submission form (for example, the original, hidden some items, anonymous processing) and the form used in the transmission destination set through the PHR application in the terminal of the patient, medical records document / health data (PHR information) Format can be converted to FHIR format and submitted.

이를 통해 본 발명에 따르면, 다수의 의료기관에서 작성된 진료정보를, 환자에 의해 공개로 설정된 여러 기관으로, 간편하고 안전하면서 환자를 중심으로 온라인 교류할 수 있게 지원할 수 있다.Through this, according to the present invention, it is possible to support the exchange of medical information created by a plurality of medical institutions, the various institutions set to be disclosed by the patient, easy and safe and online exchange centering around the patient.

도 2는 본 발명의 다른 실시예에 따른 블록체인 기반의 PHR 플랫폼 서버 운영 시스템을 도시한 구성도이다.2 is a block diagram showing a blockchain-based PHR platform server operating system according to another embodiment of the present invention.

도 2를 참조하면, 본 발명의 다른 실시예에 따른 블록체인 기반의 PHR 플랫폼 서버 운영 시스템(200)은, 레지스트리 서버(201), 분산 저장소 서버(202), 블록체인 앱 서버(203), PHR 앱 서버(204), 레지스트리(205), 다중 분산 저장소(206) 및 사용자 정보 DB(207)를 포함하여 구성할 수 있다.2, the blockchain-based PHR platform server operating system 200 according to another embodiment of the present invention, the registry server 201, distributed storage server 202, blockchain app server 203, PHR It may be configured to include an app server 204, a registry 205, multiple distributed repositories 206, and a user information DB 207.

레지스트리 서버(Registry Server)(201)는, EMR 단말(210)에서 전송되는 서식 기반의 진료기록문서 혹은 PHR 어플리케이션(220)에서 전송되는 라이프 로그, 처방전 등의 건강데이터로부터 헤더(Header)를 추출해 레지스트리(205)에 기록한다.The registry server 201 extracts a header from health data such as a form-based medical record document transmitted from the EMR terminal 210 or a life log and a prescription transmitted from the PHR application 220. (205).

구체적으로 레지스트리 서버(201)는 상기 헤더와, 상기 헤더에 해쉬 함수를 적용해서 변환한 제1 해쉬값을, 환자식별키에 연관시켜 레지스트리(205)에 기록 함으로써, 이후 다중 분산 저장소(206)에 유지된 진료기록문서 혹은 건강데이터를 조회하게 될 때 인덱스의 역할을 할 수 있다. 여기서 환자식별키는 환자정보를 조합한 문자열에 해쉬 함수를 적용한 키 값일 수 있다.Specifically, the registry server 201 records the header and the first hash value converted by applying a hash function to the header in the registry 205 in association with the patient identification key. When searching for maintained medical records or health data, it can serve as an index. The patient identification key may be a key value obtained by applying a hash function to a string including patient information.

실시예에 따라 상기 헤더는 레지스트리(205)에 기록되지 않고, 블록체인 앱 서버(203)에 의해 블록화 되도록 함으로써, 보안성을 보다 강화할 수 있다.According to an embodiment, the header is not recorded in the registry 205, and the header may be blocked by the blockchain app server 203, thereby enhancing security.

EMR(210)은 의료기관의 단말에 설치된 EMR 시스템(Electronic Medical Recording System)으로서, 담당의에 의해 입력된 내용을 기초로 환자의 진료기록문서를 작성할 수 있다.The EMR 210 is an EMR system (Electronic Medical Recording System) installed in a terminal of a medical institution, and can create a medical record of a patient based on the contents input by a doctor in charge.

레지스트리 서버(201)는 EMR(210)로부터 진료기록문서의 저장이 요청되면, EMR(210)의 요양기관번호와 EMR ID를 인증 처리하여, 접근 권한을 부여할 수 있다.When the registry server 201 is requested to store the medical record document from the EMR 210, the registry server 201 may authenticate the care institution number and the EMR ID of the EMR 210 to grant access rights.

분산 저장소 서버(Repository Server)(202)는 EMR(210)에서 전송된 진료기록문서 혹은 PHR 어플리케이션(220)을 통해 전달된 라이프 로그, 처방전 등의 건강데이터로부터 바디(Body)를 추출해 다중 분산 저장소(206)에 저장한다.The distributed repository server 202 extracts a body from health data such as a medical record document transmitted from the EMR 210 or a life log and a prescription transmitted through the PHR application 220, and stores multiple distributed repositories ( 206).

이때, 분산 저장소 서버(202)는 다중 분산 저장소(206) 중 임의로 선택된 분산 저장소에 저장할 수 있어, 어느 한 곳의 분산 저장소가 해킹되더라도 환자의 모든 진료기록문서가 누출되는 것을 방지할 수 있다.In this case, the distributed storage server 202 may be stored in a distributed storage arbitrarily selected among the multiple distributed storages 206, so that all the medical records of the patient may be leaked even if the distributed storage of any one is hacked.

블록체인 앱 서버(Blockchain Application Server, BAS)(203)는, 다중 분산 저장소(206)에 저장한 바디에 해쉬 함수를 적용해 변환한 제2 해쉬값과, 상기 바디의 저장위치값 및 상기 헤더의 제1 해쉬값을, 하나의 트랜잭션(거래기록)으로서, 블록체인 코어(blockchain core)를 이용해서 블록화 한다.The blockchain app server (BAS) 203 may include a second hash value converted by applying a hash function to a body stored in the multi-distributed storage 206, a storage location value of the body, and the header. The first hash value is blocked using a blockchain core as one transaction (transaction record).

여기서 상기 저장위치값은 상기 바디를 저장 시 생성한 문서 ID와, 상기 바디를 저장한 분산 저장소의 URL을 포함하여 구성될 수 있다.The storage location value may include a document ID generated when the body is stored and a URL of a distributed storage in which the body is stored.

이처럼, 블록체인 앱 서버(203)는 상기 바디 전체를 블록화 하여 블록체인에 저장하게 되면 성능이 떨어질 우려가 있으므로, 상기 바디에 해쉬 함수를 적용해서 변환한 제2 해쉬값을 블록화하여 블록체인에 저장(연결)하고, 실제 데이터(바디)는 분산 저장소 서버(202)에 의해 다중 분산 저장소(206)에 저장할 수 있다.As such, the blockchain app server 203 blocks the entire body and stores the blockchain in the blockchain. Therefore, the blockchain app server 203 blocks the second hash value converted by applying a hash function to the body and stores the blockchain in the blockchain. (Connect), the actual data (body) can be stored in the multiple distributed storage 206 by the distributed storage server 202.

블록체인에서는 중앙 집중형 서버에 트랜잭션을 저장하지 않고, 개개인의 서버들이 모여 네트워크를 유지 및 관리하게 되는데, 이 개개인의 서버, 즉 참여자를 노드라고 할 수 있다.In blockchain, rather than storing transactions in a centralized server, individual servers gather to maintain and manage the network. This individual server, or participant, is called a node.

노드는 블록체인 어플리케이션(211, 221)을 통해 블록을 생성하여 각 노드로 배포하는 역할을 할 수 있으며, 블록체인 네트워크의 모든 거래정보를 기록할 수 있다.The node may play a role of generating a block through the blockchain applications 211 and 221 and distributing it to each node, and may record all transaction information of the blockchain network.

일례로 각 의료기관의 EMR 단말(210)에서 진료기록을 블록화 하기 위해 블록체인 서비스에 참여할 때, 블록체인 코어가 포함된 블록체인 어플리케이션(211, 221)을 설치하게 되며, 블록체인 어플리케이션(211, 221)을 설치한 각 EMR 단말(210)이 하나의 노드 역할을 할 수 있다.For example, when the EMR terminal 210 of each medical institution participates in the blockchain service to block the medical record, the blockchain applications 211 and 221 including the blockchain core are installed, and the blockchain applications 211 and 221. Each EMR terminal 210 installed) may serve as one node.

각 노드는 블록체인 어플리케이션(211, 221)을 통해 블록체인 앱 서버(203)와 통신할 수 있다. 일례로 블록체인 앱 서버(203)는 블록화된 데이터를 조회, 삭제, 수정할 수 있는 API를, 블록체인 어플리케이션(211, 221)을 설치한 각 노드에 제공할 수 있다.Each node may communicate with the blockchain app server 203 through blockchain applications 211 and 221. For example, the blockchain app server 203 may provide an API for querying, deleting, and modifying the blocked data to each node in which the blockchain applications 211 and 221 are installed.

블록체인 어플리케이션(211, 221)은, 블록체인 코어 및 블록체인을 포함할 수 있다. The blockchain applications 211 and 221 may include a blockchain core and a blockchain.

블록체인 코어는 실제 합의 알고리즘을 이용하여 블록체인 앱 서버(203)로부터 전달된 트랜잭션을 블록화 하고, 이를 각 노드에 전파하는 블록체인 프로토콜을 구현한 엔진일 수 있다. The blockchain core may be an engine that implements a blockchain protocol that blocks a transaction transmitted from the blockchain app server 203 using an actual consensus algorithm and propagates it to each node.

예를 들어, 블록체인 코어는 '이더리움 오픈 플랫폼'이나 '하이퍼레저', 혹은 '멀티 체인'(multichain)과 같은 비트코인 오픈 플랫폼을 예시할 수 있다.For example, the blockchain core can exemplify Bitcoin open platforms such as Ethereum Open Platform, Hyperledger, or Multichain.

블록체인 코어는 하나의 노드에서 블록이 생성되면 다른 노드로 배포해 동기화(sync) 함으로써 각 노드에서 블록체인을 동일하게 유지할 수 있다.The blockchain core can maintain the same blockchain in each node by synchronizing by distributing it to another node when a block is generated in one node.

PHR 앱 서버(204)는 사용자의 로그인 계정과 공개 범위를 포함한 다양한 설정 정보를 사용자 정보 DB(207)에 유지하고, PHR 어플리케이션(220)을 통해 요청된 서비스(예컨대, 진료기록문서의 조회)를, 블록체인 앱 서버(203)와 통신하여 PHR 어플리케이션(220)에 제공한다.The PHR app server 204 maintains a variety of setting information, including a user's login account and disclosure range, in the user information DB 207, and provides a service (eg, inquiry of a medical record document) requested through the PHR application 220. It communicates with the blockchain app server 203 and provides it to the PHR application 220.

PHR 앱 서버(204)는 발명의 구현에 앞서, 진료기록 및 건강데이터의 조회 및 관리 서비스를 위한 PHR 어플리케이션(220)을 제작해 다운로드 요청하는 환자의 단말로 배포할 수 있다. 또는, 환자 단말에 이미 설치되어 있는 다양한 건강 관리 앱을, PHR 어플리케이션(220)으로서 활용하도록 할 수도 있다.Prior to the implementation of the invention, the PHR app server 204 may produce and distribute a PHR application 220 for a query and management service of medical records and health data to a terminal of a patient requesting a download. Alternatively, various health care apps already installed in the patient terminal may be utilized as the PHR application 220.

PHR 어플리케이션(220)은 환자의 진료기록문서 또는 라이프 로그와 같은 건강데이터의 기록과 조회, 삭제, 타 기관으로의 제출 및 공개 권한 설정 등의 기능을 포함할 수 있다.The PHR application 220 may include functions such as recording and retrieving and deleting health data such as a patient's medical record document or a life log, submitting to other institutions, and setting a public authority.

여기서 공개 권한 설정은, 진료기록문서를 공개할 의료기관의 EMR 단말을 설정하거나, 진료기록문서 중 공개할 일부의 정보를 설정하거나, 혹은 진료기록문서를 타 기관으로 제출 시의 제출 형태(원본, 일부 숨김, 익명화 처리 등)를 설정하는 것을 의미할 수 있다.Here, the disclosure authority is set in the form of submission when setting the EMR terminal of the medical institution to disclose medical record documents, setting some information to be disclosed among the medical record documents, or submitting the medical record document to another institution (original, partial Hidden, anonymization, etc.).

본 발명의 PHR 플랫폼 서버 운영 시스템(200)은, 진료기록문서를 구성하는 헤더와 바디를, PHR 플랫폼 서버 내 레지스트리(205)와 다중 분산 저장소(206)에 각각 구분해서 저장하고, 저장위치값을 블록화하여 블록체인에 연결 함으로써, 환자정보와 진료기록을 함께 보관하는 기존의 중앙집중식 진료정보교류 시스템에 비해, 정보의 유출 위험을 큰폭으로 낮출 수 있어 높은 보안성을 유지할 수 있다. The PHR platform server operating system 200 of the present invention separately stores the header and the body constituting the medical record document in the registry 205 and the multi-distributed storage 206 in the PHR platform server, respectively, and stores the storage location value. By blocking and connecting to the blockchain, the risk of information leakage can be significantly lowered compared to the existing centralized medical information exchange system that keeps patient information and medical records together, thus maintaining high security.

또한 본 발명의 일실시예에 따르면, 상기 저장위치값을 이용해서 식별한 진료기록의 위변조 여부를, 진료기록을 구성하는 헤더와 바디 각각에 해쉬 함수를 적용한 해쉬값의 비교를 통해 손쉽게 확인할 수 있다.In addition, according to an embodiment of the present invention, whether or not the forgery of the medical record identified using the storage location value can be easily confirmed by comparing the hash value to which a hash function is applied to each of the header and the body constituting the medical record. .

또한 본 발명의 일실시예에 따르면, EMR 단말에서 진료기록의 보관을 위해 별도의 공인인증서를 설치할 필요 없이, 블록체인이라는 간편한 암호화 방식을 활용하여, 환자의 진료기록 및 건강데이터를 안전하게 저장하거나 조회할 수 있다.In addition, according to an embodiment of the present invention, without the need to install a separate certificate for the storage of medical records in the EMR terminal, by utilizing a simple encryption method called blockchain, the patient's medical records and health data safely stored or retrieved can do.

도 3은 본 발명의 실시예들에 따른 PHR 플랫폼 서버 운영 시스템에서, 진료기록문서의 일례를 도시한 도면이다.3 is a diagram illustrating an example of a medical record document in the PHR platform server operating system according to embodiments of the present invention.

EMR 단말에서는, 진료기록문서의 종류 별로 서식을 마련하고, 담당의에 의해 선택된 서식 내 각 항목에 환자와 관련한 내용을 포함시켜서, 전자진료차트 또는 진료기록요약지, 진료의뢰서, 진료회송서 등과 같은 서식 기반의 진료기록문서를 작성할 수 있다. 서식 기반의 진료기록문서는 일례로 HL7 국제표준인 FHIR(Fast Healthcare Interoperability Resource)를 기준으로 작성될 수 있다.In the EMR terminal, a form is prepared for each type of medical record document, and an item related to the patient is included in each item in the form selected by the attending physician. Form-based medical records can be prepared. Form-based medical record documents can be prepared based on the Fast Healthcare Interoperability Resource (FHIR), an HL7 international standard.

도 3에는, 서식 기반의 진료기록문서의 일례로서 진료의뢰서가 도시되어 있다.3, a medical request form is shown as an example of a form-based medical record document.

도 3을 참조하면, 본 발명의 PHR 플랫폼 서버 운영 시스템은, 다수의 EMR 단말로부터 수집한 진료의뢰서 내 데이터를, 헤더(Header)(310)와 바디(Body)(320)로 구분해서 추출할 수 있다.Referring to FIG. 3, the PHR platform server operating system of the present invention may extract data in a medical request form collected from a plurality of EMR terminals by dividing it into a header 310 and a body 320. have.

PHR 플랫폼 서버 운영 시스템은, 환자의 신상정보(예, 이름, 성별, 생년월일, 연락처, 주소 등)와, 진료기록을 생성한 요양기관의 정보(예, 요양기관명, 요양기관번호, 연락처, 주소, 진료기록문서의 종류, 진료명 등)와 관련한 데이터 필드를, 헤더(310)로서 추출할 수 있다.PHR platform server operating system, the personal information of the patient (eg, name, gender, date of birth, contact, address, etc.) and the information of the care institution that created the medical record (eg, name of the care institution, the number of care institutions, contact information, address, The data field related to the type of medical record document, medical name, etc.) can be extracted as the header 310.

이때, 진료의뢰서와 같이 병원 간 교류 시 작성되는 문서인 경우, PHR 플랫폼 서버 운영 시스템은, 진료의뢰서를 수신하는 요양기관의 정보와, 진료의뢰서를 발신하는 요양기관의 정보를 각각 포함해서 헤더(310)로서 추출할 수 있다.In this case, in the case of a document created during the exchange between hospitals, such as a medical request form, the PHR platform server operating system includes a header 310 containing information of the nursing institution receiving the medical request and information of the nursing institution sending the medical request, respectively. Can be extracted as).

또한, PHR 플랫폼 서버 운영 시스템은, 진단내역, 담당의 소견, 주의사항, 처방내역, 검사기록, 처치기록, 수술기록 및 접종기록 중 적어도 하나의 데이터 필드를, 바디(320)로서 추출할 수 있다.In addition, the PHR platform server operating system may extract, as the body 320, at least one data field of a diagnosis history, a finding of a doctor, a precaution, a prescription, a test record, a treatment record, a surgery record, and an inoculation record. .

PHR 플랫폼 서버 운영 시스템은, 추출한 헤더(310)를 레지스트리에 기록하고, 바디(320)를 다중 분산 저장소 중 임의로 선택된 어느 하나의 분산 저장소에 유지하고, 바디(320)의 저장위치값과, 헤더(310) 및 바디(320)에 해쉬 함수를 각각 적용한 제1 해쉬값 및 제2 해쉬값을 블록화 하여, 블록체인에 유지할 수 있다.The PHR platform server operating system records the extracted header 310 in a registry, maintains the body 320 in any distributed storage selected arbitrarily from among the multiple distributed storages, and stores the storage location value of the body 320 and the header ( The first hash value and the second hash value to which the hash function is applied to the 310 and the body 320 may be blocked and maintained in the blockchain.

또는, PHR 플랫폼 서버 운영 시스템은, 헤더(310)를 레지스트리에 기록하지 않고, 바디(320)의 저장위치값, 제1 해쉬값 및 제2 해쉬값과 함께 블록화 하여 블록체인에 저장 함으로써, 보안성을 보다 강화할 수 있다.Alternatively, the PHR platform server operating system blocks and stores the header 310 together with the storage location value, the first hash value, and the second hash value of the body 320 without storing the header 310 in the registry, thereby securing security. Can be further strengthened.

도 4a, 4b는 본 발명의 실시예들에 따른 PHR 플랫폼 서버 운영 시스템에서, 레지스트리에 기록되는 데이터 필드의 일례를 도시한 표이다.4A and 4B are tables illustrating examples of data fields recorded in a registry in a PHR platform server operating system according to embodiments of the present invention.

도 4a에는 진료기록문서로부터 추출한 헤더를 레지스트리에 기록하는 경우에, 레지스트리에 기록되는 데이터 필드를 도시한 표(410)가 도시되어 있고, 도 4b에는 진료기록문서로부터 추출한 헤더를 레지스트리에 기록하지 않고 블록화 하는 경우에, 레지스트리에 기록되는 데이터 필드를 도시한 표(420)가 도시되어 있다.FIG. 4A shows a table 410 showing data fields recorded in the registry when the header extracted from the medical record document is recorded in the registry. FIG. 4B does not record the header extracted from the medical record document in the registry. In the case of blocking, a table 420 is shown showing the data fields written to the registry.

도 4a의 표(410)를 참조하면, PHR 플랫폼 서버 운영 시스템은 '전자진료차트'의 경우, 헤더(401)로서, 요양기관번호, EMR ID와 같은 요양기관정보(402)와 환자정보(403)를 추출하여 레지스트리에 기록할 수 있다.Referring to the table 410 of FIG. 4A, the PHR platform server operating system is a header 401 in the case of an 'electronic medical chart', and care institution information 402 such as a care institution number and an EMR ID, and patient information 403. ) Can be extracted and written to the registry.

이때 PHR 플랫폼 서버 운영 시스템은 환자정보(403) 내 환자의 주민번호와 이름 및 성별을 조합한 문자열에, 해쉬 함수를 적용해서 변환한 환자식별키(예, 표(410)의 "2aca1d770381b~~b40456")를, 헤더(401)로서 레지스트리에 기록할 수 있다.At this time, the PHR platform server operating system converts the patient identification key (eg, “2aca1d770381b ~~ b40456” of the table 410) by applying a hash function to the string combining the resident number, name and gender of the patient in the patient information 403 ") Can be recorded in the registry as the header 401.

또한, PHR 플랫폼 서버 운영 시스템은 '진료의뢰서'의 경우, 헤더(404)로서, 진료의뢰서를 수신하는 요양기관정보(405)와, 진료의뢰서를 발신하는 요양기관정보(406)와, 환자정보(407)와 의뢰번호(408) 및 전송일시(409)를 추출하여 레지스트리에 기록할 수 있다.In addition, the PHR platform server operating system, in the case of a 'medical request form', as a header 404, nursing institution information 405 for receiving a medical request, nursing institution information 406 for sending a medical request, and patient information ( 407, the request number 408, and the transmission date and time 409 can be extracted and recorded in the registry.

또한, PHR 플랫폼 서버 운영 시스템은 '진료기록요약지'의 경우, 헤더(410)로서, 진료기록요약지를 작성한 요양기관정보(411)와, 환자정보(412)와 문서번호(413) 및 작성일(414)를 추출하여 레지스트리에 기록할 수 있다.In addition, the PHR platform server operating system, in the case of the 'medical record summary', as a header 410, care institution information 411, patient information 412, document number 413 and the date of creation of the medical record summary ( 414) can be extracted and written to the registry.

또한, PHR 플랫폼 서버 운영 시스템은 진료기록문서로부터 추출한 헤더를 레지스트리에 기록하는 대신에, 도 4b의 표(420)와 같이, 상기 헤더에 해쉬 함수를 적용해서 변환한 제1 해쉬값을 레지스트리에 기록하고, 상기 헤더는 블록화 하여 블록체인에 저장할 수 있다.In addition, the PHR platform server operating system records the first hash value converted by applying a hash function to the header, as shown in Table 420 of FIG. 4B, instead of recording the header extracted from the medical record document into the registry. In addition, the header may be blocked and stored in the blockchain.

상기 제1 해쉬값은 진료서식의 헤더를 해쉬 함수로 변환한 문서 헤더 해쉬키(예를 들면, 표(420)의 "33028657537d~~b7b8d161")일 수 있다. 즉, PHR 플랫폼 서버 운영 시스템은 요양기관정보(421)와, 환자정보(422)로서 상기 환자식별키, 그리고 문서정보(423)로서 상기 문서 헤더 해쉬키와 등록일을 레지스트리에 기록할 수 있다.The first hash value may be a document header hash key (eg, “33028657537d to b7b8d161” in the table 420) in which a header of a medical form is converted into a hash function. That is, the PHR platform server operating system may record the medical institution information 421, the patient identification key as the patient information 422, and the document header hash key and the registration date as the document information 423 in the registry.

이 경우, 만일 진료기록이 해킹 되더라도, 상기 레지스트리에는 환자의 개인정보가 그대로 기록되지 않기 때문에, 블록체인을 해킹하지 않는 이상 그 진료기록이 어느 환자의 진료기록인지 알 수 없으므로, 보안성이 보다 강화될 수 있다.In this case, even if the medical record is hacked, since the personal information of the patient is not recorded in the registry as it is, it is not possible to know which patient's medical record is unless the blockchain is hacked. Can be.

도 5는 본 발명의 다른 실시예에 따른 PHR 플랫폼 서버 운영 시스템에서, 진료기록문서를 저장하는 과정을 도시한 도면이다.5 is a diagram illustrating a process of storing a medical record document in the PHR platform server operating system according to another embodiment of the present invention.

도 5를 참조하면, 본 발명의 다른 실시예에 따른 PHR 플랫폼 서버 운영 시스템은, 블록체인 기반의 PHR 플랫폼 서버를 이용하여 EMR 단말에서 작성되는 진료기록문서를 수집해 유지 및 관리할 수 있다. 여기서, PHR 플랫폼 서버는 레지스트리 서버, 분산 저장소 서버, 블록체인 앱 서버를 포함하여 구성될 수 있다.Referring to FIG. 5, the PHR platform server operating system according to another embodiment of the present invention may collect, maintain, and manage medical record documents created in an EMR terminal using a blockchain-based PHR platform server. Here, the PHR platform server may be configured to include a registry server, distributed storage server, blockchain app server.

단계(501)에서 EMR 단말은 의료기관(요양기관)의 담당의로부터 입력된 내용을 바탕으로 진료기록문서가 작성되면, '요양기관번호', 'EMR ID'와 같은 요양기관정보를 포함해 저장 요청을 발생한다.In step 501, the EMR terminal, if the medical record document is created based on the contents input from the doctor in charge of the medical institution (nursing institution), the request for storage including the medical institution information such as 'nursing institution number', 'EMR ID' Occurs.

단계(502)에서 레지스트리 서버는 상기 저장 요청 내 '요양기관번호', 'EMR ID'를 인증 처리하여 EMR 단말이 진료기록문서를 저장 가능한 기관인지 확인한다.In step 502, the registry server authenticates the 'care institution number' and 'EMR ID' in the storage request to check whether the EMR terminal is an institution capable of storing medical records.

단계(503)에서 레지스트리 서버는 상기 인증 처리가 성공하면 EMR 단말로 액세스 토큰(AccessToken)을 부여한다. 여기서, 액세스 토큰은 일례로 'OAuth 2.0'을 활용하여 생성될 수 있다.In step 503, the registry server grants an access token (AccessToken) to the EMR terminal if the authentication process is successful. Here, the access token may be generated by using 'OAuth 2.0' as an example.

단계(504)에서 EMR 단말은 레지스트리 서버에 의해 액세스 토큰이 부여되면, 상기 진료기록문서를 레지스트리 서버로 전송한다.In step 504, if the access token is granted by the registry server, the EMR terminal transmits the medical record document to the registry server.

구체적으로, EMR 단말은 액세스 토큰과 함께, 환자식별키 및 진료기록문서를 레지스트리 서버로 전송할 수 있다. 여기서, 환자식별키(Patient Key)는 환자의 주민번호와 이름 및 성별을 조합한 문자열에, 해쉬 함수를 적용해서 변환한 키로서, 예를 들면 표(410)의 "2aca1d770381b~~b40456"일 수 있다.Specifically, the EMR terminal may transmit the patient identification key and the medical record document together with the access token to the registry server. Here, the patient identification key (Patient Key) is a key converted by applying the hash function to a string combining the patient's social security number and name and gender, for example, "2aca1d770381b to b40456" in Table 410. have.

즉, 본 단계(501 내지 504)에서 EMR 단말은 레지스트리 서버에 의해 인증 처리된 후에 진료기록문서의 전송을 수행할 수 있다. That is, in the steps 501 to 504, the EMR terminal may transmit the medical record document after being authenticated by the registry server.

단계(505)에서 레지스트리 서버는 EMR 단말로부터 전송된 진료기록문서에서 추출한 헤더 및 상기 헤더에 해쉬 함수를 적용해 변환한 제1 함수값을, 상기 환자식별키와 연관시켜 레지스트리에 기록한다.In step 505, the registry server records the header extracted from the medical record document transmitted from the EMR terminal and the first function value converted by applying a hash function to the header, in association with the patient identification key, in the registry.

실시예에 따라, 레지스트리 서버는 상기 헤더를 레지스트리에 기록하지 않고, 상기 제1 함수값 만을 환자식별키에 연관시켜 레지스트리에 기록할 수도 있다.According to an embodiment, the registry server may record only the first function value in association with the patient identification key in the registry without recording the header in the registry.

단계(506)에서 레지스트리 서버는 진료기록문서에서 추출한 바디를, 상기 제1 해쉬값과 함께 분산 저장소 서버로 전송한다.In step 506, the registry server transmits the body extracted from the medical record document along with the first hash value to the distributed storage server.

단계(507)에서 분산 저장소 서버는 진료기록문서의 바디를 다중 분산 저장소 중 랜덤하게 선택된 분산 저장소에 저장하고, 상기 저장에 따라 문서 ID를 생성한다.In step 507, the distributed storage server stores the body of the medical record document in a randomly selected distributed storage among the multiple distributed storages, and generates a document ID according to the storage.

이때, 분산 저장소 서버는 제1 해쉬값을 상기 바디와 연결하는 인덱스로서 사용하지 않고 새롭게 상기 문서 ID를 생성 함으로써, 레지스트리 내의 헤더와 다중 분산 저장소 내의 바디가 모두 해킹되더라도, 헤더와 바디 간 연관성을 알 수 없기 때문에, 해킹된 진료기록이 어느 환자의 진료기록인지 알 수 없어 보안을 강화할 수 있다.At this time, the distributed storage server does not use the first hash value as an index to link the body, but generates the document ID to thereby recognize the association between the header and the body even if both the header in the registry and the body in the multiple distributed storages are hacked. Since it is impossible to know which patient's medical records have been hacked, the security can be enhanced.

단계(508)에서 분산 저장소 서버는 상기 바디의 저장위치값을 블록체인 앱 서버로 전송하여 블록화를 요청한다.In step 508, the distributed storage server transmits the storage location value of the body to the blockchain app server to request blocking.

구체적으로 분산 저장소 서버는 문서ID와, 다중 분산 저장소로의 접속 URL과 문서 ID를 포함해 상기 바디의 저장위치값을 생성하고, 상기 저장위치값을, 제1 해쉬값(헤더의 해쉬값)과, 상기 바디에 해쉬 함수를 적용해 변환한 제2 해쉬값과 함께 블록체인 앱 서버로 전송할 수 있다.Specifically, the distributed storage server generates a storage location value of the body including a document ID, a connection URL to the multiple distributed storages, and a document ID, and stores the storage location value with a first hash value (hash value of the header). In addition, a hash function may be applied to the body and transmitted along with the converted second hash value to the blockchain app server.

단계(509)에서 블록체인 앱 서버는, 분산 저장소 서버로부터 전송된 저장위치값을, AWS(Amazon Web Service)의 KMS(Key Management Service)를 이용하여 암호화 한다.In step 509, the blockchain app server encrypts the storage location value transmitted from the distributed storage server using a Key Management Service (KMS) of Amazon Web Service (AWS).

구체적으로, 블록체인 앱 서버는 AWS의 KMS에 따르면, 마스터키 프로바이더(Master key Provider)를 통해 사용할 마스터키를 결정하고, 마스터키를 이용해 생성한 두 개의 데이터키(평문 데이터키, 암호화된 데이터키) 중 평문 데이터키를 이용하여 상기 저장위치값을 암호화하고, 암호화가 완료되면 평문 데이터키를 삭제하고, 상기 저장위치값을 암호화한 문자열과 나머지 데이터키(암호화된 데이터키)를 복호화용으로 반환할 수 있다.Specifically, according to KMS of AWS, the blockchain app server determines a master key to be used through a master key provider, and generates two data keys (plain text data key and encrypted data) using the master key. Key to encrypt the storage location value using a plain text data key, delete the plain text data key when encryption is completed, and encrypt the string and the remaining data key (encrypted data key) that encrypted the storage location value for decryption. Can be returned.

단계(510)에서 블록체인 앱 서버는, 암호화된 저장위치값과 데이터키를, 헤더의 제1 해쉬값 및 바디의 제2 해쉬값과 함께 블록체인 코어로 전달한다.In step 510, the blockchain app server transmits the encrypted storage location value and the data key to the blockchain core together with the first hash value of the header and the second hash value of the body.

이때, 블록체인 앱 서버는 상기 단계(505)에서 레지스트리에 기록하지 않은 상기 헤더를 블록체인 코어로 더 전달하여 블록체인에 저장되도록 함으로써, 보안성을 더욱 강화할 수도 있다.In this case, the blockchain app server may further transmit the header not recorded in the registry to the blockchain core to be stored in the blockchain, thereby further enhancing security.

단계(511)에서 블록체인 코어는 암호화된 저장위치값과 상기 암호화된 데이터키, 헤더의 제1 해쉬값과 바디의 제2 해쉬값을, 신규의 트랜잭션으로서 포함하는 블록을 생성하고, 생성한 블록을, 각 노드로 배포해 동기화(Sync) 하여 블록체인에 연결(저장)한다. 이때 블록체인 코어는 전달된 헤더를 더 포함해서 블록화 할 수도 있다.In step 511, the blockchain core generates a block including an encrypted storage location value, the encrypted data key, a first hash value of a header, and a second hash value of a body as a new transaction, and generates the block. It is distributed to each node and synchronized to connect (store) to the blockchain. In this case, the blockchain core may further block the transferred header.

단계(512)에서 블록체인 앱 서버는 생성한 블록이 블록체인에 연결되면, 진료기록문서의 저장 완료를 EMR 단말에 통지한다.In step 512, the blockchain app server notifies the EMR terminal of the completion of storing the medical record document when the generated block is connected to the blockchain.

이처럼 PHR 플랫폼 서버 운영 시스템은 블록체인과 분산 저장 기술을 활용하여 진료정보를 유지함으로써 온라인 진료정보 교류의 안전성을 더욱 강화할 수 있다.As such, the PHR platform server operating system can further enhance the safety of online medical information exchange by maintaining medical information using blockchain and distributed storage technology.

도 6은 본 발명의 다른 실시예에 따른 PHR 플랫폼 서버 운영 시스템에서, 조회 요청에 따라 EMR 단말에 진료기록문서를 제공하는 과정을 도시한 도면이다.6 is a diagram illustrating a process of providing a medical record document to an EMR terminal according to an inquiry request in a PHR platform server operating system according to another embodiment of the present invention.

도 6을 참조하면, 본 발명의 PHR 플랫폼 서버 운영 시스템은, 블록체인 기반의 PHR 플랫폼 서버를 이용하여, 조회 요청된 진료기록문서를 EMR 단말로 안전하게 제공할 수 있다. 여기서, PHR 플랫폼 서버는 레지스트리 서버, 분산 저장소 서버, 블록체인 앱 서버를 포함하여 구성될 수 있다.Referring to Figure 6, the PHR platform server operating system of the present invention, by using a blockchain-based PHR platform server, it is possible to securely provide the medical records document requested to the EMR terminal. Here, the PHR platform server may be configured to include a registry server, distributed storage server, blockchain app server.

본 발명의 PHR 플랫폼 서버 운영 시스템은, 의료기관의 EMR 단말 및 환자의 건강관리앱과 연동해, 다수의 의료기관에 흩어져 있는 진료기록문서와, 스마트 단말을 통해 수집한 환자의 활동량(걸음수, 이동거리), 체중, 혈당, 식단정보 등의 건강데이터를 취합해서, 열람이나 타기관으로의 제출, 공개 여부 설정 등을 수행 가능하게 할 수 있다.The PHR platform server operating system of the present invention, in conjunction with the EMR terminal of the medical institution and the health care app of the patient, medical records documents scattered in a number of medical institutions, and the amount of activity of the patient collected through the smart terminal (steps, moving distance Health data, such as body weight, blood sugar, and diet information, can be collected and made available for viewing, submission to other institutions, and setting up disclosure.

단계(601)에서, EMR 단말은 요양기관정보('요양기관번호', 'EMR ID')를 포함하여 조회 요청을 발생한다.In step 601, the EMR terminal generates an inquiry request including care institution information ('care institution number', 'EMR ID').

단계(602)에서, 레지스트리 서버는 상기 조회 요청 내 '요양기관번호', 'EMR ID'를 인증 처리하여 EMR 단말이 진료기록문서를 조회 가능한 기관인지 확인한다.In step 602, the registry server authenticates the 'care agency number', 'EMR ID' in the inquiry request, and confirms whether the EMR terminal can query the medical record document.

단계(603)에서 레지스트리 서버는 상기 인증 처리가 성공하면 EMR 단말로 액세스 토큰(AccessToken)을 부여한다.In step 603, the registry server grants an access token (AccessToken) to the EMR terminal if the authentication process is successful.

단계(604)에서 EMR 단말은 레지스트리 서버에 의해 액세스 토큰이 부여되면, 특정 환자의 헤더 리스트(진료기록 리스트)를 요청한다.In step 604, if the access token is granted by the registry server, the EMR terminal requests a header list (medical record list) of a specific patient.

구체적으로, EMR 단말은 어느 환자의 진료기록문서를 요청하는지가 유출되지 않도록, 환자정보에 해쉬 함수를 적용해서 변환한 환자식별키를, 액세스 토큰과 함께 레지스트리 서버로 전송할 수 있다.Specifically, the EMR terminal may transmit the patient identification key converted by applying the hash function to the patient information to the registry server so that the patient's medical record document is not leaked.

단계(605)에서 레지스트리 서버는 상기 환자식별키를 이용하여 레지스트리에서 특정 환자에 관련된 헤더의 제1 해쉬값을 검색하고, 검색한 제1 해쉬값을 나열하여 헤더 리스트를 EMR 단말로 전달한다.In step 605, the registry server searches for the first hash value of the header related to the specific patient in the registry using the patient identification key, and lists the searched first hash values and transmits the header list to the EMR terminal.

단계(606)에서 EMR 단말은 상기 헤더 리스트에서 선택된 제1 해쉬값을 블록체인 앱 서버로 전송하여, 제1 해쉬값과 연관된 진료기록문서의 저장위치값을 요청한다.In step 606, the EMR terminal transmits the first hash value selected from the header list to the blockchain app server, and requests a storage location value of the medical record document associated with the first hash value.

즉 EMR 단말은 특정 환자의 여러 진료기록문서 중, 환자가 진료받을 당시의 나이, 요양기관이나 진료서식의 종류나 진료명, 진료기록문서의 등록일을 고려해 조회하려는 진료기록문서를 지정할 수 있다.That is, the EMR terminal may designate a medical record document to be inquired in consideration of the age at the time of the patient's treatment, the type or name of the medical institution or the medical form, and the registration date of the medical record document among the various medical record documents of the specific patient.

단계(607, 608)에서 블록체인 앱 서버는, 블록체인으로부터, 선택된 제1 해쉬값을 포함하는 블록을 검색하고, 검색된 블록으로부터, 암호화된 저장위치값, 데이터키, 바디의 제2 해쉬값을 확인한다. 이때 블록체인 앱 서버는 제1 해쉬값에 해당하는 헤더를, 상기 블록으로부터 더 확인할 수도 있다.In steps 607 and 608, the blockchain app server retrieves a block including the selected first hash value from the blockchain, and retrieves an encrypted storage location value, a data key, and a second hash value of the body from the retrieved block. Check it. In this case, the blockchain app server may further check a header corresponding to the first hash value from the block.

단계(609, 610)에서 블록체인 앱 서버는, AWS의 KMS에 따라 암호화된 저장위치값을 상기 데이터키를 이용해 복호화 하고, 복호화 한 저장위치값과 바디의 제2 해쉬값을 EMR 단말로 제공한다. 이때, 블록체인 앱 서버는, 진료기록문서의 헤더를 EMR 단말로 함께 제공할 수 있다.In steps 609 and 610, the blockchain app server decrypts the storage location value encrypted according to the KMS of AWS using the data key, and provides the decrypted storage location value and the second hash value of the body to the EMR terminal. . In this case, the blockchain app server may provide a header of the medical record document together with the EMR terminal.

단계(611)에서 EMR 단말은, 분산 저장소 서버로, 상기 저장위치값에 저장된 진료기록문서의 바디를 요청한다.In step 611, the EMR terminal requests the body of the medical record document stored in the storage location value to the distributed storage server.

단계(612)에서 분산 저장소 서버는, 상기 저장위치값에 저장된 진료기록문서의 바디를 다중 분산 저장소로부터 식별하여, EMR 단말로 전송한다.In step 612, the distributed storage server identifies the body of the medical record document stored in the storage location value from the multiple distributed storage, and transmits to the EMR terminal.

단계(613)에서 EMR 단말은 레지스트리 서버를 통해 진료기록문서의 위변조 여부를 확인한다.In step 613, the EMR terminal checks the forgery of the medical record document through the registry server.

구체적으로, EMR 단말은 상기 단계(610)에서 블록체인 앱 서버로부터 제공된 헤더에, 해쉬 함수를 적용한 값이, 상기 단계(606)에서 선택된 제1 해쉬값과 일치하는지 확인하고, 상기 단계(612)에서 분산 저장소 서버로부터 전송된 바디에, 해쉬 함수를 적용한 값이, 상기 단계(610)에서 블록체인 앱 서버로부터 제공된 제2 해쉬값과 일치하는지 확인 함으로써, 상기 헤더와 상기 바디를 조합하여 구성한 진료기록문서의 무결성(integrity)를 검증할 수 있다.In detail, the EMR terminal checks whether a value obtained by applying a hash function to the header provided from the blockchain app server in step 610 matches the first hash value selected in step 606, and in step 612. The medical record composed by combining the header and the body by confirming that the value of applying the hash function to the body transmitted from the distributed storage server in step 610 matches the second hash value provided from the blockchain app server in step 610. Integrity of the document can be verified.

단계(614)에서 EMR 단말은 모두 일치할 경우, EMR 단말은 진료기록문서가 위조 또는 변조되지 않은 것으로 확인하여, 디스플레이 한다.In step 614, if all the EMR terminals match, the EMR terminal confirms that the medical record document is not forged or tampered with and displays it.

이와 같이, 본 발명의 일실시예에 따르면, 환자에 관해 작성된 진료기록을 다수의 의료기관으로부터 수집하여 블록체인 기반의 PHR 플랫폼 서버에 유지하고, 블록체인을 활용하여 PHR 플랫폼 서버에 유지된 진료기록의 안전한 조회 서비스를 지원할 수 있다.As such, according to an embodiment of the present invention, the medical records written about the patient are collected from a plurality of medical institutions and maintained on a blockchain-based PHR platform server, and the blockchain is used to maintain the medical records maintained on the PHR platform server. Can support secure inquiry service.

도 7은 본 발명의 다른 실시예에 따른 PHR 플랫폼 서버 운영 시스템에서, 조회 요청에 따라 환자 단말에 진료기록문서를 제공하는 과정을 도시한 도면이다.7 is a diagram illustrating a process of providing a medical record document to a patient terminal according to an inquiry request in a PHR platform server operating system according to another embodiment of the present invention.

도 7을 참조하면, 본 발명의 다른 실시예에 따른 PHR 플랫폼 서버 운영 시스템은, 블록체인 기반의 PHR 플랫폼 서버를 이용하여, 환자가 자신의 단말에서 실행되는 PHR 어플리케이션(이하, 'PHR 앱')을 통해 자신의 진료기록문서를 간편하게 조회할 수 있게 할 수 있다. 이 경우, PHR 플랫폼 서버는 PHR 앱 서버를 더 포함하여 구성될 수 있다.Referring to FIG. 7, the PHR platform server operating system according to another embodiment of the present invention uses a blockchain-based PHR platform server, and a PHR application (hereinafter, 'PHR app') in which a patient is executed in his terminal. Through this, you can easily search your medical records. In this case, the PHR platform server may further comprise a PHR app server.

단계(701)에서, PHR 앱은 환자 단말에 의해 생성된 로그인 계정(ID, PW)을 이용하여, PHR 앱 서버에 로그인을 시도한다.In step 701, the PHR app attempts to log in to the PHR app server using the login account (ID, PW) created by the patient terminal.

단계(702, 703)에서, PHR 앱은 로그인이 성공하면, 진료기록문서의 조회 요청을 발생한다. In steps 702 and 703, the PHR app generates an inquiry request of the medical record document if the login is successful.

단계(704, 705)에서, PHR 앱 서버는 상기 환자식별키를 이용해 사용자 인증이 처리되면, 액세스 토큰을 PHR 앱으로 부여한다.In steps 704 and 705, when the user authentication is processed using the patient identification key, the PHR app server grants an access token to the PHR app.

즉 PHR 앱은 로그인이 성공하면, 환자 단말 내에 저장된 환자식별키를 이용하여 액세스 토큰을 얻어 올 수 있다. 여기서 환자식별키는 로그인 계정 생성 시 입력된 환자 정보에 해쉬 함수를 적용해서 변환된 키로서, PHR 앱은 PHR 앱 서버에 유지되는 로그인 계정과 별도로 환자 단말 내에 환자식별키를 유지하여, 보안성을 높일 수 있다.That is, if the PHR app logs in successfully, the PHR app may obtain an access token using the patient identification key stored in the patient terminal. Here, the patient identification key is a key converted by applying a hash function to the patient information input when creating the login account, and the PHR app maintains the patient identification key in the patient terminal separately from the login account maintained on the PHR app server. It can increase.

단계(706)에서 PHR 앱은, PHR 앱 서버를 통해 레지스트리 서버로, 특정 환자의 진료기록문서의 리스트를 요청한다.In step 706, the PHR app requests a list of medical records of a specific patient to the registry server through the PHR app server.

이때 PHR 앱은 상기 환자식별키를 이용해서 환자의 진료기록문서의 리스트를 요청할 수도 있고, 환자 가족의 식별키를 이용해서 환자 가족의 진료기록문서의 리스트를 요청할 수도 있으며, 가족이 아닌 지인에 대해서는 사전에 동의를 얻은 경우, 지인의 진료기록문서의 리스트를 요청할 수도 있다.In this case, the PHR app may request a list of the patient's medical records using the patient identification key, or may request a list of the patient's medical records using the patient's family identification key. If you have obtained informed consent, you may request a list of acquaintances' medical records.

단계(707)에서 레지스트리 서버는 특정 환자의 헤더를 나열한 헤더 리스트를 PHR 앱 서버를 통해 PHR 앱으로 전달한다.In step 707, the registry server delivers a header list listing headers of a specific patient to the PHR app through the PHR app server.

단계(708)에서 PHR 앱은 상기 헤더 리스트에서 선택된 헤더의 제1 해쉬값을 PHR 앱 서버로 전송하여, 진료기록문서를 요청한다.In step 708, the PHR app requests the medical record document by transmitting the first hash value of the header selected in the header list to the PHR app server.

단계(709)에서 PHR 앱 서버는 PHR 앱에서 요청된 진료기록문서의 저장위치값을 블록체인 앱 서버로 요청한다.In step 709, the PHR app server requests the blockchain app server for the storage location value of the medical record document requested by the PHR app.

단계(710, 711)에서 블록체인 앱 서버는 상기 제1 해쉬값을 포함하는 블록을, 블록체인으로부터 검색하고, 검색된 블록으로부터 암호화된 저장위치값과 데이터키, 바디의 제2 해쉬값을 확인한다.In steps 710 and 711, the blockchain app server searches for the block including the first hash value from the blockchain and checks the encrypted storage location value, the data key, and the second hash value of the body from the found block. .

단계(712, 713)에서 블록체인 앱 서버는 상기 암호화된 저장위치값을 상기 데이터키로 복호화 한 후, 바디의 제2 해쉬값과 함께 PHR 앱 서버로 제공한다.In steps 712 and 713, the blockchain app server decrypts the encrypted storage location value with the data key and provides the PHR app server with the second hash value of the body.

단계(714)에서 PHR 앱 서버는, 상기 저장위치값에 저장된 진료기록문서의 바디를 분산 저장소 서버로 요청한다.In step 714, the PHR app server requests the body of the medical record document stored in the storage location value to the distributed storage server.

단계(715, 716)에서 PHR 앱 서버는 분산 저장소 서버로부터 진료기록문서의 바디가 전송되면, 위변조 여부를 검증한다.In steps 715 and 716, when the body of the medical record document is transmitted from the distributed storage server, the PHR app server verifies the forgery.

구체적으로 PHR 앱 서버는 상기 단계(708)에서 선택된 헤더에 해쉬 함수를 적용한 값과 제1 해쉬값이 일치하는지 확인하고, 상기 단계(715)에서 전송된 바디에 해쉬 함수를 적용한 값과 제2 해쉬값이 일치하는지를 확인하여, 상기 헤더와 상기 바디를 조합한 진료기록문서의 위조 또는 변조 여부를 확인할 수 있다.In detail, the PHR app server checks whether the first hash value coincides with the value of the hash function applied to the header selected in the step 708, and the second hash and the value applying the hash function to the body transmitted in the step 715. By checking whether the values match, it is possible to check whether the medical record document combining the header and the body is forged or tampered with.

단계(717)에서 PHR 앱 서버는 위조 또는 변조되지 않은 것으로 검증된 진료기록문서를 환자의 PHR 앱에 제공하여 디스플레이 한다.In step 717, the PHR app server provides the patient's PHR app with a medical record document that has been verified as not forged or tampered with.

이에 따라, 환자는 자신의 단말에 설치된 건강 관리 앱을 통해, 건강데이터와 함께 진료기록을 손쉽게 열람할 수 있다.Accordingly, the patient can easily view the medical record along with the health data through the health care app installed in his terminal.

이하, 도 8에서는 본 발명의 실시예들에 따른 PHR 플랫폼 서버 운영 시스템(100)의 작업 흐름을 상세히 설명한다.Hereinafter, the workflow of the PHR platform server operating system 100 according to embodiments of the present invention will be described in detail.

도 8은 본 발명의 일실시예에 따른 블록체인 기반의 PHR 플랫폼 서버 운영 방법의 순서를 도시한 도면이다.8 is a diagram illustrating a procedure of a blockchain-based PHR platform server operating method according to an embodiment of the present invention.

본 실시예에 따른 PHR 플랫폼 서버 운영 방법은 상술한 PHR 플랫폼 서버 운영 시스템(100)에 의해 수행될 수 있다.The PHR platform server operating method according to the present embodiment may be performed by the PHR platform server operating system 100 described above.

도 8을 참조하면, 단계(810)에서, PHR 플랫폼 서버 운영 시스템(100)은, 일정 주기로 EMR 단말에 의해 작성된 진료기록문서를 수집해서 다중 분산 저장소에 유지한다.Referring to FIG. 8, in step 810, the PHR platform server operating system 100 collects medical record documents created by the EMR terminal at regular intervals and maintains them in multiple distributed repositories.

단계(820)에서, PHR 플랫폼 서버 운영 시스템(100)은, 상기 진료기록문서로부터 추출한 헤더를, 상기 다중 분산 저장소와 별도로 마련된 레지스트리에 기록한다.In step 820, the PHR platform server operating system 100 records the header extracted from the medical record document in a registry provided separately from the multiple distributed storage.

단계(830)에서, PHR 플랫폼 서버 운영 시스템(100)은, 블록체인 코어를 기반으로, 상기 진료기록문서의 저장위치값을, 상기 헤더에 해쉬 함수를 적용한 제1 해쉬값과 함께 블록화 하여, 블록체인에 연결한다.In operation 830, the PHR platform server operating system 100 blocks the storage location value of the medical record document along with the first hash value to which the hash function is applied to the header based on the blockchain core. Connect to the chain.

PHR 플랫폼 서버 운영 시스템(100)은 상기 진료기록문서의 저장위치값과 상기 헤더의 제1 해쉬값을 포함하는 블록을 생성하고, 이전 주기에 구성한 상기 블록체인에 연결한다.The PHR platform server operating system 100 generates a block including a storage location value of the medical record document and a first hash value of the header, and connects the blockchain configured in a previous cycle.

단계(840)에서, PHR 플랫폼 서버 운영 시스템(100)은, EMR 단말로부터 조회 요청이 발생하는지 확인한다. 이때, PHR 플랫폼 서버 운영 시스템(100)은, 블록체인 기반의 PHR 플랫폼 서버에 가입된 인증된 EMR 단말인지 확인할 수 있다.In step 840, the PHR platform server operating system 100 checks whether an inquiry request is generated from the EMR terminal. At this time, the PHR platform server operating system 100 may check whether the authenticated EMR terminal subscribed to the blockchain-based PHR platform server.

상기 확인 결과, 인증된 EMR 단말에서 조회 요청이 발생되는 경우, 단계(850)에서, PHR 플랫폼 서버 운영 시스템(100)은, 조회하려는 진료기록문서를 선택 가능한 헤더 리스트(진료기록 리스트)를 EMR 단말에 전달한다.As a result of the check, when the inquiry request is generated in the authenticated EMR terminal, in step 850, the PHR platform server operating system 100, the EMR terminal to the header list (medical record list) to select the medical record document to be inquired To pass on.

이때 PHR 플랫폼 서버 운영 시스템(100)은, 상기 조회 요청이, 특정 환자에 관한 환자식별키를 포함하고 있으면, 인증 처리 후, 특정 환자에 관한 헤더 리스트를 EMR 단말에 전달할 수 있다.In this case, if the inquiry request includes a patient identification key for a specific patient, the PHR platform server operating system 100 may transmit a header list of the specific patient to the EMR terminal after the authentication process.

단계(860 내지 870)에서, PHR 플랫폼 서버 운영 시스템(100)은, EMR 단말에 의해 선택된 선택 해쉬값에 의해 지정되는 블록을, 블록체인으로부터 검색하고, 상기 블록 내 저장위치값을 상기 EMR 단말로 반환한다.In steps 860 to 870, the PHR platform server operating system 100 retrieves, from the blockchain, the block designated by the selected hash value selected by the EMR terminal, and returns the storage location value in the block to the EMR terminal. Returns.

상기 EMR 단말은 상기 저장위치값에 의해 식별되는 다중 분산 저장소 내 진료기록문서에 대해, 레지스트리 서버를 통해 위변조 여부를 확인하고, 위변조 되지 않은 것으로 확인될 경우에 화면 상에 디스플레이 한다.The EMR terminal checks whether or not forgery through the registry server for the medical record document in the multiple distributed storage identified by the storage location value, and displays on the screen when it is confirmed that the forgery is not forged.

이와 같이, PHR 플랫폼 서버 운영 시스템(100)은 블록체인과 분산 저장 기술을 활용하여, 환자의 진료기록 뿐만 아니라 건강데이터를 수집해 안전하게 보관하고, 병의원이나 환자로부터의 조회 요청 시, 보관 중인 진료기록 혹은 건강데이터를 안전하게 제공할 수 있다.As such, the PHR platform server operating system 100 utilizes blockchain and distributed storage technology to collect and safely store not only the patient's medical records but also the health data, and the medical records that are being kept when requesting inquiry from a hospital or a patient. Or health data can be provided securely.

실시예에 따른 방법은 다양한 컴퓨터 수단을 통하여 수행될 수 있는 프로그램 명령 형태로 구현되어 컴퓨터 판독 가능 매체에 기록될 수 있다. 상기 컴퓨터 판독 가능 매체는 프로그램 명령, 데이터 파일, 데이터 구조 등을 단독으로 또는 조합하여 포함할 수 있다. 상기 매체에 기록되는 프로그램 명령은 실시예를 위하여 특별히 설계되고 구성된 것들이거나 컴퓨터 소프트웨어 당업자에게 공지되어 사용 가능한 것일 수도 있다. 컴퓨터 판독 가능 기록 매체의 예에는 하드 디스크, 플로피 디스크 및 자기 테이프와 같은 자기 매체(magnetic media), CD-ROM, DVD와 같은 광기록 매체(optical media), 플롭티컬 디스크(floptical disk)와 같은 자기-광 매체(magneto-optical media), 및 롬(ROM), 램(RAM), 플래시 메모리 등과 같은 프로그램 명령을 저장하고 수행하도록 특별히 구성된 하드웨어 장치가 포함된다. 프로그램 명령의 예에는 컴파일러에 의해 만들어지는 것과 같은 기계어 코드뿐만 아니라 인터프리터 등을 사용해서 컴퓨터에 의해서 실행될 수 있는 고급 언어 코드를 포함한다. 상기된 하드웨어 장치는 실시예의 동작을 수행하기 위해 하나 이상의 소프트웨어 모듈로서 작동하도록 구성될 수 있으며, 그 역도 마찬가지이다.The method according to the embodiment may be embodied in the form of program instructions that can be executed by various computer means and recorded in a computer readable medium. The computer readable medium may include program instructions, data files, data structures, and the like, alone or in combination. The program instructions recorded on the media may be those specially designed and constructed for the purposes of the embodiments, or they may be of the kind well-known and available to those having skill in the computer software arts. Examples of computer-readable recording media include magnetic media such as hard disks, floppy disks, and magnetic tape, optical media such as CD-ROMs, DVDs, and magnetic disks, such as floppy disks. Magneto-optical media, and hardware devices specifically configured to store and execute program instructions, such as ROM, RAM, flash memory, and the like. Examples of program instructions include not only machine code generated by a compiler, but also high-level language code that can be executed by a computer using an interpreter or the like. The hardware device described above may be configured to operate as one or more software modules to perform the operations of the embodiments, and vice versa.

소프트웨어는 컴퓨터 프로그램(computer program), 코드(code), 명령(instruction), 또는 이들 중 하나 이상의 조합을 포함할 수 있으며, 원하는 대로 동작하도록 처리 장치를 구성하거나 독립적으로 또는 결합적으로(collectively) 처리 장치를 명령할 수 있다. 소프트웨어 및/또는 데이터는, 처리 장치에 의하여 해석되거나 처리 장치에 명령 또는 데이터를 제공하기 위하여, 어떤 유형의 기계, 구성요소(component), 물리적 장치, 가상 장치(virtual equipment), 컴퓨터 저장 매체 또는 장치, 또는 전송되는 신호 파(signal wave)에 영구적으로, 또는 일시적으로 구체화(embody)될 수 있다. 소프트웨어는 네트워크로 연결된 컴퓨터 시스템 상에 분산되어서, 분산된 방법으로 저장되거나 실행될 수도 있다. 소프트웨어 및 데이터는 하나 이상의 컴퓨터 판독 가능 기록 매체에 저장될 수 있다.The software may include a computer program, code, instructions, or a combination of one or more of the above, and may configure the processing device to operate as desired, or process independently or collectively. You can command the device. Software and / or data may be any type of machine, component, physical device, virtual equipment, computer storage medium or device in order to be interpreted by or to provide instructions or data to the processing device. Or may be permanently or temporarily embodied in a signal wave to be transmitted. The software may be distributed over networked computer systems so that they may be stored or executed in a distributed manner. Software and data may be stored on one or more computer readable recording media.

이상과 같이 실시예들이 비록 한정된 도면에 의해 설명되었으나, 해당 기술분야에서 통상의 지식을 가진 자라면 상기를 기초로 다양한 기술적 수정 및 변형을 적용할 수 있다. 예를 들어, 설명된 기술들이 설명된 방법과 다른 순서로 수행되거나, 및/또는 설명된 시스템, 구조, 장치, 회로 등의 구성요소들이 설명된 방법과 다른 형태로 결합 또는 조합되거나, 다른 구성요소 또는 균등물에 의하여 대치되거나 치환되더라도 적절한 결과가 달성될 수 있다.Although the embodiments have been described with reference to the accompanying drawings, those skilled in the art may apply various technical modifications and variations based on the above. For example, the described techniques may be performed in a different order than the described method, and / or components of the described systems, structures, devices, circuits, etc. may be combined or combined in a different form than the described method, or other components. Or, even if replaced or substituted by equivalents, an appropriate result can be achieved.

그러므로, 다른 구현들, 다른 실시예들 및 특허청구범위와 균등한 것들도 후술하는 청구범위의 범위에 속한다.Therefore, other implementations, other embodiments, and equivalents to the claims are within the scope of the following claims.

100: PHR 플랫폼 서버 운영 시스템
101: 레지스트리 102: 다중 분산 저장소
110: 기록부 120: 블록화부
130: 처리부 140: 변환부
150: 전달부 160: 확인부
170: 출력부
100: PHR platform server operating system
101: Registry 102: Multiple Distributed Repositories
110: recording unit 120: block
130: processor 140: converter
150: delivery unit 160: confirmation unit
170: output unit

Claims (18)

EMR 단말로부터 작성된 제1 진료기록문서를 수집하여, 다중 분산 저장소에 유지하는 단계;
상기 제1 진료기록문서 내 환자정보를 추출하여, 상기 제1 진료기록문서에 대한 헤더로서 레지스트리에 기록하는 단계;
블록체인 코어를 기반으로, 상기 다중 분산 저장소에서의 상기 제1 진료기록문서의 저장위치값과, 상기 헤더에 대한 해쉬값을 블록화 하여, 블록체인으로 연결하는 단계; 및
조회 요청의 발생에 연동하여,
다수의 해쉬값을 나열한 헤더 리스트 중 선택되는 해쉬값에 의해 지정되는 블록을, 상기 블록체인으로부터 검색하고, 검색된 상기 블록을 구성하는 저장위치값을, 상기 조회 요청을 발생한 EMR 단말로 제공하는 단계
를 포함하는 블록체인 기반의 PHR 플랫폼 서버 운영 방법.
Collecting a first medical record document prepared from an EMR terminal and maintaining the first medical record document in multiple distributed repositories;
Extracting patient information in the first medical record document and recording it in a registry as a header for the first medical record document;
Based on a blockchain core, blocking a storage location value of the first medical record document and a hash value of the header in the multi-distributed storage, and connecting the blockchain with a blockchain; And
In conjunction with the occurrence of the inquiry request,
Retrieving a block designated by a hash value selected from a header list of a plurality of hash values from the blockchain, and providing a storage location value constituting the retrieved block to the generated EMR terminal;
Blockchain-based PHR platform server operating method comprising a.
제1항에 있어서,
상기 다중 분산 저장소에 기 유지되어 있는 제2 진료기록문서로부터 환자정보를 추출하는 단계;
상기 환자정보에, 해쉬 함수를 적용하여 해쉬값으로 변환하는 단계;
다수의 해쉬값을 나열한 상기 헤더 리스트를, 상기 EMR 단말에 전달하는 단계;
상기 헤더 리스트에서 선택되는 해쉬값에 의해 지정되는 블록을, 상기 블록체인으로부터 검색하는 단계; 및
검색된 상기 블록을 구성하는 저장위치값에 의해 상기 다중 분산 저장소로부터 식별되는 제2 진료기록문서를, 상기 EMR 단말에 디스플레이 하는 단계
를 더 포함하는 PHR 플랫폼 서버 운영 방법.
The method of claim 1,
Extracting patient information from a second medical record document previously held in the multiple distributed storage;
Converting the patient information into a hash value by applying a hash function;
Delivering the header list listing a plurality of hash values to the EMR terminal;
Retrieving, from the blockchain, a block designated by a hash value selected from the header list; And
Displaying, on the EMR terminal, a second medical record document identified from the multiple distributed storages by a storage location value constituting the retrieved block.
PHR platform server operating method comprising more.
일정 주기로 다중 분산 저장소에 유지되는 진료기록문서로부터, 헤더로서 추출한 환자정보에, 해쉬 함수를 적용하여 제1 해쉬값으로 변환하는 단계;
상기 제1 해쉬값을 나열해 작성한 헤더 리스트를, 조회 요청을 발생하는 EMR 단말에 전달하는 단계;
상기 헤더 리스트에서 선택되는 선택 해쉬값을 이용하여, 상기 환자정보와 관련해서 생성된 블록을, 블록체인으로부터 검색하는 단계; 및
상기 블록 내에 포함되는 저장위치값에 의해 상기 다중 분산 저장소로부터 식별되는 제3 진료기록문서를, 상기 EMR 단말에 디스플레이 하는 단계
를 포함하는 블록체인 기반의 PHR 플랫폼 서버 운영 방법.
Converting the patient information extracted as a header into a first hash value from the medical record document held in the multi-distributed storage at regular intervals;
Delivering the header list created by listing the first hash value to an EMR terminal generating an inquiry request;
Retrieving a block generated in association with the patient information from the blockchain using a selection hash value selected from the header list; And
Displaying, on the EMR terminal, a third medical record document identified from the multiple distributed storages by a storage location value included in the block.
Blockchain-based PHR platform server operating method comprising a.
제3항에 있어서,
상기 저장위치값이, AWS(Amazon Web Service)의 KMS(Key Management Service)를 이용하여 생성된 복수의 데이터키 중 제1 데이터키로 암호화 되어 상기 블록 내에 포함된 경우,
상기 EMR 단말에 디스플레이 하는 단계는,
상기 블록 내에 더 포함되는, 상기 복수의 데이터키 중 제2 데이터키를 이용하여 복호화 한 상기 저장위치값을 이용하여, 상기 제3 진료기록문서를 상기 다중 분산 저장소로부터 식별하는 단계
를 포함하는 PHR 플랫폼 서버 운영 방법.
The method of claim 3,
When the storage location value is encrypted by a first data key among a plurality of data keys generated using a key management service (KMS) of Amazon Web Service (AWS) and included in the block,
Displaying on the EMR terminal,
Identifying the third medical record document from the multiple distributed storages using the storage location value decrypted using a second data key of the plurality of data keys, further included in the block.
PHR platform server operating method comprising a.
제3항에 있어서,
요양기관에서 설치된 EMR 단말로부터 전자진료차트, 진료기록요약지, 진료의뢰서 및 진료회송서 중 적어도 하나의 서식 기반의 상기 진료기록문서를 일정 주기로 수집하여, 상기 다중 분산 저장소 중 임의로 선택된 어느 하나의 분산 저장소에 유지하는 단계; 및
블록체인 코어를 기반으로, 상기 진료기록문서의 저장위치값과 상기 제1 해쉬값을 포함하는 블록을 생성하고, 이전 주기에 구성한 상기 블록체인에 연결하는 단계
를 더 포함하는 PHR 플랫폼 서버 운영 방법.
The method of claim 3,
Collect the medical record document based on at least one of the electronic medical chart, medical record summary, medical request form and medical report form at regular intervals from the EMR terminal installed in the nursing institution, and distribute any one selected randomly from the multiple distributed storage. Maintaining in the reservoir; And
Generating a block including a storage location value of the medical record document and the first hash value based on a blockchain core and connecting the blockchain configured in a previous cycle;
PHR platform server operating method comprising more.
제5항에 있어서,
상기 PHR 플랫폼 서버 운영 방법은,
상기 헤더를, 상기 다중 분산 저장소와 별도로 마련된 레지스트리에 기록하는 단계
를 더 포함하고,
상기 분산 저장소에 유지하는 단계는,
상기 진료기록문서에서 상기 헤더를 제외한 진단내역, 담당의 소견, 주의사항, 처방내역, 검사기록, 처치기록, 수술기록 및 접종기록 중 적어도 하나의 데이터를, 바디로서 추출하여, 상기 어느 하나의 분산 저장소에 유지하는 단계
를 포함하고,
상기 블록체인에 연결하는 단계는,
상기 바디에 상기 해쉬 함수를 적용하여 변환되는 제2 해쉬값을 더 포함하여 상기 블록을 생성하는 단계
를 더 포함하는 PHR 플랫폼 서버 운영 방법.
The method of claim 5,
The PHR platform server operating method,
Recording the header in a registry provided separately from the multiple distributed repositories;
More,
Maintaining in the distributed storage,
The medical record document extracts at least one data of a diagnosis history, a medical opinion, a precaution, a prescription, a test record, a treatment record, a surgical record, and an inoculation record except the header, and distributes any one of the data. Steps to keep in the store
Including,
Connecting to the blockchain,
Generating the block further including a second hash value converted by applying the hash function to the body;
PHR platform server operating method comprising more.
제6항에 있어서,
상기 헤더가, 상기 다중 분산 저장소와 별도로 마련된 레지스트리에 유지되지 않는 경우,
상기 블록체인에 연결하는 단계는,
상기 헤더를 더 포함하여 상기 블록을 생성하는 단계
를 더 포함하는 PHR 플랫폼 서버 운영 방법.
The method of claim 6,
If the header is not maintained in a registry provided separately from the multiple distributed repositories,
Connecting to the blockchain,
Generating the block further comprising the header
PHR platform server operating method comprising more.
제6항에 있어서,
상기 PHR 플랫폼 서버 운영 방법은,
상기 EMR 단말로의 디스플레이 전에, 상기 제3 진료기록문서에 대한 위변조 여부를 확인하는 단계
를 더 포함하고,
상기 확인 결과, 위변조되지 않은 경우,
상기 EMR 단말에 디스플레이 하는 단계는,
상기 선택 해쉬값과 연관되는 제1 헤더를, 상기 저장위치값에 의해 식별되는 제1 바디와 조합하여 구성한 상기 제3 진료기록문서를, 상기 EMR 단말에 디스플레이 하는 단계
를 포함하는 PHR 플랫폼 서버 운영 방법.
The method of claim 6,
The PHR platform server operating method,
Confirming whether the third medical record document is forged or altered before displaying to the EMR terminal;
More,
If, as a result of the above confirmation, is not forged,
Displaying on the EMR terminal,
Displaying, on the EMR terminal, the third medical record document configured by combining the first header associated with the selection hash value with the first body identified by the storage location value.
PHR platform server operating method comprising a.
제8항에 있어서,
상기 위변조 여부를 확인하는 단계는,
상기 제1 헤더에 해쉬 함수를 적용한 해쉬값이, 상기 선택 해쉬값과 일치하고, 상기 제1 바디에 해쉬 함수를 적용한 해쉬값이, 상기 검색된 블록 내에 더 포함되는 제2 해쉬값과 일치하는지 확인하는 단계
를 포함하는 PHR 플랫폼 서버 운영 방법.
The method of claim 8,
Checking whether the forgery,
Checking whether a hash value to which the hash function is applied to the first header matches the selected hash value, and a hash value to which the hash function is applied to the first body is consistent with a second hash value further included in the searched block. step
PHR platform server operating method comprising a.
제3항에 있어서,
상기 헤더로서 더 추출한 상기 진료기록문서 내 요양기관정보 또는 서식종별정보를, 상기 환자정보와 함께 상기 제1 해쉬값으로 변환하는 경우,
상기 환자정보와 관련하여 생성된 블록 중, 상기 선택 해쉬값에 따른 특정 요양기관 또는 특정 서식과 더 관련되는 블록을 선별하고, 상기 선별한 블록 내에 포함되는 상기 제3 진료기록문서의 저장위치값을, 상기 EMR 단말에 전달하는 단계
를 더 포함하는 PHR 플랫폼 서버 운영 방법.
The method of claim 3,
In the case of converting medical institution information or form type information in the medical record document further extracted as the header into the first hash value together with the patient information,
Among the blocks generated in relation to the patient information, a block further related to a specific nursing institution or a specific form according to the selected hash value is selected, and a storage position value of the third medical record document included in the selected block is selected. Transmitting to the EMR terminal
PHR platform server operating method comprising more.
제3항에 있어서,
환자의 단말에 기록된 처방전 및 라이프 로그 중 적어도 하나의 건강데이터를, 상기 환자의 단말에 설치된 PHR 어플리케이션을 통해 일정 주기로 수집하여 상기 다중 분산 저장소에 더 유지하는 단계;
상기 건강데이터 및 상기 진료기록문서 중 적어도 하나의 정보가 상기 다중 분산 저장소에 유지됨에 따라, 상기 정보를 공개할 EMR 단말과 상기 정보의 공개 범위를 설정하는 인터페이스를, PHR 어플리케이션으로 출력하는 단계; 및
상기 EMR 단말이 상기 인터페이스를 통해 공개로 설정된 경우,
상기 조회 요청에 응답하여, 상기 다중 분산 저장소 내 상기 정보에 대한 접근을 허용하는 단계
를 더 포함하는 PHR 플랫폼 서버 운영 방법.
The method of claim 3,
Collecting at least one health data of a prescription and a life log recorded in the terminal of the patient at regular intervals through a PHR application installed in the terminal of the patient and further maintaining the health data in the multiple distributed storage;
Outputting, to the PHR application, an interface for setting the disclosure range of the information and the EMR terminal to publish the information, as at least one of the health data and the medical record document is maintained in the multiple distributed storage; And
If the EMR terminal is set to public through the interface,
In response to the inquiry request, allowing access to the information in the multiple distributed repositories
PHR platform server operating method comprising more.
제9항에 있어서,
상기 환자의 단말에서 상기 PHR 어플리케이션에 대한 로그인 계정 생성 시 입력되는 환자정보를, 해쉬 함수를 적용하여 해쉬값으로 변환하는 단계;
상기 해쉬값을, 상기 PHR 어플리케이션을 관리하는 앱 서버 내에 유지되는 상기 로그인 계정과 별도로, 상기 환자의 단말에 유지하는 단계;
상기 PHR 어플리케이션을 통해 상기 환자의 단말로부터 조회 요청이 수신되는 경우,
상기 해쉬값을, 상기 선택 해쉬값으로서 이용하여 상기 블록체인으로부터 상기 블록을 검색하는 단계; 및
상기 블록 내 저장위치값에 따라, 상기 다중 분산 저장소로부터 식별한 상기 환자의 제3 진료기록문서를, 상기 PHR 어플리케이션에 디스플레이 하는 단계
를 더 포함하는 PHR 플랫폼 서버 운영 방법.
The method of claim 9,
Converting patient information input when a login account for the PHR application is generated at the terminal of the patient to a hash value by applying a hash function;
Maintaining the hash value in a terminal of the patient, separately from the login account maintained in an app server managing the PHR application;
When the inquiry request is received from the terminal of the patient through the PHR application,
Retrieving the block from the blockchain using the hash value as the selected hash value; And
Displaying, on the PHR application, a third medical record of the patient identified from the multiple distributed storages according to the storage location value in the block.
PHR platform server operating method comprising more.
EMR 단말로부터 작성된 제1 진료기록문서를 수집하여, 다중 분산 저장소에 유지하고, 상기 제1 진료기록문서 내 환자정보를 추출하여, 상기 제1 진료기록문서에 대한 헤더로서 레지스트리에 기록하는 기록부;
블록체인 코어를 기반으로, 상기 다중 분산 저장소에서의 상기 제1 진료기록문서의 저장위치값과, 상기 헤더에 대한 해쉬값을 블록화 하여, 블록체인으로 연결하는 블록화부; 및
조회 요청의 발생에 연동하여,
다수의 해쉬값을 나열한 헤더 리스트 중 선택되는 해쉬값에 의해 지정되는 블록을, 상기 블록체인으로부터 검색하고, 검색된 상기 블록을 구성하는 저장위치값을, 상기 조회 요청을 발생한 EMR 단말로 제공하는 처리부
를 포함하는 블록체인 기반의 PHR 플랫폼 서버 운영 시스템.
A recording unit which collects the first medical record document created from the EMR terminal, maintains it in multiple distributed storages, extracts patient information in the first medical record document, and records it in the registry as a header for the first medical record document;
A block unit configured to block a storage position value of the first medical record document and a hash value of the header based on a block chain core and connect the block value to a block chain; And
In conjunction with the occurrence of the inquiry request,
A processing unit for retrieving a block designated by a hash value selected from a header list of a plurality of hash values from the blockchain, and providing a storage location value constituting the retrieved block to the generated EMR terminal;
Blockchain-based PHR platform server operating system comprising a.
제13항에 있어서,
상기 다중 분산 저장소에 기 유지되어 있는 제2 진료기록문서로부터 추출된 환자정보에, 해쉬 함수를 적용하여 해쉬값으로 변환하는 변환부; 및
다수의 해쉬값을 나열한 상기 헤더 리스트를, 상기 EMR 단말에 전달하는 전달부
를 더 포함하고,
상기 처리부는,
상기 헤더 리스트에서 선택되는 해쉬값에 의해 지정되는 블록을, 상기 블록체인으로부터 검색하고, 검색된 상기 블록을 구성하는 저장위치값에 의해 상기 다중 분산 저장소로부터 식별되는 제2 진료기록문서를, 상기 EMR 단말에 디스플레이 하는
PHR 플랫폼 서버 운영 시스템.
The method of claim 13,
A converting unit converting the patient information extracted from the second medical record document pre-stored in the multiple distributed storages into a hash value by applying a hash function; And
A transfer unit for transmitting the header list listing a plurality of hash values to the EMR terminal
More,
The processing unit,
The EMR terminal retrieves a block designated by a hash value selected from the header list from the blockchain, and a second medical record document identified from the multiple distributed storages by a storage location value constituting the retrieved block. Displayed on
PHR platform server operating system.
일정 주기로 다중 분산 저장소에 유지되는 진료기록문서로부터, 헤더로서 추출한 환자정보에, 해쉬 함수를 적용하여 제1 해쉬값으로 변환하는 변환부;
상기 제1 해쉬값을 나열해 작성한 헤더 리스트를, 조회 요청을 발생하는 EMR 단말에 전달하는 전달부; 및
상기 헤더 리스트에서 선택되는 선택 해쉬값을 이용하여, 상기 환자정보와 관련해서 생성된 블록을, 블록체인으로부터 검색하고, 상기 블록 내에 포함되는 저장위치값에 의해 상기 다중 분산 저장소로부터 식별되는 제3 진료기록문서를, 상기 EMR 단말에 디스플레이 하는 처리부
를 포함하는 블록체인 기반의 PHR 플랫폼 서버 운영 시스템.
A conversion unit for converting the patient information extracted as a header from the medical record documents held in the multiple distributed storages at regular intervals to a first hash value by applying a hash function;
A transfer unit for transferring the header list created by listing the first hash values, to the EMR terminal generating the inquiry request; And
A third medical treatment identified from the multi-distributed storage by retrieving a block generated in association with the patient information from the blockchain using a selection hash value selected from the header list, and a storage location value included in the block; A processing unit for displaying the recorded document on the EMR terminal
Blockchain-based PHR platform server operating system comprising a.
제15항에 있어서,
요양기관에서 설치된 EMR 단말로부터 전자진료차트, 진료기록요약지, 진료의뢰서 및 진료회송서 중 적어도 하나의 서식 기반의 상기 진료기록문서를 일정 주기로 수집하여, 상기 다중 분산 저장소 중 임의로 선택된 어느 하나의 분산 저장소에 유지하는 기록부; 및
블록체인 코어를 기반으로, 상기 진료기록문서의 저장위치값과 상기 제1 해쉬값을 포함하는 블록을 생성하고, 이전 주기에 구성한 상기 블록체인에 연결하는 블록화부
를 더 포함하는 PHR 플랫폼 서버 운영 시스템.
The method of claim 15,
Collect the medical record document based on at least one of the electronic medical chart, medical record summary, medical request form and medical report form at regular intervals from the EMR terminal installed in the nursing institution, and distribute any one selected randomly from the multiple distributed storage. A recording unit held in the storage; And
Based on a blockchain core, a blocker for generating a block including a storage location value of the medical record document and the first hash value, and connecting the blockchain configured in a previous cycle
PHR platform server operating system further comprising.
제16항에 있어서,
상기 기록부는,
상기 헤더를, 상기 다중 분산 저장소와 별도로 마련된 레지스트리에 기록하고,
상기 진료기록문서에서 상기 헤더를 제외한 진단내역, 담당의 소견, 주의사항, 처방내역, 검사기록, 처치기록, 수술기록 및 접종기록 중 적어도 하나의 데이터를, 바디로서 추출하여, 상기 어느 하나의 분산 저장소에 유지하고,
상기 블록화부는,
상기 바디에 상기 해쉬 함수를 적용하여 변환되는 제2 해쉬값을 더 포함하여 상기 블록을 생성하는
PHR 플랫폼 서버 운영 시스템.
The method of claim 16,
The recording unit,
Record the header in a registry provided separately from the multiple distributed repositories,
The medical record document extracts at least one data of a diagnosis history, a medical opinion, a precaution, a prescription, a test record, a treatment record, a surgical record, and an inoculation record except the header, and distributes any one of the data. Keep in the store,
The block unit,
Generating the block by further including a second hash value converted by applying the hash function to the body;
PHR platform server operating system.
제17항에 있어서,
상기 헤더가, 상기 다중 분산 저장소와 별도로 마련된 레지스트리에 유지되지 않는 경우,
상기 블록화부는,
상기 헤더를 더 포함하여 상기 블록을 생성하는
PHR 플랫폼 서버 운영 시스템.
The method of claim 17,
If the header is not maintained in a registry provided separately from the multiple distributed repositories,
The block unit,
Generating the block further including the header
PHR platform server operating system.
KR1020180091607A 2018-08-07 2018-08-07 Blockchain-based phr platform server operating method and phr platform server operating system KR102170892B1 (en)

Priority Applications (1)

Application Number Priority Date Filing Date Title
KR1020180091607A KR102170892B1 (en) 2018-08-07 2018-08-07 Blockchain-based phr platform server operating method and phr platform server operating system

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
KR1020180091607A KR102170892B1 (en) 2018-08-07 2018-08-07 Blockchain-based phr platform server operating method and phr platform server operating system

Publications (2)

Publication Number Publication Date
KR20200016458A true KR20200016458A (en) 2020-02-17
KR102170892B1 KR102170892B1 (en) 2020-10-28

Family

ID=69670544

Family Applications (1)

Application Number Title Priority Date Filing Date
KR1020180091607A KR102170892B1 (en) 2018-08-07 2018-08-07 Blockchain-based phr platform server operating method and phr platform server operating system

Country Status (1)

Country Link
KR (1) KR102170892B1 (en)

Cited By (12)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN112927785A (en) * 2021-02-04 2021-06-08 浙江警官职业学院 Integrated treatment method, device, terminal and storage medium
KR102278158B1 (en) * 2020-11-20 2021-07-16 주식회사 아이콘루프 Medical information management system and method with enhanced privacy
KR20220048346A (en) * 2020-10-12 2022-04-19 가톨릭대학교 산학협력단 Health care data providing method based on block-chain, service server and system
KR20220085568A (en) * 2020-12-15 2022-06-22 포항공과대학교 산학협력단 Clinical information providing method and system based on blockchain enhancing security of personal information
KR20220125567A (en) * 2021-03-05 2022-09-14 순천향대학교 산학협력단 System and method for sharing patient's medical data in medical cloud environment
KR20220124674A (en) * 2020-04-29 2022-09-14 주식회사 디케이아이테크놀로지 Personal Health Record Share Method Using Blockchain And PKI Technic
KR102463073B1 (en) * 2022-06-03 2022-11-03 가천대학교 산학협력단 The Method of Saving and Transacting Health Care Information Using Permissioned Blockchain Technology
KR102485525B1 (en) * 2021-11-23 2023-01-06 주식회사 블록오디세이 Method for managing volunteer activity record on blockchain and apparatus for performing the method
KR20230007008A (en) * 2021-07-05 2023-01-12 주식회사 유비케어 Clinical decision support methods and device based on phr and medical records
KR102492835B1 (en) * 2022-07-26 2023-01-30 주식회사 인피니티케어 Method of Utilizing Personnel Healthcare Record My-Data
KR102492837B1 (en) * 2022-07-26 2023-01-30 주식회사 인피니티케어 System for providing personnel customized service using Personnel Healthcare Record My-Data
KR102511466B1 (en) * 2022-06-13 2023-04-24 주식회사 미스블럭 Method of providing medical service platform based on blockchain and apparatus supporting thereof

Citations (4)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
KR20060060162A (en) * 2004-11-30 2006-06-05 경북대학교 산학협력단 System and method for unified management of medical documents
KR101575146B1 (en) * 2014-08-21 2015-12-07 경북대학교 산학협력단 Method for managing medical information, system and recording medium for performing the method
US20180011973A1 (en) * 2015-01-28 2018-01-11 Os - New Horizons Personal Computing Solutions Ltd. An integrated mobile personal electronic device and a system to securely store, measure and manage users health data
KR101882207B1 (en) * 2018-03-23 2018-07-26 주식회사 아이라이즈 Hospital security system that stores patient information on a blockchain basis

Patent Citations (4)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
KR20060060162A (en) * 2004-11-30 2006-06-05 경북대학교 산학협력단 System and method for unified management of medical documents
KR101575146B1 (en) * 2014-08-21 2015-12-07 경북대학교 산학협력단 Method for managing medical information, system and recording medium for performing the method
US20180011973A1 (en) * 2015-01-28 2018-01-11 Os - New Horizons Personal Computing Solutions Ltd. An integrated mobile personal electronic device and a system to securely store, measure and manage users health data
KR101882207B1 (en) * 2018-03-23 2018-07-26 주식회사 아이라이즈 Hospital security system that stores patient information on a blockchain basis

Cited By (13)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
KR20220124674A (en) * 2020-04-29 2022-09-14 주식회사 디케이아이테크놀로지 Personal Health Record Share Method Using Blockchain And PKI Technic
WO2022080827A1 (en) * 2020-10-12 2022-04-21 가톨릭대학교 산학협력단 Method, service server, and system for providing healthcare data on basis of blockchain
KR20220048346A (en) * 2020-10-12 2022-04-19 가톨릭대학교 산학협력단 Health care data providing method based on block-chain, service server and system
KR102278158B1 (en) * 2020-11-20 2021-07-16 주식회사 아이콘루프 Medical information management system and method with enhanced privacy
KR20220085568A (en) * 2020-12-15 2022-06-22 포항공과대학교 산학협력단 Clinical information providing method and system based on blockchain enhancing security of personal information
CN112927785A (en) * 2021-02-04 2021-06-08 浙江警官职业学院 Integrated treatment method, device, terminal and storage medium
KR20220125567A (en) * 2021-03-05 2022-09-14 순천향대학교 산학협력단 System and method for sharing patient's medical data in medical cloud environment
KR20230007008A (en) * 2021-07-05 2023-01-12 주식회사 유비케어 Clinical decision support methods and device based on phr and medical records
KR102485525B1 (en) * 2021-11-23 2023-01-06 주식회사 블록오디세이 Method for managing volunteer activity record on blockchain and apparatus for performing the method
KR102463073B1 (en) * 2022-06-03 2022-11-03 가천대학교 산학협력단 The Method of Saving and Transacting Health Care Information Using Permissioned Blockchain Technology
KR102511466B1 (en) * 2022-06-13 2023-04-24 주식회사 미스블럭 Method of providing medical service platform based on blockchain and apparatus supporting thereof
KR102492835B1 (en) * 2022-07-26 2023-01-30 주식회사 인피니티케어 Method of Utilizing Personnel Healthcare Record My-Data
KR102492837B1 (en) * 2022-07-26 2023-01-30 주식회사 인피니티케어 System for providing personnel customized service using Personnel Healthcare Record My-Data

Also Published As

Publication number Publication date
KR102170892B1 (en) 2020-10-28

Similar Documents

Publication Publication Date Title
KR102170892B1 (en) Blockchain-based phr platform server operating method and phr platform server operating system
US11893129B2 (en) Records access and management
CN110299195B (en) Electronic medical record sharing system with privacy protection based on alliance chain and application method
US11531781B2 (en) Encryption scheme for making secure patient data available to authorized parties
KR102111141B1 (en) Medical data service method and system based on block chain technology
US20070192140A1 (en) Systems and methods for extending an information standard through compatible online access
US10164950B2 (en) Controlling access to clinical data analyzed by remote computing resources
JP2008527478A (en) Mediation server, method and network for querying and referencing medical information
JP2020519097A (en) Creating a matching cohort and exchanging protected data using blockchain
WO2012017612A1 (en) Device for sharing anonymized information, and method for sharing anonymized information
JP4723909B2 (en) Data exchange method, data exchange management device, and data exchange management program
KR100716649B1 (en) Method and system for managing the medical records based on the privilege management infrastructure
US20140156988A1 (en) Medical emergency-response data management mechanism on wide-area distributed medical information network
JP2015526048A (en) Encrypted data storage device for recording
KR102279377B1 (en) Medical information providing system with enhanced personal authority using blockchain
JP5090425B2 (en) Information access control system and method
KR20220124674A (en) Personal Health Record Share Method Using Blockchain And PKI Technic
Ghayvat et al. Sharif: Solid pod-based secured healthcare information storage and exchange solution in internet of things
US10929509B2 (en) Accessing an interoperable medical code
KR102605087B1 (en) System and method for sharing patient's medical data in medical cloud environment
JP6032396B2 (en) Private information browsing method and private information browsing system
Yongjoh et al. Development of an internet-of-healthcare system using blockchain
Taloba et al. A framework for secure healthcare data management using blockchain technology
US11341273B2 (en) Method for combining different partial data
JP2000331101A (en) System and method for managing information related to medical care

Legal Events

Date Code Title Description
A201 Request for examination
E902 Notification of reason for refusal
E701 Decision to grant or registration of patent right
GRNT Written decision to grant