CN108573737B - Storage method, device, equipment and storage medium of electronic medical record - Google Patents

Storage method, device, equipment and storage medium of electronic medical record Download PDF

Info

Publication number
CN108573737B
CN108573737B CN201711424940.3A CN201711424940A CN108573737B CN 108573737 B CN108573737 B CN 108573737B CN 201711424940 A CN201711424940 A CN 201711424940A CN 108573737 B CN108573737 B CN 108573737B
Authority
CN
China
Prior art keywords
file
target
hash value
target data
ith
Prior art date
Legal status (The legal status is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the status listed.)
Active
Application number
CN201711424940.3A
Other languages
Chinese (zh)
Other versions
CN108573737A (en
Inventor
郭杏荣
杨赵伟
王育林
Current Assignee (The listed assignees may be inaccurate. Google has not performed a legal analysis and makes no representation or warranty as to the accuracy of the list.)
Beijing Jinxun Ruibo Network Technology Co Ltd
Beijing Kingsoft Cloud Network Technology Co Ltd
Beijing Kingsoft Cloud Technology Co Ltd
Original Assignee
Beijing Jinxun Ruibo Network Technology Co Ltd
Beijing Kingsoft Cloud Network Technology Co Ltd
Beijing Kingsoft Cloud Technology Co Ltd
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 Beijing Jinxun Ruibo Network Technology Co Ltd, Beijing Kingsoft Cloud Network Technology Co Ltd, Beijing Kingsoft Cloud Technology Co Ltd filed Critical Beijing Jinxun Ruibo Network Technology Co Ltd
Priority to CN201711424940.3A priority Critical patent/CN108573737B/en
Publication of CN108573737A publication Critical patent/CN108573737A/en
Application granted granted Critical
Publication of CN108573737B publication Critical patent/CN108573737B/en
Active legal-status Critical Current
Anticipated expiration legal-status Critical

Links

Images

Classifications

    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F21/00Security arrangements for protecting computers, components thereof, programs or data against unauthorised activity
    • G06F21/60Protecting data
    • G06F21/62Protecting access to data via a platform, e.g. using keys or access control rules
    • G06F21/6218Protecting access to data via a platform, e.g. using keys or access control rules to a system of files or objects, e.g. local or distributed file system or database
    • G06F21/6245Protecting personal data, e.g. for financial or medical purposes

Landscapes

  • Engineering & Computer Science (AREA)
  • Health & Medical Sciences (AREA)
  • Bioethics (AREA)
  • General Health & Medical Sciences (AREA)
  • Theoretical Computer Science (AREA)
  • Computer Hardware Design (AREA)
  • Databases & Information Systems (AREA)
  • Computer Security & Cryptography (AREA)
  • Software Systems (AREA)
  • Physics & Mathematics (AREA)
  • General Engineering & Computer Science (AREA)
  • General Physics & Mathematics (AREA)
  • Medical Informatics (AREA)
  • Storage Device Security (AREA)
  • Medical Treatment And Welfare Office Work (AREA)

Abstract

The embodiment of the invention provides a storage method, a device, equipment and a storage medium of an electronic medical record, belonging to the technical field of big data storage and comprising the following steps: recording the file number of the generated electronic medical record on the created file, obtaining a target cover file, obtaining a first hash value, calling a target block chain system to store the first hash value, and storing the target cover file in a storage system; the method comprises the steps of obtaining a storage position of a first hash value in a target block chain system, obtaining an instruction action for obtaining an ith target data file so as to update an electronic medical record, after M target data files are obtained, generating a target back cover file according to an obtained end plan instruction, generating a target back cover file according to the obtained end plan instruction, obtaining a second hash value, calling the target block chain system to store the second hash value, and storing the target back cover file in a storage system. The method provided by the embodiment avoids the behavior that the electronic medical record data is tampered.

Description

Storage method, device, equipment and storage medium of electronic medical record
Technical Field
The invention relates to the technical field of big data storage, in particular to a storage method, a storage device, storage equipment and a storage medium for electronic medical records.
Background
The electronic medical record refers to the digitalized information such as characters, symbols, charts, graphs, numbers, images and the like generated by medical staff in the process of medical activities by using an information system, and can realize the medical record of storage, management, transmission and reproduction, and is a recording form of the medical record, including an outpatient (emergency) medical record and an in-patient medical record.
According to the standard requirements, the electronic medical record system should provide a special identity and identification means for an operator and set corresponding authority. The operator is responsible for the use of his own proprietary identification. Meanwhile, the medical institution should give a unique patient identification to the patient electronic medical record to ensure the authenticity, consistency, continuity and integrity of the patient basic information and the medical record thereof. In addition, the electronic medical record of the outpatient (emergency) doctor stored by the medical institution is preserved for not less than 15 years from the date of the last visit of the patient; the retention time of the electronic medical record in hospital is not less than 30 years from the date of the last discharge of the patient.
At present, the electronic medical record system is purchased by the health care committee (the general term: the national committee for health and family planning) uniformly, and data is directly stored in a machine room managed by the health care committee or reported to the health care committee every day. The centralized data storage scheme still has difficulty in avoiding and even discovering data tampering.
Disclosure of Invention
In view of this, an embodiment of the present invention provides a method, an apparatus, a device and a storage medium for storing an electronic medical record, so as to avoid a behavior of tampering electronic medical record data.
The specific technical scheme is as follows:
recording a file number of the generated electronic medical record on the created file to obtain a target cover file, wherein the file number is a unique code of the electronic medical record generated according to a preset mode, and the target cover file is used for creating a file of an initial electronic medical record;
acquiring a first hash value of the target cover file, calling a preset target block chain system to store the first hash value, and storing the target cover file in a preset storage system;
obtaining a storage location of the first hash value in the target blockchain system, wherein the storage location is uniquely determined by a block number and a transaction code;
acquiring an instruction action for acquiring an ith target data file to update the electronic medical record, wherein i is a serial number of the target data file, i is a natural number, i is less than or equal to M, and M is the total number of the target data file;
after M target data files are obtained, generating a target back cover file according to an obtained end plan instruction, wherein the target back cover file is used for forbidding updating of the target data files for the electronic medical record;
and acquiring a second hash value of the target back cover file, calling a preset target block chain system to store the second hash value, and storing the target back cover file in a preset storage system.
Further, the obtaining the instruction for obtaining the ith target data file acts to update the electronic medical record, including:
judging whether the obtained instruction action comprises a new instruction or a revision instruction, wherein the new instruction is an instruction for obtaining an ith target data file, the revision instruction is an instruction for revising an original target data file to obtain the ith target data file, and the original target data file is a target data file to be revised, which corresponds to any one of the sequence numbers 1, … and i-1;
if the obtained instruction action is a new instruction, obtaining an ith target data file and an ith hash value corresponding to the target data file, calling a preset target block chain system to store the ith hash value according to the file number and the storage position of the first hash value, and storing the ith target data file in a preset storage system;
if the obtained command action is a revision command, obtaining an ith target data file and an ith hash value corresponding to the target data file; acquiring a storage position of the original target data file corresponding to a hash value according to the file number and the original target data file, calling a preset target block chain system to store the ith hash value according to the acquired storage position, and storing the ith target data file in a preset storage system; the ith target data file obtained by revision is a file obtained by revising the original target data file in a mode of adding revision content, and the revised ith target data file refers to the storage position of the original target data file in the target block chain system.
Further, after the obtaining the ith target data file and the ith hash value corresponding to the target data file, calling a preset target block chain system to store the ith hash value according to the profile number and the storage location of the first hash value, and storing the ith target data file in a preset storage system, the method further includes:
and acquiring the storage position of the ith hash value in the target blockchain system.
Further, the target front cover file and the target back cover file are both recorded with first target information in a preset coding format, the first target information comprises a file number, a file type, an instruction action and file content, and the file type is the target front cover file and the target back cover file.
Further, the target data files are all recorded with second target information in a preset encoding format, the second target information includes a file number, a file type, a name file, an instruction action and file content, and the file type further includes the target data files.
Further, the encoding format includes an XM L encoding format, a JSON encoding format, a plain file format, or a binary format.
Further, the target data file comprises a medical record home page file, a medical course recording file, a nursing medical record file, an inspection sheet or a discharge record;
the instruction action comprises a new adding instruction, a signing instruction or a revising instruction, wherein the signing instruction is an instruction for signing the target data file by an organization or an operator;
the file content includes data content, an organization code that generates an electronic medical record, and a unique patient identification number.
Further, after the calling a preset target blockchain system to store the ith hash value and storing the ith target data file in a preset storage system, the method further includes:
and acquiring the storage position of the ith hash value in the target blockchain system.
Further, after the obtaining a second hash value of the target back cover file, calling a preset target blockchain system to store the second hash value, and storing the target back cover file in a preset storage system, the method further includes:
and acquiring the storage position of the second hash value in the target blockchain system.
Further, after the obtaining a second hash value of the target back cover file, calling a preset target blockchain system to store the second hash value, and storing the target back cover file in a preset storage system, the method further includes:
acquiring the code of the organization to which the operator belongs and the code corresponding to the operator from a preset configuration file according to the received signing instruction;
signing the ith target data file by using a first secret key preset by the operator according to the code corresponding to the operator;
according to the code of the mechanism to which the operator belongs, the signature of the ith target data file and the signature of the operator are respectively signed by using a second secret key preset by the mechanism to which the operator belongs;
submitting the ith target data signing file to a preset storage system, wherein the ith target data signing file is a signed ith target data file;
and acquiring a jth hash value of the ith target data signing file, and calling a preset target block chain system to store the jth hash value, wherein j is a serial number of the corresponding hash value of the ith target signing file, i is less than or equal to M, and M is the total number of the target data files.
Further, after the obtaining a jth hash value of the ith target data signed file and calling a preset target blockchain system to store the jth hash value, the method further includes:
sequentially reading a target file and a target signing file from a preset storage system according to a timestamp, wherein the target file is a target front cover file, an ith target data file or a target back cover file, and the target signing file is a file signed by the ith target data file;
for each target file, verifying whether the target file is judged to be a valid file;
if the target file is a valid file, verifying whether a target signing file corresponding to the target file is a valid file;
and if the target signing file is a valid file, associating the target file with the target signing file.
Further, the verifying whether the target file is determined to be a valid file for each target file includes:
aiming at each target file, judging whether the mechanism code and the mechanism signature corresponding to the target file are consistent;
if the mechanism code and the mechanism signature corresponding to the target file are consistent, judging whether the operator code and the operator signature corresponding to the target file are consistent;
and if the operator code corresponding to the target file is consistent with the operator signature, judging the target file to be a valid file.
Further, the verifying whether the target signed document corresponding to the target document is a valid document includes:
judging whether the mechanism code and the mechanism signature corresponding to the target signature file corresponding to the target file are consistent;
if the corresponding mechanism code and the corresponding mechanism signature of the target signing file are consistent, whether the corresponding operator code and the corresponding operator signature of the target signing file are consistent is judged;
and if the operator code corresponding to the target signed file is consistent with the operator signature, judging the target signed file to be a valid file.
A storage method of an electronic medical record based on a block chain is applied to a target block chain system, and comprises the following steps:
storing a first hash value acquired from a client, and sending the storage position of the acquired first hash value to the client, wherein the first hash value is the hash value of a target cover file created by the client, the target cover file is obtained by recording a file case number of a generated electronic medical record on the created file by the client and is used for creating a file of an initial electronic medical record, the file case number is a unique code for generating the electronic medical record according to a preset mode, and the storage position is uniquely determined by a block number and a transaction code;
storing an ith hash value acquired from a client, and sending the storage position of the acquired ith hash value to the client, wherein the ith hash value is the hash value of an ith target data file acquired by the client according to an instruction action for acquiring the ith target data file, i is a serial number of the target data file, i is a natural number, i is less than or equal to M, and M is the total number of the target data files;
and storing a second hash value acquired from a client, and sending the storage position of the acquired second hash value to the client, wherein the second hash value is a hash value of a target back cover file generated by the client, and the target back cover file is used for prohibiting the electronic medical record from being updated with a target data file.
Further, after the storing the first hash value obtained from the client and the sending the obtained storage location of the first hash value into the client, the method further includes:
the method comprises the steps of storing a jth hash value acquired from a client, and sending the storage position of the obtained jth hash value to the client, wherein the jth hash value is a hash value of an ith target data signing file, the ith target data signing file is an ith target data file after signature, and j is a serial number of the ith target signing file corresponding to the hash value.
Further, before the storing the first hash value obtained from the client and sending the stored location of the obtained first hash value to the client, the method further includes:
verifying whether a pre-configured first physical device key is consistent with a preset first key, wherein the first physical device key is a physical device key corresponding to a node, and the first key is a key matched with the physical device key of the node;
if the first physical device key is consistent with the first key, calling a private key signature interface of a first target key device;
verifying whether the pre-configured second physical device key or the preset key is consistent with the preset second key; the second physical device key is a physical device key equipped by an operator, the key of each operator is different, and the second key is a key matched with the physical device key equipped by the operator;
and if the second physical device key or the preset key is consistent with the second key, calling a private key signature interface of a second target key device.
Further, after the invoking a private key signature interface of a second target key device if the second physical device key or the preset key is consistent with the second key, the method further includes:
judging whether an organization digital signature and an operator digital signature for submitting the hash value transaction of the target file are respectively matched with a key preset by a node and a key preset by an operator;
and if the organization digital signature and the operator digital signature of the hash value transaction of the target file are respectively matched with a key preset by a node and a key preset by an operator, judging whether the storage position of the hash value of the target file is correct, wherein the target file is a target front cover file, a target back cover file or an ith target data file.
If the file is correct, the target file is received, and the target file is judged to be a valid file.
Further, before the storing the second hash value obtained from the client and sending the storage location of the obtained second hash value to the client, the method further includes:
for each node, judging whether the node is a designated contract node;
if the contract node is appointed, triggering a preset intelligent contract operator to call the precondition of all effective contracts, and judging whether the current condition is consistent with the preset precondition of a preset intelligent contract n, wherein n is the code of the intelligent contract;
and if the current condition is consistent with the preset precondition of the intelligent contract n, indicating the contract node to trigger and execute a preset script program.
A storage device of an electronic medical record based on a block chain is applied to a client, and the device comprises:
the cover document generation module is used for recording a file number of the generated electronic medical record on the created file to obtain a target cover document, wherein the file number is a unique code for generating the electronic medical record according to a preset mode, and the target cover document is used for creating a file of an initial electronic medical record;
the first hash value acquisition module is used for acquiring a first hash value of the target cover file, calling a preset target block chain system to store the first hash value and storing the target cover file in a preset storage system;
a first storage location obtaining module, configured to obtain a storage location of the first hash value in the target blockchain system, where the storage location is uniquely determined by a block number and a transaction code;
the electronic medical record updating module is used for acquiring an instruction action for acquiring the ith target data file so as to update the electronic medical record, wherein i is the serial number of the target data file, i is a natural number, i is less than or equal to M, and M is the total number of the target data files;
the cover document generation module is used for generating a target back cover document according to the acquired end plan instruction after M target data documents are acquired, wherein the target back cover document is used for forbidding updating of the target data documents of the electronic medical record;
and the second hash value acquisition module is used for acquiring a second hash value of the target back cover file, calling a preset target block chain system to store the second hash value, and storing the target back cover file in a preset storage system.
A storage device of electronic medical records based on a block chain is applied to a target block chain system, and the device comprises:
the system comprises a first acquisition module, a second acquisition module and a transaction module, wherein the first acquisition module is used for storing a first hash value acquired from a client and sending the storage position of the acquired first hash value to the client, the first hash value is the hash value of a target cover file created by the client, the target cover file is obtained by recording a file number of a generated electronic medical record on the created file by the client and is used for creating a file of an initial electronic medical record, the file number is a unique code for generating the electronic medical record according to a preset mode, and the storage position is uniquely determined by a block number and a transaction code;
the second acquisition module is used for storing the ith hash value acquired from the client and sending the storage position of the acquired ith hash value to the client, wherein the ith hash value is the hash value of the ith target data file acquired by the client according to the instruction action for acquiring the ith target data file, i is the serial number of the target data file, i is a natural number, i is not more than M, and M is the total number of the target data files;
and the third acquisition module is used for storing a second hash value acquired from the client and sending the storage position of the acquired second hash value to the client, wherein the second hash value is a hash value of a target background file generated by the client, and the target background file is used for prohibiting the electronic medical record from being updated with the target data file.
In yet another aspect of this embodiment, there is also provided an electronic device comprising a processor and a machine-readable storage medium storing machine-executable instructions executable by the processor, the processor being caused by the machine-executable instructions to: when the method runs on a computer, the computer is enabled to execute any one of the above storage methods of the electronic medical record based on the block chain.
In yet another aspect of the present invention, there is further provided a computer-readable storage medium, in which a computer program is stored, and when the computer program is executed by a processor, the computer program causes a computer to execute any one of the above methods for storing an electronic medical record based on a blockchain.
In yet another aspect of the present invention, there is also provided a computer program product containing instructions, which when run on a computer, causes the computer to execute any one of the above-mentioned methods for storing an electronic medical record based on a blockchain.
According to the storage method, the storage device, the storage equipment and the storage medium of the electronic medical record provided by the embodiment of the invention, the file number of the generated electronic medical record is recorded on the created file to obtain the target cover file, the first hash value of the target cover file is obtained, the preset target block chain system is called to store the first hash value, and the target cover file is stored in the preset storage system; the method comprises the steps of obtaining a storage position of a first hash value in a target block chain system, obtaining an instruction action for obtaining an ith target data file to update an electronic medical record, generating a target back cover file according to an obtained end plan instruction after obtaining M target data files, obtaining a second hash value of the target back cover file, calling a preset target block chain system to store the second hash value, and storing the target back cover file in a preset storage system. According to the method, the data file content of the electronic medical record is stored in a preset storage system, the hash value of the data file is stored in a target block chain system, and a target back cover file used for forbidding updating of the target data file to the electronic medical record is arranged, so that the behavior that the electronic medical record data is tampered is avoided. Of course, it is not necessary for any product or method of practicing the invention to achieve all of the above-described advantages at the same time.
Drawings
In order to more clearly illustrate the embodiments of the present invention or the technical solutions in the prior art, the drawings used in the description of the embodiments or the prior art will be briefly described below, it is obvious that the drawings in the following description are only some embodiments of the present invention, and for those skilled in the art, other drawings can be obtained according to the drawings without creative efforts.
Fig. 1 is a flowchart of a first method for storing an electronic medical record based on a blockchain according to an embodiment of the present invention;
fig. 2 is a flowchart of a second method for storing an electronic medical record based on a blockchain according to an embodiment of the present invention;
fig. 3 is a flowchart of a third method for storing an electronic medical record based on a blockchain according to an embodiment of the present invention;
fig. 4 is a flowchart of a fourth method for storing an electronic medical record based on a blockchain according to an embodiment of the present invention;
fig. 5 is a flowchart of a fifth method for storing an electronic medical record based on a blockchain according to an embodiment of the present invention;
fig. 6 is a schematic diagram of a first block chain-based electronic medical record storage device according to an embodiment of the present invention;
fig. 7 is a schematic diagram of a storage device for a second block chain-based electronic medical record according to an embodiment of the present invention;
fig. 8 is a schematic structural diagram of an electronic device according to an embodiment of the present invention.
Detailed Description
The technical solutions in the embodiments of the present invention will be clearly and completely described below with reference to the drawings in the embodiments of the present invention, and it is obvious that the described embodiments are only a part of the embodiments of the present invention, and not all of the embodiments. All other embodiments, which can be derived by a person skilled in the art from the embodiments given herein without making any creative effort, shall fall within the protection scope of the present invention.
The target blockchain system is composed of a series of physical nodes and blockchain software programs running on the physical nodes. The nodes are directly or indirectly connected with each other through a network and communicate in a peer-to-peer (P2P) mode. Each node has the right to write data, and equal voting rights.
Each block chain is composed of a plurality of blocks created by nodes corresponding to the block chain, each block has the data content and the data fingerprint signature of the block, and the next block records the block number and the fingerprint signature of the previous block.
The electronic medical record software, namely the client, is provided with a user interface, and the user is medical staff. The user interface program of the electronic medical record software runs on the computer terminal. Within a medical facility, there are typically multiple computer terminals. The electronic medical record software calls the target blockchain system to access the electronic medical record data. Therefore, the computer terminal is directly connected with the node of the medical institution through the network. Generally, a medical facility has a node.
Therefore, the embodiments provided by the present invention are applied to the target blockchain system and the electronic medical record software based on the system, and both of them need to adopt the embodiments provided by the present invention to work together.
In order to make the embodiments of the present invention easier to understand, the names appearing in the embodiments of the present invention are explained as follows:
block chain (block chain): is a distributed accounting technology which is applied to bitcoin at the earliest time. The blockchain can be used for data storage, and is different from centralized storage and general distributed storage technology, firstly, the data storage of the blockchain needs the consent of a plurality of distributed nodes to be identified as effective, so that data errors caused by intentional or unintentional errors of a single or a few nodes are avoided; secondly, the stored data content of the block chain has data fingerprint signatures, for example, the SHA (Secure Hash Algorithm) Algorithm is adopted, and the fingerprints cannot be forged according to the currently known technology, so that the data cannot be falsified or can be found even if the data is falsified; in addition, the identity of the biller can adopt a digital signature based on a public key-secret key mechanism, so that the identity of the biller can be easily identified through a public key and the behavior of the biller can not be repudiated through a secret key. The blockchain is used as a basic technology of the bitcoin, and the bitcoin is verified to be developed in the fields of finance and payment with the development of the bitcoin in recent years.
Block (block): is a memory block, which can be thought of as a hard disk. The whole target block chain system is a huge storage space formed by combining hard disks one by one. Each tile has its data content and a data fingerprint signature. The next block will also record the block number and fingerprint signature of the previous block, thus ensuring that the chain is complete, consistent and non-forgeable. Each block may store any content of a certain size, for example a bit coin block stores a single "transaction".
Node (node): refers to a node that joins a blockchain, has computing and storage capabilities, and is connected directly or indirectly through a network. Each node, as a component of the blockchain, runs a node process of the target blockchain system. Each node is free to write data to a new block, and if approved by other nodes, i.e., if the block is authorized or approved by multiple other nodes, the block is permanently recorded and stored by all nodes and is not modified. New data will be stored by the new block following it.
Smart contract (smart contract): the method refers to a script technology developed based on a trusted data storage technology of a block chain. It allows storing a piece of script in the blockchain in advance, together with its triggered preconditions. Once the precondition is satisfied, script execution is triggered. For example, the preconditions may be: if the number of the certificate indexes in 1 month and 4 days in 2018 is more than 3000 points, the script transfers 1 bitcoin to the account B if the account A is the account A. Since the preconditions are objectively verifiable, once the conditions are established, the executor of the contract triggers the script to run, i.e., transfer, and get trust of all nodes, since each node can also verify. The embodiment of the invention is based on the intelligent contract technology and realizes the quality control of the electronic medical record.
Electronic medical record: from the aspect of data content, the data mainly comprises the following medical records: home or emergency medical record first page, medical record, test report, medical image inspection data, etc.
Medical records of hospitalization: the medical record can be selected from the group consisting of medical record homepage, admission record, course record, discharge record, death record, operation consent, anesthesia consent, blood transfusion treatment informed consent, special examination or treatment consent, critical or critical illness notice, auxiliary examination report, body temperature report, nursing note, nursing evaluation report, medical image examination report, pathology report, medical advice report, and the like.
Third-level signing: an electronic medical record is made up through filling out, submitting, signing, reviewing and signing by the doctor in charge, and reviewing and signing by the medical director. The three-level signing is mainly used for scientifically and effectively treating the scheme, establishing clear responsibility division and improving the quality of the electronic medical record. Similarly, there are two levels of signing on the nurse side.
A medical record room: the department in the hospital is specially responsible for receiving and storing electronic medical records. When the electronic medical record is received, the medical record room can also perfectly modify the content of the first page of the medical record according to the regulation.
Signature (Sign): the medical staff signs the contents of the electronic medical record which is filled in, reviewed or handed by the medical staff after confirming the contents without errors.
Quality control: and (4) controlling the quality of the electronic medical record. The quality, timeliness and rationality of the electronic medical record content are supervised and checked by special personnel in a quality control department or a department of a hospital. Under the information system, the computer program can also automatically remind and judge according to the rules.
The embodiment of the invention is a method for realizing the functional requirements of medical record data storage, signing and quality control of an electronic medical record system based on the existing electronic medical record system and the core technology of combining/modifying a block chain.
Fig. 1 is a flowchart of a method for storing an electronic medical record based on a block chain according to an embodiment of the present invention, which is applied to a client, where the method includes:
s101, recording a file number of the generated electronic medical record on a created file to obtain a target cover file, wherein the file number is a unique code of the electronic medical record generated according to a preset mode, and the target cover file is used for creating a file of an initial electronic medical record;
the preset mode may be that each node may generate a file according to a generation algorithm of an existing file number when creating a file, one node corresponds to one medical institution, and a generation method of a file number selected by each medical institution may be different.
For better understanding of the electronic medical record, the data file of the electronic medical record will now be described in detail: each patient can generate an electronic medical record in a hospital process, and one electronic medical record can be regarded as a folder or a file bag which is filled with different types of file data at different time points. The system realized by the method provided by the embodiment of the invention allocates a unique file number to each Electronic Medical Record (Electronic Medical Record). The data of the electronic medical record can be divided into a plurality of files (files), wherein the information of the files is recorded in a certain coding format, the files have different types, wherein, the File of the Cover of object (Cover) is a system-specific type: this particular type of document is specifically proposed, implicit, and does not pertain to the content of the electronic medical record that is visible to the doctor and patient.
It should be noted that creating an electronic medical record is equivalent to if and only if the cover-of-object file of an electronic medical record is submitted for storage, each electronic medical record is assigned a file number.
In addition, the first hash value of the target cover document is stored in the target blockchain system in order to avoid storing too large data contents in the blockchain, according to the storage mechanism of the blockchain, although the blockchain can store too large data contents, the storage scheme is inefficient, the blockchain is not particularly suitable for storing large-volume documents, and therefore, the digital signature, i.e. the hash value corresponding to the document, which refers to the target cover document, the target back cover document or M target data documents, is stored in the blockchain.
S102, acquiring a first hash value of the target cover file, calling a preset target block chain system to store the first hash value, and storing the target cover file in a preset storage system;
it should be noted that the first hash value may be obtained from another client or system, or may be calculated at the client.
In addition, according to the characteristics of the block chain, the hash values of the block chain storage target files are stored according to the time stamps, and the target files in the embodiment of the invention are all target front cover files, target back cover files or ith target data files.
In addition, the target blockchain system storage is similar to the distributed network storage system, and also provides a set of Application Programming Interface (API) for the upper layer Application, i.e. the client, to access data.
The storage system may be a distributed network storage system, a centralized storage system, a blockchain storage system, a magnetic tape, or an optical disk, the blockchain storage system includes a first target blockchain system and a removable medium, and the removable medium may be a magnetic tape or an optical disk.
The distributed network storage system can be understood as that data is stored on a plurality of independent devices in a scattered mode. The traditional network storage system adopts a centralized storage server to store all data, the storage server becomes the bottleneck of the system performance, is also the focus of reliability and safety, and cannot meet the requirement of large-scale storage application. The distributed network storage system adopts an expandable system structure, utilizes a plurality of storage servers to share storage load, utilizes the position server to position and store information, not only improves the reliability, the availability and the access efficiency of the system, but also is easy to expand.
Based on the above description of the target blockchain system, although the whole backup file can be stored in the first target blockchain system, the blockchain is not suitable for storing large-volume files, and therefore, for the large-volume files, the data persistence storage can be well solved by using the distributed network storage system.
In particular, the method comprises the following steps of,
calculating a first hash value corresponding to the target cover file according to the following expression by using the target cover file;
the above expression: hash ═ hash (file);
the HASH (■) is a HASH function, the HASH is a first HASH value, and the file is the content of the target cover document;
it should be noted that, the method for calculating the hash value provided in the embodiment of the present invention is similar to the method for calculating the first hash value, and is not described herein again.
It should be noted that the first hash value is a numerical value obtained by performing logical operation on data of content of a file, hash values obtained by different files are different, file contents corresponding to the same hash value are completely the same and are unrelated to file names, and the hash value is related to the file contents, that is, for names of different files, as long as corresponding hash values are the same, it means that the contents corresponding to the two files are the same.
S103, acquiring a storage position of the first hash value in the target blockchain system, wherein the storage position is uniquely determined by a block number and a transaction code;
it should be noted that, according to the characteristics of the blockchain, the storage location of the hash value of the target file in the target blockchain system in the embodiment of the present invention is uniquely determined by the block number stored in correspondence with the hash value and the transaction code corresponding to the block number, and the hash value can be understood as the hash value of the transaction, and can be used as data corresponding to a subsequent access storage location;
in addition, when the hash value corresponding to a target file is submitted to the target blockchain system for storage, a return value of the target blockchain system is obtained, and the return value is a storage position of the hash value corresponding to the target file in the target blockchain system.
S104, acquiring an instruction action for acquiring the ith target data file to update the electronic medical record, wherein i is the serial number of the target data file, i is a natural number, i is less than or equal to M, and M is the total number of the target data files
The instruction action can be a revision instruction or an addition instruction.
It should be noted that, updating the electronic medical record may be understood as updating the electronic medical record by adding the ith target data file or revising the ith target data file.
In addition, it can be known from the above description that the target data files all record second target information in a preset encoding format, the second target information includes a file number, a file type, a name file, an instruction action and a file content, the file type also includes a target data file, the encoding format includes an X XM L (eXtensible Markup L angle) encoding format, a JSON (JavaScript Object Notation, JS Object Markup) encoding format, a pure file format or a binary format, the target data file includes a case header file, a case history recording file, a nursing case file, a checklist or a discharge record, the instruction action includes an addition instruction, a signing instruction or a revision instruction, the instruction is an instruction for signing the target data file by an organization or an operator, the file content includes data content, an organization code for generating an electronic case history and a unique identification number of a patient, and the content included in the target data file is not limited by the embodiment of the present invention.
In particular, the method comprises the following steps of,
judging whether the obtained command action comprises a new command or a revision command, wherein the new command is a command for obtaining an ith target data file, the revision command is a command for obtaining the ith target data file after revising an original target data file, and the original target data file is a target data file to be revised, which corresponds to any one of the sequence numbers 1, … and i-1;
if the obtained instruction action is a new instruction, obtaining an ith target data file and an ith hash value corresponding to the target data file, calling a preset target block chain system to store the ith hash value according to the file number and the storage position of the first hash value, and storing the ith target data file in a preset storage system;
in this step, after the preset target blockchain system is called to store the ith hash value and the ith target data file is stored in the preset storage system, the method further includes obtaining a storage location of the ith hash value in the target blockchain system.
And acquiring the storage position of the ith hash value in the target blockchain system.
If the obtained command action is a revision command, obtaining an ith target data file and an ith hash value corresponding to the target data file; acquiring a storage position of the original target data file corresponding to a hash value according to the file number and the original target data file, calling a preset target block chain system to store the ith hash value according to the acquired storage position, and storing the ith target data file in a preset storage system; the ith target data file obtained by revision is a file obtained by revising the original target data file by means of adding revision content, and the revised ith target data file refers to the storage position of the original target data file in the target block chain system.
In this step, after a preset target blockchain system is called to store the ith hash value and the ith target data file is stored in a preset storage system, the method further includes:
and acquiring the storage position of the ith hash value in the target blockchain system.
S105, after M target data files are obtained, generating a target back cover file according to the obtained end plan instruction, wherein the target back cover file is used for forbidding updating of the target data files of the electronic medical record;
the target front cover file and the target back cover file record first target information in a preset coding format, the first target information comprises a file number, a file type, an instruction action and file content, and the file type is the target front cover file and the target back cover file.
The target back-cover file is used to prohibit updating of the target data file for the electronic medical record, and may be understood as follows: the target back cover file is a file used for forbidding to newly add a target data file to the electronic medical record or forbidding to revise the target data file in the electronic medical record;
it is worth mentioning that the proposal of an electronic medical record is equivalent to adding a background type file, namely a target background file. Once the target back file is committed for storage, any newly added files and revised files that follow are considered invalid. The only operation that is effective on the electronic medical record is signing the existing file. It follows that there is one and only one file of the back cover type.
And S106, acquiring a second hash value of the target back cover file, calling a preset target block chain system to store the second hash value, and storing the target back cover file in a preset storage system.
From the above description, the target back cover document is similar to the target front cover document, and both are specific types of documents provided by the embodiment of the present invention, and the documents are implicit, that is, do not belong to the content of the electronic medical record visible to the doctor and the patient.
Before the subject cover document is generated, the medical record room may modify the contents of the first page of the medical record according to the specifications.
For files of electronic medical records, an operation is defined: signed (Sign). Which signs one or more documents on behalf of a particular person at a particular node. Namely after S106, further comprising:
acquiring the code of the organization to which the operator belongs and the code corresponding to the operator from a preset configuration file according to the received signing instruction;
signing the ith target data file by using a first secret key preset by the operator according to the code corresponding to the operator;
according to the code of the mechanism to which the operator belongs, the signature of the ith target data file and the signature of the operator are respectively signed by using a second secret key preset by the mechanism to which the operator belongs;
submitting the ith target data signing file to a preset storage system, wherein the ith target data signing file is a signed ith target data file;
and acquiring a jth hash value of the ith target data signing file, and calling a preset target block chain system to store the jth hash value, wherein j is a serial number of the corresponding hash value of the ith target signing file.
Wherein the signing may be a tertiary signing.
According to the characteristics of the block chain, the returned storage position is unique, namely the storage position is known, so that the target data file can be known.
It should be noted that, the hash value of each file and the hash value of the corresponding signed file are regarded as a piece of data to be stored in the blockchain according to the submission order of the nodes. For the structure of a certain target block, only the structure of "transaction" needs to be defined according to the block structure of the block chain.
Because the hash value of the signed file corresponding to the target data file is stored in the target block chain system, when one piece of data is generated and submitted, the client signs the data by using the key of the operator, so that the non-repudiation of the operator on the data content and time can be ensured; the client then signs the data and the operator's signature using the authority's key, whereby the non-repudiation of the authority with respect to the data content and its operator can be guaranteed.
The time of generation of the hash value of the target data file within the chunk may be determined approximately by the timestamp of the chunk header, which is generated by the node that submitted the data. Within a block, files are sorted in ascending order of time stamp. The timestamp of the next block is again larger than the timestamp of the previous block. The characteristic ensures that the data storage sequence is basically consistent with the node submission sequence, so that the time of the hash value of the target data file cannot be tampered and repudiated afterwards, and the data is the hash value of the target data file.
After the obtaining of the jth hash value of the ith target data signed file and the calling of a preset target block chain system to store the jth hash value, the method further includes:
sequentially reading a target file and a target signing file from a preset storage system according to a timestamp, wherein the target file is a target front cover file, an ith target data file or a target back cover file, and the target signing file is a file signed by the ith target data file;
for each target file, verifying whether the target file is judged to be a valid file;
if the target file is a valid file, verifying whether a target signing file corresponding to the target file is a valid file;
and if the target signing file is a valid file, associating the target file with the target signing file.
When the hash value of the whole file of the electronic medical record is read, the reading program can read the contents of the blocks from the beginning of the storage system storing all the target data files of the electronic medical record according to the time stamp, and filter all the files of each electronic medical record from the first target front cover file to the first target back cover file, and read the hash values of all the files of any electronic medical record according to the time stamp. Therefore, the electronic medical record file sequence and the signature thereof can be obtained, namely one is the electronic medical record. Which has a unique profile number and patient ID. The hash value of the target data file can be used to verify whether the target data file or the corresponding signed file is tampered.
For each target file, one embodiment of verifying whether the target file is determined to be a valid file is as follows:
aiming at each target file, judging whether the mechanism code and the mechanism signature corresponding to the target file are consistent;
if the mechanism code and the mechanism signature corresponding to the target file are consistent, judging whether the operator code and the operator signature corresponding to the target file are consistent;
and if the operator code corresponding to the target file is consistent with the operator signature, judging the target file to be a valid file.
According to the implementation mode, the safety of the target file in the electronic medical record is further improved through the identification mechanism and the identity of the operator.
One implementation way of verifying whether the target signed document corresponding to the target document is a valid document is as follows:
judging whether the mechanism code and the mechanism signature corresponding to the target signature file corresponding to the target file are consistent;
if the corresponding mechanism code and the corresponding mechanism signature of the target signing file are consistent, whether the corresponding operator code and the corresponding operator signature of the target signing file are consistent is judged;
and if the operator code corresponding to the target signed file is consistent with the operator signature, judging the target signed file to be a valid file.
According to the embodiment, the security of the signature file in the electronic medical record is further improved through the identification of the mechanism and the identity of the operator.
Therefore, the method provided by the embodiment of the invention ensures that the target data file of the electronic medical record cannot be updated by adding the target back cover file, stores all the data file contents constituting the electronic medical record in the preset storage system, and stores the hash value corresponding to each target file in the target block chain system, thereby avoiding the behavior of tampering the data of the electronic medical record.
Fig. 2 is a schematic diagram of a second block chain-based electronic medical record storage method provided in an embodiment of the present invention, which is applied to a target block chain system, and the method includes:
s201, storing a first hash value acquired from a client, and sending the storage position of the acquired first hash value to the client, wherein the first hash value is the hash value of a target cover file created by the client, the target cover file is obtained by recording a file case number of a generated electronic medical record on the created file by the client and is used for creating a file of an initial electronic medical record, the file case number is a unique code for generating the electronic medical record according to a preset mode, and the storage position is uniquely determined by a block number and a transaction code;
based on the description of the target cover document, when the first hash value is obtained, the target blockchain system selects the first hash value, stores the first hash value according to the timestamp, and returns the storage position of the first hash value to the client.
Before S201, the method further includes:
verifying whether a pre-configured first physical device key is consistent with a preset first key, wherein the first physical device key is a physical device key corresponding to a node, and the first key is a key matched with the physical device key of the node;
if the first physical device key is consistent with the first key, calling a private key signature interface of a first target key device;
verifying whether the pre-configured second physical device key or the preset key is consistent with the preset second key; the second physical device key is a physical device key equipped by an operator, the key of each operator is different, and the second key is a key matched with the physical device key equipped by the operator;
and if the second physical device key or the preset key is consistent with the second key, calling a private key signature interface of a second target key device.
After the private key signature interface of the second target key device is called if the second physical device key or the preset key is consistent with the second key, the method further includes:
judging whether an organization digital signature and an operator digital signature for submitting the hash value transaction of the target file are respectively matched with a key preset by a node and a key preset by an operator;
and if the organization digital signature and the operator digital signature of the hash value transaction of the target file are respectively matched with a key preset by a node and a key preset by an operator, judging whether the storage position of the hash value of the target file is correct, wherein the target file is a target front cover file, a target back cover file or an ith target data file.
If the file is correct, the target file is received, and the target file is judged to be a valid file.
It should be noted that, in order to ensure that the nodes having the write authority are legitimate nodes, a public key-secret key mechanism is also adopted to provide each node with a physical secret key device, i.e. a first physical device secret key, and once the device is separated from the node, the node cannot call a private key signature interface of the secret key device, so that subsequently submitted data is not accepted by other nodes in the block chain. Each key device has a unique key and can uniquely identify a node.
Likewise, to ensure that the signatures come from the corresponding signers, a public-key mechanism is also employed to equip each healthcare worker with a physical second physical device key or pre-key, i.e., software virtual, key device. When signing is carried out, the equipment is required to be connected to the operation terminal, otherwise, the system cannot call the private key signature interface of the key equipment, so that the submitted data is not accepted by the local node and other nodes in the block chain. Each key device has a unique key which can uniquely identify a signer.
Since the data of the blockchain is equally and completely stored on each node, the distributed storage system naturally has data reliability and can easily cope with long-term storage and various disasters.
In addition, embodiments of the invention may provide for: if any one block is accepted by more than half the number of nodes that make up the target blockchain system, all data within that block is deemed to have been successfully stored. According to the blockchain protocol, the node accepts a block B and creates a new block after B. This ensures that any data within the block cannot be tampered with. Once tampered, the hash value of the block will change, and will not match the hash value recorded in the subsequent block.
S202, storing an ith hash value acquired from a client, and sending the storage position of the acquired ith hash value to the client, wherein the ith hash value is the hash value of an ith target data file acquired by the client according to an instruction action for acquiring the ith target data file, i is the serial number of the target data file, i is a natural number, i is less than or equal to M, and M is the total number of the target data files;
based on the description of the target data file, when the ith hash value is obtained, the target blockchain system selects and stores the ith hash value, and returns the storage position of the ith hash value to the client.
And S203, storing a second hash value acquired from the client, and sending the storage position of the acquired second hash value to the client, wherein the second hash value is the hash value of a target background file generated by the client, and the target background file is used for prohibiting the target data file from being updated on the electronic medical record.
Based on the description of the target back cover file, when the second hash value is obtained, the target blockchain system selects and stores the second hash value, and returns the storage position of the second hash value to the client.
Before S203, the method further includes:
for each node, judging whether the node is a designated contract node;
if the contract node is appointed, triggering a preset intelligent contract operator to call the precondition of all effective contracts, and judging whether the current condition is consistent with the preset precondition of a preset intelligent contract n, wherein n is the code of the intelligent contract;
and if the current condition is consistent with the preset precondition of the intelligent contract n, indicating the contract node to trigger and execute a preset script program.
The embodiment of the invention provides the quality control function of the electronic medical record by utilizing the intelligent contract, and firstly defines the contract content with a certain coding format, including conditions and scripts.
An intelligent contract operator on a node automatically invokes the conditions of all active contracts. Once the condition is satisfied, the contractual node specified by the contract executes the action script. The result of the script execution need not be related to the blockchain, and may be, for example, sending a short message alert to someone.
With the script language, the following quality control functions can be realized:
1) once it is detected that the back cover type file is signed for a certain electronic medical record, the electronic medical record is finalized.
2) Once the electronic medical record is created, i.e., the cover-style document is submitted, a notification should be triggered that the first course record is to be created within 8 hours.
3) Before the target documents, such as discharge records, are signed, the medical care personnel should be reminded every day to create daily medical records for critically ill patients.
4) And if and only after the lower doctor signs the file, prompting the upper doctor to sign the file.
After S203, further comprising:
storing a jth hash value acquired from a client, and sending the storage position of the obtained jth hash value to the client, wherein the jth hash value is a hash value of an ith target data signing file, the ith target data signing file is an ith signed target data file, and j is a serial number of the hash value corresponding to the ith target signing file.
According to the method provided by the embodiment of the invention, the hash value acquired by the client is stored according to the time stamp, and the storage position of the acquired hash value is sent to the client, so that the electronic medical record is prevented from being tampered, and preparation is provided for subsequently checking whether the target data file of the electronic medical record is tampered.
Fig. 3 is a flowchart of a second block chain-based electronic medical record storage method according to an embodiment of the present invention, which is applied to a client, where the method includes:
s301, recording a file number of the generated electronic medical record on the created file to obtain a target cover document, wherein the file number is a unique code generated in the electronic medical record according to a preset mode, and the target cover document is used for creating a file of an initial electronic medical record;
steps S301 to S303 are the same as steps S101 to S103 in the embodiment of fig. 1. Therefore, all the embodiments in fig. 1 are applicable to fig. 3, and can achieve the same or similar beneficial effects, and are not described herein again.
S302, acquiring a first hash value of the target cover file, calling a preset target block chain system to store the first hash value, and storing the target cover file in a preset storage system;
s303, acquiring a storage position of the first hash value in the target blockchain system, wherein the storage position is uniquely determined by a block number and a transaction code;
s304, judging whether the obtained command action comprises a new command or a revision command, wherein the new command is a command for obtaining an ith target data file, the revision command is a command for obtaining the ith target data file after revising an original target data file, the original target data file is a target data file to be revised corresponding to any one of sequence numbers 1, … and i-1, i is the sequence number of the target data file, i is a natural number, i is less than or equal to M, and M is the total number of the target data file; if the obtained command action is a new command, executing S305, and if the obtained command action is a revision command, executing S307;
s305, acquiring an ith target data file and an ith hash value corresponding to the target data file, calling a preset target block chain system to store the ith hash value according to the file number and the storage position of the first hash value, and storing the ith target data file in a preset storage system;
it should be noted that, the storage system stores an ith target data file, and the target blockchain system stores an ith hash value corresponding to the target data file, so as to implement permanent storage without tampering on the electronic medical record file.
In addition, the ith target data file of this step is an added new target data file.
S306, acquiring the storage position of the ith hash value in the target block chain system;
in the step, after the preset target blockchain system is called to store the ith hash value, the return value of the storage position of the ith hash value in the target blockchain system is obtained, so that the data, namely the ith hash value, can be accessed subsequently by using the storage position.
S307, acquiring an ith target data file and an ith hash value corresponding to the target data file; acquiring a storage position of the original target data file corresponding to a hash value according to the file number and the original target data file, calling a preset target block chain system to store the ith hash value according to the acquired storage position, and storing the ith target data file in a preset storage system; the ith target data file obtained by revision is a file obtained by revising the original target data file in a mode of adding revision content, and the revised ith target data file refers to the storage position of the original target data file in the target block chain system;
it should be noted that any data, once stored, may not be modified or deleted, depending on the nature of the target blockchain system. Therefore, if a file is to be revised, the revision content is added. For example: the medical record first page is revised, which target data file is based on the medical record first page and the revised content is pointed out, the revised content can be new data or incremental data on the basis of the original target data file, but the target data file obtained after revision, namely the ith target data file, is a new target data file, the content of the original target data file is unchanged, the content and the hash value of the original target data file are still stored in a corresponding storage system, and the new adding instruction and the modifying instruction enable interaction between a client and an operator to be more convenient and humanized.
S308, acquiring the storage position of the ith hash value in the target blockchain system;
s309, after M target data files are obtained, generating a target back cover file according to the obtained end plan instruction, wherein the target back cover file is used for forbidding updating of the target data files of the electronic medical record;
steps S309 to S310 are the same as steps S105 to S106 in the embodiment of fig. 1. Therefore, all the embodiments in fig. 1 are applicable to fig. 3, and can achieve the same or similar beneficial effects, and are not described herein again.
S310, acquiring a second hash value of the target back cover file, calling a preset target block chain system to store the second hash value, and storing the target back cover file in a preset storage system;
s311, obtaining the storage position of the second hash value in the target block chain system;
s312, acquiring the code of the organization to which the operator belongs and the code corresponding to the operator from a preset configuration file according to the received signing instruction;
the preset configuration file is a file configured and allocated in advance by the client, and it can be understood that after an operator logs in the client, the configuration file can be read, and the code of the mechanism to which the operator belongs and the code corresponding to the operator are obtained.
S313, according to the code corresponding to the operator, signing the ith target data file by using a first secret key preset by the operator;
in this step, the identity of the operator can be known according to the code corresponding to the operator, so that the target data file is signed by using a secret key, the secret key is a preset secret key, and each operator has the secret key, so that the irrevocability of the operator on the data content, namely the target data file and the time can be ensured.
S314, according to the code of the mechanism to which the operator belongs, the signature of the ith target data file and the signature of the operator are respectively signed by using a second secret key preset by the mechanism to which the operator belongs;
in this step, the second key is the key of the organization to which the operator belongs, and the signature of the data and the operator is signed by using the key of the organization, so that the non-repudiation of the organization to the data content, namely the target data file and the operator thereof can be ensured.
S315, submitting the ith target data signing file to a preset storage system, wherein the ith target data signing file is the signed ith target data file;
it should be noted that the storage location of the file can be easily read by using the key value returned by the storage system.
S316, acquiring a jth hash value of the ith target data signing file, and calling a preset target block chain system to store the jth hash value, wherein j is a serial number of the hash value corresponding to the ith target signing file.
J and i in this step are in one-to-one correspondence, that is, each target data file corresponds to one target data signing file.
Therefore, the method provided by the implementation of the invention ensures that the electronic medical record cannot be newly added or revised by newly adding the target back cover file, stores all the target file contents forming the electronic medical record and the signature files corresponding to the target files in the preset storage system, stores the hash value corresponding to each target file and the signature files corresponding to the target files in the target block chain system, can achieve quality control on the electronic medical record by signing, can also ensure the non-repudiation of an operator on the data contents and time, and ensures the non-repudiation of the organization on the data contents and the operator thereof, thereby further preventing the submitted data from being tampered.
Fig. 4 is a schematic diagram of a fourth method for storing an electronic medical record based on a blockchain according to an embodiment of the present invention, which is applied to a client, where the method includes:
s401, recording a file number of the generated electronic medical record on a created file to obtain a target cover file, wherein the file number is a unique code generated in the electronic medical record according to a preset mode, and the target cover file is used for creating a file of an initial electronic medical record;
steps S401 to S416 are the same as the methods executed in steps S301 to S316 in the embodiment of fig. 3, respectively. Therefore, all the embodiments in fig. 3 are applicable to fig. 4, and can achieve the same or similar beneficial effects, and are not described herein again.
S402, acquiring a first hash value of the target cover file, calling a preset target block chain system to store the first hash value, and storing the target cover file in a preset storage system;
s403, acquiring a storage position of the first hash value in the target blockchain system, wherein the storage position is uniquely determined by a block number and a transaction code;
s404, judging whether the obtained command action comprises a new command or a revision command, wherein the new command is a command for obtaining an ith target data file, the revision command is a command for obtaining the ith target data file after revising an original target data file, the original target data file is a target data file to be revised corresponding to any one of the sequence numbers 1, … and i-1, i is the sequence number of the target data file, i is a natural number, i is less than or equal to M, and M is the total number of the target data file; if the acquired instruction action is a new instruction, executing S405, and if the acquired instruction action is a revision instruction, executing S407;
s405, obtaining the ith target data file and the corresponding th target data fileiA hash value; calling a preset target block chain system to store the ith hash value according to the file number and the storage position of the first hash value, and storing the ith target data file in a preset storage system;
s406, acquiring the storage position of the ith hash value in the target blockchain system;
s407, acquiring an ith target data file and an ith hash value corresponding to the target data file; acquiring a storage position of the original target data file corresponding to a hash value according to the file number and the original target data file, calling a preset target block chain system to store the ith hash value according to the acquired storage position, and storing the ith target data file in a preset storage system; the ith target data file obtained by revision is a file obtained by revising the original target data file in a mode of adding revision content, and the revised ith target data file refers to the storage position of the original target data file in the target block chain system;
s408, acquiring the storage position of the ith hash value in the target blockchain system;
s409, after M target data files are obtained, generating a target back cover file according to the obtained end plan instruction, wherein the target back cover file is used for forbidding updating of the target data files of the electronic medical record;
s410, acquiring a second hash value of the target back cover file, calling a preset target block chain system to store the second hash value, and storing the target back cover file in a preset storage system;
s411, obtaining a storage position of the second hash value in the target blockchain system;
s412, acquiring the code of the organization to which the operator belongs and the code corresponding to the operator from a preset configuration file according to the received signing instruction;
s413, signing the ith target data file by using a first secret key preset by the operator according to the code corresponding to the operator;
s414, according to the code of the operator 'S affiliated organization, the signature of the ith target data file and the signature of the operator are respectively signed by using a second secret key preset by the operator' S affiliated organization;
s415, submitting the ith target data signing file to a preset storage system, wherein the ith target data signing file is a signed ith target data file;
s416, acquiring a jth hash value of the ith target data signing file, calling a preset target block chain system to store the jth hash value, wherein j is a serial number of the hash value corresponding to the ith target signing file;
s417, sequentially reading a target file and a target signing file from a preset storage system according to the time stamp, wherein the target file is a target front cover file, an ith target data file or a target back cover file, and the target signing file is a file signed by the ith target data file;
based on the description of the storage system, the storage system can store all file contents of the electronic medical record according to the time stamp, the stored target files are read one by one according to the time stamp, and a complete electronic medical record is displayed according to the time sequence.
S418, judging whether the mechanism code and the mechanism signature corresponding to each target file are consistent or not according to each target file; if the organization code corresponding to the target file is consistent with the organization signature, executing S419;
in this step, the consistency of the organization code and the organization signature is checked to eliminate the inconsistency, that is, to eliminate the illegal file.
The object files in S418 to S420 may be understood as any object file in the electronic medical record.
S419, judging whether the operator code and the operator signature corresponding to the target file are consistent, if so, executing S420;
in this step, it is ensured that each target file is a valid file by checking the consistency of the operator code and the operator signature.
S420, judging that the target file is a valid file, and judging whether the mechanism code and the mechanism signature corresponding to the target signature file corresponding to the target file are consistent; if the corresponding organization code and the corresponding organization signature of the target signed file are consistent, executing S421;
after judging whether the target file is a valid file, whether the target signed file is a valid file needs to be judged.
It should be noted that, the order of determining the target document and the target signature document is not limited in the embodiments of the present invention.
The target signature files in S420 to S422 can be understood as target signature files corresponding to any one of the target files in the electronic medical records.
S421, judging whether the operator code corresponding to the target signed file is consistent with the operator signature; if the operator code corresponding to the target signed file is consistent with the operator signature, executing S422;
in the step, the consistency of the operator code and the operator signature is checked to ensure that each target signed file is a valid file.
S422, the target signing file is judged to be a valid file, and the target file is associated with the target signing file.
After the target file and the target signing file are judged to be valid files, the target file and the target signing file need to be associated, so that the target signing file corresponding to the target file can be directly found after the target file is read.
Therefore, the method provided by the implementation of the invention ensures that the target data file of the electronic medical record cannot be added or revised by adding the target back cover file, stores all the target file contents constituting the electronic medical record and the signed files corresponding to the target files in the preset storage system, and stores the hash value corresponding to each target file and the signed files corresponding to the target files in the target block chain system, so that the non-repudiation of an operator to the data contents and time and the non-repudiation of the mechanism to the data contents and the operator thereof can be ensured, and the behavior of tampering the submitted data is prevented; in addition, by respectively verifying the validity of the signing organization and the operator, invalid signing is eliminated, and the sequence of the electronic medical record files and the correctness of the signing are ensured.
Fig. 5 is a schematic diagram of a fifth method for storing an electronic medical record based on a block chain according to an embodiment of the present invention, which is applied to a target block chain system, and the method includes:
s501, verifying whether a pre-configured first physical device key is consistent with a preset first key, and if so, executing S502, wherein the first physical device key is a physical device key corresponding to a node, and the first key is a key matched with the physical device key of the node;
in the step, the physical key equipment is used for providing key access, so that the safety of personal identity and organization identity can be ensured.
Note that one mechanism corresponds to one node.
S502, calling a private key signature interface of the first target key device;
in this step, the private key signature interface is called to sign the organization, and the first target key device is used for uniquely identifying one node and has a unique key.
S503, verifying whether the pre-configured second physical device key or the preset key is consistent with the preset second key; if the pre-configured second physical device key or the pre-configured key is consistent with the preset second key, executing S504, where the second physical device key is a physical device key configured by an operator, the key of each operator is different, and the second key is a key matched with the physical device key configured by the operator;
the second physical device key is set in the step so as to increase the security of the electronic medical record.
S504, calling a private key signature interface of the second target key device;
the step calls the private key signature interface to sign the operator respectively, and the second target key device is used for uniquely identifying a signer, namely the operator, and has a unique key.
S505, judging whether the organization digital signature and the operator digital signature submitted to the hash value transaction of the target file are respectively matched with a key preset by a node and a key preset by an operator; if the organization digital signature and the operator digital signature of the hash value transaction of the target file are respectively matched with the key preset by the node and the key preset by the operator, executing S506;
this step is used to determine whether the node should receive the organization digital signature and the operator digital signature.
The digital signature can be understood as encrypting the hash value transaction of the target file to obtain a string of character strings, decrypting the character strings by using keys corresponding to nodes or operators, and if the character strings can be decrypted, the character strings are considered to be matched, and the transaction can be understood as storing data.
In addition, the digital signature involves a hash function, the sender's public key, and the sender's private key. Digital signatures have two roles, one is to be able to determine that a message was indeed signed and sent by the sender, and the other is to be able to determine the integrity of the message.
The working principle of the digital signature is as follows: when sending the target file, the sender uses a hash function to generate the digest from the hash value transaction of the target file, then uses the private key of the sender to encrypt the digest, the encrypted digest is used as the digital signature of the hash value transaction of the target file and sent to the receiver together with the hash value transaction of the target file, the receiver firstly uses the hash function same as the sender to calculate the message digest from the received original hash value transaction of the target file, then uses the public key of the sender to decrypt the digital signature attached to the transaction, if the two digests are the same, the receiver can confirm that the digital signature is the sender.
S506, judging whether the storage position of the hash value of the object file is correct, if so, executing S507, wherein the object file is an object front cover file, an object back cover file or an ith object data file.
In this step, whether the node receives the target file is judged by verifying the storage position of the hash value of the target file.
S507, receiving the target file and judging the target file as an effective file;
after the target file is verified according to S505 to S506, it can be determined whether the node receives the target file, and it is determined that the target file is a valid file.
S508, storing a first hash value acquired from a client, and sending the storage position of the acquired first hash value to the client, wherein the first hash value is a hash value of a target cover file created by the client, the target cover file is obtained by recording a file case number of a generated electronic medical record on the created file by the client and is used for creating a file of an initial electronic medical record, the file case number is a unique code for generating the electronic medical record according to a preset mode, and the storage position is uniquely determined by a block number and a transaction code;
steps S508 to S509 are the same as the methods executed by steps S201 to S202 in the embodiment of fig. 2, respectively. Therefore, all the embodiments in fig. 2 are applicable to fig. 5, and can achieve the same or similar beneficial effects, and are not described herein again.
S509, storing an ith hash value acquired from the client, and sending the storage position of the acquired ith hash value to the client, wherein the ith hash value is the hash value of an ith target data file acquired by the client according to a new adding instruction or a revision instruction, i is a natural number, i is less than or equal to M, and M is the total number of the target data files;
s510, judging whether each node is a designated contract node or not according to each node; if the contract node is specified, executing S511;
it should be noted that the present invention provides an embodiment that does not limit the sequence of S510, and the contract node is a node that has previously reached the contract agreement.
S511, triggering a preset intelligent contract operator to call the precondition of all effective contracts, judging whether the current condition is consistent with the preset precondition of a preset intelligent contract n, and executing S512 if the current condition is consistent with the preset precondition of the intelligent contract n, wherein n is the code of the intelligent contract;
the active contract means that one contract is active; the preset precondition refers to a preset operation condition, for example, the precondition is a time condition such as 0 o' clock per day, or an event condition such as a message reception.
S512, indicating contract nodes to trigger and execute a preset script program;
when the current condition matches the precondition, the script program needs to be executed.
And S513, storing a second hash value obtained from the client, and sending the storage location of the obtained second hash value to the client, wherein the second hash value is a hash value of a target back-cover file generated by the client, and the target back-cover file is used for prohibiting the target data file from being updated for the electronic medical record.
Step S513 is the same as the method executed in step S203 in the embodiment of fig. 2. Therefore, all the embodiments in fig. 2 are applicable to fig. 5, and can achieve the same or similar beneficial effects, and are not described herein again.
And S514, storing the jth hash value acquired from the client, and sending the storage position of the obtained jth hash value to the client, wherein the jth hash value is the hash value of the ith target data signing file, the ith target data signing file is the signed ith target data file, and j is the serial number of the hash value corresponding to the ith target signing file.
The values of j and i in this step are in one-to-one correspondence, that is, when i is 1, j is also 1, the maximum value of i is M, and j is also M.
Therefore, the method provided by the implementation of the invention stores the hash value acquired by the client according to the timestamp, and the storage position of the obtained hash value is sent to the client, so that the electronic medical record is prevented from being tampered, preparation is made for subsequently checking whether the target data file of the electronic medical record is tampered, in addition, each node is provided with a physical key device by adopting a public key-secret key mechanism, so that the node with the write authority is ensured to be a legal node, by equipping each medical person with a physical or software-virtual key device using a public-key mechanism, it is ensured that the signature comes from the corresponding signer, since the data of the blockchain is equally and completely stored on each node, the distributed storage system can ensure the reliability of the data and can cope with long-term storage and various disasters.
Corresponding to the above block chain-based electronic medical record storage method, the embodiment of the application also provides a block chain-based electronic medical record storage device.
Fig. 6 is a schematic diagram of a first block chain-based electronic medical record storage device according to an embodiment of the present invention, which is applied to a client, where the method includes:
a cover document generation module 601, configured to record a document number of a generated electronic medical record on a created document to obtain an object cover document, where the document number is a unique code generated in a preset manner for the electronic medical record, and the object cover document is used to create a document of an initial electronic medical record;
a first hash value obtaining module 602, configured to obtain a first hash value of the target cover document, call a preset target block chain system to store the first hash value, and store the target cover document in a preset storage system;
a first storage location obtaining module 603, configured to obtain a storage location of the first hash value in the target blockchain system, where the storage location is uniquely determined by a block number and a transaction code;
an electronic medical record updating module 604, configured to obtain an instruction action for obtaining an ith target data file, so as to update the electronic medical record, where i is a serial number of the target data file, i is a natural number, i is not greater than M, and M is a total number of the target data files;
a cover document generating module 605, configured to generate a target back cover document according to the obtained end-to-end instruction after obtaining M target data documents, where the target back cover document is used to prohibit updating of the target data documents for the electronic medical record;
a second hash value obtaining module 606, configured to obtain a second hash value of the target back cover file, call a preset target block chain system to store the second hash value, and store the target back cover file in a preset storage system.
The electronic medical record updating module 604 may include:
the first judgment sub-module is used for judging whether the obtained instruction action comprises a new instruction or a revision instruction, wherein the new instruction is an instruction for obtaining an ith target data file, the revision instruction is an instruction for obtaining the ith target data file after revising an original target data file, and the original target data file is a target data file which needs to be revised and corresponds to any one of sequence numbers 1, … and i-1; if the obtained instruction action is a new instruction, triggering an ith hash value new submodule, and if the obtained instruction action is a revision instruction, triggering an ith hash value revision submodule;
the ith hash value adding submodule is used for acquiring an ith target data file and an ith hash value corresponding to the target data file, calling a preset target block chain system to store the ith hash value according to the file number and the storage position of the first hash value, and storing the ith target data file in a preset storage system;
the ith hash value revision submodule is used for acquiring an ith target data file and an ith hash value corresponding to the target data file; acquiring a storage position of the original target data file corresponding to a hash value according to the file number and the original target data file, calling a preset target block chain system to store the ith hash value according to the acquired storage position, and storing the ith target data file in a preset storage system; the ith target data file obtained by revision is a file obtained by revising the original target data file in a mode of adding revision content, and the revised ith target data file refers to the storage position of the original target data file in the target block chain system;
the above apparatus may further include:
and a first storage location obtaining module, configured to obtain a storage location of the ith hash value in the target blockchain system.
The above apparatus may further include:
and the second storage position acquisition module is used for acquiring the storage position of the second hash value in the target blockchain system.
The above apparatus may further include:
the code acquisition module is used for acquiring the code of the organization to which the operator belongs and the code corresponding to the operator from a preset configuration file according to the received signing instruction;
the first signature acquisition module is used for signing the ith target data file by using a first secret key preset by the operator according to the code corresponding to the operator;
the second signature acquisition module is used for respectively signing the ith target data file and the signature of the operator by using a second secret key preset by the mechanism to which the operator belongs according to the code of the mechanism to which the operator belongs;
the first submitting module is used for submitting the ith target data signing file to a preset storage system, wherein the ith target data signing file is a signed ith target data file;
and the jth hash value acquisition module is used for acquiring a jth hash value of the ith target data signing file and calling a preset target block chain system to store the jth hash value, wherein j is a serial number of the ith target signing file corresponding to the hash value, i is less than or equal to M, and M is the total number of the target data files.
The above apparatus may further include:
the reading module is used for sequentially reading a target file and a target signing file from a preset storage system according to a timestamp, wherein the target file is a target front cover file, an ith target data file or a target back cover file, and the target signing file is a file signed by the ith target data file;
the first verification module is used for verifying whether the target file is judged to be a valid file or not aiming at each target file, and if the target file is the valid file, the second verification submodule is triggered;
the second verification module is configured to verify whether the target signed document corresponding to the target document is a valid document, and trigger the association sub-module if the target signed document is a valid document;
the association module is configured to associate the target document with the target signed document.
Specifically, the first verification module includes:
the second judgment submodule is used for judging whether the mechanism code and the mechanism signature corresponding to each target file are consistent or not according to each target file, and if the mechanism code and the mechanism signature corresponding to each target file are consistent, the third judgment submodule is triggered;
the third judgment submodule is used for judging whether the operator code and the operator signature corresponding to the target file are consistent or not; if the operator code corresponding to the target file is consistent with the operator signature, triggering a first effective file judgment submodule;
the first valid file determining submodule is configured to determine that the target file is a valid file.
Specifically, the second verification module includes:
the fourth judgment submodule is used for judging whether the mechanism code and the mechanism signature corresponding to the target signature file corresponding to the target file are consistent; if the corresponding mechanism code of the target signed file is consistent with the mechanism signature, triggering a fifth judgment submodule;
the fifth judging submodule is configured to judge whether the operator code and the operator signature corresponding to the target signed file are consistent, and trigger a second valid file judging submodule if the operator code and the operator signature corresponding to the target signed file are consistent;
and the second valid file judging submodule is used for judging the target signed file as a valid file.
Fig. 7 is a schematic diagram of a second block chain-based electronic medical record storage device according to an embodiment of the present invention, which is applied to a target block chain system, and the method includes:
a first obtaining module 701, configured to store a first hash value obtained from a client, and send a storage location of the obtained first hash value to the client, where the first hash value is a hash value of a target cover document created by the client, the target cover document is obtained by recording a profile number of a generated electronic medical record on a created document by the client, and is used to create a document of an initial electronic medical record, the profile number is a unique code for generating the electronic medical record according to a preset manner, and the storage location is uniquely determined by a block number and a transaction code;
a second obtaining module 702, configured to store an ith hash value obtained from a client, and send a storage location of the obtained ith hash value to the client, where the ith hash value is a hash value of an ith target data file obtained by the client according to an instruction action for obtaining the ith target data file, i is a sequence number of the target data file, i is a natural number, i is not greater than M, and M is a total number of the target data files;
the third obtaining module 703 is configured to store a second hash value obtained from the client, and send the storage location of the obtained second hash value to the client, where the second hash value is a hash value of a target back-cover file generated by the client, and the target back-cover file is a file used to prohibit updating of the target data file for the electronic medical record.
Wherein, above-mentioned device can also include:
and the fourth acquisition module is used for storing the jth hash value acquired from the client and sending the storage position of the obtained jth hash value to the client, wherein the jth hash value is the hash value of the ith target data signing file, the ith target data signing file is the signed ith target data file, and j is the serial number of the ith target signing file corresponding to the hash value.
The above apparatus may further include:
a third verification module, configured to verify whether a pre-configured first physical device key is consistent with a preset first key, where the first physical device key is a physical device key corresponding to a node, the first key is a key matched with the physical device key of the node, and if the first physical device key is consistent with the first key, the first signature interface calling module is triggered;
the first signature interface calling module is configured to call a private key signature interface of the first target key device;
a fourth verification module, configured to verify whether a pre-configured second physical device key or a preset key is consistent with a preset second key, and trigger a second signing interface calling module if the second physical device key or the preset key is consistent with the second key, where the second physical device key is a physical device key configured by an operator, a key of each operator is different, and the second key is a key matched with the physical device key configured by the operator;
the second signature interface calling module is configured to call a private key signature interface of the second target key device.
The above apparatus may further include:
the sixth judging module is used for judging whether the organization digital signature and the operator digital signature submitted to the hash value transaction of the target file are respectively matched with the key preset by the node and the key preset by the operator, and if the organization digital signature and the operator digital signature of the hash value transaction of the target file are respectively matched with the key preset by the node and the key preset by the operator, the seventh judging module is triggered;
the seventh determining module is configured to determine whether the storage location where the hash value of the target file is located is correct, and if the storage location is correct, trigger the target file receiving module, where the target file is a target front cover file, a target back cover file, or an ith target data file.
And the target file receiving module is used for receiving the target file and judging the target file as a valid file.
The above apparatus may further include:
the eighth judging module is used for judging whether the node is a designated contract node or not aiming at each node, and if the node is the designated contract node, triggering the intelligent contract operator;
the intelligent contract operator is used for triggering a preset intelligent contract operator to call the preset conditions of all effective contracts, judging whether the current conditions are consistent with the preset conditions of a preset intelligent contract n or not, and triggering an indication module if the current conditions are consistent with the preset conditions of the intelligent contract n; wherein n is the code of the intelligent contract;
the indicating module is used for indicating the contract node to trigger and execute the preset script program.
An embodiment of the present invention further provides an electronic device, including a processor and a machine-readable storage medium, where the machine-readable storage medium stores machine-executable instructions executable by the processor, and the processor is caused by the machine-executable instructions to: the two storage methods of the electronic medical record based on the block chain provided by the embodiment of the invention are realized.
Specifically, a first method for storing an electronic medical record based on a block chain includes:
the file number is a unique code for generating the electronic medical record according to a preset mode, and the target cover document is used for creating a document of an initial electronic medical record;
acquiring a first hash value of the target cover file, calling a preset target block chain system to store the first hash value, and storing the target cover file in a preset storage system;
acquiring a storage position of the first hash value in the target blockchain system, wherein the storage position is uniquely determined by a block number and a transaction code;
acquiring an instruction action for acquiring an ith target data file to update the electronic medical record, wherein i is the serial number of the target data file, i is a natural number, i is less than or equal to M, and M is the total number of the target data file;
after M target data files are obtained, generating a target back cover file according to the obtained end plan instruction, wherein the target back cover file is used for forbidding updating of the target data files of the electronic medical record;
and acquiring a second hash value of the target back cover file, calling a preset target block chain system to store the second hash value, and storing the target back cover file in a preset storage system.
Therefore, by adding the target back cover file, the electronic device provided by this embodiment ensures that the target data file of the electronic medical record cannot be updated, stores all the data file contents constituting the electronic medical record in the preset storage system, and stores the hash value corresponding to each target file in the target block chain system, thereby avoiding the behavior of tampering the electronic medical record data.
The implementation of the above-mentioned related content electronic medical record storage method is the same as the storage method provided in the previous embodiment of the method, and is not described here again.
The second block chain-based electronic medical record storage method comprises the following steps:
storing a first hash value acquired from a client, and sending the storage position of the acquired first hash value to the client, wherein the first hash value is the hash value of a target cover file created by the client, the target cover file is obtained by recording a file case number of a generated electronic medical record on the created file by the client and is used for creating a file of an initial electronic medical record, the file case number is a unique code for generating the electronic medical record according to a preset mode, and the storage position is uniquely determined by a block number and a transaction code;
storing an ith hash value acquired from a client, and sending the storage position of the acquired ith hash value to the client, wherein the ith hash value is the hash value of an ith target data file acquired by the client according to an instruction action for acquiring the ith target data file, i is the serial number of the target data file, i is a natural number, i is less than or equal to M, and M is the total number of the target data files;
and storing a second hash value acquired from a client, and sending the storage position of the acquired second hash value to the client, wherein the second hash value is a hash value of a target back cover file generated by the client, and the target back cover file is used for prohibiting the electronic medical record from being updated with a target data file.
The Processor may be a general-purpose Processor, including a Central Processing Unit (CPU), a Network Processor (NP), and the like; but may also be a Digital Signal Processor (DSP), an Application Specific Integrated Circuit (ASIC), a Field Programmable Gate Array (FPGA) or other Programmable logic device, discrete Gate or transistor logic device, discrete hardware component.
Therefore, by executing the electronic device provided by this embodiment, the hash value obtained by the client is stored according to the timestamp, and the storage location of the obtained hash value is sent to the client, so as to prevent the electronic medical record from being tampered, and prepare for subsequently checking whether the target data file of the electronic medical record is tampered.
The implementation of the above-mentioned related content electronic medical record storage method is the same as the storage method provided in the previous embodiment of the method, and is not described here again.
In another embodiment provided by the present invention, an electronic device is further provided, as shown in fig. 8, which includes a processor 801, a communication interface 802, a memory 803, and a communication bus 804, wherein the processor 801, the communication interface 802, and the memory 803 communicate with each other via the communication bus 804,
a memory 803 for storing a computer program;
the processor 801 is configured to implement two storage methods of the electronic medical record based on the block chain according to the embodiments of the present invention when executing the program stored in the memory 803.
Specifically, a first method for storing an electronic medical record based on a block chain includes:
the file number is a unique code for generating the electronic medical record according to a preset mode, and the target cover document is used for creating a document of an initial electronic medical record;
acquiring a first hash value of the target cover file, calling a preset target block chain system to store the first hash value, and storing the target cover file in a preset storage system;
acquiring a storage position of the first hash value in the target blockchain system, wherein the storage position is uniquely determined by a block number and a transaction code;
acquiring an instruction action for acquiring an ith target data file to update the electronic medical record, wherein i is the serial number of the target data file, i is a natural number, i is less than or equal to M, and M is the total number of the target data file;
after M target data files are obtained, generating a target back cover file according to the obtained end plan instruction, wherein the target back cover file is used for forbidding updating of the target data files of the electronic medical record;
and acquiring a second hash value of the target back cover file, calling a preset target block chain system to store the second hash value, and storing the target back cover file in a preset storage system.
Therefore, by adding the target back cover file, the electronic device provided by this embodiment ensures that the target data file of the electronic medical record cannot be updated, stores all the data file contents constituting the electronic medical record in the preset storage system, and stores the hash value corresponding to each target file in the target block chain system, thereby avoiding the behavior of tampering the electronic medical record data.
The implementation of the above-mentioned related content electronic medical record storage method is the same as the storage method provided in the previous embodiment of the method, and is not described here again.
The second block chain-based electronic medical record storage method comprises the following steps:
storing a first hash value acquired from a client, and sending the storage position of the acquired first hash value to the client, wherein the first hash value is the hash value of a target cover file created by the client, the target cover file is obtained by recording a file case number of a generated electronic medical record on the created file by the client and is used for creating a file of an initial electronic medical record, the file case number is a unique code for generating the electronic medical record according to a preset mode, and the storage position is uniquely determined by a block number and a transaction code;
storing an ith hash value acquired from a client, and sending the storage position of the acquired ith hash value to the client, wherein the ith hash value is the hash value of an ith target data file acquired by the client according to an instruction action for acquiring the ith target data file, i is the serial number of the target data file, i is a natural number, i is less than or equal to M, and M is the total number of the target data files;
and storing a second hash value acquired from a client, and sending the storage position of the acquired second hash value to the client, wherein the second hash value is a hash value of a target back cover file generated by the client, and the target back cover file is used for prohibiting the electronic medical record from being updated with a target data file.
The communication bus mentioned in the electronic device may be a Peripheral Component Interconnect (PCI) bus, an Extended Industry Standard Architecture (EISA) bus, or the like. The communication bus may be divided into an address bus, a data bus, a control bus, etc. For ease of illustration, only one thick line is shown, but this does not mean that there is only one bus or one type of bus.
The communication interface is used for communication between the electronic equipment and other equipment.
The Memory may include a Random Access Memory (RAM) or a Non-Volatile Memory (NVM), such as at least one disk Memory. Optionally, the memory may also be at least one memory device located remotely from the processor.
The Processor may be a general-purpose Processor, including a Central Processing Unit (CPU), a Network Processor (NP), and the like; but may also be a Digital Signal Processor (DSP), an Application Specific Integrated Circuit (ASIC), a Field Programmable Gate Array (FPGA) or other Programmable logic device, discrete Gate or transistor logic device, discrete hardware component.
The method provided by the embodiment of the invention can be applied to electronic equipment. Specifically, the electronic device may be: desktop computers, laptop computers, intelligent mobile terminals, servers, and the like. Without limitation, any electronic device that can implement the present invention is within the scope of the present invention.
Therefore, by executing the electronic device provided by this embodiment, the hash value obtained by the client is stored according to the timestamp, and the storage location of the obtained hash value is sent to the client, so as to prevent the electronic medical record from being tampered, and prepare for subsequently checking whether the target data file of the electronic medical record is tampered.
The implementation of the above-mentioned related content electronic medical record storage method is the same as the storage method provided in the previous embodiment of the method, and is not described here again.
In another embodiment provided by the present invention, a computer-readable storage medium is further provided, where a computer program is stored in the computer-readable storage medium, and when the computer program is executed by a processor, the computer program causes a computer to execute the two methods for storing the electronic medical record based on the blockchain of the above embodiments.
Specifically, a first method for storing an electronic medical record based on a block chain includes:
the file number is a unique code for generating the electronic medical record according to a preset mode, and the target cover document is used for creating a document of an initial electronic medical record;
acquiring a first hash value of the target cover file, calling a preset target block chain system to store the first hash value, and storing the target cover file in a preset storage system;
acquiring a storage position of the first hash value in the target blockchain system, wherein the storage position is uniquely determined by a block number and a transaction code;
acquiring an instruction action for acquiring an ith target data file to update the electronic medical record, wherein i is the serial number of the target data file, i is a natural number, i is less than or equal to M, and M is the total number of the target data file;
after M target data files are obtained, generating a target back cover file according to the obtained end plan instruction, wherein the target back cover file is used for forbidding updating of the target data files of the electronic medical record;
and acquiring a second hash value of the target back cover file, calling a preset target block chain system to store the second hash value, and storing the target back cover file in a preset storage system.
Therefore, when the application program stored in the computer-readable storage medium provided by this embodiment is executed, the target data file of the electronic medical record is ensured not to be updated by adding the target back-cover file, all the data file contents constituting the electronic medical record are stored in the preset storage system, and the hash value corresponding to each data file is stored in the target block chain system, so that the behavior that the data of the electronic medical record is tampered is avoided.
The implementation of the above-mentioned related content electronic medical record storage method is the same as the storage method provided in the previous embodiment of the method, and is not described here again.
The second block chain-based electronic medical record storage method comprises the following steps:
storing a first hash value acquired from a client, and sending the storage position of the acquired first hash value to the client, wherein the first hash value is the hash value of a target cover file created by the client, the target cover file is obtained by recording a file case number of a generated electronic medical record on the created file by the client and is used for creating a file of an initial electronic medical record, the file case number is a unique code for generating the electronic medical record according to a preset mode, and the storage position is uniquely determined by a block number and a transaction code;
storing an ith hash value acquired from a client, and sending the storage position of the acquired ith hash value to the client, wherein the ith hash value is the hash value of an ith target data file acquired by the client according to an instruction action for acquiring the ith target data file, i is the serial number of the target data file, i is a natural number, i is less than or equal to M, and M is the total number of the target data files;
and storing a second hash value acquired from a client, and sending the storage position of the acquired second hash value to the client, wherein the second hash value is a hash value of a target back cover file generated by the client, and the target back cover file is used for prohibiting the electronic medical record from being updated with a target data file.
Therefore, when the application program stored in the computer-readable storage medium provided by this embodiment is executed, the hash value obtained by the client is stored according to the timestamp, and the storage location of the obtained hash value is sent to the client, so that the electronic medical record is prevented from being tampered, and preparation is made for subsequently checking whether the target data file of the electronic medical record is tampered.
The implementation of the above-mentioned related content electronic medical record storage method is the same as the storage method provided in the previous embodiment of the method, and is not described here again.
In another embodiment of the present invention, a computer program product containing instructions is further provided, which when run on a computer, causes the computer to execute the two block chain-based electronic medical record storage methods of the above embodiments.
Specifically, a first method for storing an electronic medical record based on a block chain includes:
the file number is a unique code for generating the electronic medical record according to a preset mode, and the target cover document is used for creating a document of an initial electronic medical record;
acquiring a first hash value of the target cover file, calling a preset target block chain system to store the first hash value, and storing the target cover file in a preset storage system;
acquiring a storage position of the first hash value in the target blockchain system, wherein the storage position is uniquely determined by a block number and a transaction code;
acquiring an instruction action for acquiring an ith target data file to update the electronic medical record, wherein i is the serial number of the target data file, i is a natural number, i is less than or equal to M, and M is the total number of the target data file;
after M target data files are obtained, generating a target back cover file according to the obtained end plan instruction, wherein the target back cover file is used for forbidding updating of the target data files of the electronic medical record;
and acquiring a second hash value of the target back cover file, calling a preset target block chain system to store the second hash value, and storing the target back cover file in a preset storage system.
Therefore, when the computer program product provided by the embodiment is executed, the target data file of the electronic medical record can not be updated by adding the target back cover file, all the data file contents forming the electronic medical record are stored in the preset storage system, and the hash value corresponding to each data file is stored in the target block chain system, so that the behavior that the data of the electronic medical record is tampered is avoided.
The implementation of the above-mentioned related content electronic medical record storage method is the same as the storage method provided in the previous embodiment of the method, and is not described here again.
The second block chain-based electronic medical record storage method comprises the following steps:
storing a first hash value acquired from a client, and sending the storage position of the acquired first hash value to the client, wherein the first hash value is the hash value of a target cover file created by the client, the target cover file is obtained by recording a file case number of a generated electronic medical record on the created file by the client and is used for creating a file of an initial electronic medical record, the file case number is a unique code for generating the electronic medical record according to a preset mode, and the storage position is uniquely determined by a block number and a transaction code;
storing an ith hash value acquired from a client, and sending the storage position of the acquired ith hash value to the client, wherein the ith hash value is the hash value of an ith target data file acquired by the client according to an instruction action for acquiring the ith target data file, i is the serial number of the target data file, i is a natural number, i is less than or equal to M, and M is the total number of the target data files;
and storing a second hash value acquired from a client, and sending the storage position of the acquired second hash value to the client, wherein the second hash value is a hash value of a target back cover file generated by the client, and the target back cover file is used for prohibiting the electronic medical record from being updated with a target data file.
Therefore, when the computer program product provided by the embodiment is executed, the hash value acquired by the client is stored according to the timestamp, and the storage position of the acquired hash value is sent to the client, so that the electronic medical record is prevented from being tampered, and preparation is made for subsequently checking whether the target data file of the electronic medical record is tampered.
The implementation of the above-mentioned related content electronic medical record storage method is the same as the storage method provided in the previous embodiment of the method, and is not described here again.
The computer instructions may be stored on or transmitted from a computer-readable storage medium to another computer-readable storage medium, e.g., from a website, computer, server, or data center via wired (e.g., coaxial cable, optical fiber, digital subscriber line (DS L)) or wireless (e.g., infrared, wireless, microwave, etc.) means to another website, computer, server, or data center, the computer-readable storage medium may be any computer-accessible medium or integrated Solid State or multi-media storage medium (e.g., optical Disk.
It is noted that, herein, relational terms such as first and second, and the like may be used solely to distinguish one entity or action from another entity or action without necessarily requiring or implying any actual such relationship or order between such entities or actions. Also, the terms "comprises," "comprising," or any other variation thereof, are intended to cover a non-exclusive inclusion, such that a process, method, article, or apparatus that comprises a list of elements does not include only those elements but may include other elements not expressly listed or inherent to such process, method, article, or apparatus. Without further limitation, an element defined by the phrase "comprising an … …" does not exclude the presence of other like elements in a process, method, article, or apparatus that comprises the same element.
All the embodiments in the present specification are described in a related manner, and the same and similar parts among the embodiments may be referred to each other, and each embodiment focuses on the differences from the other embodiments. In particular, for the apparatus, electronic device, computer-readable storage medium, or computer program product embodiments, since they are substantially similar to the method embodiments, the description is relatively simple, and reference may be made to some descriptions of the method embodiments for relevant points.
The above description is only for the preferred embodiment of the present invention, and is not intended to limit the scope of the present invention. Any modification, equivalent replacement, or improvement made within the spirit and principle of the present invention shall fall within the protection scope of the present invention.

Claims (23)

1. A storage method of an electronic medical record based on a block chain is applied to a client, and the method comprises the following steps:
recording a file number of the generated electronic medical record on the created file to obtain a target cover file, wherein the file number is a unique code of the electronic medical record generated according to a preset mode, and the target cover file is used for creating a file of an initial electronic medical record;
acquiring a first hash value of the target cover file, calling a preset target block chain system to store the first hash value, and storing the target cover file in a preset storage system;
obtaining a storage location of the first hash value in the target blockchain system, wherein the storage location is uniquely determined by a block number and a transaction code;
acquiring an instruction action for acquiring the ith target data file to update the electronic medical record, wherein i is the serial number of the target data file, i is a natural number,i≤Mm is the total number of the target data files;
after M target data files are obtained, generating a target back cover file according to an obtained end plan instruction, wherein the target back cover file is used for forbidding updating of the target data files for the electronic medical record;
and acquiring a second hash value of the target back cover file, calling a preset target block chain system to store the second hash value, and storing the target back cover file in a preset storage system.
2. The method of claim 1, wherein the act of obtaining instructions for obtaining an ith target data file to update the electronic medical record comprises:
judging whether the obtained instruction action comprises a new instruction or a revision instruction, wherein the new instruction is an instruction for obtaining an ith target data file, the revision instruction is an instruction for revising an original target data file to obtain the ith target data file, and the original target data file is a target data file to be revised, which corresponds to any one of the sequence numbers 1, … and i-1;
if the obtained instruction action is a new instruction, obtaining an ith target data file and an ith hash value corresponding to the target data file, calling a preset target block chain system to store the ith hash value according to the file number and the storage position of the first hash value, and storing the ith target data file in a preset storage system;
if the obtained command action is a revision command, obtaining an ith target data file and an ith hash value corresponding to the target data file; acquiring a storage position of the original target data file corresponding to a hash value according to the file number and the original target data file, calling a preset target block chain system to store the ith hash value according to the acquired storage position, and storing the ith target data file in a preset storage system; the ith target data file obtained by revision is a file obtained by revising the original target data file in a mode of adding revision content, and the revised ith target data file refers to the storage position of the original target data file in the target block chain system.
3. The method of claim 2, wherein after said invoking the predetermined target blockchain system stores the ith hash value and stores the ith target data file in a predetermined storage system, the method further comprises:
and acquiring the storage position of the ith hash value in the target blockchain system.
4. The method according to any one of claims 1 to 3, wherein the target cover document and the target back document are both recorded with first target information in a preset encoding format, the first target information comprises a document number, a document type, an instruction action and document contents, and the document type is the target cover document and the target back document.
5. The method of claim 4, wherein the target data files each record second target information in a predetermined encoding format, the second target information includes a file number, a file type, a name file, a command action, and a file content, and the file type further includes the target data files.
6. The method of claim 5, wherein the encoding format comprises an XM L encoding format, a JSON encoding format, a plain file format, or a binary format.
7. The method of claim 6, wherein the target data file comprises a medical record first page file, a medical procedure record file, a nursing medical record file, a checklist, or a discharge record;
the instruction action comprises a new adding instruction, a signing instruction or a revising instruction, wherein the signing instruction is an instruction for signing the target data file by an organization or an operator;
the file content includes data content, an organization code that generates an electronic medical record, and a unique patient identification number.
8. The method of claim 1, wherein after the obtaining the second hash value of the target back file, invoking a preset target blockchain system to store the second hash value, and storing the target back file in a preset storage system, the method further comprises:
and acquiring the storage position of the second hash value in the target blockchain system.
9. The method according to any one of claims 5 to 8, wherein after the obtaining the second hash value of the target back file, calling a preset target blockchain system to store the second hash value, and storing the target back file in a preset storage system, the method further comprises:
acquiring the code of the organization to which the operator belongs and the code corresponding to the operator from a preset configuration file according to the received signing instruction;
signing the ith target data file by using a first secret key preset by the operator according to the code corresponding to the operator;
according to the code of the mechanism to which the operator belongs, the signature of the ith target data file and the signature of the operator are respectively signed by using a second secret key preset by the mechanism to which the operator belongs;
submitting the ith target data signing file to a preset storage system, wherein the ith target data signing file is a signed ith target data file;
acquiring the jth hash value of the ith target data signing file, calling a preset target block chain system to store the jth hash value, wherein j is the serial number of the hash value corresponding to the ith target signing file,i≤Mand M is the total number of target data files.
10. The method as claimed in claim 9, wherein after the obtaining the jth hash value of the ith target data signature file and invoking a preset target blockchain system to store the jth hash value, the method further comprises:
sequentially reading a target file and a target signing file from a preset storage system according to a timestamp, wherein the target file is a target front cover file, an ith target data file or a target back cover file, and the target signing file is a file signed by the ith target data file;
for each target file, verifying whether the target file is judged to be a valid file;
if the target file is a valid file, verifying whether a target signing file corresponding to the target file is a valid file;
and if the target signing file is a valid file, associating the target file with the target signing file.
11. The method of claim 10, wherein verifying, for each target file, whether the target file is determined to be a valid file comprises:
aiming at each target file, judging whether the mechanism code and the mechanism signature corresponding to the target file are consistent;
if the mechanism code and the mechanism signature corresponding to the target file are consistent, judging whether the operator code and the operator signature corresponding to the target file are consistent;
and if the operator code corresponding to the target file is consistent with the operator signature, judging the target file to be a valid file.
12. The method as claimed in claim 10, wherein said verifying whether the target signature document corresponding to the target document is a valid document comprises:
judging whether the mechanism code and the mechanism signature corresponding to the target signature file corresponding to the target file are consistent;
if the corresponding mechanism code and the corresponding mechanism signature of the target signing file are consistent, whether the corresponding operator code and the corresponding operator signature of the target signing file are consistent is judged;
and if the operator code corresponding to the target signed file is consistent with the operator signature, judging the target signed file to be a valid file.
13. A storage method of an electronic medical record based on a block chain is applied to a target block chain system, and the method comprises the following steps:
storing a first hash value acquired from a client, and sending the storage position of the acquired first hash value to the client, wherein the first hash value is the hash value of a target cover file created by the client, the target cover file is obtained by recording a file case number of a generated electronic medical record on the created file by the client and is used for creating a file of an initial electronic medical record, the file case number is a unique code for generating the electronic medical record according to a preset mode, and the storage position is uniquely determined by a block number and a transaction code;
storing an ith hash value acquired from a client, and sending the storage position of the acquired ith hash value to the client, wherein the ith hash value is the hash value of an ith target data file acquired by the client according to an instruction action for acquiring the ith target data file, i is the serial number of the target data file, i is a natural number,i≤Mm is the total number of the target data files;
and storing a second hash value acquired from a client, and sending the storage position of the acquired second hash value to the client, wherein the second hash value is a hash value of a target back cover file generated by the client, and the target back cover file is used for prohibiting the electronic medical record from being updated with a target data file.
14. The method of claim 13, wherein after storing the first hash value obtained from the client and sending the stored location of the obtained first hash value into the client, the method further comprises:
the method comprises the steps of storing a jth hash value acquired from a client, and sending the storage position of the obtained jth hash value to the client, wherein the jth hash value is a hash value of an ith target data signing file, the ith target data signing file is an ith target data file after signature, and j is a serial number of the ith target signing file corresponding to the hash value.
15. The method of claim 13, wherein prior to said storing the first hash value obtained from the client and sending the stored location of the obtained first hash value to the client, the method further comprises:
verifying whether a pre-configured first physical device key is consistent with a preset first key, wherein the first physical device key is a physical device key corresponding to a node, and the first key is a key matched with the physical device key of the node;
if the first physical device key is consistent with the first key, calling a private key signature interface of a first target key device;
verifying whether the pre-configured second physical device key or the preset key is consistent with the preset second key; the second physical device key is a physical device key equipped by an operator, the key of each operator is different, and the second key is a key matched with the physical device key equipped by the operator;
and if the second physical device key or the preset key is consistent with the second key, calling a private key signature interface of a second target key device.
16. The method of claim 15, wherein after the invoking of the private key signing interface of the second target key device if the second physical device key or the predetermined key is consistent with the second key, the method further comprises:
judging whether an organization digital signature and an operator digital signature for submitting the hash value transaction of the target file are respectively matched with a key preset by a node and a key preset by an operator;
if the organization digital signature and the operator digital signature of the hash value transaction of the target file are respectively matched with a key preset by a node and a key preset by an operator, judging whether the storage position of the hash value of the target file is correct, wherein the target file is a target cover file, a target back cover file or an ith target data file;
if the file is correct, the target file is received, and the target file is judged to be a valid file.
17. The method of claim 16, wherein prior to said storing the second hash value obtained from the client and sending the stored location of the obtained second hash value to the client, the method further comprises:
for each node, judging whether the node is a designated contract node;
if the contract node is appointed, triggering a preset intelligent contract operator to call the precondition of all effective contracts, and judging whether the current condition is consistent with the preset precondition of a preset intelligent contract n, wherein n is the code of the intelligent contract;
and if the current condition is consistent with the preset precondition of the intelligent contract n, indicating the contract node to trigger and execute a preset script program.
18. A storage device of electronic medical records based on a block chain is applied to a client, and the device comprises:
the cover document generation module is used for recording a file number of the generated electronic medical record on the created file to obtain a target cover document, wherein the file number is a unique code for generating the electronic medical record according to a preset mode, and the target cover document is used for creating a file of an initial electronic medical record;
the first hash value acquisition module is used for acquiring a first hash value of the target cover file, calling a preset target block chain system to store the first hash value and storing the target cover file in a preset storage system;
a first storage location obtaining module, configured to obtain a storage location of the first hash value in the target blockchain system, where the storage location is uniquely determined by a block number and a transaction code;
an electronic medical record updating module for obtaining the instruction action for obtaining the ith target data file so as to update the electronic medical record, wherein i is the serial number of the target data file, i is a natural number,i≤Mm is the total number of the target data files;
the cover document generation module is used for generating a target back cover document according to the acquired end plan instruction after M target data documents are acquired, wherein the target back cover document is used for forbidding updating of the target data documents of the electronic medical record;
and the second hash value acquisition module is used for acquiring a second hash value of the target back cover file, calling a preset target block chain system to store the second hash value, and storing the target back cover file in a preset storage system.
19. A storage device of electronic medical record based on block chain is applied to a target block chain system, and the device comprises:
the system comprises a first acquisition module, a second acquisition module and a transaction module, wherein the first acquisition module is used for storing a first hash value acquired from a client and sending the storage position of the acquired first hash value to the client, the first hash value is the hash value of a target cover file created by the client, the target cover file is obtained by recording a file number of a generated electronic medical record on the created file by the client and is used for creating a file of an initial electronic medical record, the file number is a unique code for generating the electronic medical record according to a preset mode, and the storage position is uniquely determined by a block number and a transaction code;
a second obtaining module, configured to store an ith hash value obtained from the client, and send the storage location of the obtained ith hash value to the client, where the ith hash value is a hash value of an ith target data file obtained by the client according to an instruction action for obtaining the ith target data file, i is a sequence number of the target data file, and i is a natural number,i≤Mm is the total number of the target data files;
and the third acquisition module is used for storing a second hash value acquired from the client and sending the storage position of the acquired second hash value to the client, wherein the second hash value is a hash value of a target background file generated by the client, and the target background file is used for prohibiting the electronic medical record from being updated with the target data file.
20. An electronic device comprising a processor and a machine-readable storage medium storing machine-executable instructions executable by the processor, the processor being caused by the machine-executable instructions to: carrying out the process steps of any one of claims 1 to 12.
21. A computer-readable storage medium, in which a computer program is stored which, when being executed by a processor, carries out the method steps of any one of claims 1 to 12.
22. An electronic device comprising a processor and a machine-readable storage medium storing machine-executable instructions executable by the processor, the processor being caused by the machine-executable instructions to: carrying out the process steps of any one of claims 13 to 17.
23. A computer-readable storage medium, in which a computer program is stored which, when being executed by a processor, carries out the method steps of any one of claims 13 to 17.
CN201711424940.3A 2017-12-25 2017-12-25 Storage method, device, equipment and storage medium of electronic medical record Active CN108573737B (en)

Priority Applications (1)

Application Number Priority Date Filing Date Title
CN201711424940.3A CN108573737B (en) 2017-12-25 2017-12-25 Storage method, device, equipment and storage medium of electronic medical record

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
CN201711424940.3A CN108573737B (en) 2017-12-25 2017-12-25 Storage method, device, equipment and storage medium of electronic medical record

Publications (2)

Publication Number Publication Date
CN108573737A CN108573737A (en) 2018-09-25
CN108573737B true CN108573737B (en) 2020-08-07

Family

ID=63575989

Family Applications (1)

Application Number Title Priority Date Filing Date
CN201711424940.3A Active CN108573737B (en) 2017-12-25 2017-12-25 Storage method, device, equipment and storage medium of electronic medical record

Country Status (1)

Country Link
CN (1) CN108573737B (en)

Families Citing this family (18)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN109376172B (en) * 2018-09-27 2020-09-29 精硕科技(北京)股份有限公司 Data acquisition method and system based on block chain
CN108876227A (en) * 2018-09-28 2018-11-23 国网河南省电力公司南阳供电公司 A kind of power grid material supply quotient's hierarchical management system
CN109409135B (en) * 2018-10-19 2021-06-22 北京金山云网络技术有限公司 Method, device, equipment and storage medium for acquiring characteristic information of data
CN109255251B (en) * 2018-10-31 2023-10-10 安徽中科晶格技术有限公司 File data protection system and method based on block chain technology
CN109949882A (en) * 2018-11-15 2019-06-28 陕西医链区块链集团有限公司 A kind of medical treatment block chain data-storage system
CN111782338B (en) * 2018-12-12 2024-05-03 创新先进技术有限公司 Data processing method and system based on blockchain intelligent contract
CN111475538A (en) * 2019-01-24 2020-07-31 北京京东尚科信息技术有限公司 Data processing method, device and storage medium
CN109886692B (en) * 2019-03-08 2021-05-07 泰康保险集团股份有限公司 Data transmission method, device, medium and electronic equipment based on block chain
CN111767427B (en) * 2019-04-02 2024-04-05 浙江宇视科技有限公司 Video information storage method and data storage domain
CN110197707B (en) * 2019-05-23 2021-07-30 泰康保险集团股份有限公司 Block chain-based medical record information processing method, device, medium and electronic equipment
CN110378133B (en) * 2019-06-28 2023-05-05 深圳市元征科技股份有限公司 File protection method and device, electronic equipment and storage medium
CN110993112B (en) * 2019-11-20 2023-04-18 泰康保险集团股份有限公司 Tumor treatment case management method, system, medium and electronic device based on block chain
CN111523135B (en) * 2020-07-06 2020-10-13 飞天诚信科技股份有限公司 PDF file electronic signature method and device
CN112100171B (en) * 2020-08-12 2021-06-25 北京大学 Method and device for establishing content index for random consensus diagram book
CN113254979B (en) * 2021-06-26 2021-09-24 环球数科集团有限公司 Credible examination system for protecting business privacy and computer storage medium
CN113611383B (en) * 2021-08-20 2024-02-02 深圳平安智慧医健科技有限公司 Medical information acquisition method, device, electronic equipment and storage medium
CN114185997B (en) * 2022-02-17 2022-05-13 天津眧合数字科技有限公司 Pet information credible storage system based on block chain
CN116631564B (en) * 2023-07-25 2023-10-10 汶上县人民医院 Emergency electronic medical record management system and management method

Citations (6)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
WO2017074017A1 (en) * 2015-10-26 2017-05-04 주식회사 아이알엠 Method for building cloud-based medical image database for protection of patient information and reading medical image therefrom
CN106682530A (en) * 2017-01-10 2017-05-17 杭州电子科技大学 Method and device for medical information sharing privacy protection based on blockchain technology
CN106777923A (en) * 2016-11-30 2017-05-31 谭小刚 Information for hospital supervising platform and monitoring and managing method
CN106934243A (en) * 2017-03-17 2017-07-07 北京好运到信息科技有限公司 A kind of electronic health record management method and system
CN107368750A (en) * 2017-06-23 2017-11-21 雷虹 The implementation method and device of electronic health record based on block chain
CN107391944A (en) * 2017-07-27 2017-11-24 北京太云科技有限公司 A kind of electronic health record shared system based on block chain

Family Cites Families (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US10726098B2 (en) * 2014-01-23 2020-07-28 Dror Samuel Brama Method, system and program product for transferring genetic and health data

Patent Citations (6)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
WO2017074017A1 (en) * 2015-10-26 2017-05-04 주식회사 아이알엠 Method for building cloud-based medical image database for protection of patient information and reading medical image therefrom
CN106777923A (en) * 2016-11-30 2017-05-31 谭小刚 Information for hospital supervising platform and monitoring and managing method
CN106682530A (en) * 2017-01-10 2017-05-17 杭州电子科技大学 Method and device for medical information sharing privacy protection based on blockchain technology
CN106934243A (en) * 2017-03-17 2017-07-07 北京好运到信息科技有限公司 A kind of electronic health record management method and system
CN107368750A (en) * 2017-06-23 2017-11-21 雷虹 The implementation method and device of electronic health record based on block chain
CN107391944A (en) * 2017-07-27 2017-11-24 北京太云科技有限公司 A kind of electronic health record shared system based on block chain

Non-Patent Citations (3)

* Cited by examiner, † Cited by third party
Title
"云存储中的数据完整性证明研究及进展";谭霜 等;《计算机学报》;20150131;第38卷(第1期);第164-177页 *
"区块链技术综述";沈鑫;《网络与信息安全学报》;20161130;第2卷(第11期);第11-20页 *
"基于区块链技术的电子健康档案安全建设";黄永刚;《中华医学图书情报杂志》;20161031;第25卷(第10期);第38-40、46页 *

Also Published As

Publication number Publication date
CN108573737A (en) 2018-09-25

Similar Documents

Publication Publication Date Title
CN108573737B (en) Storage method, device, equipment and storage medium of electronic medical record
US11233657B2 (en) Method and system for registering digital documents
US10846416B2 (en) Method for managing document on basis of blockchain by using UTXO-based protocol, and document management server using same
US11360963B2 (en) Tracking and verification of physical assets
Saha et al. Review on “Blockchain technology based medical healthcare system with privacy issues”
Benchoufi et al. Blockchain protocols in clinical trials: Transparency and traceability of consent
US20210091960A1 (en) Tracking and verification of physical assets
US10541807B1 (en) System and method for healthcare security and interoperability
TWI708199B (en) Method and system for sharing private data based on smart contracts
US20200364358A1 (en) Cognitive system for managing consent to user data
US20200374300A1 (en) Database malicious peer identification
US11362826B2 (en) Endorsement process for non-deterministic application
CN108665953B (en) Prescription execution method, device, equipment and storage medium
US20200380475A1 (en) Inserting a further data block into a first ledger
CN115668194A (en) Cross-partition calls in a partition's tamper-resistant data store
CN109861996B (en) Block chain-based relationship proving method, device, equipment and storage medium
CN110245514B (en) Distributed computing method and system based on block chain
US20220329436A1 (en) Token-based identity validation via blockchain
US11455598B2 (en) Automated conflict resolution
EP4012974A1 (en) Cryptographically verifiable, portable certificate
Lusetti et al. A blockchain based solution for the custody of digital files in forensic medicine
US20210250165A1 (en) Tracking and linking item-related data
US20210126787A1 (en) Optimal endorser node determination based on state
US20220276996A1 (en) Assessment node and token assessment container
US20220278845A1 (en) Honest behavior enforcement via blockchain

Legal Events

Date Code Title Description
PB01 Publication
PB01 Publication
SE01 Entry into force of request for substantive examination
SE01 Entry into force of request for substantive examination
GR01 Patent grant
GR01 Patent grant