WO2020199474A1 - 一种医疗信息共享方法、装置、可读存储介质及服务器 - Google Patents
一种医疗信息共享方法、装置、可读存储介质及服务器 Download PDFInfo
- Publication number
- WO2020199474A1 WO2020199474A1 PCT/CN2019/103114 CN2019103114W WO2020199474A1 WO 2020199474 A1 WO2020199474 A1 WO 2020199474A1 CN 2019103114 W CN2019103114 W CN 2019103114W WO 2020199474 A1 WO2020199474 A1 WO 2020199474A1
- Authority
- WO
- WIPO (PCT)
- Prior art keywords
- block
- medical information
- identifier
- patient
- blockchain
- Prior art date
Links
Classifications
-
- G—PHYSICS
- G16—INFORMATION AND COMMUNICATION TECHNOLOGY [ICT] SPECIALLY ADAPTED FOR SPECIFIC APPLICATION FIELDS
- G16H—HEALTHCARE INFORMATICS, i.e. INFORMATION AND COMMUNICATION TECHNOLOGY [ICT] SPECIALLY ADAPTED FOR THE HANDLING OR PROCESSING OF MEDICAL OR HEALTHCARE DATA
- G16H10/00—ICT specially adapted for the handling or processing of patient-related medical or healthcare data
- G16H10/60—ICT specially adapted for the handling or processing of patient-related medical or healthcare data for patient-specific data, e.g. for electronic patient records
-
- G—PHYSICS
- G16—INFORMATION AND COMMUNICATION TECHNOLOGY [ICT] SPECIALLY ADAPTED FOR SPECIFIC APPLICATION FIELDS
- G16H—HEALTHCARE INFORMATICS, i.e. INFORMATION AND COMMUNICATION TECHNOLOGY [ICT] SPECIALLY ADAPTED FOR THE HANDLING OR PROCESSING OF MEDICAL OR HEALTHCARE DATA
- G16H70/00—ICT specially adapted for the handling or processing of medical references
- G16H70/20—ICT specially adapted for the handling or processing of medical references relating to practices or guidelines
-
- G—PHYSICS
- G16—INFORMATION AND COMMUNICATION TECHNOLOGY [ICT] SPECIALLY ADAPTED FOR SPECIFIC APPLICATION FIELDS
- G16H—HEALTHCARE INFORMATICS, i.e. INFORMATION AND COMMUNICATION TECHNOLOGY [ICT] SPECIALLY ADAPTED FOR THE HANDLING OR PROCESSING OF MEDICAL OR HEALTHCARE DATA
- G16H80/00—ICT specially adapted for facilitating communication between medical practitioners or patients, e.g. for collaborative diagnosis, therapy or health monitoring
Definitions
- This application belongs to the field of computer technology, and in particular relates to a medical information sharing method, device, computer non-volatile readable storage medium and server.
- the embodiments of the present application provide a medical information sharing method, device, computer non-volatile readable storage medium, and server to solve the problem that the existing medical information storage method with medical units as the main body often causes problems. Repeated examinations of patients cause a waste of medical resources and time.
- the first aspect of the embodiments of the present application provides a method for sharing medical information, which may include:
- the second aspect of the embodiments of the present application provides a medical information sharing device, which may include modules for implementing the steps of the above medical information sharing method.
- the third aspect of the embodiments of the present application provides a computer non-volatile readable storage medium, the computer non-volatile readable storage medium stores computer readable instructions, and the computer readable instructions are executed by a processor When realizing the steps of the above medical information sharing method.
- the fourth aspect of the embodiments of the present application provides a server, including a memory, a processor, and computer-readable instructions stored in the memory and running on the processor, and the processor executes the computer
- the steps of the above medical information sharing method are realized when the instructions are read.
- the embodiment of the present application can share medical information among various nodes in the blockchain system, avoiding repeated examinations of patients, and saving a lot of medical resources and treatment time.
- Fig. 1 is a flowchart of an embodiment of a method for sharing medical information in an embodiment of the application
- Figure 2 is a schematic diagram of the fragmented distribution of medical information on the entire blockchain
- Figure 3 is a schematic diagram of a reverse query mode
- Figure 4 is a schematic diagram of generating block information
- Figure 5 is another schematic diagram of generating block information
- FIG. 6 is a structural diagram of an embodiment of a medical information sharing device in an embodiment of the application.
- Fig. 7 is a schematic block diagram of a server in an embodiment of the application.
- the medical information sharing method in the embodiments of this application is applied to a blockchain system composed of various nodes.
- the servers of various medical institutions are connected to each other, and the servers of each medical institution are districts.
- a node in the blockchain system. This node is the recorder of the patient’s medical information. After multiple signatures and encryption, the patient’s medical information can be published to the blockchain, and the full amount of information can be stored in this node. Medical information.
- an authentication server can also be set up in the blockchain system.
- the authentication server reviews the industry-related qualifications of various medical institutions to ensure the legitimacy of the qualifications of nodes joining the blockchain.
- an embodiment of a method for sharing medical information in an embodiment of the present application may include:
- Step S101 Receive a medical information sharing request sent by the first terminal, and extract a patient identifier in the medical information sharing request.
- the personnel of the medical institution can send medical information to the server of the medical institution (ie the implementation subject of this embodiment of the application) through its terminal device (ie, the first terminal)
- the sharing request, the patient identification of the patient is carried in the medical information sharing request, and the patient identification may be the patient's ID card number, social security number, medical insurance number, mobile phone number, or other identification that can uniquely characterize the patient.
- the patient identifier is unique in the entire blockchain system, and the patient identifiers of any two different patients are different.
- the server of the medical institution can extract the patient identification from it.
- Step S102 Query the second terminal corresponding to the patient identifier in the preset terminal list, and send an authorization request to the second terminal.
- each patient identifier and each terminal device is recorded in the terminal list.
- server extracts the patient identifier in the medical information sharing request, it can query the terminal list with the The terminal device corresponding to the patient identifier is the second terminal, and the second terminal is the terminal device used by the patient.
- the server of the medical institution needs to send an authorization request to the second terminal to obtain the user's consent.
- the second terminal After receiving the authorization request, the second terminal displays it to the patient through the user interaction interface, and can simultaneously display the two options of "authorize” and "reject” to the patient, if the patient selects the "reject” option , The rejection message will be fed back to the server of the medical institution. After receiving the rejection message, the server of the medical institution will no longer carry out the subsequent medical information sharing process; if the patient selects the "authorization” option, it will report to the server of the medical institution The authorization message is fed back, and after receiving the authorization message, the server of the medical institution will continue to perform step S103 and the subsequent medical information sharing process.
- Step S103 Extract the electronic signature in the authorization message, and verify the electronic signature.
- the electronic signature is automatically generated by the second terminal.
- the second terminal first uses a preset hash function to hash the patient identification to obtain a summary of the patient identification, that is, the first A digest, and then encrypt the first digest using a preset private key to obtain the electronic signature, and add the electronic signature to the authorization message.
- the server of the medical institution can extract the electronic signature therein and verify the electronic signature. Specifically, the server of the medical institution also uses a hash function to perform a hash operation on the patient identification to obtain the digest of the patient identification, that is, the second digest, and then use the public key corresponding to the patient identification to The electronic signature is decrypted, and the decrypted result is obtained. Finally, the decrypted result is compared with the second digest. If the two are inconsistent, the verification is unsuccessful. At this time, the server of the medical institution will re-send the authorization request to the second terminal ; If the two are consistent, the verification is successful. At this time, the server of the medical institution will continue to perform step S104 and the subsequent medical information sharing process.
- Step S104 Search for medical information corresponding to the patient identifier in a preset database.
- Each piece of medical information in the database includes, but is not limited to: basic information, diagnosis information, test results, prescription information and other multi-dimensional table information.
- Basic information patient identification, name, ID number, disease name, gender, date of birth, mobile phone number, age, region, etc.;
- Diagnosis information patient identification, visiting hospital, visiting department, diagnosis category, disease code, disease name, date of diagnosis, etc.;
- Test results patient identification, visiting hospital, visiting department, test item, test value, test value unit, reference range, test date (test value can be various medical pictures), etc.;
- Prescription information patient identification, visiting hospital, visiting department, drug generic name, drug product name, drug code (ATC), specifications, dosage, unit, frequency, prescription issuance date, etc.
- the patient ID is used to connect all dimensions of the table information.
- Step S105 Generate block information corresponding to the medical information.
- block information generation methods There are multiple implementation ways for generating block information.
- the medical information can be directly used as the block information.
- Other block information generation methods will be described in detail in subsequent embodiments, and will not be repeated here.
- Step S106 Upload the block information to a preset blockchain system.
- Block information is uploaded to the block chain system, it will be added to the block chain stored in the block chain system in the form of a block (BLOCK), so that it can be added to the block chain.
- Medical information is shared among all nodes in the system.
- Each block is composed of two parts: header information and detailed information.
- the header information can include but is not limited to the following information: block identifier, previous block identifier, block size, number of medical information records, and time stamp
- the detailed information may include, but is not limited to, the information of each block uploaded to the blockchain system during the two consensus periods.
- the server configuration of some medical institutions is poor, if you want to reduce the burden of its processing capacity, you can set it to upload only block information without participating in the generation and broadcasting of the block, so there is no need to occupy the medical institution’s
- the server has too many processing resources. It can also be set that the medical institution server does not store the full amount of medical information. When inquiring is needed, the query request can be broadcast and provided by the server of other medical institution to reduce its storage burden.
- a medical information shared cloud can be added, and only the summary and index information of medical information are stored in the blockchain, and the specific medical information data is stored in the medical information shared cloud. Because the summary information of the patient's medical information is written into the blockchain, and the specific medical information is written into the medical information shared cloud, the data stored in the blockchain will be relatively small, reducing the composition of the blockchain The burden of the node.
- each node in the blockchain stores the full amount of medical information (or summary, index), which is maintained by the node itself, realizing medical treatment Sharing of information among multiple medical institutions.
- medical institution A and medical institution B are authenticated by the authentication server.
- the corresponding key is obtained and added to the blockchain system; then, the patient visits medical institution A, generates corresponding medical information, and passes The server of medical institution A is uploaded to the blockchain system; then, the patient sees a doctor in medical institution B, and the authorization mechanism (for example: multi-signature, smart contract, etc.) allows the server of medical institution B to extract and store in the blockchain system
- the medical information in is used by doctors for diagnosis and treatment based on the patient’s medical information.
- the embodiment of the present application can share medical information among various nodes in the blockchain system, avoiding repeated examinations of patients, and saving a lot of medical resources and treatment time.
- a patient visits medical institution A on February 1, 2001, generates corresponding medical information, and uploads it to the blockchain through the server of medical institution A.
- the block where the medical information is stored Identified as #56; the patient visited medical institution B on August 1, 2007, and generated corresponding medical information, which was uploaded to the blockchain through the server of medical institution B.
- the block identification of the medical information was stored It is #68579; the patient visited medical institution C on March 1, 2017, and generated corresponding medical information, which was uploaded to the blockchain through the server of medical institution C.
- the block identification for storing the medical information is #193548; «; By analogy, the patient's medical information will be fragmented and scattered on the entire blockchain.
- step S105 may specifically include the following process:
- the block containing the patient identifier is searched in reverse order in the block chain stored in the block chain system, and the block identifier of the target block is obtained.
- the target block is the first block containing the patient identifier found in the reverse order, and the reverse search is to search forward one by one starting from the last block of the blockchain.
- the block identifier of the target block is added to the medical information, and block information corresponding to the medical information is generated.
- the medical information query request sent by the third terminal is received, and the patient identification in the medical information query request is extracted.
- the personnel of the medical institution need to inquire the medical information of the patient, they can use its terminal device (that is, the third terminal, the third terminal may be the same as the first terminal, or different from the first terminal) Send a medical information query request to the server of the medical institution, and the medical information sharing request carries the patient identification of the patient.
- the terminal device that is, the third terminal, the third terminal may be the same as the first terminal, or different from the first terminal
- the historical medical information corresponding to the patient identifier and the block identifier of the i+1 selected block are extracted from the i-th selected block, and the i-th selected block is found in reverse order
- the historical medical information extracted from each selected block is constructed into complete medical information.
- step S105 may specifically include the following process:
- the block containing the patient identification is searched in reverse order in the block chain stored in the blockchain system, and historical medical information corresponding to the patient identification is extracted from the target block.
- the historical medical information is added to the medical information to generate block information corresponding to the medical information.
- the block chain where the patient's last medical information is located is first searched in the blockchain through its patient ID.
- the specific process is the same as the previous method, and will not be repeated here.
- extract the patient’s original medical information from it extract the patient’s original medical information from it, and then add these original medical information to the new medical information, that is, complete data migration to form Complete medical information of the patient, and upload the complete medical information to the blockchain.
- the medical information stored each time is the complete medical information of the patient as of the current moment, and the whole process is shown in Figure 4.
- the medical information query request sent by the third terminal is received, and the patient identification in the medical information query request is extracted.
- the block containing the patient identification is searched in reverse order in the blockchain, and historical medical information corresponding to the patient identification is extracted from the target block.
- the historical medical information is the complete medical information of the patient.
- the entire process only needs to search for medical information once, which greatly reduces the time required for searching.
- step S105 may specifically include the following process:
- the block containing the patient identification is searched in reverse order in the block chain stored in the blockchain system, and historical medical information corresponding to the patient identification is extracted from the target block.
- the historical medical information is added to the medical information to generate the corresponding medical information Block information; if the sum of the number of bytes of the historical medical information and the number of bytes of the medical information is greater than or equal to the block capacity, the block identifier of the target block is obtained, and the The block identifier of the target block is added to the medical information to generate block information corresponding to the medical information.
- the block capacity can be set according to actual conditions, for example, it can be set to 1024, 2048, 4096, 8192 or other values and so on.
- the reverse inquiry mode shown in FIG. 3 can still be used for quick inquiry.
- FIG. 6 shows a structural diagram of an embodiment of a medical information sharing device provided in an embodiment of the present application.
- a medical information sharing device may include:
- the sharing request receiving module 601 is configured to receive the medical information sharing request sent by the first terminal, and extract the patient identification in the medical information sharing request;
- the authorization request sending module 602 is configured to query the second terminal corresponding to the patient identification in a preset terminal list, and send an authorization request to the second terminal;
- the signature verification module 603 is configured to, if the authorization message fed back by the second terminal is received, extract the electronic signature in the authorization message, and verify the electronic signature;
- the medical information searching module 604 is configured to search for medical information corresponding to the patient identification in a preset database if the verification is successful;
- the block information generating module 605 is used to generate block information corresponding to the medical information
- the block information sharing module 606 is used to upload the block information to a preset blockchain system, so as to share medical information among various nodes in the blockchain system.
- the block information generating module may include:
- An identification acquiring unit configured to search for the block containing the patient identification in reverse order in the blockchain stored in the blockchain system, and obtain the block identification of the target block;
- the first adding unit is configured to add the block identifier of the target block to the medical information to generate block information corresponding to the medical information.
- the block information generating module may include:
- the first extraction unit is configured to search for the block containing the patient identification in reverse order in the blockchain stored in the blockchain system, and extract historical medical information corresponding to the patient identification from the target block;
- the first processing unit is configured to add the historical medical information to the medical information if the sum of the number of bytes of the historical medical information and the number of bytes of the medical information is less than a preset block capacity , Generate block information corresponding to the medical information;
- the second processing unit is configured to obtain the block identifier of the target block if the sum of the number of bytes of the historical medical information and the number of bytes of the medical information is greater than or equal to the block capacity, and The block identifier of the target block is added to the medical information to generate block information corresponding to the medical information.
- the medical information sharing device may further include:
- the first query request receiving module is configured to receive the medical information query request sent by the third terminal, and extract the patient identification in the medical information query request;
- Reverse order searching module used to search the block containing the patient identification in the reverse order in the blockchain
- An information extraction module for extracting historical medical information corresponding to the patient identifier and the block identifier of the i+1 selected block from the i-th selected block;
- the selected block searching module is used for searching in the blockchain according to the block ID of the i+1th selected block if the block identifier of the i+1th selected block is not empty I+1 selected block;
- the medical information construction module is used for constructing the historical medical information extracted from each selected block into complete medical information if the block identifier of the (i+1)th selected block is empty.
- the block information generating module may include:
- the second extraction unit is configured to search the block containing the patient identification in reverse order in the blockchain stored in the blockchain system, and extract historical medical information corresponding to the patient identification from the target block;
- the second adding unit is used to add the historical medical information to the medical information to generate block information corresponding to the medical information.
- the medical information sharing device may further include:
- the second query request receiving module is configured to receive the medical information query request sent by the third terminal, and extract the patient identification in the medical information query request;
- the third extraction unit is used to search the block containing the patient identification in the reverse order in the blockchain, and extract historical medical information corresponding to the patient identification from the target block.
- FIG. 7 shows a schematic block diagram of a server provided by an embodiment of the present application. For ease of description, only the parts related to the embodiment of the present application are shown.
- the server 7 may include: a processor 70, a memory 71, and computer-readable instructions 72 stored in the memory 71 and running on the processor 70, such as executing the above-mentioned medical information Computer readable instructions for sharing methods.
- the processor 70 executes the computer-readable instructions 72, the steps in the foregoing medical information sharing method embodiments are implemented.
- the computer-readable instructions 72 may be divided into one or more modules/units, and the one or more modules/units are stored in the memory 71 and executed by the processor 70, To complete the present invention.
- the one or more modules/units may be a series of computer-readable instruction segments capable of completing specific functions, and the instruction segments are used to describe the execution process of the computer-readable instructions 72 in the terminal device 7.
- the processor 70 may be a central processing unit (Central Processing Unit, CPU), it can also be other general-purpose processors, digital signal processors (Digital Signal Processor, DSP), application specific integrated circuits (Application Specific Integrated Circuit (ASIC), Field-Programmable Gate Array (FPGA) or other programmable logic devices, discrete gates or transistor logic devices, discrete hardware components, etc.
- the general-purpose processor may be a microprocessor or the processor may also be any conventional processor or the like.
- the memory 71 may be an internal storage unit of the terminal device 7, such as a hard disk or a memory of the terminal device 7.
- the memory 71 may also be an external storage device of the terminal device 7, such as a plug-in hard disk, a smart memory card (Smart Media Card, SMC), or a secure digital (Secure Digital, SD) equipped on the terminal device 7. Flash memory card Card) etc.
- the memory 71 may also include both an internal storage unit of the terminal device 7 and an external storage device.
- the memory 71 is used to store the computer-readable instructions and other instructions and data required by the terminal device 7.
- the memory 71 can also be used to temporarily store data that has been output or will be output.
- the units described as separate components may or may not be physically separated, and the components displayed as units may or may not be physical units, that is, they may be located in one place, or they may be distributed on multiple network units. Some or all of the units may be selected according to actual needs to achieve the objectives of the solutions of the embodiments.
- the integrated module/unit is implemented in the form of a software functional unit and sold or used as an independent product, it can be stored in a computer readable storage medium. Based on this understanding, this application implements all or part of the processes in the above-mentioned embodiments and methods, and can also be completed by instructing relevant hardware through computer-readable instructions.
- the computer-readable instructions can be stored in a computer nonvolatile Readable storage medium.
- Non-volatile memory may include read-only memory (ROM), programmable ROM (PROM), electrically programmable ROM (EPROM), electrically erasable programmable ROM (EEPROM), or flash memory.
- Volatile memory may include random access memory (RAM) or external cache memory.
- RAM is available in many forms, such as static RAM (SRAM), dynamic RAM (DRAM), synchronous DRAM (SDRAM), double data rate SDRAM (DDRSDRAM), enhanced SDRAM (ESDRAM), synchronous chain Channel (Synchlink) DRAM (SLDRAM), memory bus (Rambus) direct RAM (RDRAM), direct memory bus dynamic RAM (DRDRAM), and memory bus dynamic RAM (RDRAM), etc.
Landscapes
- Health & Medical Sciences (AREA)
- Engineering & Computer Science (AREA)
- Medical Informatics (AREA)
- Epidemiology (AREA)
- General Health & Medical Sciences (AREA)
- Primary Health Care (AREA)
- Public Health (AREA)
- Biomedical Technology (AREA)
- Pathology (AREA)
- Bioethics (AREA)
- Medical Treatment And Welfare Office Work (AREA)
Abstract
一种医疗信息共享方法、装置、计算机非易失性可读存储介质及服务器,属于计算机技术领域。所述方法应用于由各个节点组成的区块链系统中,所述方法包括:接收第一终端发送的医疗信息共享请求,并提取其中的患者标识(S101);在预设的终端列表中查询与所述患者标识对应的第二终端,并向所述第二终端发送授权请求(S102);若接收到所述第二终端反馈的授权消息,则提取所述授权消息中的电子签名,并对所述电子签名进行验证(S103);若验证成功,则在预设的数据库中查找与所述患者标识对应的医疗信息(S104),并生成与所述医疗信息对应的区块信息(S105);将所述区块信息上传至预设的区块链系统中(S106),以便在所述区块链系统中的各个节点中进行医疗信息共享。
Description
本申请要求于2019年4月3日提交中国专利局、申请号为201910264899.0、发明名称为“一种医疗信息共享方法、装置、可读存储介质及服务器”的中国专利申请的优先权,其全部内容通过引用结合在本申请中。
本申请属于计算机技术领域,尤其涉及一种医疗信息共享方法、装置、计算机非易失性可读存储介质及服务器。
传统的医疗信息存储主要是以医疗单位为主体,患者在更换医疗单位后,其历史的医疗信息很难被新的医疗单位全面了解,医生不清楚患者曾经做过的检查及治疗方法,往往会重新对患者进行全面的检查,加大了患者的辐射剂量,不利于患者健康,且在重复检查的过程中浪费了大量的医疗资源和宝贵的治疗时间。
有鉴于此,本申请实施例提供了一种医疗信息共享方法、装置、计算机非易失性可读存储介质及服务器,以解决现有的以医疗单位为主体的医疗信息存储方式往往会造成对患者的重复检查,造成医疗资源及时间的浪费的问题。
本申请实施例的第一方面提供了一种医疗信息共享方法,可以包括:
接收第一终端发送的医疗信息共享请求,并提取所述医疗信息共享请求中的患者标识;
在预设的终端列表中查询与所述患者标识对应的第二终端,并向所述第二终端发送授权请求;
若接收到所述第二终端反馈的授权消息,则提取所述授权消息中的电子签名,并对所述电子签名进行验证;
若验证成功,则在预设的数据库中查找与所述患者标识对应的医疗信息,并生成与所述医疗信息对应的区块信息;
将所述区块信息上传至预设的区块链系统中,以便在所述区块链系统中的各个节点中进行医疗信息共享。
本申请实施例的第二方面提供了一种医疗信息共享装置,可以包括用于实现上述医疗信息共享方法的步骤的模块。
本申请实施例的第三方面提供了一种计算机非易失性可读存储介质,所述计算机非易失性可读存储介质存储有计算机可读指令,所述计算机可读指令被处理器执行时实现上述医疗信息共享方法的步骤。
本申请实施例的第四方面提供了一种服务器,包括存储器、处理器以及存储在所述存储器中并可在所述处理器上运行的计算机可读指令,所述处理器执行所述计算机可读指令时实现上述医疗信息共享方法的步骤。
本申请实施例可以在所述区块链系统中的各个节点中进行医疗信息共享,避免了对患者进行重复的检查,节省了大量的医疗资源和治疗时间。
图1为本申请实施例中一种医疗信息共享方法的一个实施例流程图;
图2为医疗信息在整个区块链上碎片化分布的示意图;
图3为逆向查询模式的示意图;
图4为一种生成区块信息的示意图;
图5为另一种生成区块信息的示意图;
图6为本申请实施例中一种医疗信息共享装置的一个实施例结构图;
图7为本申请实施例中一种服务器的示意框图。
本申请实施例中的医疗信息共享方法应用于由各个节点组成的区块链系统中,通过区块链技术,将各个医疗机构的服务器相互之间进行连接,每个医疗机构的服务器都是区块链系统中的一个节点,该节点是患者的医疗信息的记录者,可将患者的医疗信息在经过多重签名和加密后,发布至区块链中,且在该节点中可以存储有全量的医疗信息。
为了保证系统的安全性,在区块链系统中还可以设置认证服务器,该认证服务器对各个医疗机构的行业相关资质进行审核,以确保加入区块链的节点的资质的合法性。
请参阅图1,本申请实施例中的一种医疗信息共享方法的一个实施例可以包括:
步骤S101、接收第一终端发送的医疗信息共享请求,并提取所述医疗信息共享请求中的患者标识。
当患者在某一医疗机构进行检查或治疗后,该医疗机构的人员可以通过其终端设备(即所述第一终端)向该医疗机构的服务器(即本申请实施例的实施主体)发送医疗信息共享请求,在所述医疗信息共享请求中携带着该患者的患者标识,所述患者标识可以是患者的身份证号码、社保号码、医保号码、手机号码或者其它可以唯一表征患者的标识。所述患者标识在整个区块链系统中是唯一的,任意两个不同患者的患者标识均不相同。医疗机构的服务器在接收到该医疗信息共享请求后,即可提取出其中的患者标识。
步骤S102、在预设的终端列表中查询与所述患者标识对应的第二终端,并向所述第二终端发送授权请求。
在所述终端列表中记录了各个患者标识与各个终端设备之间的对应关系,医疗机构的服务器在提取出医疗信息共享请求中的患者标识之后,即可在所述终端列表中查询与所述患者标识对应的终端设备,也即所述第二终端,该第二终端即为患者所使用的终端设备。
为了保障患者的隐私,在将患者的医疗信息共享至所述区块链系统中之前,医疗机构的服务器需要向所述第二终端发送授权请求,以征得用户的同意。
所述第二终端在接收到授权请求之后,通过用户交互界面将其展示给患者,并可以同时向患者展示“授权”和“拒绝”这两个选项,若患者选择了其中的“拒绝”选项,则向医疗机构的服务器反馈拒绝消息,医疗机构的服务器在接收到拒绝消息后,将不再进行后续的医疗信息共享过程;若患者选择了其中的“授权”选项,则向医疗机构的服务器反馈授权消息,医疗机构的服务器在接收到授权消息后,将继续进行步骤S103及其后续的医疗信息共享过程。
步骤S103、提取所述授权消息中的电子签名,并对所述电子签名进行验证。
所述电子签名由所述第二终端自动生成,具体地,所述第二终端首先使用预设的哈希函数对所述患者标识进行哈希运算,得到所述患者标识的摘要,也即第一摘要,然后使用预设的私钥对第一摘要进行加密,从而得到所述电子签名,并将所述电子签名添加入所述授权消息中。
医疗机构的服务器在接收到所述授权消息后,则可以提取其中的电子签名,并对所述电子签名进行验证。具体地,医疗机构的服务器也使用哈希函数对所述患者标识进行哈希运算,得到所述患者标识的摘要,也即第二摘要,然后使用与所述患者标识对应的公钥对所述电子签名进行解密,得到解密结果,最后将解密结果与第二摘要进行比对,若两者不一致,则说明验证不成功,此时,医疗机构的服务器会重新向所述第二终端发送授权请求;若两者一致,则说明验证成功,此时,医疗机构的服务器将继续进行步骤S104及其后续的医疗信息共享过程。
步骤S104、在预设的数据库中查找与所述患者标识对应的医疗信息。
在所述数据库中的每条医疗信息包括但不限于:基本信息、诊断信息、检验结果、处方信息等多个维度的表格信息。
其中,各个维度的表格信息具体内容如下:
基本信息:患者标识、姓名、身份证号码、疾病名称、性别、出生日期、手机号码、年龄、地区等等;
诊断信息:患者标识、就诊医院、就诊科室、诊断类别、疾病编码、疾病名称、诊断日期等等;
检验结果:患者标识、就诊医院、就诊科室、检验项目、检验值、检验值单位、参考范围、检验日期(检验值可以是各种医疗图片)等等;
处方信息:患者标识、就诊医院、就诊科室、药品通用名、药品商品名、药品编码(ATC)、规格、用量、单位、频次、处方开具日期等等。
以上所有内容根据患者在医院的电子病历、各种检验结果直接对应保存,除患者标识、身份证号码、疾病名称外,其他字段均可以为空,通过患者标识来串联所有维度的表格信息。
步骤S105、生成与所述医疗信息对应的区块信息。
区块信息的生成有多种实现方式,在其中的一种具体实现中,可以直接将所述医疗信息作为所述区块信息。其它的区块信息生成方式将在后续的实施例进行详细说明,此处不再赘述。
步骤S106、将所述区块信息上传至预设的区块链系统中。
所述区块信息在被上传至所述区块链系统中后,会被以区块(BLOCK)的形式添加入所述区块链系统存储的区块链中,以便在所述区块链系统中的各个节点中进行医疗信息共享。每个区块由头部信息和详细信息两部分组成,其中,头部信息中可以包括但不限于以下信息:区块标识、上一区块标识、区块大小、医疗信息记录数、时间戳等,详细信息可以包括但不限于在两次共识时间期间内上传至所述区块链系统中的各个区块信息。
考虑到某些医疗机构的服务器配置较差,如果要减少其处理能力的负担,可以将其设置为仅上传区块信息,而不参与区块的生成和广播,从而不需要占用该医疗机构的服务器太多的处理资源。还可以设定该医疗机构服务器也不存储全量的医疗信息,在需要查询的时候,可以广播查询请求,由其它医疗机构的服务器为其提供即可,以减少其存储负担。
然而,值得注意是,上述所提供的实现方式仅是一种示意性描述,是为了更好地说明本申请,如果医疗机构服务器的处理能力足够强大,不需要考虑负荷的问题,也可以将医疗机构的服务器作为区块链系统中的一个完全节点,参与区块的生成和广播,具体采用那种实现方式可以根据实际需要选择,本申请对此不作限定。
进一步地,考虑到对于区块链中的节点而言,如果存储全量的医疗信息数据,显然会占据较大的存储空间,负荷比较大。因此,可以增加一个医疗信息共有云,在区块链中仅存储医疗信息的摘要和索引信息,具体的医疗信息数据存储在医疗信息共有云中。因为将患者医疗信息的摘要信息写入区块链中,而将具体的医疗信息写进医疗信息共有云中,这样区块链中存储的数据就会相对小一些,减少了区块链中组成节点的负担。
通过上述方式,可以通过区块链技术实现医疗信息的管理和维护,这样区块链中的每个节点都存储有全量的医疗信息(或摘要、索引),由节点自身进行维护,实现了医疗信息在多个医疗机构之间的共享。例如,医疗机构A和医疗机构B通过认证服务器进行认证,在认证通过后,获取对应的密钥,加入区块链系统中;然后,患者在医疗机构A就诊,产生相应的医疗信息,并通过医疗机构A的服务器上传至区块链系统中;接着,该患者又在医疗机构B就诊,通过授权机制(例如:多重签名、智能合约等)允许医疗机构B的服务器提取存储在区块链系统中的医疗信息,供医生基于患者的医疗信息进行诊疗诊断。
综上所述,本申请实施例可以在区块链系统中的各个节点中进行医疗信息共享,避免了对患者进行重复的检查,节省了大量的医疗资源和治疗时间。
进一步地,考虑到患者的医疗信息会随着时间的推移而逐步累积,如果采用传统的区块链系统进行存储会造成医疗信息的碎片化分布,从而导致查询及分享的效率较低。
如图2所示,某患者在2001年2月1日在医疗机构A就诊,产生相应的医疗信息,并通过医疗机构A的服务器上传至区块链中,此时存储该医疗信息的区块标识为#56;该患者在2007年8月1日在医疗机构B就诊,产生相应的医疗信息,并通过医疗机构B的服务器上传至区块链中,此时存储该医疗信息的区块标识为#68579;该患者在2017年3月1日在医疗机构C就诊,产生相应的医疗信息,并通过医疗机构C的服务器上传至区块链中,此时存储该医疗信息的区块标识为#193548;……;以此类推,该患者的医疗信息会碎片化的散布在整个区块链上。
每次需要查询该患者的医疗信息时,就需要在整个区块链中查找包含有该患者标识的区块,而且即使已经查找到该患者的医疗信息,也无法确定这就是完整的医疗信息,必须在完成对整个区块链的遍历之后,才可以最终得到该患者完整的医疗信息。因此,每次查询都会耗费大量的时间,而且该区块链会随着时间的推移越来越庞大,查询的时间也会随之越来越长。
为了解决这一问题,在本申请实施例的另一种具体实现中,上述步骤S105具体可以包括如下过程:
首先,在所述区块链系统存储的区块链中逆序查找包含所述患者标识的区块,并获取目标区块的区块标识。
所述目标区块为逆序查找到的第一个包含所述患者标识的区块,所述逆序查找为从所述区块链的最后一个区块开始依次向前逐个查找。
然后,将所述目标区块的区块标识添加入所述医疗信息中,生成与所述医疗信息对应的区块信息。
即每次在上传某患者新的医疗信息之前,首先通过其患者标识在区块链中查找该患者最近一次的医疗信息所在的区块,需要注意的是,此处无需在整个区块链中进行遍历,而是从该区块链的最后一个区块开始进行逆向查找,查找到的第一个包含该患者标识的区块即为该患者最近一次的医疗信息所在的区块,此时无需继续向后查找,仅需将该患者最近一次的医疗信息所在区块的区块标识添加入新产生的医疗信息中(若查找不到,则说明是第一次上传该患者的医疗信息,此时将区块标识置为空),并将该新产生的医疗信息上传至区块链中即可。后续进行新的医疗信息上传时,均以此类推。
在这种情况下,当需要查询该患者的医疗信息时,则可以通过如下所示的过程进行快速查询:
首先,接收第三终端发送的医疗信息查询请求,并提取所述医疗信息查询请求中的患者标识。
当医疗机构的人员需要查询患者的医疗信息时,可以通过其终端设备(即所述第三终端,所述第三终端可以与所述第一终端相同,也可以与所述第一终端不同)向该医疗机构的服务器发送医疗信息查询请求,在所述医疗信息共享请求中携带着该患者的患者标识。
然后,在所述区块链中逆序查找包含所述患者标识的区块。
从第i个选定区块中提取出与所述患者标识对应的历史医疗信息以及第i+1个选定区块的区块标识,所述第i个选定区块为逆序查找到的包含所述患者标识的第i个区块,i≥1,在初始状态下,可以设置i=1。
若第i+1个选定区块的区块标识不为空,则根据第i+1个选定区块的区块标识在所述区块链中查找第i+1个选定区块,再将i增加一个计数单位,即执行:i=i+1,然后返回执行所述从第i个选定区块中提取出与所述患者标识对应的历史医疗信息以及第i+1个选定区块的区块标识的步骤,直至第i+1个选定区块的区块标识为空为止。
若第i+1个选定区块的区块标识为空,则将从各个选定区块中提取出的历史医疗信息构造为完整的医疗信息。
也即首先通过患者标识在区块链中查找该患者最近一次的医疗信息所在的区块,从中提取该患者的医疗信息,然后根据其中包含的区块标识快速查找到上一次的医疗信息所在的区块,…….,不断重复该过程,直至医疗信息中包含的区块标识为空(即不存在更早的医疗信息)为止,从而形成如图3所示的逆向查询模式。整个过程仅在查找最近一次的医疗信息时需要消耗时间,而在后续的查找更早之前的医疗信息时可以通过查询指针(也即区块标识)直接跳转查找,大大减少了查询所需耗费的时间。
在本申请实施例的另一种具体实现中,上述步骤S105具体可以包括如下过程:
首先,在所述区块链系统存储的区块链中逆序查找包含所述患者标识的区块,并从目标区块中提取出与所述患者标识对应的历史医疗信息。
然后,将所述历史医疗信息添加入所述医疗信息中,生成与所述医疗信息对应的区块信息。
即每次在上传患者新的医疗信息之前,首先通过其患者标识在区块链中查找该患者最近一次的医疗信息所在的区块,具体的过程与前述方式相同,此处不再赘述。在查找到该患者最近一次的医疗信息所在的区块之后,从中提取该患者原有的医疗信息,然后将这些原有的医疗信息添加入新的医疗信息中,即进行数据的完整迁移,组成该患者完整的医疗信息,并将该完整的医疗信息上传至区块链中。后续进行新的医疗信息上传时,均以此类推。这样,每次存储的医疗信息都是截止当前时刻该患者完整的医疗信息,整个过程如图4所示。
在这种情况下,当需要查询该患者的医疗信息时,则可以通过如下所示的过程进行快速查询:
首先,接收第三终端发送的医疗信息查询请求,并提取所述医疗信息查询请求中的患者标识。
然后,在所述区块链中逆序查找包含所述患者标识的区块,并从目标区块中提取出与所述患者标识对应的历史医疗信息。
无需再往前进行查找,该历史医疗信息即为该患者完整的医疗信息。整个过程仅需查找一次医疗信息,从而大大减少了查询所需耗费的时间。
进一步地,结合上述两种具体实现方式,在本申请实施例的另一种具体实现中,上述步骤S105具体可以包括如下过程:
首先,在所述区块链系统存储的区块链中逆序查找包含所述患者标识的区块,并从目标区块中提取出与所述患者标识对应的历史医疗信息。
若所述历史医疗信息的字节数与所述医疗信息的字节数之和小于预设的区块容量,将所述历史医疗信息添加入所述医疗信息中,生成与所述医疗信息对应的区块信息;若所述历史医疗信息的字节数与所述医疗信息的字节数之和大于或等于所述区块容量,获取所述目标区块的区块标识,并将所述目标区块的区块标识添加入所述医疗信息中,生成与所述医疗信息对应的区块信息。所述区块容量可以根据实际情况进行设置,例如,可以将其设置为1024、2048、4096、8192或者其它取值等等。
即当患者的医疗信息的数据量累积到足够大时,将不再对原有的医疗信息进行完整的数据迁移,而是以上述查询指针的方式标识出原有的医疗信息所在区块,但是在之后产生的新的医疗信息仍然进行数据完整迁移,直至新的医疗信息的数据量也足够大时,不再进行完整的数据迁移,上述查询指针的方式标识出原有的医疗信息所在区块,……,以此类推,整个过程如图5所示
在这种情况下,当需要查询该患者的医疗信息时,仍可以通过前述图3所示的逆向查询模式进行快速查询,具体可参见前述内容,此处不再赘述。
通过这样的方式,在保证每个区块的数据量不至于过大的情况下,大大减少了查询所需耗费的时间。
对应于上文实施例所述的一种医疗信息共享方法,图6示出了本申请实施例提供的一种医疗信息共享装置的一个实施例结构图。
本实施例中,一种医疗信息共享装置可以包括:
共享请求接收模块601,用于接收第一终端发送的医疗信息共享请求,并提取所述医疗信息共享请求中的患者标识;
授权请求发送模块602,用于在预设的终端列表中查询与所述患者标识对应的第二终端,并向所述第二终端发送授权请求;
签名验证模块603,用于若接收到所述第二终端反馈的授权消息,则提取所述授权消息中的电子签名,并对所述电子签名进行验证;
医疗信息查找模块604,用于若验证成功,则在预设的数据库中查找与所述患者标识对应的医疗信息;
区块信息生成模块605,用于生成与所述医疗信息对应的区块信息;
区块信息分享模块606,用于将所述区块信息上传至预设的区块链系统中,以便在所述区块链系统中的各个节点中进行医疗信息共享。
可选地,所述区块信息生成模块可以包括:
标识获取单元,用于在所述区块链系统存储的区块链中逆序查找包含所述患者标识的区块,并获取目标区块的区块标识;
第一添加单元,用于将所述目标区块的区块标识添加入所述医疗信息中,生成与所述医疗信息对应的区块信息。
可选地,所述区块信息生成模块可以包括:
第一提取单元,用于在所述区块链系统存储的区块链中逆序查找包含所述患者标识的区块,并从目标区块中提取出与所述患者标识对应的历史医疗信息;
第一次处理单元,用于若所述历史医疗信息的字节数与所述医疗信息的字节数之和小于预设的区块容量,将所述历史医疗信息添加入所述医疗信息中,生成与所述医疗信息对应的区块信息;
第二次处理单元,用于若所述历史医疗信息的字节数与所述医疗信息的字节数之和大于或等于所述区块容量,获取所述目标区块的区块标识,并将所述目标区块的区块标识添加入所述医疗信息中,生成与所述医疗信息对应的区块信息。
可选地,所述医疗信息共享装置还可以包括:
第一查询请求接收模块,用于接收第三终端发送的医疗信息查询请求,并提取所述医疗信息查询请求中的患者标识;
逆序查找模块,用于在所述区块链中逆序查找包含所述患者标识的区块;
信息提取模块,用于从第i个选定区块中提取出与所述患者标识对应的历史医疗信息以及第i+1个选定区块的区块标识;
选定区块查找模块,用于若第i+1个选定区块的区块标识不为空,则根据第i+1个选定区块的区块标识在所述区块链中查找第i+1个选定区块;
医疗信息构造模块,用于若第i+1个选定区块的区块标识为空,则将从各个选定区块中提取出的历史医疗信息构造为完整的医疗信息。
可选地,所述区块信息生成模块可以包括:
第二提取单元,用于在所述区块链系统存储的区块链中逆序查找包含所述患者标识的区块,并从目标区块中提取出与所述患者标识对应的历史医疗信息;
第二添加单元,用于将所述历史医疗信息添加入所述医疗信息中,生成与所述医疗信息对应的区块信息。
可选地,所述医疗信息共享装置还可以包括:
第二查询请求接收模块,用于接收第三终端发送的医疗信息查询请求,并提取所述医疗信息查询请求中的患者标识;
第三提取单元,用于在所述区块链中逆序查找包含所述患者标识的区块,并从目标区块中提取出与所述患者标识对应的历史医疗信息。
所属领域的技术人员可以清楚地了解到,为描述的方便和简洁,上述描述的装置,模块和单元的具体工作过程,可以参考前述方法实施例中的对应过程,在此不再赘述。
图7示出了本申请实施例提供的一种服务器的示意框图,为了便于说明,仅示出了与本申请实施例相关的部分。
在本实施例中,所述服务器7可以包括:处理器70、存储器71以及存储在所述存储器71中并可在所述处理器70上运行的计算机可读指令72,例如执行上述的医疗信息共享方法的计算机可读指令。所述处理器70执行所述计算机可读指令72时实现上述各个医疗信息共享方法实施例中的步骤。
示例性的,所述计算机可读指令72可以被分割成一个或多个模块/单元,所述一个或者多个模块/单元被存储在所述存储器71中,并由所述处理器70执行,以完成本发明。所述一个或多个模块/单元可以是能够完成特定功能的一系列计算机可读指令段,该指令段用于描述所述计算机可读指令72在所述终端设备7中的执行过程。
所述处理器70可以是中央处理单元(Central
Processing Unit,CPU),还可以是其它通用处理器、数字信号处理器(Digital Signal Processor,DSP)、专用集成电路(Application
Specific Integrated Circuit,ASIC)、现场可编程门阵列(Field-Programmable Gate Array,FPGA)或者其它可编程逻辑器件、分立门或者晶体管逻辑器件、分立硬件组件等。通用处理器可以是微处理器或者该处理器也可以是任何常规的处理器等。
所述存储器71可以是所述终端设备7的内部存储单元,例如终端设备7的硬盘或内存。所述存储器71也可以是所述终端设备7的外部存储设备,例如所述终端设备7上配备的插接式硬盘,智能存储卡(Smart Media Card, SMC),安全数字(Secure Digital, SD)卡,闪存卡(Flash
Card)等。进一步地,所述存储器71还可以既包括所述终端设备7的内部存储单元也包括外部存储设备。所述存储器71用于存储所述计算机可读指令以及所述终端设备7所需的其它指令和数据。所述存储器71还可以用于暂时地存储已经输出或者将要输出的数据。
所属领域的技术人员可以清楚地了解到,为了描述的方便和简洁,仅以上述各功能单元、模块的划分进行举例说明,实际应用中,可以根据需要而将上述功能分配由不同的功能单元、模块完成,即将所述装置的内部结构划分成不同的功能单元或模块,以完成以上描述的全部或者部分功能。实施例中的各功能单元、模块可以集成在一个处理单元中,也可以是各个单元单独物理存在,也可以两个或两个以上单元集成在一个单元中,上述集成的单元既可以采用硬件的形式实现,也可以采用软件功能单元的形式实现。另外,各功能单元、模块的具体名称也只是为了便于相互区分,并不用于限制本申请的保护范围。上述系统中单元、模块的具体工作过程,可以参考前述方法实施例中的对应过程,在此不再赘述。
在上述实施例中,对各个实施例的描述都各有侧重,某个实施例中没有详述或记载的部分,可以参见其它实施例的相关描述。
所述作为分离部件说明的单元可以是或者也可以不是物理上分开的,作为单元显示的部件可以是或者也可以不是物理单元,即可以位于一个地方,或者也可以分布到多个网络单元上。可以根据实际的需要选择其中的部分或者全部单元来实现本实施例方案的目的。
所述集成的模块/单元如果以软件功能单元的形式实现并作为独立的产品销售或使用时,可以存储在一个计算机可读取存储介质中。基于这样的理解,本申请实现上述实施例方法中的全部或部分流程,也可以通过计算机可读指令来指令相关的硬件来完成,所述的计算机可读指令可存储于一计算机非易失性可读存储介质中。
本领域普通技术人员可以理解实现上述实施例方法中的全部或部分流程,是可以通过计算机可读指令来指令相关的硬件来完成,所述的计算机可读指令可存储于一计算机非易失性可读取存储介质中,该计算机可读指令在执行时,可包括如上述各方法的实施例的流程。其中,本申请所提供的各实施例中所使用的对存储器、存储、数据库或其它介质的任何引用,均可包括非易失性和/或易失性存储器。非易失性存储器可包括只读存储器(ROM)、可编程ROM(PROM)、电可编程ROM(EPROM)、电可擦除可编程ROM(EEPROM)或闪存。易失性存储器可包括随机存取存储器(RAM)或者外部高速缓冲存储器。作为说明而非局限,RAM以多种形式可得,诸如静态RAM(SRAM)、动态RAM(DRAM)、同步DRAM(SDRAM)、双数据率SDRAM(DDRSDRAM)、增强型SDRAM(ESDRAM)、同步链路(Synchlink) DRAM(SLDRAM)、存储器总线(Rambus)直接RAM(RDRAM)、直接存储器总线动态RAM(DRDRAM)、以及存储器总线动态RAM(RDRAM)等。
以上所述实施例仅用以说明本申请的技术方案,而非对其限制;尽管参照前述实施例对本申请进行了详细的说明,本领域的普通技术人员应当理解:其依然可以对前述各实施例所记载的技术方案进行修改,或者对其中部分技术特征进行等同替换;而这些修改或者替换,并不使相应技术方案的本质脱离本申请各实施例技术方案的精神和范围,均应包含在本申请的保护范围之内。
Claims (20)
- 一种医疗信息共享方法,其特征在于,所述方法应用于由各个节点组成的区块链系统中,其中的任意一个节点均为一个医疗机构的服务器,所述方法包括:接收第一终端发送的医疗信息共享请求,并提取所述医疗信息共享请求中的患者标识;在预设的终端列表中查询与所述患者标识对应的第二终端,并向所述第二终端发送授权请求;若接收到所述第二终端反馈的授权消息,则提取所述授权消息中的电子签名,并对所述电子签名进行验证;若验证成功,则在预设的数据库中查找与所述患者标识对应的医疗信息,并生成与所述医疗信息对应的区块信息;将所述区块信息上传至预设的区块链系统中,以便在所述区块链系统中的各个节点中进行医疗信息共享。
- 根据权利要求1所述的医疗信息共享方法,其特征在于,所述生成与所述医疗信息对应的区块信息包括:在所述区块链系统存储的区块链中逆序查找包含所述患者标识的区块,并获取目标区块的区块标识,所述目标区块为逆序查找到的第一个包含所述患者标识的区块,所述逆序查找为从所述区块链的最后一个区块开始依次向前逐个查找;将所述目标区块的区块标识添加入所述医疗信息中,生成与所述医疗信息对应的区块信息。
- 根据权利要求1所述的医疗信息共享方法,其特征在于,所述生成与所述医疗信息对应的区块信息包括:在所述区块链系统存储的区块链中逆序查找包含所述患者标识的区块,并从目标区块中提取出与所述患者标识对应的历史医疗信息,所述目标区块为逆序查找到的第一个包含所述患者标识的区块,所述逆序查找为从所述区块链的最后一个区块开始依次向前逐个查找;若所述历史医疗信息的字节数与所述医疗信息的字节数之和小于预设的区块容量,将所述历史医疗信息添加入所述医疗信息中,生成与所述医疗信息对应的区块信息;若所述历史医疗信息的字节数与所述医疗信息的字节数之和大于或等于所述区块容量,获取所述目标区块的区块标识,并将所述目标区块的区块标识添加入所述医疗信息中,生成与所述医疗信息对应的区块信息。
- 根据权利要求2或3所述的医疗信息共享方法,其特征在于,还包括:接收第三终端发送的医疗信息查询请求,并提取所述医疗信息查询请求中的患者标识;在所述区块链中逆序查找包含所述患者标识的区块;从第i个选定区块中提取出与所述患者标识对应的历史医疗信息以及第i+1个选定区块的区块标识,所述第i个选定区块为逆序查找到的包含所述患者标识的第i个区块,i≥1;若第i+1个选定区块的区块标识不为空,则根据第i+1个选定区块的区块标识在所述区块链中查找第i+1个选定区块;将i增加一个计数单位,返回执行所述从第i个选定区块中提取出与所述患者标识对应的历史医疗信息以及第i+1个选定区块的区块标识的步骤,直至第i+1个选定区块的区块标识为空为止;若第i+1个选定区块的区块标识为空,则将从各个选定区块中提取出的历史医疗信息构造为完整的医疗信息。
- 根据权利要求1所述的医疗信息共享方法,其特征在于,所述生成与所述医疗信息对应的区块信息包括:在所述区块链系统存储的区块链中逆序查找包含所述患者标识的区块,并从目标区块中提取出与所述患者标识对应的历史医疗信息,所述目标区块为逆序查找到的第一个包含所述患者标识的区块,所述逆序查找为从所述区块链的最后一个区块开始依次向前逐个查找;将所述历史医疗信息添加入所述医疗信息中,生成与所述医疗信息对应的区块信息。
- 根据权利要求5所述的医疗信息共享方法,其特征在于,还包括:接收第三终端发送的医疗信息查询请求,并提取所述医疗信息查询请求中的患者标识;在所述区块链中逆序查找包含所述患者标识的区块,并从目标区块中提取出与所述患者标识对应的历史医疗信息。
- 一种医疗信息共享装置,其特征在于,包括:共享请求接收模块,用于接收第一终端发送的医疗信息共享请求,并提取所述医疗信息共享请求中的患者标识;授权请求发送模块,用于在预设的终端列表中查询与所述患者标识对应的第二终端,并向所述第二终端发送授权请求;签名验证模块,用于若接收到所述第二终端反馈的授权消息,则提取所述授权消息中的电子签名,并对所述电子签名进行验证;医疗信息查找模块,用于若验证成功,则在预设的数据库中查找与所述患者标识对应的医疗信息;区块信息生成模块,用于生成与所述医疗信息对应的区块信息;区块信息分享模块,用于将所述区块信息上传至预设的区块链系统中,以便在所述区块链系统中的各个节点中进行医疗信息共享。
- 根据权利要求7所述的医疗信息共享装置,其特征在于,所述区块信息生成模块包括:标识获取单元,用于在所述区块链系统存储的区块链中逆序查找包含所述患者标识的区块,并获取目标区块的区块标识,所述目标区块为逆序查找到的第一个包含所述患者标识的区块,所述逆序查找为从所述区块链的最后一个区块开始依次向前逐个查找;第一添加单元,用于将所述目标区块的区块标识添加入所述医疗信息中,生成与所述医疗信息对应的区块信息。
- 根据权利要求7所述的医疗信息共享装置,其特征在于,所述区块信息生成模块包括:第一提取单元,用于在所述区块链系统存储的区块链中逆序查找包含所述患者标识的区块,并从目标区块中提取出与所述患者标识对应的历史医疗信息,所述目标区块为逆序查找到的第一个包含所述患者标识的区块,所述逆序查找为从所述区块链的最后一个区块开始依次向前逐个查找;第一次处理单元,用于若所述历史医疗信息的字节数与所述医疗信息的字节数之和小于预设的区块容量,将所述历史医疗信息添加入所述医疗信息中,生成与所述医疗信息对应的区块信息;第二次处理单元,用于若所述历史医疗信息的字节数与所述医疗信息的字节数之和大于或等于所述区块容量,获取所述目标区块的区块标识,并将所述目标区块的区块标识添加入所述医疗信息中,生成与所述医疗信息对应的区块信息。
- 根据权利要求8或9所述的医疗信息共享装置,其特征在于,还包括:第一查询请求接收模块,用于接收第三终端发送的医疗信息查询请求,并提取所述医疗信息查询请求中的患者标识;逆序查找模块,用于在所述区块链中逆序查找包含所述患者标识的区块;信息提取模块,用于从第i个选定区块中提取出与所述患者标识对应的历史医疗信息以及第i+1个选定区块的区块标识,所述第i个选定区块为逆序查找到的包含所述患者标识的第i个区块,i≥1;选定区块查找模块,用于若第i+1个选定区块的区块标识不为空,则根据第i+1个选定区块的区块标识在所述区块链中查找第i+1个选定区块;医疗信息构造模块,用于若第i+1个选定区块的区块标识为空,则将从各个选定区块中提取出的历史医疗信息构造为完整的医疗信息。
- 根据权利要求7所述的医疗信息共享装置,其特征在于,所述区块信息生成模块包括:第二提取单元,用于在所述区块链系统存储的区块链中逆序查找包含所述患者标识的区块,并从目标区块中提取出与所述患者标识对应的历史医疗信息,所述目标区块为逆序查找到的第一个包含所述患者标识的区块,所述逆序查找为从所述区块链的最后一个区块开始依次向前逐个查找;第二添加单元,用于将所述历史医疗信息添加入所述医疗信息中,生成与所述医疗信息对应的区块信息。
- 根据权利要求11所述的医疗信息共享装置,其特征在于,还包括:第二查询请求接收模块,用于接收第三终端发送的医疗信息查询请求,并提取所述医疗信息查询请求中的患者标识;第三提取单元,用于在所述区块链中逆序查找包含所述患者标识的区块,并从目标区块中提取出与所述患者标识对应的历史医疗信息。
- 一种计算机非易失性可读存储介质,所述计算机非易失性可读存储介质存储有计算机可读指令,其特征在于,所述计算机可读指令被处理器执行时实现如下步骤:接收第一终端发送的医疗信息共享请求,并提取所述医疗信息共享请求中的患者标识;在预设的终端列表中查询与所述患者标识对应的第二终端,并向所述第二终端发送授权请求;若接收到所述第二终端反馈的授权消息,则提取所述授权消息中的电子签名,并对所述电子签名进行验证;若验证成功,则在预设的数据库中查找与所述患者标识对应的医疗信息,并生成与所述医疗信息对应的区块信息;将所述区块信息上传至预设的区块链系统中,以便在所述区块链系统中的各个节点中进行医疗信息共享。
- 根据权利要求13所述的计算机非易失性可读存储介质,其特征在于,所述生成与所述医疗信息对应的区块信息包括:在所述区块链系统存储的区块链中逆序查找包含所述患者标识的区块,并获取目标区块的区块标识,所述目标区块为逆序查找到的第一个包含所述患者标识的区块,所述逆序查找为从所述区块链的最后一个区块开始依次向前逐个查找;将所述目标区块的区块标识添加入所述医疗信息中,生成与所述医疗信息对应的区块信息。
- 根据权利要求13所述的计算机非易失性可读存储介质,其特征在于,所述生成与所述医疗信息对应的区块信息包括:在所述区块链系统存储的区块链中逆序查找包含所述患者标识的区块,并从目标区块中提取出与所述患者标识对应的历史医疗信息,所述目标区块为逆序查找到的第一个包含所述患者标识的区块,所述逆序查找为从所述区块链的最后一个区块开始依次向前逐个查找;若所述历史医疗信息的字节数与所述医疗信息的字节数之和小于预设的区块容量,将所述历史医疗信息添加入所述医疗信息中,生成与所述医疗信息对应的区块信息;若所述历史医疗信息的字节数与所述医疗信息的字节数之和大于或等于所述区块容量,获取所述目标区块的区块标识,并将所述目标区块的区块标识添加入所述医疗信息中,生成与所述医疗信息对应的区块信息。
- 根据权利要求14或15所述的计算机非易失性可读存储介质,其特征在于,还包括:接收第三终端发送的医疗信息查询请求,并提取所述医疗信息查询请求中的患者标识;在所述区块链中逆序查找包含所述患者标识的区块;从第i个选定区块中提取出与所述患者标识对应的历史医疗信息以及第i+1个选定区块的区块标识,所述第i个选定区块为逆序查找到的包含所述患者标识的第i个区块,i≥1;若第i+1个选定区块的区块标识不为空,则根据第i+1个选定区块的区块标识在所述区块链中查找第i+1个选定区块;将i增加一个计数单位,返回执行所述从第i个选定区块中提取出与所述患者标识对应的历史医疗信息以及第i+1个选定区块的区块标识的步骤,直至第i+1个选定区块的区块标识为空为止;若第i+1个选定区块的区块标识为空,则将从各个选定区块中提取出的历史医疗信息构造为完整的医疗信息。
- 根据权利要求13所述的计算机非易失性可读存储介质,其特征在于,所述生成与所述医疗信息对应的区块信息包括:在所述区块链系统存储的区块链中逆序查找包含所述患者标识的区块,并从目标区块中提取出与所述患者标识对应的历史医疗信息,所述目标区块为逆序查找到的第一个包含所述患者标识的区块,所述逆序查找为从所述区块链的最后一个区块开始依次向前逐个查找;将所述历史医疗信息添加入所述医疗信息中,生成与所述医疗信息对应的区块信息。
- 根据权利要求17所述的计算机非易失性可读存储介质,其特征在于,还包括:接收第三终端发送的医疗信息查询请求,并提取所述医疗信息查询请求中的患者标识;在所述区块链中逆序查找包含所述患者标识的区块,并从目标区块中提取出与所述患者标识对应的历史医疗信息。
- 一种服务器,包括存储器、处理器以及存储在所述存储器中并可在所述处理器上运行的计算机可读指令,其特征在于,所述处理器执行所述计算机可读指令时实现如下步骤:接收第一终端发送的医疗信息共享请求,并提取所述医疗信息共享请求中的患者标识;在预设的终端列表中查询与所述患者标识对应的第二终端,并向所述第二终端发送授权请求;若接收到所述第二终端反馈的授权消息,则提取所述授权消息中的电子签名,并对所述电子签名进行验证;若验证成功,则在预设的数据库中查找与所述患者标识对应的医疗信息,并生成与所述医疗信息对应的区块信息;将所述区块信息上传至预设的区块链系统中,以便在所述区块链系统中的各个节点中进行医疗信息共享。
- 根据权利要求19所述的服务器,其特征在于,所述生成与所述医疗信息对应的区块信息包括:在所述区块链系统存储的区块链中逆序查找包含所述患者标识的区块,并获取目标区块的区块标识,所述目标区块为逆序查找到的第一个包含所述患者标识的区块,所述逆序查找为从所述区块链的最后一个区块开始依次向前逐个查找;将所述目标区块的区块标识添加入所述医疗信息中,生成与所述医疗信息对应的区块信息。
Applications Claiming Priority (2)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN201910264899.0A CN110148475B (zh) | 2019-04-03 | 2019-04-03 | 一种医疗信息共享方法、装置、可读存储介质及服务器 |
CN201910264899.0 | 2019-04-03 |
Publications (1)
Publication Number | Publication Date |
---|---|
WO2020199474A1 true WO2020199474A1 (zh) | 2020-10-08 |
Family
ID=67589371
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
PCT/CN2019/103114 WO2020199474A1 (zh) | 2019-04-03 | 2019-08-28 | 一种医疗信息共享方法、装置、可读存储介质及服务器 |
Country Status (2)
Country | Link |
---|---|
CN (1) | CN110148475B (zh) |
WO (1) | WO2020199474A1 (zh) |
Cited By (1)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN114639475A (zh) * | 2022-03-10 | 2022-06-17 | 平安国际智慧城市科技股份有限公司 | 信息处理方法、装置、服务器及存储介质 |
Families Citing this family (18)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN110148475B (zh) * | 2019-04-03 | 2023-10-27 | 平安科技(深圳)有限公司 | 一种医疗信息共享方法、装置、可读存储介质及服务器 |
CN110556171B (zh) * | 2019-09-05 | 2021-08-24 | 腾讯科技(深圳)有限公司 | 医疗数据管理方法及装置、区块链网络的节点和存储介质 |
CN110602089B (zh) * | 2019-09-11 | 2021-08-10 | 腾讯科技(深圳)有限公司 | 基于区块链的医疗数据存储方法、装置、设备及存储介质 |
CN110995673B (zh) * | 2019-11-20 | 2022-05-31 | 腾讯科技(深圳)有限公司 | 基于区块链的案件证据管理方法、装置、终端及存储介质 |
CN111223537B (zh) * | 2020-01-14 | 2023-06-06 | 北京唐颐惠康生物医学技术有限公司 | 分布式云样本管理方法及系统 |
CN111339182A (zh) * | 2020-02-10 | 2020-06-26 | 叮当快药科技集团有限公司 | 用于基于以太坊区块链的信息共享系统的用户数据调用的方法和装置 |
CN111459899B (zh) * | 2020-03-27 | 2024-06-07 | 中国平安人寿保险股份有限公司 | 日志共享方法、装置及终端设备 |
CN111755092B (zh) * | 2020-07-06 | 2021-08-13 | 重庆中联信息产业有限责任公司 | 一种医疗数据互联互通方法及医疗系统 |
CN111988316B (zh) * | 2020-08-19 | 2022-11-04 | 中国工商银行股份有限公司 | 用于区块链的电子处方的处理方法、装置、系统和介质 |
CN111914034B (zh) * | 2020-08-19 | 2023-09-15 | 中国工商银行股份有限公司 | 用于区块链的电子档案的处理方法、装置、系统和介质 |
CN112260996B (zh) * | 2020-09-22 | 2022-10-11 | 江苏微药信息科技有限责任公司 | 基于区块链的医药管理方法 |
CN112133396B (zh) * | 2020-09-23 | 2023-02-03 | 深圳平安智慧医健科技有限公司 | 医疗数据共享方法、装置、电子设备及介质 |
CN112908444A (zh) * | 2021-03-10 | 2021-06-04 | 深圳博济数据科技有限公司 | 医疗数据扫码传输方法、装置、计算机设备及存储设备 |
CN113642027B (zh) * | 2021-09-01 | 2024-04-16 | 卫宁健康科技集团股份有限公司 | 医疗信息整合方法、装置、计算机设备、介质及系统 |
CN113806411A (zh) * | 2021-09-18 | 2021-12-17 | 王剑 | 医疗产品信息的查询方法、存储方法及相关装置 |
CN113963812A (zh) * | 2021-11-01 | 2022-01-21 | 广州新华学院 | 一种信息共享方法、系统及装置 |
CN115794958B (zh) * | 2023-01-28 | 2023-05-16 | 广东南方电信规划咨询设计院有限公司 | 一种基于区块链的医疗数据共享方法、装置以及系统 |
CN117675870B (zh) * | 2024-01-31 | 2024-04-19 | 中国医学科学院北京协和医院 | 一种基于区块链的电子病历分布式共享方法及装置 |
Citations (6)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US20170237570A1 (en) * | 2016-02-16 | 2017-08-17 | Xerox Corporation | Method and system for server based secure auditing for revisioning of electronic document files |
CN108449359A (zh) * | 2018-04-16 | 2018-08-24 | 济南浪潮高新科技投资发展有限公司 | 一种基于区块链的电子病历共享方法和系统 |
CN108881160A (zh) * | 2018-05-07 | 2018-11-23 | 北京信任度科技有限公司 | 基于区块链智能合约的医疗健康数据管理方法及系统 |
CN108959945A (zh) * | 2018-07-06 | 2018-12-07 | 腾讯科技(深圳)有限公司 | 医疗数据共享方法、装置、计算机可读介质及电子设备 |
CN109326337A (zh) * | 2018-09-06 | 2019-02-12 | 西安电子科技大学 | 基于区块链的电子医疗记录存储和共享的模型及方法 |
CN110148475A (zh) * | 2019-04-03 | 2019-08-20 | 平安科技(深圳)有限公司 | 一种医疗信息共享方法、装置、可读存储介质及服务器 |
Family Cites Families (4)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN103905474B (zh) * | 2012-12-25 | 2017-09-26 | 腾讯数码(天津)有限公司 | 一种信息共享方法、终端、服务器及系统 |
CN107819770A (zh) * | 2017-11-15 | 2018-03-20 | 中国联合网络通信集团有限公司 | 基于区块链的医疗信息共享隐私保护方法及装置 |
CN108965416B (zh) * | 2018-07-04 | 2022-04-15 | 平安科技(深圳)有限公司 | 医疗数据共享方法、装置、计算机设备和存储介质 |
CN109243548A (zh) * | 2018-08-22 | 2019-01-18 | 广东工业大学 | 一种基于区块链技术的医疗数据平台 |
-
2019
- 2019-04-03 CN CN201910264899.0A patent/CN110148475B/zh active Active
- 2019-08-28 WO PCT/CN2019/103114 patent/WO2020199474A1/zh active Application Filing
Patent Citations (6)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US20170237570A1 (en) * | 2016-02-16 | 2017-08-17 | Xerox Corporation | Method and system for server based secure auditing for revisioning of electronic document files |
CN108449359A (zh) * | 2018-04-16 | 2018-08-24 | 济南浪潮高新科技投资发展有限公司 | 一种基于区块链的电子病历共享方法和系统 |
CN108881160A (zh) * | 2018-05-07 | 2018-11-23 | 北京信任度科技有限公司 | 基于区块链智能合约的医疗健康数据管理方法及系统 |
CN108959945A (zh) * | 2018-07-06 | 2018-12-07 | 腾讯科技(深圳)有限公司 | 医疗数据共享方法、装置、计算机可读介质及电子设备 |
CN109326337A (zh) * | 2018-09-06 | 2019-02-12 | 西安电子科技大学 | 基于区块链的电子医疗记录存储和共享的模型及方法 |
CN110148475A (zh) * | 2019-04-03 | 2019-08-20 | 平安科技(深圳)有限公司 | 一种医疗信息共享方法、装置、可读存储介质及服务器 |
Cited By (1)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN114639475A (zh) * | 2022-03-10 | 2022-06-17 | 平安国际智慧城市科技股份有限公司 | 信息处理方法、装置、服务器及存储介质 |
Also Published As
Publication number | Publication date |
---|---|
CN110148475B (zh) | 2023-10-27 |
CN110148475A (zh) | 2019-08-20 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
WO2020199474A1 (zh) | 一种医疗信息共享方法、装置、可读存储介质及服务器 | |
US20220084643A1 (en) | Blockchain-based mechanisms for secure health information resource exchange | |
Alonso et al. | Proposing new blockchain challenges in ehealth | |
WO2018225428A1 (ja) | 診療記録管理システム、装置、方法およびプログラム | |
US11562812B2 (en) | Computer implemented method for secure management of data generated in an EHR during an episode of care and a system therefor | |
CN110634544A (zh) | 基于区块链的病历数据处理方法、装置、存储介质和设备 | |
Reen et al. | Decentralized patient centric e-health record management system using blockchain and IPFS | |
US20130006865A1 (en) | Systems, methods, apparatuses, and computer program products for providing network-accessible patient health records | |
Lee et al. | SHAREChain: Healthcare data sharing framework using Blockchain-registry and FHIR | |
US9940469B2 (en) | Encrypted data store for records | |
CN109947854B (zh) | 基于区块链的电子病历处理方法、装置、设备和介质 | |
WO2021129004A1 (zh) | 一种基于智能合约的区块链数据访问控制方法及装置 | |
Liu et al. | Blockchain bridges critical national infrastructures: E-healthcare data migration perspective | |
Ismail et al. | Performance evaluation of a patient-centric blockchain-based healthcare records management framework | |
WO2019095551A1 (zh) | 区域医疗电子病历共享整合查询系统及方法 | |
US11568397B2 (en) | Providing a financial/clinical data interchange | |
Yu et al. | Blockchain-based multi-role healthcare data sharing system | |
CN112733164A (zh) | 一种基于区块链的病例共享方法、系统及私钥存储介质 | |
KR101232379B1 (ko) | 개인 건강기록 관리 시스템 및 그 방법 | |
WO2019095552A1 (zh) | 区域医疗电子病历安全协同整合系统及方法 | |
Ismail et al. | Blockhr–a blockchain-based healthcare records management framework: performance evaluation and comparison with client/server architecture | |
Saxena et al. | Blockchain for public health: Technology, applications, and a case study | |
Poonguzhali et al. | A framework for electronic health record using blockchain technology | |
CN103597775B (zh) | 医用信息验证系统 | |
CN113722731A (zh) | 一种医疗数据共享方法、装置、电子设备及存储介质 |
Legal Events
Date | Code | Title | Description |
---|---|---|---|
121 | Ep: the epo has been informed by wipo that ep was designated in this application |
Ref document number: 19922883 Country of ref document: EP Kind code of ref document: A1 |
|
NENP | Non-entry into the national phase |
Ref country code: DE |
|
122 | Ep: pct application non-entry in european phase |
Ref document number: 19922883 Country of ref document: EP Kind code of ref document: A1 |