WO2017176093A1 - 블록체인 기반 의료데이터전송시스템, 방법 및 프로그램 - Google Patents
블록체인 기반 의료데이터전송시스템, 방법 및 프로그램 Download PDFInfo
- Publication number
- WO2017176093A1 WO2017176093A1 PCT/KR2017/003836 KR2017003836W WO2017176093A1 WO 2017176093 A1 WO2017176093 A1 WO 2017176093A1 KR 2017003836 W KR2017003836 W KR 2017003836W WO 2017176093 A1 WO2017176093 A1 WO 2017176093A1
- Authority
- WO
- WIPO (PCT)
- Prior art keywords
- block data
- data
- node server
- server
- block
- Prior art date
Links
- 230000005540 biological transmission Effects 0.000 title claims abstract description 75
- 238000000034 method Methods 0.000 title claims abstract description 53
- 238000012790 confirmation Methods 0.000 claims description 5
- 238000006243 chemical reaction Methods 0.000 claims description 2
- 238000005259 measurement Methods 0.000 claims description 2
- 230000004044 response Effects 0.000 claims description 2
- 239000000284 extract Substances 0.000 description 8
- 230000006870 function Effects 0.000 description 5
- 238000013500 data storage Methods 0.000 description 4
- 230000036541 health Effects 0.000 description 4
- 238000004891 communication Methods 0.000 description 3
- 238000003745 diagnosis Methods 0.000 description 3
- 230000008569 process Effects 0.000 description 3
- 238000010586 diagram Methods 0.000 description 2
- 208000019901 Anxiety disease Diseases 0.000 description 1
- 230000036506 anxiety Effects 0.000 description 1
- 201000010099 disease Diseases 0.000 description 1
- 208000037265 diseases, disorders, signs and symptoms Diseases 0.000 description 1
- 230000000694 effects Effects 0.000 description 1
- 230000003287 optical effect Effects 0.000 description 1
- 238000011160 research Methods 0.000 description 1
- 238000012360 testing method Methods 0.000 description 1
- 238000012795 verification Methods 0.000 description 1
Images
Classifications
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04L—TRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
- H04L67/00—Network arrangements or protocols for supporting network services or applications
- H04L67/01—Protocols
- H04L67/10—Protocols in which an application is distributed across nodes in the network
-
- G—PHYSICS
- G16—INFORMATION AND COMMUNICATION TECHNOLOGY [ICT] SPECIALLY ADAPTED FOR SPECIFIC APPLICATION FIELDS
- G16H—HEALTHCARE INFORMATICS, i.e. INFORMATION AND COMMUNICATION TECHNOLOGY [ICT] SPECIALLY ADAPTED FOR THE HANDLING OR PROCESSING OF MEDICAL OR HEALTHCARE DATA
- G16H10/00—ICT specially adapted for the handling or processing of patient-related medical or healthcare data
-
- G—PHYSICS
- G16—INFORMATION AND COMMUNICATION TECHNOLOGY [ICT] SPECIALLY ADAPTED FOR SPECIFIC APPLICATION FIELDS
- G16Z—INFORMATION AND COMMUNICATION TECHNOLOGY [ICT] SPECIALLY ADAPTED FOR SPECIFIC APPLICATION FIELDS, NOT OTHERWISE PROVIDED FOR
- G16Z99/00—Subject matter not provided for in other main groups of this subclass
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04L—TRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
- H04L67/00—Network arrangements or protocols for supporting network services or applications
- H04L67/01—Protocols
- H04L67/10—Protocols in which an application is distributed across nodes in the network
- H04L67/104—Peer-to-peer [P2P] networks
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04L—TRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
- H04L67/00—Network arrangements or protocols for supporting network services or applications
- H04L67/50—Network services
- H04L67/56—Provisioning of proxy services
- H04L67/565—Conversion or adaptation of application format or content
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04L—TRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
- H04L9/00—Cryptographic mechanisms or cryptographic arrangements for secret or secure communications; Network security protocols
- H04L9/30—Public key, i.e. encryption algorithm being computationally infeasible to invert or user's encryption keys not requiring secrecy
Definitions
- the present invention relates to a blockchain-based medical data transmission system, a method and a program, and more particularly, to prevent forgery / falsification or hacking in the process of sharing medical data among a plurality of node servers (eg, hospital servers). And a medical information data transmission system, method and program.
- node servers eg, hospital servers
- the medical data is shared (that is, the transmission and reception of medical data) by peer-to-peer (P2 P) method between each node server, so that the medical data of all the medical institution servers is specified in a specific main server (or central server).
- P2 P peer-to-peer
- the present invention aims to provide a blockchain-based medical data transmission system, method and program that prevents all medical data from being leaked by hacking of a specific server.
- the present invention aims to provide a blockchain-based medical data transmission system, method and program that prevents the leakage of all important medical data by a specific server security.
- a blockchain-based medical data transmission system a method for transmitting original data to another node server desired by a user by checking whether the data stored in a specific node server is forged data when transmitting medical data in a P2P manner.
- a public key-based encryption scheme is applied to improve security.
- a relay server receives one or more block data from a first node server, wherein the block data is medical data within a specific period range for a specific user.
- Block data receiving step which is extracted from the first node server at the request of the client; Storing, by the relay server, the one or more block data in association with the block chain; And a block data transmission step of transmitting the at least one block data to a second node server, wherein the first node server transmits block data according to a request received from the user client.
- the reference block data extracted in the block chain and the first block data and the second block data received from the first node server and the second node server are received. Comparing, wherein the reference block data, the first block data and the second block data are data within the same period for the same user; And identifying different block data among the reference block data, the first block data, and the second block data to determine that the data is forged.
- the relay server receives the specific block data from the transport node server, wherein the transport node server receives the first node.
- a server or a second node server Extracting, in the blockchain, reference block data corresponding to the same condition as the block data received from the transmitting node server; Requesting a node server other than the transmitting node server corresponding to the same condition as the block data received from the transmitting node server to receive the block data; A block data comparison step of comparing the reference block data, the first block data, and the second block data; And transmitting the block data determined to be the original to the third node server, wherein the first block data is block data received from the first node server, and the second block data is the second block server. It may be block data received from the node server.
- the relay server may delete the block data in the stored block chain.
- the relay server may store address information of each node server, and in the block data receiving step, the second identification information input by the user client may be received from the first node server.
- the transmitting of the block data may include transmitting second block information by searching for second address information corresponding to the second identification information, wherein the second identification information is identification information of the second node server.
- the second address information may be address information of the second node server.
- the relay server may further include storing transmission details of specific block data.
- the relay server converts the reference format to the first node server. And requesting post-transmission.
- the block data includes electronic medical record data within a unit period of a specific patient
- the first node server is a server of a first medical institution storing an existing electronic medical record of a user.
- the second node server may be a server of a second medical institution that is requested to transmit the electronic medical record data of the first medical institution by a user.
- the block data may include measurement data within a unit period for a user of a specific biometric data measuring device.
- the block data may be encrypted and transmitted based on the public key provided from the relay server.
- the relay server deletes the block data corresponding to the medical data; wherein the block data receiving step, the block data, And receiving metadata corresponding to the medical data.
- the relay server may receive specific block data and metadata corresponding to the block data from the transmitting node server according to the block data transmission request from the client to the third node server.
- the sending node server is either a first node server or a second node server; Extracting reference metadata corresponding to the reference block data when reference block data corresponding to the same condition as the block data received from the transmitting node server is deleted due to the elapse of the storage period; Requesting a node server other than the transmitting node server corresponding to the same condition as the block data received from the transmitting node server, and receiving metadata corresponding to the block data; And comparing the reference metadata, the first metadata, and the second metadata to determine whether the requested block data is forged or not, wherein the first block data is received from the first node server.
- Block data, and the second block data may be block data received from the second node server.
- the blockchain-based medical data transmission program is combined with a computer, which is a hardware, to execute the above-mentioned method for transmitting medical information data with improved security, and is stored in a medium.
- the encrypted medical data can be shared by the first node server and the second node server through the relay server, security can be enhanced. That is, since P2P transmission of the encrypted medical data is possible through the relay server, all the medical data may not be concentrated in one server, thereby preventing mass leakage of medical information by hacking of a specific server.
- the burden on a specific server can be reduced because a specific server does not need to store all data. That is, unlike the medical information exchange system based on IHE XDS.b, since one embodiment of the present invention does not have to store all data (for example, metadata) for each medical institution server in one central server, The burden on the relay server can be reduced. In addition, the relay server may delete the same block data when the same block data is stored in three or more node servers, thereby further reducing the burden on the relay server.
- block data ie, medical data
- block data ie, medical data
- FIG. 1 is a connection diagram of a first node server, a second node server and a relay server according to an embodiment of the present invention.
- FIG. 2 is a flow chart of a blockchain-based medical data transmission method according to an embodiment of the present invention.
- FIG. 3 is a flowchart of a blockchain-based medical data transmission method for performing forgery verification of specific block data according to an embodiment of the present invention.
- FIG. 4 is a flowchart of a blockchain-based medical data transmission method for searching for and transmitting original data when a specific block data transmission request is made according to an embodiment of the present invention.
- FIG. 5 is a flowchart illustrating a blockchain-based medical data transmission method in which three or more node servers delete corresponding block data in a relay server when certain block data are stored.
- the medical data refers to data that can be used to determine a health state of a specific user (eg, a patient).
- the medical data may include electronic medical record (EMR) data in the hospital. That is, the medical data may include a test result using a medical device or a diagnosis result by a medical staff.
- the medical data may include medical image data measured or photographed by a medical device.
- the medical data may include biosignal data obtained by a mobile terminal (eg, a healthcare device) capable of measuring the biosignal.
- the block data refers to data including medical data within a specific period of time for a specific user.
- the medical data is an electronic medical record
- the block data may include a record of the examination or treatment of a particular patient within a specific time period.
- a specific patient may be diagnosed and diagnosed in hospital A as one block data.
- each block data is obtained by accumulating and accumulating biosignal data of a specific user for a specific time interval.
- the block data is data that can be formed in a block chain, it may be connected to the relay server 100 or the node server (200 or 300) in the form of a block chain and stored.
- FIG. 1 is a connection diagram of a blockchain-based medical data transmission system according to an embodiment of the present invention.
- a blockchain-based medical data transmission system includes a relay server 100 and a plurality of node servers 200 and 300.
- the relay server 100 transmits block data received from a specific node server to another node server.
- the first node server 200 may transmit P2P block data to the second node server 300 through the relay server 100.
- the relay server 100 may include an authentication module. That is, the relay server 100 may store data (eg, key data) necessary for improving security of the transmitted medical data and transmit the data to each node server.
- data eg, key data
- the relay server 100 may store block data provided from each node server in an internal storage space.
- the relay server 100 may store the block data received from the first node server 200 therein, and may use it later when checking forgery. Since three or more block data corresponding to the same condition (that is, the same period of the same user) is required for the forgery check, it is compared with the block data stored in the first node server 200 and the second node server 300.
- the block data stored as reference block data can be utilized.
- the relay server 100 may be connected to the block data to the block chain and stored.
- the relay server 100 may connect and transmit all received block data for transmission, or may form and store a block chain by dividing by user.
- the relay server 100 may form a block chain by forming block data corresponding to each medical data with a block before or after the block data.
- Node servers 200 and 300 are specific servers that contain medical data.
- the node server may correspond to a hospital server storing electronic medical record (EMR) data corresponding to the results of the examination of the patients.
- EMR electronic medical record
- the node server may correspond to a database server that stores biosignal data of users obtained by a mobile terminal (eg, a wearable device having a sensor capable of measuring biosignal data).
- the node server may include a database server that stores the biosignal data obtained from the user while operating by the manufacturer of the particular wearable device.
- the node server may search for the medical data and generate the block data according to a specific medical data transmission request of the user.
- the node server encrypts the block data transmitted based on the public key provided by the relay server 100 to increase security, and the node server receiving the block data from the relay server 100 decrypts it based on the public key. can do.
- Each node server converts the medical data requested by the user into a standard format required by the relay server 100, and converts the standard format into a format used by each hospital when receiving block data including the medical data. It may include a conversion agent. For example, since the medical image data may have a different format depending on the type of device used in each hospital, the relay server 100 needs to convert and store the specific format. Accordingly, the node server may generate and transmit the specific format required by the relay server 100.
- FIG. 2 is a flow chart of a blockchain-based medical data transmission method according to an embodiment of the present invention.
- the relay server 100 receives one or more block data from the first node server 200 (S100; block data). Receiving step); A step in which the relay server 100 combines and stores the one or more block data in a block chain (S200); And transmitting the one or more block data to the second node server 300 (S300; block data transmission step).
- S100 block data
- S200 block data
- S300 block data transmission step
- the relay server 100 receives one or more block data from the first node server 200 (S100; block data receiving step).
- the first node server 200 receives a request for transmission of specific medical data from a user client.
- the first node server 200 generates or extracts block data for specific medical data according to a request received from a user client and transmits the block data to the relay server 100.
- the first node server 200 may be a server (ie, the first medical institution server) of the first medical institution where the user who is the patient has been previously treated, and the second node server 300 is the user who is the patient. May be a server (ie, a second medical institution server) of a second medical institution to receive new treatment.
- the block data includes electronic medical record data within a unit period of a specific patient
- the first node server 200 is a server of a first medical institution that stores a user's existing electronic medical record
- the second node may be a server of a second medical institution that is requested to transmit the electronic medical record data of the first medical institution by the user. May be requested to send.
- the first medical institution server may be requested to transmit the entire electronic medical record of the user from the user client, and may be requested to transmit the electronic medical record for a specific period or a specific disease.
- the first node server 200 may extract medical data (ie, electronic medical record data) corresponding to the request of the user client from an internal database, and extract the extracted medical data (ie, electronic Medical record data) can be generated as block data and transmitted.
- block data may be generated by dividing the extracted electronic medical record into specific unit periods. Accordingly, the first node server 200 may transmit a plurality of block data to the relay server 100 according to a period range requested from the user.
- the node server may generate and store the medical data (for example, medical record data) in the form of block data for each unit period.
- the node server receives a request for the transmission of medical data from the user, the node server corresponds to the requested condition.
- the block data may be searched and transmitted to the relay server 100.
- the first node server 200 may correspond to a biometric data storage server that receives and stores biometric data from a healthcare device of a specific user, and the second node server 300 is accumulated. It may correspond to a server of a medical institution that wants to check the physical state of a user (ie, a patient) by receiving biometric data. That is, in order for the medical staff of the medical institution to reliably grasp the state of health of the user, biometric data may be required within a certain period of time. Accordingly, the user may request the first node server 200 (that is, the biometric data storage server). It may request the provision of medical data (ie biometric data) for a certain period of time.
- the first node server 200 extracts the biometric data within the requested period range and generates the block data, and then relays the data to the second node server 300 (ie, the medical institution server) for transmission. It may transmit to the server 100.
- the second node server 300 ie, the medical institution server
- the first node server 200 may encrypt and transmit block data based on a public key infrastructure (PKI) provided by the relay server 100.
- PKI public key infrastructure
- a user eg, a patient
- the transmission can be performed by encrypting on the basis of the public key provided from the relay server 100.
- the method of encrypting the block data is not limited to the public key method, but various methods such as the SSL method may be applied.
- the relay server 100 combines and stores the one or more block data in the block chain (S200). That is, the relay server 100 may store one or more block data received for transmission to the second node server 300.
- the block data stored in the relay server 100 can be used to check forgery as described below.
- the relay server 100 stores the block data received from the first node server 200 and transmitted to the second node server 300 therein, and extracts the first node server when it is necessary to check whether the forgery is forged.
- the block data of the same condition that is, the same period of the same user
- the relay server 100 does not receive the same block data from the first node server 200 again, and transmits block data to be transmitted by searching the internal database. Can be extracted and sent. For example, when a history of transmitting block data transmitted by the first node server 200 is recorded, the relay server 100 receives only identification information of the corresponding block data from the first node server 200. The stored block data corresponding to the identification information may be extracted and then transmitted to the second node server 300.
- the relay server 100 may form and store block data for each user at the time of forming and storing block data in a block chain. As the relay server 100 forms a blockchain by dividing the user into internal storage spaces, it is possible to quickly search for necessary block data.
- the relay server 100 transmits the one or more block data to the second node server 300 (S300; block data transmission step).
- the relay server 100 may store address information of each node server. That is, when the first node server 200 receives a block data transmission request from a user client to a specific node server (that is, the second node server 300), the relay server 100 receives the second node server 300.
- the identification information (for example, the name or identification code of the medical institution corresponding to the second node server 300) can be received.
- the relay server 100 may search for address information of the node server corresponding to the received identification information and transmit block data to the corresponding address.
- the block data receiving step (S100) receives the second identification information (that is, identification information of the second node server 300) input by the user client from the first node server 200
- the block data may be transmitted by searching for second address information corresponding to the second identification information (ie, address information of the second node server 300).
- the reference block data extracted from the block chain and the first node server 200 and the second node server 300 are received.
- the reference block data, the first block data and the second block data may be data within the same period for the same user.
- the relay server 100 may receive a request for confirming whether or not the specific block data included in the specific node server is forged data.
- the relay server 100 may receive one or more block data (for example, first block data) for which forgery is desired from a specific node server (for example, the first node server 200), and another node server.
- the second node server 300 may receive one or more block data (for example, second block data) having the same condition by transmitting a request to the second node server 300.
- the relay server 100 may search for and extract reference block data having the same condition stored therein. Thereafter, the relay server 100 may compare the reference block data, the first block data, and the second block data (S400), and determine whether or not the data is forged (S500).
- the relay server 100 determines that the first block data is different from the second block data and the reference block data, and the first node is forged. The determination result may be transmitted to the server 200. In addition, if the first block data, the second block data and the reference block data are all different, the relay server 100 may transmit that it is impossible to determine whether the forgery.
- block data having the same condition is transmitted to and stored in three or more node servers, the number of block data that can be compared may be increased, so that it may be easy to determine whether a particular block data is forged.
- the relay server 100 receives specific block data from the transmitting node server according to the block data transmission request from the client to the third node server received from the client.
- the sending node server is either the first node server 200 or the second node server 300, step S600; Extracting reference block data corresponding to the same condition as the block data received from the transmitting node server in the block chain (S700); Requesting a node server other than the transmitting node server corresponding to the same condition as the block data received from the transmitting node server to receive the block data (S800); A block data comparison step of comparing the reference block data, the first block data, and the second block data (S900); And transmitting the block data determined to be the original to the third node server (S1000).
- the first block data may be block data received from the first node server
- the second block data may be block data received from the second node server
- the reference block data may be stored in the relay server 100. It may be stored block data.
- the relay server 100 may receive specific block data from the transmission node server according to the block data transmission request from the client to the third node server that the specific transmission node server receives from the client (S600).
- the transmitting node server may be either the first node server 200 or the second node server 300. That is, the first node server 200 or the second node server 300 may transmit to the relay server 100 according to a request for transmitting specific block data from the user client.
- the relay server 100 may extract the reference block data corresponding to the same condition (that is, the same period range of the same user) as the block data received from the transmitting node server (S700), By requesting a node server other than the transmitting node server (that is, the second node server 300 when the first node server 200 is the transmitting node server) corresponding to the same condition as the block data received from the transmitting node server, Block data may be received (S800). Thereafter, the relay server 100 may compare the reference block data, the first block data, and the second block data (S900). Thereafter, the relay server 100 may transmit the block data determined as the original to the third node server (S1000).
- the relay server 100 is a block data (that is, block data or a relay server stored in a node server other than the transmitting node server) determined as the original data that is not forged when the block data received from the transmitting node server is forged data.
- Reference block data stored in 100 may be transmitted to the third node server.
- the original forged data of a specific user can be transmitted to a node server (that is, a third node server) desired by the user, and the user can continue the treatment at another medical institution based on the original data.
- the relay server 100 may delete the block data in the stored block chain (S1100).
- the relay server 100 stores block data corresponding to the medical data, leakage of the medical data may occur due to the hacking of the relay server 100. Therefore, since the relay server 100 requires at least three or more block data stored on another server under the same condition for forgery and confirmation, the relay server 100 is stored only in the first node server 200 and the second node server 300. It can be stored in the database in the relay server 100 for forgery check.
- the relay server 100 may further include storing transmission details of specific block data. That is, when the relay server 100 receives a transmission request from a specific node server and transmits the request to the node server, the relay server 100 may store a transmission history of specific block data.
- the transmission history data may include identification information of the node server transmitted to the relay server 100 and identification information of the node server transmitted from the relay server 100.
- the node server identification information for matching the block data and storing the block data of the same condition may be stored.
- the relay server 100 does not store the block data (for example, when the block data in the relay server 100 is deleted as it is transmitted to three or more node servers), identification information is given for each block data, and the corresponding information is given.
- the block data identification information may be stored in the relay server 100, and the block data identification information may be matched with the identification information of the node server storing the block data.
- the relay server 100 may determine to which node server to request block data to be compared with the transmitted block data upon confirmation of forgery. For example, when specific block data is transmitted from the first node server 200 to the second node server 300 and transmitted from the second node server 300 to the third node server, the relay server 100 The transmission information may store identification information of the first node server 200, the second node server 300, and the third node server. Thereafter, when the third node server is requested to transmit to the fourth node server from the user client, the relay server 100 receives the block data requested from the third node server, and the same condition as the block data requested to be transmitted. It is possible to request the provision of block data of the same condition to the first node server 200 and the second node server 300 recorded in the transmission history by including the block data of.
- the relay server 100 converts the reference format to the first node server 200 and requests for transmission.
- the reference format in the relay server 100 may be determined according to the type of information included in the block data. For example, when the medical data included in the block data is medical image data, the medical image data acquired by the same type of device may also have different extensions. For example, the relay server 100 may request generation of medical data included in the block data in a predetermined reference format.
- the relay server deletes the block data when a specific storage period elapses. For example, if the block data is a medical image (eg, CT image or MR image) as medical data, the burden on the server may be increased if the relay server continuously accumulates a large amount of block data therein. Accordingly, the relay server may set a period (ie, a storage period) for storing block data of a certain capacity or more internally, and delete the block data when the storage period is exceeded.
- a period ie, a storage period
- the relay server may directly check the forgery by comparing the medical data contained in the block data received from the plurality of node servers with the medical data of the same condition stored in the relay server, and when receiving the block data from each node server By comparing the received metadata it can be checked whether the forgery. That is, the block data receiving step S100 may include receiving metadata corresponding to medical data in the block data.
- the metadata may include information such as a diagnosis hospital, a diagnosis name, a patient name, and the like of corresponding medical data.
- block data including a large amount of medical data may be deleted in the relay server when a specific storage period elapses, and the relay server may identify the forgery by comparing the large amount of medical data itself. This can take a long time. At this time, the relay server may determine whether the forgery by comparing the metadata corresponding to the medical data in place of the medical data itself contained in the block data.
- the relay server when the medical image data, which is a large amount of data, is deleted after a specific storage period, the first node server and the second node are deleted. Only the server stores the medical image data, so it is not possible to determine which medical data has been tampered by comparing the two medical data, and thus it is not possible to directly determine the forgery by comparing the medical data directly. Therefore, when the relay server receives block data including medical image data from the node server, the relay server may also receive metadata including diagnostic results determined by the radiologist.
- medical image data for example, CT image and MR image
- the relay server may determine whether or not forgery by comparing metadata about specific medical data stored in each server (ie, a plurality of node servers and a relay server) when the forgery is checked. If the information in the metadata received from each server is different, the relay server may determine that the medical data is likely to be forged.
- the relay server may receive specific block data and metadata corresponding to the block data from the transmitting node server according to the block data transmission request from the client to the third node server received from the client. Can be.
- the transport node server may be either a first node server or a second node server.
- the relay server may extract the reference metadata corresponding to the reference block data.
- the relay server may request a node server other than the transmitting node server corresponding to the same condition as the block data received from the transmitting node server and receive metadata corresponding to the block data. Thereafter, the relay server may compare the reference metadata, the first metadata, and the second metadata to determine whether the transmission block data is forged or not.
- the first block data may be block data received from the first node server
- the second block data may be block data received from the second node server.
- the relay server may include metadata (e.g., first metadata) stored in other node servers and relay servers (e.g., when the first node server receives a transmission request from a client). For example, when different from the reference metadata and the second metadata, it may be determined that the block data (for example, the first block data) requested to be transmitted may have been forged.
- the relay server may perform a forgery determination using transmission history data, not medical data itself included in the block data. That is, if the relay server is difficult to directly compare the medical data in the block data (for example, if the direct comparison is difficult because the medical data is a large amount of data such as image data, or the medical data is deleted in the relay server and compared) Forgery can be evaluated by comparing the transmission history data including the number of data, etc.), transmission file format, file capacity, transmission destination information, transmission time, and the like. For example, if the file capacity of medical data (or block data including specific medical data) stored in the first node server is different from the file capacity recorded in the second node server and the relay server, the relay server may be configured as the first node. The medical data stored in the server may be judged to have been forged.
- the blockchain-based medical data transmission method according to the embodiment of the present invention described above may be implemented as a program (or an application) and stored in a medium in order to be executed in combination with a computer which is hardware.
- the above-described program includes C, C ++, JAVA, machine language, etc. which can be read by the computer's processor (CPU) through the computer's device interface so that the computer reads the program and executes the methods implemented as the program.
- Code may be coded in the computer language of. Such code may include functional code associated with a function or the like that defines the necessary functions for executing the methods, and includes control procedures related to execution procedures necessary for the computer's processor to execute the functions according to a predetermined procedure. can do.
- the code may further include memory reference code for additional information or media required for the computer's processor to execute the functions from which location (address) of the internal or external memory of the computer should be referenced. have.
- the code may be used to communicate with any other computer or server remotely using the communication module of the computer. It may further include a communication related code for whether to communicate, what information or media should be transmitted and received during communication.
- the stored medium is not a medium for storing data for a short time such as a register, a cache, a memory, but semi-permanently, and means a medium that can be read by the device.
- examples of the storage medium include, but are not limited to, a ROM, a RAM, a CD-ROM, a magnetic tape, a floppy disk, an optical data storage device, and the like. That is, the program may be stored in various recording media on various servers to which the computer can access or various recording media on the computer of the user. The media may also be distributed over network coupled computer systems so that the computer readable code is stored in a distributed fashion.
Landscapes
- Engineering & Computer Science (AREA)
- Signal Processing (AREA)
- Computer Networks & Wireless Communication (AREA)
- Computing Systems (AREA)
- Computer Security & Cryptography (AREA)
- Theoretical Computer Science (AREA)
- General Health & Medical Sciences (AREA)
- Medical Informatics (AREA)
- Health & Medical Sciences (AREA)
- Public Health (AREA)
- Primary Health Care (AREA)
- Epidemiology (AREA)
- Medical Treatment And Welfare Office Work (AREA)
Abstract
본 발명은 보안성이 향상된 블록체인 기반 의료데이터전송방법 및 프로그램에 관한 것이다. 본 발명의 일실시예에 따른 블록체인 기반 의료데이터전송방법은, 중계서버가 제1노드서버로부터 하나 이상의 블록데이터를 수신하는 단계(S100; 블록데이터 수신단계); 중계서버가 상기 하나 이상의 블록데이터를 블록체인에 결합하여 저장하는 단계(S200); 및 상기 하나 이상의 블록데이터를 제2노드서버로 전송하는 단계(S300; 블록데이터전송단계);를 포함한다. 본 발명에 따르면, 여러 노드서버에 저장된 블록데이터(즉, 의료데이터)를 비교하여 사용자에 의해 전송요청된 의료데이터가 위변조되었는지 여부를 확인할 수 있어서, 위변조되지 않은 원본데이터를 원하는 노드서버로 전송할 수 있다.
Description
본 발명은 블록체인 기반 의료데이터전송시스템, 방법 및 프로그램에 관한 것으로, 보다 자세하게는 복수의 노드서버(예를 들어, 병원서버) 간에 의료데이터를 공유하는 과정에서 위/변조 또는 해킹을 방지할 수 있는, 의료정보데이터 전송시스템, 방법 및 프로그램에 관한 것이다.
사람들의 헬스케어(Health care)에 대한 관심이 높아짐에 따라 의료 데이터 플랫폼 등의 의료IT서비스에 대한 관심과 수요가 높아지고 있다. 이에 따라 관련기업들은 데이터 및 환자 프라이버시 강화를 위한 연구를 계속해서 진행 중이다.
그러나 의료정보 해킹 사고는 빈번히 발생하고 있으며, 서비스를 이용하는 이용자의 불안감이 증폭되고 있다. 또한, 관련 서비스의 이용자가 늘어남에 따라 해킹 시에 유출되는 의료정보의 규모도 커지고 있다. 따라서, 보안성을 향상시켜서 해킹에 의한 사용자(또는 환자)의 의료정보 유출을 방지하면서 각 병원 간의 의료정보를 공유 또는 전송할 수 있는 시스템, 방법 및 프로그램의 개발이 필요한 실정이다.
중계서버를 통해 각 노드서버 간의 피투피(Peer-to-Peer; 이하 P2 P)방식으로 의료데이터 공유(즉, 의료데이터의 송수신)하여, 모든 의료기관서버의 의료데이터를 특정한 메인서버(또는 중앙서버)에서 관리하지 않아 특정한 서버의 해킹에 의해 모든 의료데이터가 유출되는 것을 방지하는, 블록체인 기반 의료데이터전송시스템, 방법 및 프로그램을 제공하고자 한다. 즉, 단순히 메인서버상에 모든 사용자의 의료데이터 자체 또는 각 노드서버(예를 들어, 병원 내 EMR데이터 등을 저장한 병원서버 또는 웨어러블 디바이스 등을 통해 획득된 사용자의 생체데이터를 저장하는 데이터서버 등) 내 모든 의료데이터에 대한 메타데이터를 특정한 메인서버에 저장하지 않으므로, 특정한 서버 보안에 의해 중요한 의료데이터 전체가 유출되는 것을 방지하는, 블록체인 기반 의료데이터전송시스템, 방법 및 프로그램을 제공하고자 한다.
또한, P2P방식으로 의료데이터를 전송 시에 특정한 노드서버 내에 저장된 데이터가 위변조된 데이터인지 여부를 확인하여, 원본데이터를 사용자가 원하는 다른 노드서버로 전송하는, 블록체인 기반 의료데이터전송시스템, 방법 및 프로그램을 제공하고자 한다.
또한, 사용자의 요청에 따라 특정한 제1노드서버로부터 제2노드서버로 의료데이터를 전송 시에 타인에게 의료데이터가 유출되는 것을 방지하기 위해, 공개키 기반의 암호화 방식을 적용하여 보안성을 향상시킨, 블록체인 기반 의료데이터전송시스템, 방법 및 프로그램을 제공하고자 한다.
본 발명의 일실시예에 따른 블록체인 기반 의료데이터전송방법은, 중계서버가 제1노드서버로부터 하나 이상의 블록데이터를 수신하되, 상기 블록데이터는 특정한 사용자에 대한 특정기간범위 내의 의료데이터로서, 사용자 클라이언트의 요청에 따라 상기 제1노드서버에서 추출되는 것인, 블록데이터수신단계; 중계서버가 상기 하나 이상의 블록데이터를 블록체인에 결합하여 저장하는 단계; 및 상기 하나 이상의 블록데이터를 제2노드서버로 전송하는 블록데이터전송단계;를 포함하며, 상기 제1노드서버는 상기 사용자 클라이언트로부터 수신된 요청에 따라 블록데이터를 전송한다.
또한, 특정한 블록데이터의 위변조여부 확인요청을 수신하는 경우, 상기 블록체인 내에서 추출되는 기준블록데이터와 상기 제1노드서버 및 상기 제2노드서버로부터 수신되는 제1블록데이터 및 제2블록데이터를 비교하되, 상기 기준블록데이터, 제1블록데이터 및 제2블록데이터는 동일한 사용자에 대한 동일기간 내의 데이터인, 블록데이터비교단계; 및 상기 기준블록데이터, 제1블록데이터 및 제2블록데이터 중 상이한 블록데이터를 파악하여 위변조된 것으로 판단하는 단계;를 더 포함할 수 있다.
또한, 특정한 전송노드서버가 상기 클라이언트로부터 수신하는 제3노드서버로의 상기 블록데이터 전송요청에 따라, 상기 중계서버가 특정한 블록데이터를 상기 전송노드서버로부터 수신하되, 상기 전송노드서버는 제1노드서버 또는 제2노드서버 중 어느 하나인, 단계; 상기 전송노드서버로부터 수신된 블록데이터와 동일한 조건에 해당하는 기준블록데이터를 상기 블록체인 내에서 추출하는 단계; 상기 전송노드서버로부터 수신된 블록데이터와 동일한 조건에 해당하는 상기 전송노드서버 이외의 노드서버에 요청하여 블록데이터를 수신하는 단계; 상기 기준블록데이터, 제1블록데이터 및 제2블록데이터를 비교하는 블록데이터비교단계; 및 원본으로 판단되는 블록데이터를 상기 제3노드서버로 전송하는 단계;를 더 포함하되, 상기 제1블록데이터는 상기 제1노드서버로부터 수신되는 블록데이터이며, 상기 제2블록데이터는 상기 제2노드서버로부터 수신되는 블록데이터일 수 있다.
또한, 3개 이상의 노드서버가 특정한 블록데이터를 저장하면, 상기 중계서버가 저장된 블록체인 내의 상기 블록데이터를 삭제하는 단계;를 더 포함할 수 있다.
또한, 상기 중계서버는 각 노드서버의 주소정보를 저장하는 것을 특징으로 하며, 상기 블록데이터수신단계는, 상기 사용자 클라이언트에 의해 입력되는 제2식별정보를 제1노드서버로부터 수신하는 것을 특징으로 하며, 상기 블록데이터전송단계는, 상기 제2식별정보에 상응하는 제2주소정보를 탐색하여 상기 블록데이터를 전송하는 것을 특징으로 하며, 상기 제2식별정보는 상기 제2노드서버의 식별정보이며, 상기 제2주소정보는 상기 제2노드서버의 주소정보일 수 있다.
또한, 상기 중계서버가 특정한 블록데이터의 전송내역을 저장하는 단계;를 더 포함할 수 있다.
또한, 블록데이터에 포함되는 정보별로 상기 중계서버 내 기준포맷이 설정되어 있고, 상기 블록데이터 내에 포함되는 정보의 포맷이 기준포맷과 상이한 경우, 상기 중계서버가 상기 제1노드서버로 기준포맷으로 변환 후 전송을 요청하는 단계;를 더 포함할 수 있다.
또한, 상기 노드서버가 의료기관서버인 경우, 상기 블록데이터는 특정한 환자의 단위기간 내의 전자의무기록데이터를 포함하는 것이며, 상기 제1노드서버는 사용자의 기존 전자의무기록을 저장하는 제1의료기관의 서버이며, 상기 제2노드서버는 사용자에 의해 상기 제1의료기관의 전자의무기록데이터의 전송이 요청되는 제2의료기관의 서버일 수 있다.
또한, 상기 노드서버가 생체데이터서버인 경우, 상기 블록데이터는 특정한 생체데이터측정장치의 사용자에 대한 단위기간 내의 측정데이터를 포함하는 것을 특징으로 할 수 있다.
또한, 상기 블록데이터는 상기 중계서버에서 제공되는 공개키를 기반으로 암호화되어 전송되는 것을 특징으로 할 수 있다.
또한, 상기 의료데이터가 대용량데이터인 경우, 특정한 저장기간이 경과되면, 중계서버가 상기 의료데이터에 상응하는 블록데이터를 삭제하는 단계;를 더 포함하며, 상기 블록데이터수신단계는, 상기 블록데이터 내의 의료데이터에 대응하는 메타데이터를 수신하는 단계;를 포함하는 단계;를 포함할 수 있다.
또한, 특정한 전송노드서버가 상기 클라이언트로부터 수신하는 제3노드서버로의 상기 블록데이터 전송요청에 따라, 상기 중계서버가 특정한 블록데이터 및 상기 블록데이터에 대응하는 메타데이터를 상기 전송노드서버로부터 수신하되, 상기 전송노드서버는 제1노드서버 또는 제2노드서버 중 어느 하나인, 단계; 상기 전송노드서버로부터 수신된 블록데이터와 동일한 조건에 해당하는 기준블록데이터가 저장기간 경과에 의해 삭제된 경우, 상기 기준블록데이터에 대응하는 기준메타데이터를 추출하는 단계; 상기 전송노드서버로부터 수신된 블록데이터와 동일한 조건에 해당하는 상기 전송노드서버 이외의 노드서버에 요청하여 블록데이터에 대응하는 메타데이터를 수신하는 단계; 및 상기 기준메타데이터, 제1 메타데이터 및 제2메타데이터를 비교하여 상기 전송요청된 블록데이터의 위변조 여부를 판단하는 단계;를 포함하며, 상기 제1블록데이터는 상기 제1노드서버로부터 수신되는 블록데이터이며, 상기 제2블록데이터는 상기 제2노드서버로부터 수신되는 블록데이터일 수 있다.
본 발명의 또 다른 일실시예에 따른 블록체인 기반 의료데이터전송프로그램은, 하드웨어인 컴퓨터와 결합되어 상기 언급된 보안성이 향상된 의료정보데이터 전송방법을 실행하며, 매체에 저장된다.
상기와 같은 본 발명에 따르면, 아래와 같은 다양한 효과들을 가진다.
첫째, 암호화된 의료데이터를 중계서버를 통해 제1노드서버와 제2노드서버가 공유할 수 있으므로, 보안성이 높아질 수 있다. 즉, 중계서버를 통해 암호화된 의료데이터의 P2P전송이 가능하도록 하므로, 모든 의료데이터가 하나의 서버에 밀집되지 않을 수 있어, 특정 서버의 해킹에 의한 의료정보 대량 유출을 방지할 수 있다.
둘째, 각 노드서버에 분산하여 데이터를 저장하여두고 필요 시에 송수신을 수행하므로, 특정 서버가 모든 데이터를 저장하지 않아도 되어서 특정 서버의 부담을 줄일 수 있다. 즉, IHE XDS.b를 기반으로 하는 진료정보 교류체계와 달리, 본 발명의 일실시예는 하나의 중앙서버에 각 의료기관서버에 대한 데이터(예를 들어, 메타데이터)를 모두 보관하지 않아도 되므로, 중계서버의 부담이 줄어들 수 있다. 또한, 중계서버는 3개 이상의 노드서버에 동일한 블록데이터가 저장되는 경우에 동일한 블록데이터를 삭제할 수 있으므로, 중계서버의 부담을 더욱 줄여줄 수 있다.
셋째, 여러 노드서버에 저장된 블록데이터(즉, 의료데이터)를 비교하여 사용자에 의해 전송요청된 의료데이터가 위변조되었는지 여부를 확인할 수 있어서, 위변조되지 않은 원본데이터를 원하는 노드서버로 전송할 수 있다. 이를 통해, 사용자(즉, 환자)는 위변조되지 않은 본인의 의료기록을 기반으로 다른 병원에서 연속성이 보장되는 진료를 받을 수 있다.
도 1은 본 발명의 일실시예에 따른 제1노드서버, 제2노드서버 및 중계서버의 연결관계도이다.
도 2은 본 발명의 일실시예에 따른 블록체인 기반 의료데이터전송방법의 순서도이다.
도 3은 본 발명의 일실시예에 따른 특정한 블록데이터의 위변조 확인을 수행하는 블록체인 기반 의료데이터전송방법의 순서도이다.
도 4는 본 발명의 일실시예에 따른 특정한 블록데이터 전송 요청 시에 원본데이터를 탐색하여 전송하는 블록체인 기반 의료데이터전송방법의 순서도이다.
도 5는 본 발명의 일실시예에 따른 3개 이상의 노드서버가 특정한 블록데이터 저장 시에 중계서버 내에서 해당 블록데이터를 삭제하는, 블록체인 기반 의료데이터전송방법의 순서도이다.
이하, 첨부된 도면을 참조하여 본 발명의 바람직한 실시예를 상세히 설명한다. 본 발명의 이점 및 특징, 그리고 그것들을 달성하는 방법은 첨부되는 도면과 함께 상세하게 후술되어 있는 실시예들을 참조하면 명확해질 것이다. 그러나 본 발명은 이하에서 게시되는 실시예들에 한정되는 것이 아니라 서로 다른 다양한 형태로 구현될 수 있으며, 단지 본 실시예들은 본 발명의 게시가 완전하도록 하고, 본 발명이 속하는 기술분야에서 통상의 지식을 가진 자에게 발명의 범주를 완전하게 알려주기 위해 제공되는 것이며, 본 발명은 청구항의 범주에 의해 정의될 뿐이다. 명세서 전체에 걸쳐 동일 참조 부호는 동일 구성 요소를 지칭한다.
다른 정의가 없다면, 본 명세서에서 사용되는 모든 용어(기술 및 과학적 용어를 포함)는 본 발명이 속하는 기술분야에서 통상의 지식을 가진 자에게 공통적으로 이해될 수 있는 의미로 사용될 수 있을 것이다. 또 일반적으로 사용되는 사전에 정의되어 있는 용어들은 명백하게 특별히 정의되어 있지 않은 한 이상적으로 또는 과도하게 해석되지 않는다.
본 명세서에서 사용된 용어는 실시예들을 설명하기 위한 것이며 본 발명을 제한하고자 하는 것은 아니다. 본 명세서에서, 단수형은 문구에서 특별히 언급하지 않는 한 복수형도 포함한다. 명세서에서 사용되는 "포함한다(comprises)" 및/또는 "포함하는(comprising)"은 언급된 구성요소 외에 하나 이상의 다른 구성요소의 존재 또는 추가를 배제하지 않는다.
본 명세서에서 의료데이터는 특정한 사용자(예를 들어, 환자)의 건강 상태의 판단에 활용될 수 있는 데이터를 의미한다. 예를 들어, 의료데이터는 병원 내 전자의무기록 (Electronic Medical Record; EMR) 데이터를 포함할 수 있다. 즉, 의료데이터는 의료장비를 이용한 검사결과 또는 의료진에 의한 진단결과 등을 포함할 수 있다. 또한, 예를 들어, 의료데이터는 의료장비에 의해 측정 또는 촬영된 의료영상데이터 등을 포함할 수 있다. 또한, 예를 들어, 의료데이터는 생체신호를 측정할 수 있는 이동단말기(예를 들어, 헬스케어 디바이스)에 의해 획득되는 생체신호데이터를 포함할 수 있다.
본 명세서에서 블록데이터는 특정한 사용자에 대한 특정기간범위 내의 의료데이터를 포함하는 데이터를 의미한다. 예를 들어, 의료데이터가 전자의무기록인 경우, 블록데이터는 특정한 기간 내에 특정한 환자의 검사 또는 진료에 대한 기록을 포함할 수 있다. 또한, 예를 들어, 특정한 환자가 병원A에서 검진하여 진단받은 결과를 하나의 블록데이터로 형성할 수 있다. 또한, 예를 들어, 이동단말기(예를 들어, 헬스케어 디바이스)에 의해 측정되는 생체신호 데이터를 의료정보데이터로 하는 경우, 각 블록데이터는 특정 시간 간격동안 획득되어 누적된 특정한 사용자의 생체신호데이터를 기본단위로 할 수 있다. 또한, 블록데이터는 블록체인으로 형성될 수 있는 데이터로, 중계서버(100) 또는 노드서버(200 또는 300)에 블록체인의 형태로 연결되어 저장될 수 있다.
이하, 도면을 참조하여 본 발명의 실시예들에 따른 블록체인 기반 의료데이터전송시스템, 방법 및 프로그램에 대해 설명하기로 한다.
도 1은 본 발명의 일실시예에 따른 블록체인 기반 의료데이터전송시스템의 연계관계도이다.
도 1을 참조하면, 본 발명의 일실시예에 따른 블록체인 기반 의료데이터전송시스템은, 중계서버(100) 및 복수의 노드서버(200 및 300)를 포함한다.
중계서버(100)는 특정한 노드서버로부터 수신되는 블록데이터를 다른 노드서버로 전송하는 역할을 수행한다. 제1노드서버(200)는 중계서버(100)를 통해 제2노드서버(300)로 블록데이터를 P2P전송할 수 있다.
또한, 중계서버(100)는 인증모듈을 포함할 수 있다. 즉, 중계서버(100)는 전송되는 의료데이터의 보안성 향상에 필요한 데이터(예를 들어, 키(Key) 데이터)를 저장하고 각 노드서버로 전송할 수 있다.
또한, 중계서버(100)는 각 노드서버에서 제공받은 블록데이터를 내부 저장공간에 저장할 수 있다. 중계서버(100)는 제1노드서버(200)로부터 수신한 블록데이터를 내부에 저장하여 두고, 추후에 위변조 여부 확인 시에 이용할 수 있다. 위변조 여부 확인을 위해서는 동일한 조건(즉, 동일한 사용자의 동일한 기간)에 해당하는 3개 이상의 블록데이터가 필요하므로, 제1노드서버(200) 및 제2노드서버(300)에 저장된 블록데이터와 비교하기 위한 기준블록데이터로 저장한 블록데이터를 활용할 수 있다.
또한, 중계서버(100)는 블록데이터를 블록체인으로 연결하여 저장할 수 있다. 중계서버(100)는 전달하기 위해 수신한 모든 블록데이터를 연결하여 전송할 수도 있고, 사용자별로 나누어서 블록체인을 형성하여 저장할 수도 있다. 중계서버(100)는 각각의 의료데이터에 상응하는 블록데이터를 이전 또는 이후의 블록과의 관계를 형성하여 블록체인을 이루어 저장할 수 있다.
노드서버(200 및 300)는 의료데이터를 포함하는 특정한 서버이다. 예를 들어, 노드서버는 환자들의 검진 결과 등에 해당하는 전자의무기록(EMR) 데이터를 저장하고 있는 병원서버가 해당될 수 있다. 또한, 예를 들어, 노드서버는 이동단말기(예를 들어, 생체신호 데이터를 측정할 수 있는 센서를 구비한 웨어러블디바이스)에 의해 획득된 사용자들의 생체신호 데이터를 저장하는 데이터베이스서버가 해당될 수 있다. 즉, 노드서버는 특정한 웨어러블 디바이스의 제조사가 운영하면서 사용자로부터 획득된 생체신호데이터를 저장하는 데이터베이스서버를 포함할 수 있다.
노드서버는 사용자의 특정한 의료데이터 전송요청에 따라 해당 의료데이터를 탐색한 후 블록데이터로 생성할 수 있다. 또한, 노드서버는 보안성을 높이기 위해 중계서버(100)에서 제공하는 공개키를 기반으로 전송하는 블록데이터를 암호화하고, 중계서버(100)로부터 블록데이터를 수신하는 노드서버는 공개키 기반으로 복호화할 수 있다.
각각의 노드서버는 사용자에 의해 요청되는 의료데이터를 중계서버(100)가 요구하는 기준포맷으로 변환하고, 의료데이터를 포함하는 블록데이터 수신시에 기준포맷을 각 병원에서 사용하는 포맷으로 변환하는 포맷변환에이전트를 포함할 수 있다. 예를 들어, 의료영상데이터는 각 병원에서 사용하는 장치의 종류 등에 의해 포맷이 상이할 수 있으므로, 중계서버(100)는 특정한 포맷으로 변환하여 저장할 필요가 있다. 따라서, 노드서버는 중계서버(100)가 요구하는 특정한 포맷으로 생성하여 전송할 수 있다.
도 2은 본 발명의 일실시예에 따른 블록체인 기반 의료데이터전송방법의 순서도이다.
도 2를 참조하면, 본 발명의 일실시예에 따른 블록체인 기반 의료데이터전송방법은, 중계서버(100)가 제1노드서버(200)로부터 하나 이상의 블록데이터를 수신하는 단계(S100; 블록데이터수신단계); 중계서버(100)가 상기 하나 이상의 블록데이터를 블록체인에 결합하여 저장하는 단계(S200); 및 상기 하나 이상의 블록데이터를 제2노드서버(300)로 전송하는 단계(S300; 블록데이터전송단계);를 포함한다. 본 발명의 일 실시예에 따른 블록체인 기반 의료데이터전송방법을 순서대로 설명한다.
중계서버(100)가 제1노드서버(200)로부터 하나 이상의 블록데이터를 수신한다(S100; 블록데이터수신단계). 제1노드서버(200)는 사용자 클라이언트로부터 특정한 의료데이터의 전송요청을 수신한다. 제1노드서버(200)는 사용자 클라이언트로부터 수신된 요청에 따라 특정한 의료데이터에 대한 블록데이터를 생성 또는 추출하여 중계서버(100)로 전송한다.
일실시예로, 제1노드서버(200)는 환자인 사용자가 기존에 진료를 받은 제1의료기관의 서버(즉, 제1의료기관서버)일 수 있고, 제2노드서버(300)는 환자인 사용자가 새로 진료를 받고자 하는 제2의료기관의 서버(즉, 제2의료기관서버)일 수 있다. (즉, 블록데이터는 특정한 환자의 단위기간 내의 전자의무기록데이터를 포함하는 것이며, 상기 제1노드서버(200)는 사용자의 기존 전자의무기록을 저장하는 제1의료기관의 서버이며, 상기 제2노드서버(300)는 사용자에 의해 상기 제1의료기관의 전자의무기록데이터의 전송이 요청되는 제2의료기관의 서버일 수 있다.) 제1의료기관서버가 사용자 클라이언트로부터 본인의 전자의무기록을 제2의료기관서버로 전송할 것을 요청받을 수 있다. 제1의료기관서버는 사용자 클라이언트로부터 해당 사용자의 전체 전자의무기록의 전송을 요청받을 수 있고, 특정한 기간 또는 특정한 질환에 대한 전자의무기록의 전송을 요청받을 수 있다.
제1노드서버(200)(즉, 제1의료기관서버)는 사용자 클라이언트의 요청에 상응하는 의료데이터(즉, 전자의무기록데이터)를 내부데이터베이스에서 추출할 수 있고, 추출된 의료데이터(즉, 전자의무기록데이터)를 블록데이터로 생성하여 전송할 수 있다. 예를 들어, 추출된 전자의무기록을 특정한 단위기간으로 분할하여 블록데이터를 생성할 수 있다. 따라서, 제1노드서버(200)는 사용자로부터 전송 요청된 기간범위에 따라 복수의 블록데이터를 중계서버(100)로 전송할 수도 있다.
또한, 노드서버는 내부에 의료데이터(예를 들어, 의무기록데이터)를 저장 시에 단위기간별로 블록데이터 형태로 생성하여 둘 수 있고, 사용자로부터 의료데이터의 전송요청이 수신되면 요청된 조건에 상응하는 블록데이터를 탐색하여 중계서버(100)로 전송할 수 있다.
또한, 다른 일실시예로, 제1노드서버(200)는 특정한 사용자의 헬스케어 디바이스로부터 생체데이터를 수신하여 저장하는 생체데이터저장서버에 해당할 수 있고, 제2노드서버(300)는 누적된 생체데이터를 제공받아서 사용자(즉, 환자)의 신체상태를 확인하고자 하는 의료기관의 서버가 해당될 수 있다. 즉, 의료기관의 의료진이 사용자의 건강상태를 확실하게 파악하기 위해 특정기간 내의 생체데이터가 필요할 수 있고, 이에 따라 사용자는 제1노드서버(200)(즉, 생체데이터저장서버)에 의료진이 요구한 특정기간의 의료데이터(즉, 생체데이터)의 제공을 요청할 수 있다. 제1노드서버(200)(즉, 생체데이터저장서버)는 요청된 기간범위 내의 생체데이터를 추출하여 블록데이터로 생성한 후 제2노드서버(300)(즉, 의료기관서버)로 전송하기 위해 중계서버(100)로 전송할 수 있다.
또한, 제1노드서버(200)는 중계서버(100)에서 제공되는 공개키(Public key Infrastructure; PKI)를 기반으로 블록데이터를 암호화하여 전송할 수 있다. 제1노드서버(200)에서 중계서버(100)로 블록데이터를 전송하고 중계서버(100)에서 제2노드서버(300)로 블록데이터를 전송하는 과정에서 타인에게 특정한 사용자(예를 들어, 환자)의 건강에 대한 기록이 유출될 수 있으므로, 보안성을 높이기 위해, 중계서버(100)에서 제공되는 공개키 기반으로 암호화하여 전송을 수행할 수 있다. 블록데이터를 암호화하는 방식은 공개키(Public key)방식에 한정되지 아니하고, SSL방식 등의 다양한 방식이 적용될 수 있다.
중계서버(100)가 상기 하나 이상의 블록데이터를 블록체인에 결합하여 저장한다(S200). 즉, 중계서버(100)는 제2노드서버(300)로 전송하기 위해 수신한 하나 이상의 블록데이터를 저장할 수 있다.
중계서버(100)에 저장되는 블록데이터는, 후술하는 바와 같이, 위변조 여부 확인에 이용할 수 있다. 제1노드서버(200)로부터 제2노드서버(300)로 블록데이터가 전송됨에 따라 2개의 노드서버에 동일한 블록데이터가 저장되는 경우, 둘 중 어느 노드서버에 저장된 블록데이터가 위변조되면 어떤 블록데이터가 원본데이터인지 확인할 수 없게 된다. 따라서, 중계서버(100)는 제1노드서버(200)로부터 수신하여 제2노드서버(300)로 전송하는 블록데이터를 내부에 저장한 후, 위변조 여부 확인이 필요한 경우에 추출하여 제1노드서버(200) 및 제2노드서버(300)에 저장된 동일한 조건(즉, 동일한 사용자의 동일한 기간)의 블록데이터와 비교함으로써 전송하는 블록데이터가 위변조된 데이터인지 여부를 확인할 수 있다.
또한, 제1노드서버(200)에서 이미 수신된 블록데이터인 경우, 중계서버(100)는 다시 제1노드서버(200)로부터 동일한 블록데이터를 수신하지 않고, 내부데이터베이스의 탐색으로 전송할 블록데이터를 추출하여 전송할 수 있다. 예를 들어, 제1노드서버(200)가 전송요청된 블록데이터를 전송한 이력이 기록되어 있는 경우, 중계서버(100)는 제1노드서버(200)로부터 해당 블록데이터의 식별정보만을 수신하여 해당 식별정보에 상응하는 저장된 블록데이터를 추출한 후 제2노드서버(300)로 전송할 수 있다.
중계서버(100)는, 블록데이터를 블록체인으로 형성하여 저장 시에, 사용자별 블록체인을 형성하여 저장할 수 있다. 중계서버(100)가 내부 저장공간에 사용자별로 나누어서 블록체인을 형성함에 따라 필요한 블록데이터를 신속하여 탐색할 수 있는 효과가 있다.
그 후, 중계서버(100)가 상기 하나 이상의 블록데이터를 제2노드서버(300)로 전송한다(S300; 블록데이터전송단계).
또한, 상기 중계서버(100)는 각 노드서버의 주소정보를 저장할 수 있다. 즉, 제1노드서버(200)가 사용자 클라이언트로부터 특정한 노드서버(즉, 제2노드서버(300))로 블록데이터 전송요청을 수신하는 경우, 중계서버(100)는 제2노드서버(300)의 식별정보(예를 들어, 제2노드서버(300)에 해당하는 의료기관의 명칭 또는 식별코드)를 수신할 수 있다. 중계서버(100)는 수신된 식별정보에 상응하는 노드서버의 주소정보를 탐색하여 해당 주소로 블록데이터를 전송할 수 있다. 구체적으로, 상기 블록데이터수신단계(S100)는, 상기 사용자 클라이언트에 의해 입력되는 제2식별정보(즉, 상기 제2노드서버(300)의 식별정보)를 제1노드서버(200)로부터 수신하며, 상기 블록데이터전송단계(S300)는, 상기 제2식별정보에 상응하는 제2주소정보(즉, 제2노드서버(300)의 주소정보)를 탐색하여 상기 블록데이터를 전송할 수 있다.
또한, 도 3에서와 같이, 특정한 블록데이터의 위변조여부 확인요청을 수신하는 경우, 상기 블록체인 내에서 추출되는 기준블록데이터와 상기 제1노드서버(200) 및 상기 제2노드서버(300)로부터 수신되는 제1블록데이터 및 제2블록데이터를 비교하는 블록데이터비교단계(S400); 및 상기 기준블록데이터, 제1블록데이터 및 제2블록데이터 중 상이한 블록데이터를 파악하여 위변조된 것으로 판단하는 단계(S500);를 더 포함할 수 있다. 상기 기준블록데이터, 제1블록데이터 및 제2블록데이터는 동일한 사용자에 대한 동일기간 내의 데이터일 수 있다.
중계서버(100)는 특정한 노드서버에 포함된 특정한 블록데이터가 위변조된 데이터인지 여부의 확인요청을 수신할 수 있다. 중계서버(100)는 특정한 노드서버(예를 들어, 제1노드서버(200))로부터 위변조 확인을 원하는 하나 이상의 블록데이터(예를 들어, 제1블록데이터)를 수신할 수 있고, 다른 노드서버(예를 들어, 제2노드서버(300))에 전송요청하여 동일한 조건의 하나 이상의 블록데이터(예를 들어, 제2블록데이터)를 수신할 수 있다. 또한, 중계서버(100)는 내부에 저장된 동일한 조건의 기준블록데이터를 탐색하여 추출할 수 있다. 그 후, 중계서버(100)는 기준블록데이터, 제1블록데이터 및 제2블록데이터를 비교할 수 있고(S400), 위변조되었는지 여부를 판단할 수 있다(S500). 예를 들어, 제1블록데이터가 위변조여부 확인이 요청된 블록데이터인 경우, 중계서버(100)는 제1블록데이터가 제2블록데이터 및 기준블록데이터와 상이한 것으로 판단되면 위변조된 것으로 제1노드서버(200)로 판단결과를 전송할 수 있다. 또한, 제1블록데이터, 제2블록데이터 및 기준블록데이터가 모두 상이한 경우, 중계서버(100)는 위변조 여부 판단이 불가능함을 전송할 수 있다.
동일한 조건의 블록데이터가 3개 이상의 노드서버로 전송되어 저장되어 있으면, 비교할 수 있는 블록데이터의 개수가 늘어나서 특정한 블록데이터의 위변조 여부 판단이 용이할 수 있다.
또한, 도 4에서와 같이, 특정한 전송노드서버가 상기 클라이언트로부터 수신하는 제3노드서버로의 상기 블록데이터 전송요청에 따라, 상기 중계서버(100)가 특정한 블록데이터를 상기 전송노드서버로부터 수신하되, 상기 전송노드서버는 제1노드서버(200) 또는 제2노드서버(300) 중 어느 하나인, 단계(S600); 상기 전송노드서버로부터 수신된 블록데이터와 동일한 조건에 해당하는 기준블록데이터를 상기 블록체인 내에서 추출하는 단계(S700); 상기 전송노드서버로부터 수신된 블록데이터와 동일한 조건에 해당하는 상기 전송노드서버 이외의 노드서버에 요청하여 블록데이터를 수신하는 단계(S800); 상기 기준블록데이터, 제1블록데이터 및 제2블록데이터를 비교하는 블록데이터비교단계(S900); 및 원본으로 판단되는 블록데이터를 상기 제3노드서버로 전송하는 단계(S1000);를 더 포함할 수 있다. 상기 제1블록데이터는 상기 제1노드서버로부터 수신되는 블록데이터이며, 상기 제2블록데이터는 상기 제2노드서버로부터 수신되는 블록데이터일 수 있고, 상기 기준블록 데이터는 상기 중계서버(100) 내에 저장된 블록데이터일 수 있다.
중계서버(100)는, 특정한 전송노드서버가 상기 클라이언트로부터 수신하는 제3노드서버로의 상기 블록데이터 전송요청에 따라, 특정한 블록데이터를 상기 전송노드서버로부터 수신할 수 있다(S600). 상기 전송노드서버는 제1노드서버(200) 또는 제2노드서버(300) 중 어느 하나일 수 있다. 즉, 제1노드서버(200) 또는 제2노드서버(300)는 사용자 클라이언트로부터 특정한 블록데이터의 전송요청에 따라 중계서버(100)로 전송할 수 있다. 그 후, 중계서버(100)는 전송노드서버로부터 수신된 블록데이터와 동일한 조건(즉, 동일한 사용자의 동일한 기간범위)에 해당하는 기준블록데이터를 상기 블록체인 내에서 추출할 수 있고(S700), 전송노드서버로부터 수신된 블록데이터와 동일한 조건에 해당하는 상기 전송노드서버 이외의 노드서버(즉, 제1노드서버(200)가 전송노드서버인 경우에 제2노드서버(300))에 요청하여 블록데이터를 수신할 수 있다(S800). 그 후, 중계서버(100)는 기준블록데이터, 제1블록데이터 및 제2블록데이터를 비교할 수 있다(S900). 그 후, 중계서버(100)는 원본으로 판단되는 블록데이터를 상기 제3노드서버로 전송할 수 있다(S1000). 즉, 중계서버(100)는 전송노드서버에서 수신한 블록데이터가 위변조된 데이터일 경우에 위변조되지 않은 원본데이터로 판단되는 블록데이터(즉, 전송노드서버 이외의 노드서버에 저장된 블록데이터 또는 중계서버(100) 내에 저장된 기준블록데이터)를 제3노드서버로 전송할 수 있다. 이를 통해, 특정한 사용자의 위변조되지 않은 원본 의료데이터를 사용자가 원하는 노드서버(즉, 제3노드서버)로 전송할 수 있어서, 사용자가 원본데이터를 바탕으로 타 의료기관에서 진료를 이어갈 수 있다.
또한, 도 5에서와 같이, 3개 이상의 노드서버가 특정한 블록데이터를 저장하면, 상기 중계서버(100)가 저장된 블록체인 내의 상기 블록데이터를 삭제하는 단계(S1100);를 더 포함할 수 있다. 중계서버(100)가 의료데이터에 해당하는 블록데이터를 저장하는 경우, 중계서버(100)의 해킹에 의해 의료데이터의 유출이 발생할 수 있다. 따라서, 중계서버(100)는, 위변조 확인을 위해 동일조건으로 다른 서버 상에 저장된 최소한 3개 이상의 블록데이터가 필요하므로, 제1노드서버(200)와 제2노드서버(300)에만 저장된 경우에는 위변조 확인을 위해 중계서버(100) 내 데이터베이스에 저장해둘 수 있다. 그 후, 사용자의 요청에 따라 제3노드서버로 블록데이터가 전송됨에 따라 3개 이상의 노드서버에 동일조건의 블록데이터가 저장되면, 중계서버(100)에 포함된 기준블록데이터 없이도 위변조 판단을 수행할 수 있으므로, 중계서버(100) 내에 해당 블록데이터를 삭제할 수 있다. 중계서버(100)가 블록데이터를 블록체인으로 연결하여 저장하는 경우, 블록체인에서 해당 블록데이터를 분리하여 제거하고 나머지 데이터를 연결하여 다시 블록체인을 형성할 수 있다.
또한, 상기 중계서버(100)가 특정한 블록데이터의 전송내역을 저장하는 단계;를 더 포함할 수 있다. 즉, 중계서버(100)는 특정한 노드서버로 전송요청을 수신하여 해당 노드서버로 전송하는 경우, 특정한 블록데이터의 전송내역을 저장할 수 있다. 전송내역 데이터는 중계서버(100)로 전송하는 노드서버의 식별정보 및 중계서버(100)로부터 전송되는 노드서버의 식별정보를 포함할 수 있다.
중계서버(100) 내에 전송내역을 저장하는 방식으로는 다양한 방식을 적용할 수 있다. 일실시예로, 블록데이터를 중계서버(100) 내에 저장하는 경우, 해당 블록데이터와 매칭하여 동일한 조건의 블록데이터를 저장하는 노드서버 식별정보를 저장할 수 있다.
다른 일실시예로. 중계서버(100)가 블록데이터를 저장하지 않는 경우(예를 들어, 3개 이상의 노드서버에 전송됨에 따라 중계서버(100) 내의 블록데이터를 삭제하는 경우), 블록데이터별로 식별정보가 부여되어 해당 블록데이터 식별정보를 중계서버(100) 내에 저장하고, 블록데이터 식별정보와 해당 블록데이터를 저장하는 노드서버의 식별정보를 매칭하여 저장할 수 있다.
중계서버(100)가 전송내역정보를 저장함에 따라, 중계서버(100)는 위변조 여부 확인 시에 전송요청된 블록데이터와 비교할 블록데이터를 어느 노드서버에 요청할지를 결정할 수 있다. 예를 들어, 특정한 블록데이터가 제1노드서버(200)에서 제2노드서버(300)로 전송되고, 제2노드서버(300)에서 제3노드서버로 전송된 경우, 중계서버(100)는 전송내역으로 제1노드서버(200), 제2노드서버(300) 및 제3노드서버의 식별정보를 저장할 수 있다. 그 후, 사용자 클라이언트로부터 제3노드서버에 제4노드서버로 전송이 요청되는 경우, 중계서버(100)는 제3노드서버로부터 전송요청된 블록데이터를 수신하고, 전송요청된 블록데이터와 동일한 조건의 블록데이터를 포함하는 것으로 전송내역 내에 기록된 제1노드서버(200) 및 제2노드서버(300)에 동일한 조건의 블록데이터의 제공요청할 수 있다.
또한, 블록데이터 내에 포함되는 정보의 포맷이 기준포맷과 상이한 경우, 중계서버(100)가 상기 제1노드서버(200)로 기준포맷으로 변환 후 전송을 요청하는 단계;를 더 포함할 수 있다. 블록데이터에 포함되는 정보 유형에 따라 중계서버(100) 내 기준포맷이 정해져 있을 수 있다. 예를 들어, 블록데이터 내에 포함되는 의료데이터가 의료영상데이터인 경우, 동일한 종류의 장치에서 획득되는 의료영상데이터도 확장자가 상이할 수 있다. 위변조 여부 확인 등을 위해, 중계서버(100)는 각 노드서버에 블록데이터에 포함되는 의료데이터를 정해진 기준포맷으로 생성을 요청할 수 있다.
또한, 블록데이터가 대용량데이터인 경우, 특정한 저장기간을 경과하면 중계서버가 상기 블록데이터를 삭제하는 단계;를 더 포함할 수 있다. 예를 들어, 블록데이터가 의료데이터로 의료영상(예를 들어, CT영상 또는 MR영상 등)인 경우, 중계서버가 대용량인 블록데이터를 내부에 계속 누적하게 되면 서버의 부담이 증대될 수 있다. 따라서, 중계서버는 특정한 용량 이상의 블록데이터를 내부에 저장하는 기간(즉, 저장기간)을 설정하고, 해당 저장기간을 도과하면 상기 블록데이터를 삭제할 수 있다.
또한, 중계서버는 복수의 노드서버로부터 수신한 블록데이터에 포함된 의료데이터와 중계서버 내에 저장된 동일한 조건의 의료데이터를 직접 비교하여 위변조여부를 확인할 수도 있고, 블록데이터 수신 시에 각 노드서버로부터 함께 수신한 메타데이터를 비교하여 위변조 여부를 확인할 수 있다. 즉, 상기 블록데이터 수신단계(S100)는, 상기 블록데이터 내의 의료데이터에 대응하는 메타데이터를 수신하는 단계;를 포함할 수 있다. 상기 메타데이터는 대응되는 의료데이터의 진단병원, 진단명, 환자명 등의 정보를 포함할 수 있다.
특히, 의료데이터가 대용량데이터인 경우, 특정한 저장기간이 경과되면 대용량인 의료데이터가 포함된 블록데이터가 중계서버 내에서 삭제될 수 있고, 중계서버가 대용량인 의료데이터 자체를 비교하여 위변조 여부를 파악하는데 시간이 많이 소요될 수 있다. 이 때, 중계서버는 블록데이터 내에 포함된 의료데이터 자체를 대신하여 의료데이터에 대응하는 메타데이터를 비교하여 위변조 여부를 판단할 수 있다.
예를 들어, 의료영상데이터(예를 들어, CT영상, MR영상)를 의료데이터로 전송하는 경우, 대용량데이터인 의료영상데이터를 특정한 저장기간 경과 후에 삭제하게 되면, 제1노드서버와 제2노드서버만 해당 의료영상데이터를 저장하게 되어 2개의 의료데이터 비교를 통해서는 어떠한 의료데이터가 변조되었는지 판단할 수 없으므로, 의료데이터를 직접 비교하여 위변조 여부를 판단할 수 없다. 따라서, 중계서버는 노드서버로부터 의료영상데이터를 포함하는 블록데이터를 수신 시에 영상의학과 의료진에 의해 판단된 진단결과 등을 포함하는 메타데이터를 함께 수신할 수 있다. 중계서버는 위변조 여부 확인 시에 각 서버(즉, 복수의 노드서버 및 중계서버) 내에 저장된 특정한 의료데이터에 대한 메타데이터를 비교하여 위변조 여부를 판단할 수 있다. 중계서버는, 각 서버로부터 수신한 메타데이터 내 정보가 상이할 경우, 위변조되었을 가능성이 높은 의료데이터로 판단할 수 있다.
구체적으로, 대용량데이터인 의료데이터를 전송하는 과정에서 위변조 여부 분석은 다음과 같이 수행될 수 있다. 먼저, 특정한 전송노드서버가 상기 클라이언트로부터 수신하는 제3노드서버로의 상기 블록데이터 전송요청에 따라, 상기 중계서버가 특정한 블록데이터 및 상기 블록데이터에 대응하는 메타데이터를 상기 전송노드서버로부터 수신할 수 있다. 상기 전송노드서버는 제1노드서버 또는 제2노드서버 중 어느 하나일 수 있다. 그 후, 상기 전송노드서버로부터 수신된 블록데이터와 동일한 조건에 해당하는 기준블록데이터가 저장기간 경과에 의해 삭제된 경우, 중계서버는 상기 기준블록데이터에 대응하는 기준메타데이터를 추출할 수 있다. 그 후, 중계서버는 전송노드서버로부터 수신된 블록데이터와 동일한 조건에 해당하는 상기 전송노드서버 이외의 노드서버에 요청하여 블록데이터에 대응하는 메타데이터를 수신할 수 있다. 그 후, 중계서버는 상기 기준메타데이터, 제1 메타데이터 및 제2메타데이터를 비교하여 상기 전송요청된 블록데이터의 위변조 여부를 판단할 수 있다. 상기 제1블록데이터는 상기 제1노드서버로부터 수신되는 블록데이터이며, 상기 제2블록데이터는 상기 제2노드서버로부터 수신되는 블록데이터일 수 있다. 중계서버는, 전송요청된 블록데이터에 상응하는 메타데이터(예를 들어, 제1노드서버가 클라이언트로부터 전송요청을 수신하는 경우에 제1메타데이터)가 다른 노드서버 및 중계서버 내에 저장된 메타데이터(예를 들어, 기준메타데이터 및 제2메타데이터)와 상이한 경우, 전송요청된 블록데이터(예를 들어, 제1블록데이터)가 위변조되었을 가능성이 있다고 판단할 수 있다.
또한, 중계서버는 블록데이터 내에 포함된 의료데이터 자체가 아닌 전송내역 데이터를 이용하여 위변조 여부 판단을 수행할 수 있다. 즉, 중계서버가 블록데이터 내의 의료데이터 간에 직접 비교가 어려운 경우(예를 들어, 의료데이터가 영상데이터와 같은 대용량데이터임에 따라 직접 비교가 어려운 경우 또는 중계서버 내에서 해당 의료데이터가 삭제되어 비교할 데이터 개수가 3개 이상이 되지 않는 경우 등), 전송파일형식, 파일용량, 전송지 정보, 전송시간 등을 포함하는 전송내역 데이터를 비교하여 위변조 가능성을 평가할 수 있다. 예를 들어, 제1노드서버에 저장된 의료데이터(또는 특정한 의료데이터를 포함하는 블록데이터)의 파일용량이 제2노드서버 및 중계서버에 기록된 파일용량과 차이나는 경우, 중계서버는 제1노드서버에 저장된 의료데이터가 위변조 되었을 가능성이 높은 것으로 판단할 수 있다.
이상에서 전술한 본 발명의 일 실시예에 따른 블록체인 기반의 의료데이터전송방법은, 하드웨어인 컴퓨터와 결합되어 실행되기 위해 프로그램(또는 어플리케이션)으로 구현되어 매체에 저장될 수 있다.
상기 전술한 프로그램은, 상기 컴퓨터가 프로그램을 읽어 들여 프로그램으로 구현된 상기 방법들을 실행시키기 위하여, 상기 컴퓨터의 프로세서(CPU)가 상기 컴퓨터의 장치 인터페이스를 통해 읽힐 수 있는 C, C++, JAVA, 기계어 등의 컴퓨터 언어로 코드화된 코드(Code)를 포함할 수 있다. 이러한 코드는 상기 방법들을 실행하는 필요한 기능들을 정의한 함수 등과 관련된 기능적인 코드(Functional Code)를 포함할 수 있고, 상기 기능들을 상기 컴퓨터의 프로세서가 소정의 절차대로 실행시키는데 필요한 실행 절차 관련 제어 코드를 포함할 수 있다. 또한, 이러한 코드는 상기 기능들을 상기 컴퓨터의 프로세서가 실행시키는데 필요한 추가 정보나 미디어가 상기 컴퓨터의 내부 또는 외부 메모리의 어느 위치(주소번지)에서 참조되어야 하는지에 대한 메모리 참조관련 코드를 더 포함할 수 있다. 또한, 상기 컴퓨터의 프로세서가 상기 기능들을 실행시키기 위하여 원격(Remote)에 있는 어떠한 다른 컴퓨터나 서버 등과 통신이 필요한 경우, 코드는 상기 컴퓨터의 통신 모듈을 이용하여 원격에 있는 어떠한 다른 컴퓨터나 서버 등과 어떻게 통신해야 하는지, 통신 시 어떠한 정보나 미디어를 송수신해야 하는지 등에 대한 통신 관련 코드를 더 포함할 수 있다.
상기 저장되는 매체는, 레지스터, 캐쉬, 메모리 등과 같이 짧은 순간 동안 데이터를 저장하는 매체가 아니라 반영구적으로 데이터를 저장하며, 기기에 의해 판독(reading)이 가능한 매체를 의미한다. 구체적으로는, 상기 저장되는 매체의 예로는 ROM, RAM, CD-ROM, 자기 테이프, 플로피디스크, 광 데이터 저장장치 등이 있지만, 이에 제한되지 않는다. 즉, 상기 프로그램은 상기 컴퓨터가 접속할 수 있는 다양한 서버 상의 다양한 기록매체 또는 사용자의 상기 컴퓨터상의 다양한 기록매체에 저장될 수 있다. 또한, 상기 매체는 네트워크로 연결된 컴퓨터 시스템에 분산되어, 분산방식으로 컴퓨터가 읽을 수 있는 코드가 저장될 수 있다.
이상 첨부된 도면을 참조하여 본 발명의 실시예들을 설명하였지만, 본 발명이 속하는 기술분야에서 통상의 지식을 가진 자는 본 발명이 그 기술적 사상이나 필수적인 특징을 변경하지 않고서 다른 구체적인 형태로 실시될 수 있다는 것을 이해할 수 있을 것이다. 그러므로 이상에서 기술한 실시예들은 모든 면에서 예시적인 것이며 한정적이 아닌 것으로 이해해야만 한다.
이상 첨부된 도면을 참조하여 본 발명의 실시예들을 설명하였지만, 본 발명이 속하는 기술분야에서 통상의 지식을 가진 자는 본 발명이 그 기술적 사상이나 필수적인 특징을 변경하지 않고서 다른 구체적인 형태로 실시될 수 있다는 것을 이해할 수 있을 것이다. 그러므로 이상에서 기술한 실시예들은 모든 면에서 예시적인 것이며 한정적이 아닌 것으로 이해해야만 한다.
Claims (13)
- 중계서버가 제1노드서버로부터 하나 이상의 블록데이터를 수신하되, 상기 블록데이터는 특정한 사용자에 대한 특정기간범위 내의 의료데이터로서, 사용자 클라이언트의 요청에 따라 상기 제1노드서버에서 추출되는 것인, 블록데이터수신단계;중계서버가 상기 하나 이상의 블록데이터를 블록체인에 결합하여 저장하는 단계;상기 하나 이상의 블록데이터를 제2노드서버로 전송하는 블록데이터전송단계;를 포함하며,상기 제1노드서버는 상기 사용자 클라이언트로부터 수신된 요청에 따라 블록데이터를 전송하는, 블록체인 기반 의료데이터전송방법.
- 제1항에 있어서,특정한 블록데이터의 위변조여부 확인요청을 수신하는 경우,상기 블록체인 내에서 추출되는 기준블록데이터와 상기 제1노드서버 및 상기 제2노드서버로부터 수신되는 제1블록데이터 및 제2블록데이터를 비교하되, 상기 기준블록데이터, 제1블록데이터 및 제2블록데이터는 동일한 사용자에 대한 동일기간 내의 데이터인, 블록데이터비교단계; 및상기 기준블록데이터, 제1블록데이터 및 제2블록데이터 중 상이한 블록데이터를 파악하여 위변조된 것으로 판단하는 단계;를 더 포함하는, 블록체인 기반 의료데이터전송방법.
- 제1항에 있어서,특정한 전송노드서버가 상기 클라이언트로부터 수신하는 제3노드서버로의 상기 블록데이터 전송요청에 따라, 상기 중계서버가 특정한 블록데이터를 상기 전송노드서버로부터 수신하되, 상기 전송노드서버는 제1노드서버 또는 제2노드서버 중 어느 하나인, 단계;상기 전송노드서버로부터 수신된 블록데이터와 동일한 조건에 해당하는 기준블록데이터를 상기 블록체인 내에서 추출하는 단계;상기 전송노드서버로부터 수신된 블록데이터와 동일한 조건에 해당하는 상기 전송노드서버 이외의 노드서버에 요청하여 블록데이터를 수신하는 단계;상기 기준블록데이터, 제1블록데이터 및 제2블록데이터를 비교하는 블록데이터비교단계; 및원본으로 판단되는 블록데이터를 상기 제3노드서버로 전송하는 단계;를 더 포함하되,상기 제1블록데이터는 상기 제1노드서버로부터 수신되는 블록데이터이며,상기 제2블록데이터는 상기 제2노드서버로부터 수신되는 블록데이터인, 블록체인 기반 의료데이터전송방법.
- 제3항에 있어서,3개 이상의 노드서버가 특정한 블록데이터를 저장하면, 상기 중계서버가 저장된 블록체인 내의 상기 블록데이터를 삭제하는 단계;를 더 포함하는, 블록체인기반 의료데이터전송방법.
- 제1항에 있어서,상기 중계서버는 각 노드서버의 주소정보를 저장하는 것을 특징으로 하며,상기 블록데이터수신단계는,상기 사용자 클라이언트에 의해 입력되는 제2식별정보를 제1노드서버로부터 수신하는 것을 특징으로 하며,상기 블록데이터전송단계는,상기 제2식별정보에 상응하는 제2주소정보를 탐색하여 상기 블록데이터를 전송하는 것을 특징으로 하며,상기 제2식별정보는 상기 제2노드서버의 식별정보이며,상기 제2주소정보는 상기 제2노드서버의 주소정보인, 블록체인 기반 의료데이터전송방법.
- 제3항에 있어서,상기 중계서버가 특정한 블록데이터의 전송내역을 저장하는 단계;를 더 포함하는, 블록체인 기반 의료데이터전송방법.
- 제1항에 있어서,블록데이터에 포함되는 정보별로 상기 중계서버 내 기준포맷이 설정되어 있고, 상기 블록데이터 내에 포함되는 정보의 포맷이 기준포맷과 상이한 경우,상기 중계서버가 상기 제1노드서버로 기준포맷으로 변환 후 전송을 요청하는 단계;를 더 포함하는, 블록체인 기반 의료데이터전송방법.
- 제1항에 있어서,상기 노드서버가 의료기관서버인 경우,상기 블록데이터는 특정한 환자의 단위기간 내의 전자의무기록데이터를 포함하는 것이며,상기 제1노드서버는 사용자의 기존 전자의무기록을 저장하는 제1의료기관의 서버이며,상기 제2노드서버는 사용자에 의해 상기 제1의료기관의 전자의무기록데이터의 전송이 요청되는 제2의료기관의 서버인, 블록체인 기반 의료데이터전송방법.
- 제1항에 있어서,상기 노드서버가 생체데이터서버인 경우,상기 블록데이터는 특정한 생체데이터측정장치의 사용자에 대한 단위기간의 측정데이터를 포함하는 것을 특징으로 하는, 블록체인 기반 의료데이터전송방법.
- 제1항에 있어서,상기 블록데이터는 상기 중계서버에서 제공되는 공개키를 기반으로 암호화되어 전송되는 것을 특징으로 하는, 블록체인 기반 의료데이터전송방법.
- 제1항에 있어서,상기 의료데이터가 대용량데이터인 경우,특정한 저장기간이 경과되면, 중계서버가 상기 의료데이터에 상응하는 블록데이터를 삭제하는 단계;를 더 포함하며,상기 블록데이터수신단계는,상기 블록데이터 내의 의료데이터에 대응하는 메타데이터를 수신하는 단계;를 포함하는 단계;를 포함하는, 블록체인 기반 의료데이터전송방법.
- 제11항에 있어서,특정한 전송노드서버가 상기 클라이언트로부터 수신하는 제3노드서버로의 상기 블록데이터 전송요청에 따라, 상기 중계서버가 특정한 블록데이터 및 상기 블록데이터에 대응하는 메타데이터를 상기 전송노드서버로부터 수신하되, 상기 전송노드서버는 제1노드서버 또는 제2노드서버 중 어느 하나인, 단계;상기 전송노드서버로부터 수신된 블록데이터와 동일한 조건에 해당하는 기준 블록데이터가 저장기간 경과에 의해 삭제된 경우, 상기 상기 기준블록데이터에 대응하는 기준메타데이터를 추출하는 단계;상기 전송노드서버로부터 수신된 블록데이터와 동일한 조건에 해당하는 상기 전송노드서버 이외의 노드서버에 요청하여 블록데이터에 대응하는 메타데이터를 수신하는 단계; 및상기 기준메타데이터, 제1메타데이터 및 제2메타데이터를 비교하여 상기 전송요청된 블록데이터의 위변조 여부를 판단하는 단계;를 포함하며,상기 제1메타데이터는 제1블록데이터에 대한 메타데이터이며,상기 제2메타데이터는 제2블록데이터에 대한 메타데이터이며,상기 제1블록데이터는 상기 제1노드서버로부터 수신되는 블록데이터이며,상기 제2블록데이터는 상기 제2노드서버로부터 수신되는 블록데이터인, 블록체인 기반 의료데이터전송방법.
- 하드웨어인 중계서버와 결합되어, 제1항 내지 제10항 중 어느 한 항의 방법을 실행시키기 위하여 매체에 저장된, 블록체인 기반 의료데이터전송프로그램.
Applications Claiming Priority (2)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
KR10-2016-0043005 | 2016-04-07 | ||
KR1020160043005A KR101763827B1 (ko) | 2016-04-07 | 2016-04-07 | 블록체인 기반 의료데이터전송시스템, 방법 및 프로그램 |
Publications (1)
Publication Number | Publication Date |
---|---|
WO2017176093A1 true WO2017176093A1 (ko) | 2017-10-12 |
Family
ID=59651791
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
PCT/KR2017/003836 WO2017176093A1 (ko) | 2016-04-07 | 2017-04-07 | 블록체인 기반 의료데이터전송시스템, 방법 및 프로그램 |
Country Status (2)
Country | Link |
---|---|
KR (1) | KR101763827B1 (ko) |
WO (1) | WO2017176093A1 (ko) |
Cited By (13)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN108492108A (zh) * | 2018-03-29 | 2018-09-04 | 深圳前海微众银行股份有限公司 | 区块链跨链通信方法、系统和计算机可读存储介质 |
CN108805563A (zh) * | 2018-03-21 | 2018-11-13 | 中思博安科技(北京)有限公司 | 一种基于区块链的医疗分账管理方法及装置 |
CN108898483A (zh) * | 2018-05-29 | 2018-11-27 | 阿里巴巴集团控股有限公司 | 区块链资产的发布、兑换方法及其装置、电子设备 |
CN108959945A (zh) * | 2018-07-06 | 2018-12-07 | 腾讯科技(深圳)有限公司 | 医疗数据共享方法、装置、计算机可读介质及电子设备 |
CN109474675A (zh) * | 2018-10-18 | 2019-03-15 | 尚维斯 | 一种基于区块链的区块高度分片式数据存储方法 |
CN109947844A (zh) * | 2018-11-15 | 2019-06-28 | 陕西医链区块链集团有限公司 | 一种基于医疗区块链的医疗数据管理系统 |
CN110035046A (zh) * | 2018-11-16 | 2019-07-19 | 阿里巴巴集团控股有限公司 | 跨区块链的交互系统 |
CN110164508A (zh) * | 2018-02-13 | 2019-08-23 | 宏观基因有限公司 | 生物信息数据提供方法、生物信息数据存储方法和基于多区块链的生物信息数据传输系统 |
CN110381066A (zh) * | 2019-07-23 | 2019-10-25 | 广东工业大学 | 一种区块链中增强隐私性的资源数据传输方法 |
CN110417750A (zh) * | 2019-07-09 | 2019-11-05 | 北京健网未来科技有限公司 | 基于区块链技术的文件读取和存储的方法、终端设备和存储介质 |
WO2020206695A1 (en) * | 2019-04-12 | 2020-10-15 | Hangzhou Nuowei Information Technology Co., Ltd. | System for decentralized ownership and secure sharing of personalized health data |
CN111815309A (zh) * | 2020-08-28 | 2020-10-23 | 支付宝(杭州)信息技术有限公司 | 基于区块链的跨币种结算方法及装置、电子设备 |
US11328303B2 (en) | 2018-05-29 | 2022-05-10 | Advanced New Technologies Co., Ltd. | Asset transfer method and apparatus, and electronic device |
Families Citing this family (48)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
KR102023241B1 (ko) * | 2017-09-08 | 2019-09-20 | 울산대학교 산학협력단 | 블록체인 기반의 여론조사 제공 방법 및 시스템 |
KR101881045B1 (ko) * | 2017-11-15 | 2018-07-23 | 주식회사 가온시스템 | 블록체인에 기반한 의료정보 제공 시스템 및 방법 |
KR20190057909A (ko) | 2017-11-21 | 2019-05-29 | 한국과학기술연구원 | 블록체인 기반 부동산 계약 방법 및 부동산 중개 시스템 |
KR102030905B1 (ko) | 2017-12-08 | 2019-10-10 | 인제대학교 산학협력단 | 블록 체인 시스템 아키텍쳐 및 방법 |
KR102181098B1 (ko) | 2018-01-12 | 2020-11-20 | 인제대학교 산학협력단 | 블록 체인을 이용한 분산 데이터베이스 시스템 및 방법 |
WO2019112193A1 (ko) * | 2017-12-08 | 2019-06-13 | 인제대학교 산학협력단 | 블록 체인 시스템 아키텍쳐 및 방법 |
KR101968424B1 (ko) | 2017-12-08 | 2019-04-11 | 인제대학교 산학협력단 | 블록 체인 컨트롤러를 이용한 인증 시스템 및 방법 |
KR102050154B1 (ko) | 2018-01-12 | 2019-11-28 | 인제대학교 산학협력단 | 블록 체인을 이용한 공급 체인 네트워크 시스템 및 방법 |
KR102005161B1 (ko) * | 2017-12-20 | 2019-07-29 | 동국대학교 경주캠퍼스 산학협력단 | 학습 경험 정보 공유 방법 및 시스템 |
KR102214847B1 (ko) * | 2018-01-03 | 2021-02-10 | 주식회사 동성이엔지앤디자인 | 블록체인을 활용한 cctv영상의 디지털 증거 무결성 및 진본성 확보방법 및 시스템 |
KR102079819B1 (ko) * | 2018-02-08 | 2020-02-20 | 뉴트리진 주식회사 | 블록체인 기반의 정보 관리 및 제공 시스템 |
WO2019160167A1 (ko) * | 2018-02-13 | 2019-08-22 | 주식회사 마크로젠 | 복수의 블록체인에 기반을 둔 생명정보 데이터 제공 방법, 생명정보 데이터 저장 방법 및 생명정보 데이터 전송 시스템 |
KR20190099936A (ko) | 2018-02-20 | 2019-08-28 | 주식회사 엑스블록시스템즈 | 블록체인 시스템 |
KR102107438B1 (ko) * | 2018-03-07 | 2020-06-02 | 주식회사 한글과컴퓨터 | 블록체인을 이용한 전자 문서 관리 장치 및 이의 동작 방법 |
KR101918446B1 (ko) * | 2018-03-16 | 2019-01-29 | 윤경민 | 이중보안 블록체인 인증시스템 및 그 방법 |
KR101882207B1 (ko) * | 2018-03-23 | 2018-07-26 | 주식회사 아이라이즈 | 블록체인 기반으로 환자 정보를 저장하는 병의원 보안 시스템 |
KR20190113211A (ko) | 2018-03-28 | 2019-10-08 | 주식회사 엑스블록시스템즈 | 블록체인 시스템 |
KR20190113210A (ko) | 2018-03-28 | 2019-10-08 | 주식회사 엑스블록시스템즈 | 블록체인 시스템 |
KR101893729B1 (ko) | 2018-03-28 | 2018-10-04 | 주식회사 마크로젠 | 복수의 블록체인에 기반한 데이터 공유 방법 |
WO2019189954A1 (ko) * | 2018-03-28 | 2019-10-03 | 주식회사 마크로젠 | 복수의 블록체인에 기반한 데이터 공유 방법 |
KR101868589B1 (ko) * | 2018-03-30 | 2018-06-18 | 옥타코 주식회사 | 접근통제형 장비를 위한 생체인증 로그데이터의 블록체인 공유 기반의 액세스 보안관리 시스템 |
US20210118532A1 (en) * | 2018-04-10 | 2021-04-22 | Medibloc Co., Ltd. | Method and system for providing blockchain-based medical information platform, and non-transitory computer-readable recording medium |
KR102543466B1 (ko) * | 2018-04-10 | 2023-06-15 | 주식회사 메디블록 | 블록체인을 이용한 의료 정보 플랫폼을 관리하는 방법, 시스템 및 비일시성의 컴퓨터 판독 가능 기록 매체 |
KR102048804B1 (ko) * | 2018-04-13 | 2019-11-26 | 김예원 | 블록체인을 이용한 스마트 방사선량 측정 관리 시스템 |
KR101946555B1 (ko) | 2018-05-15 | 2019-05-03 | 한국마필거래소(주) | 블록체인 기반의 유전자 정보 유통 방법 및 시스템 |
KR102280249B1 (ko) | 2018-05-23 | 2021-07-21 | (주)부치고 | 블록체인 기술을 이용하여 상품의 교환가치를 저장하면서 암호화폐를 발생시키는 시스템 및 그 방법 |
KR101922565B1 (ko) | 2018-05-23 | 2018-11-27 | (주)에스씨씨 | 이종 블록체인 간에 데이터의 공유를 가능하게 하는 얼라이언스 블록체인 시스템 |
KR20190135823A (ko) | 2018-05-29 | 2019-12-09 | 주식회사 엑스블록시스템즈 | 블록체인 시스템 |
KR20190135822A (ko) | 2018-05-29 | 2019-12-09 | 주식회사 엑스블록시스템즈 | 블록체인 시스템 |
KR20190135833A (ko) | 2018-05-29 | 2019-12-09 | 주식회사 완판고 | 고정식 생체 모니터링 시스템 및 그 동작 방법 |
KR102143579B1 (ko) * | 2018-07-31 | 2020-08-12 | (주)유비벨록스모바일 | 블록체인망을 이용한 헬스케어 관제 시스템 |
KR102084411B1 (ko) | 2018-08-08 | 2020-04-23 | 김남심 | 블록체인을 이용한 네트워크 마케팅 시스템 및 그 방법 |
KR102113333B1 (ko) * | 2018-08-21 | 2020-06-02 | 주식회사 아프리카티비 | 블록 체인 기반 방송 중계 장치 및 방법 |
KR102202824B1 (ko) * | 2018-11-27 | 2021-01-14 | 주식회사 바이오닉스 | 사물 인터넷 서비스를 이용한 환자 모니터링 정보 수집 방법 |
KR102353926B1 (ko) * | 2018-11-29 | 2022-01-20 | 주식회사 피어나인 | 블록체인 운영서버와 인증 서버를 포함하는 시스템의 운영 방법 |
KR102162613B1 (ko) | 2018-12-04 | 2020-10-07 | 건양대학교 산학협력단 | 블록체인을 이용한 의료정보관리시스템 |
KR102326594B1 (ko) * | 2019-01-08 | 2021-11-15 | 주식회사 피어나인 | 블록체인 기반 건강검진 데이터베이스 운영방법 |
US11531686B2 (en) | 2019-02-04 | 2022-12-20 | Apex Data Solutions, Llc | Computing system providing blockchain-facilitated semantic interoperability between multiple disparate systems of record (SORs) and related methods |
KR102183815B1 (ko) * | 2019-02-15 | 2020-11-27 | 리걸테크 주식회사 | 데이터 관리 시스템 및 데이터 관리 방법 |
KR102300085B1 (ko) * | 2019-02-18 | 2021-09-08 | 충북대학교 산학협력단 | 블록체인을 이용한 의료정보관리 시스템 및 방법 |
KR102310227B1 (ko) | 2019-03-18 | 2021-10-12 | (주) 로완 | 블록체인을 이용한 의료 정보 조회 시스템과 방법 및 이를 위한 컴퓨터 프로그램 |
KR102262594B1 (ko) * | 2019-04-09 | 2021-06-09 | 주식회사 큐라코 | 정보 관리 시스템에서 블록 체인을 이용하여 환자 정보를 관리하는 장치 및 방법 |
KR102185258B1 (ko) | 2019-04-25 | 2020-12-01 | 신한대학교 산학협력단 | 블록체인기술 기반의 체외진단장비 및 그 장비의 구동방법 |
KR102110388B1 (ko) * | 2020-01-13 | 2020-05-13 | 주식회사 브이티더블유 | 지역적 블록체인 기반의 cPHR 서비스 운용 방법 |
KR102382513B1 (ko) | 2020-08-31 | 2022-04-05 | 이병걸 | 진료 데이터 저장 서버 및 환자 인터페이스 |
KR102514536B1 (ko) | 2020-11-06 | 2023-03-27 | 한국전자통신연구원 | 블록체인 플랫폼에서의 블록 전파 방법 및 장치 |
CN115174061A (zh) * | 2022-06-29 | 2022-10-11 | 蚂蚁区块链科技(上海)有限公司 | 基于区块链中继通信网络系统的消息传输方法及装置 |
KR102604558B1 (ko) * | 2022-08-24 | 2023-11-20 | 강준철 | 영상정보 알고리즘 판독을 통한 병명진단 및 처방방법을 제공하는 블록체인암호화된 의료정보관리의 방법 및 시스템 |
Citations (3)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
KR20090102943A (ko) * | 2008-03-27 | 2009-10-01 | 계명대학교 산학협력단 | 실시간 심전도 모니터링 시스템 및 방법, 패치형 심전도측정장치, 통신장치 |
KR101391465B1 (ko) * | 2005-12-19 | 2014-05-26 | 디엑스오 랩스 | 디지털 데이터 처리 방법 및 시스템 |
US20150332283A1 (en) * | 2014-05-13 | 2015-11-19 | Nant Holdings Ip, Llc | Healthcare transaction validation via blockchain proof-of-work, systems and methods |
-
2016
- 2016-04-07 KR KR1020160043005A patent/KR101763827B1/ko active IP Right Grant
-
2017
- 2017-04-07 WO PCT/KR2017/003836 patent/WO2017176093A1/ko active Application Filing
Patent Citations (3)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
KR101391465B1 (ko) * | 2005-12-19 | 2014-05-26 | 디엑스오 랩스 | 디지털 데이터 처리 방법 및 시스템 |
KR20090102943A (ko) * | 2008-03-27 | 2009-10-01 | 계명대학교 산학협력단 | 실시간 심전도 모니터링 시스템 및 방법, 패치형 심전도측정장치, 통신장치 |
US20150332283A1 (en) * | 2014-05-13 | 2015-11-19 | Nant Holdings Ip, Llc | Healthcare transaction validation via blockchain proof-of-work, systems and methods |
Non-Patent Citations (2)
Title |
---|
"Interest of Bongbonge´s Blog Daddy "BlockChain"", GUNBONGI BLOG, 29 November 2015 (2015-11-29), Retrieved from the Internet <URL:http://bongbonge.tistciry.com/98> * |
SON: "Various Kinds of Electronic Document, Authentication by "BlockChain "", ZDNET KOREA, 17 November 2015 (2015-11-17), Retrieved from the Internet <URL:http:www.zdnet.co.kr/news/news_view.asp?artice_id=20151116185432&type=de&re=/> * |
Cited By (23)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN110164508B (zh) * | 2018-02-13 | 2022-07-08 | 宏观基因有限公司 | 生物信息数据提供方法、生物信息数据存储方法和基于多区块链的生物信息数据传输系统 |
CN110164508A (zh) * | 2018-02-13 | 2019-08-23 | 宏观基因有限公司 | 生物信息数据提供方法、生物信息数据存储方法和基于多区块链的生物信息数据传输系统 |
CN108805563A (zh) * | 2018-03-21 | 2018-11-13 | 中思博安科技(北京)有限公司 | 一种基于区块链的医疗分账管理方法及装置 |
CN108492108B (zh) * | 2018-03-29 | 2021-04-23 | 深圳前海微众银行股份有限公司 | 区块链跨链通信方法、系统和计算机可读存储介质 |
CN108492108A (zh) * | 2018-03-29 | 2018-09-04 | 深圳前海微众银行股份有限公司 | 区块链跨链通信方法、系统和计算机可读存储介质 |
CN108898483A (zh) * | 2018-05-29 | 2018-11-27 | 阿里巴巴集团控股有限公司 | 区块链资产的发布、兑换方法及其装置、电子设备 |
US11328303B2 (en) | 2018-05-29 | 2022-05-10 | Advanced New Technologies Co., Ltd. | Asset transfer method and apparatus, and electronic device |
CN108959945A (zh) * | 2018-07-06 | 2018-12-07 | 腾讯科技(深圳)有限公司 | 医疗数据共享方法、装置、计算机可读介质及电子设备 |
CN109474675A (zh) * | 2018-10-18 | 2019-03-15 | 尚维斯 | 一种基于区块链的区块高度分片式数据存储方法 |
CN109947844A (zh) * | 2018-11-15 | 2019-06-28 | 陕西医链区块链集团有限公司 | 一种基于医疗区块链的医疗数据管理系统 |
CN109947844B (zh) * | 2018-11-15 | 2022-10-18 | 陕西医链区块链集团有限公司 | 一种基于医疗区块链的医疗数据管理系统 |
CN110035046B (zh) * | 2018-11-16 | 2020-02-21 | 阿里巴巴集团控股有限公司 | 跨区块链的交互系统 |
WO2020098378A1 (zh) * | 2018-11-16 | 2020-05-22 | 阿里巴巴集团控股有限公司 | 跨区块链的交互系统 |
TWI709320B (zh) * | 2018-11-16 | 2020-11-01 | 開曼群島商創新先進技術有限公司 | 跨區塊鏈的互動系統 |
CN110035046A (zh) * | 2018-11-16 | 2019-07-19 | 阿里巴巴集团控股有限公司 | 跨区块链的交互系统 |
US11196755B2 (en) | 2018-11-16 | 2021-12-07 | Advanced New Technologies Co., Ltd. | Cross-blockchain interaction systems |
WO2020206695A1 (en) * | 2019-04-12 | 2020-10-15 | Hangzhou Nuowei Information Technology Co., Ltd. | System for decentralized ownership and secure sharing of personalized health data |
US11003791B2 (en) | 2019-04-12 | 2021-05-11 | Hangzhou Nuowei Information Technology Co., Ltd. | System for decentralized ownership and secure sharing of personalized health data |
CN110417750A (zh) * | 2019-07-09 | 2019-11-05 | 北京健网未来科技有限公司 | 基于区块链技术的文件读取和存储的方法、终端设备和存储介质 |
CN110381066A (zh) * | 2019-07-23 | 2019-10-25 | 广东工业大学 | 一种区块链中增强隐私性的资源数据传输方法 |
CN110381066B (zh) * | 2019-07-23 | 2021-07-06 | 广东工业大学 | 一种区块链中增强隐私性的资源数据传输方法 |
US11354744B2 (en) | 2020-08-28 | 2022-06-07 | Alipay (Hangzhou) Information Technology Co., Ltd. | Blockchain-based cross-currency settlement methods, apparatuses, and devices |
CN111815309A (zh) * | 2020-08-28 | 2020-10-23 | 支付宝(杭州)信息技术有限公司 | 基于区块链的跨币种结算方法及装置、电子设备 |
Also Published As
Publication number | Publication date |
---|---|
KR101763827B1 (ko) | 2017-08-02 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
WO2017176093A1 (ko) | 블록체인 기반 의료데이터전송시스템, 방법 및 프로그램 | |
WO2017074017A1 (ko) | 환자정보 보호를 위한 의료영상의 클라우드 데이터베이스 구축 및 판독 방법 | |
KR101200814B1 (ko) | 근거리 무선 통신 기반의 개인 건강 기록 관리 방법 및 시스템 | |
US7328276B2 (en) | Computer oriented record administration system | |
US20090112872A1 (en) | Information sharing system and information sharing method | |
US20070016452A1 (en) | Method, software and device for managing patient medical records in a universal format using USB flash drive and radio telephone auto dialer and siren | |
WO2017065359A1 (ko) | 통신망을 이용한 원격 헬스케어 시스템 및 방법 | |
CN110010213A (zh) | 电子病历存储方法、系统、装置、设备及可读存储介质 | |
WO2018124501A1 (ko) | 응급상황에서 제3자에 대한 응급의료 정보제공 방법 | |
CN110210234B (zh) | 转诊时医疗信息的迁移方法、装置、计算机设备和存储介质 | |
WO2019098510A1 (ko) | 온라인 구강건강상태 진단방법 및 온라인 구강건강상태 진단 서비스를 제공하기 위한 서버 | |
CN112768022A (zh) | 一种医疗数据流转用的系统及方法 | |
CN112735552A (zh) | 一种基于区块链及ipfs的电子病历夹信息系统 | |
WO2019189954A1 (ko) | 복수의 블록체인에 기반한 데이터 공유 방법 | |
CN112311887A (zh) | 一种基于区块链技术的医疗健康档案建立方法 | |
WO2019132069A1 (ko) | 의료 데이터 전송 인증 서버, 의료 데이터 전송 단말 및 의료 데이터 수신 단말 | |
WO2022225122A1 (ko) | 환자 맞춤형 전자 문진 시스템, 문진용 단말 및 이를 이용한 문진 방법 | |
CN115101212A (zh) | 一种肾脏病临床诊断服务系统及方法 | |
JP2002063280A (ja) | 医療情報システム | |
JP2022000819A (ja) | 情報処理システム、情報処理装置及びプログラム | |
CN113722731A (zh) | 一种医疗数据共享方法、装置、电子设备及存储介质 | |
US11341273B2 (en) | Method for combining different partial data | |
JPH11143956A (ja) | 診療情報を他医療機関に開示する方法及び装置 | |
WO2013133610A1 (en) | Method and apparatus for providing personal health record information | |
JP2010026899A (ja) | 医療情報システム |
Legal Events
Date | Code | Title | Description |
---|---|---|---|
NENP | Non-entry into the national phase |
Ref country code: DE |
|
121 | Ep: the epo has been informed by wipo that ep was designated in this application |
Ref document number: 17779393 Country of ref document: EP Kind code of ref document: A1 |
|
122 | Ep: pct application non-entry in european phase |
Ref document number: 17779393 Country of ref document: EP Kind code of ref document: A1 |