A quantum-resistant identity authentication method for a digital medical system based on a consortium blockchain

By combining consortium blockchain and quantum-resistant algorithms, the problem of quantum attacks on identity authentication and key exchange in digital medical systems has been solved, achieving secure identity authentication and key exchange and ensuring the security and privacy of the system.

CN119363358BActive Publication Date: 2025-10-17HUAZHONG AGRI UNIV +1
View PDF 2 Cites 0 Cited by

Patent Information

Application Number
CN202411568909.7
Authority / Receiving Office
CN · China
Patent Type
Patents(China)
Current Assignee / Owner
Filing Date
2024-11-05
Publication Date
2025-10-17
Estimated Expiration
2044-11-05

AI Technical Summary

Technical Problem

The identity authentication and key exchange of existing digital healthcare systems cannot resist attacks from quantum computers, making them vulnerable to Sybil attacks and denial-of-service attacks. Furthermore, traditional asymmetric cryptography is easily compromised by quantum computers.

Method used

A quantum-resistant identity authentication method based on consortium blockchain is adopted. Public key certificates are generated and managed through a certificate authentication center to achieve anonymity, linkability, and traceability of identity. Quantum-resistant signature and key exchange algorithms are used for identity verification and key exchange.

Benefits of technology

It provides a secure identity authentication and key exchange mechanism that can resist quantum computer attacks, ensuring the security and privacy of the medical system, while supporting anonymity and traceability.

✦ Generated by Eureka AI based on patent content.

Smart Images

  • Figure CN119363358B_ABST
    Figure CN119363358B_ABST
Patent Text Reader

Abstract

The present invention discloses a quantum-resistant identity authentication method for a digital medical system based on a consortium blockchain. The certificate authentication center node generates and issues an identity certificate for each node based on the received and generated public key. After receiving the master public key MPK and identity information of the medical patient node, the certificate authentication center node verifies the patient node information. If the verification is successful, the master public key MPK of the medical patient node is used to generate a derived public key DPK. The medical institution node uses the public key pk id Sent to the certificate authentication center node, the certificate authentication center node verifies the identity and qualification information, and then sends the public key pk of the medical institution node id Generate and issue identity certificates. Each medical institution node and medical patient node can only have one valid identity certificate at a time. Medical institution nodes and medical patient nodes apply for KEM public key certificate Cert from the certificate authentication center node KEM , used for key exchange between each other and can resist attacks on cryptographic algorithms by quantum computers.
Need to check novelty before this filing date? Find Prior Art

Description

Technical Field

[0001] The present invention relates to the field of computer information security technologies, and in particular to a quantum-resistant identity authentication method for a digital medical system based on a consortium blockchain. Background Art

[0002] With the rapid increase in the number of medical patients and medical institutions in digital healthcare systems, patient privacy protection and encrypted communications are becoming increasingly important. Consequently, the security of digital healthcare systems has become one of the hottest research topics globally. Authentication mechanisms are the first line of defense for digital healthcare systems against various attacks. Each medical institution and patient is equipped with a public-private key pair via a public key infrastructure (PKI). A Certificate Authority (CA) issues certificates to verify the public key of each medical institution and patient to verify their identity. To further protect patient privacy, CAs allow a single patient to generate multiple public-private key pairs and assign a short-term pseudonym to each public key certificate to conceal their true identity. Because a single patient can simultaneously maintain multiple authenticated identities, they are vulnerable to Sybil attacks. During an attack, a single patient can simultaneously use multiple identities to launch more severe attacks, such as denial of service (DoS) attacks.

[0003] Furthermore, as a distributed ledger, consortium blockchains offer significant advantages, such as improved security, greater transparency, and enhanced traceability. Consortium blockchains are jointly maintained and managed by a trusted organization or entity, and only authorized participants can participate in blockchain transactions and consensus processes. Therefore, consortium blockchains guarantee the privacy and traceability of nodes in the system, with all public keys and corresponding identity certificates stored and managed on-chain.

[0004] While linkable ring signature authentication schemes maintain a good balance between privacy and security, effectively resisting Sybil attacks, they rely heavily on traditional asymmetric cryptography based on mathematical problems such as integer factorization, discrete logarithms, and bilinear pairings. Due to the rapid development of quantum computers, traditional asymmetric cryptography systems are vulnerable to quantum attacks. Therefore, the research and application of quantum-resistant cryptography deserves significant attention. Summary of the Invention

[0005] The present invention solves the technical problem in the prior art that identity authentication and key exchange in digital medical systems cannot resist quantum computer attacks by providing a quantum-resistant identity authentication method for digital medical systems based on a consortium blockchain. The method has the characteristics of identity anonymity, linkability and traceability.

[0006] The present invention provides a quantum-resistant identity authentication method for a digital medical system based on a consortium blockchain, comprising:

[0007] Each medical institution node randomly generates a public-private key pair (pk id ,sk id ), and the public key pk id Sent to the certificate authentication center node; each medical patient node randomly generates a master public private key pair (mpk A ,msk A ) and the master public key mpk A and identity information are sent to the certificate authentication center node;

[0008] The certificate authentication center node is based on the public key pk id Generate and issue a certificate authentication center root certificate and medical institution identity certificate Cert for each medical institution node M The certificate authentication center node is based on the master public key mpk A Generate its derived public key dpk A , and generate and issue a certificate authentication center root certificate and medical patient MPK certificate for each medical patient node and DPK certificate for medical patients

[0009] The medical institution node verifies the medical institution identity certificate Cert M effectiveness;

[0010] If the medical institution identity certificate Cert M Is valid, the medical institution node obtains the corresponding derived public key dpk from all medical patient nodes connected to this node i , Medical Patient MPK Certificate and DPK certificate for medical patients And maintain a unique DPK ring miRing=(dpk1,dpk2,...,dpk n );

[0011] The new medical patient node A sends a ring-adding request to the medical institution node B that is applying to join; the ring-adding request includes: a ring-adding request message body jrReq A , the ring signature σ of the new medical patient node A A , Medical Patient MPK Certificate and DPK certificate for medical patients Serial number;

[0012] The medical institution node B that applied to join retrieves the MPK certificate of the new medical patient node A on the blockchain according to the serial number in the ring addition request and DPK certificate for medical patients and extracts the public key CA of the certificate authority root certificate pk , uses the public key CA pk to verify the validity of the MPK certificate and the medical patient DPK certificate , and the medical institution node B also verifies the validity of the ring signature σ in the join request A ;

[0013] If all verifications pass, the medical institution node B accepts the medical patient node A and adds its derived public key dpk A to the maintained DPK ring.

[0014] Specifically, the medical institution node verifies the validity of the medical institution identity certificate Cert M , including:

[0015] The medical institution node extracts the signature of the certificate authority node from Cert M , uses the public key CA of the certificate authority root certificate pk to verify whether the signature is consistent with the content of Cert M ;

[0016] If consistent, the signature verification passes;

[0017] The medical institution node extracts the validity period from Cert M ;

[0018] If the Cert M is within the validity period, the validity period verification passes;

[0019] The medical institution node queries whether the Cert M is in the certificate revocation list of the certificate authority node;

[0020] If the Cert M is not in the certificate revocation list, the certificate status verification passes;

[0021] The medical institution node extracts the preset information from Cert M ;

[0022] If the preset information matches the actual information of the medical institution node, the certificate content consistency verification passes;

[0023] If the signature verification passes, the validity period verification passes, the certificate status verification passes, and the certificate content consistency verification passes, it means that the medical institution identity certificate Cert M is valid.

[0024] Specifically, the use of the public key CA pk Verify the MPK certificate and DPK certificate for medical patients The validity of the medical institution node B that applies to join also verifies the ring signature σ in the ring addition request A effectiveness, including:

[0025] Use the public key of the CA pk Verify the and stated Whether they all contain the signature of the certificate authentication center node, whether they are all within the validity period, and whether the certificate serial numbers are consistent with the blockchain records;

[0026] If the and stated All of them contain the signature of the certificate authentication center node, are within the validity period, and the certificate serial number is consistent with the blockchain record, then the and stated The legality of issuance is passed;

[0027] The medical institution node B that applied to join verifies the ring signature σ in the ring addition request A Is the mpk A Is the generated and signed content consistent with the request message body jrReq? A Consistency, whether the signature format is legal;

[0028] If the ring signature σ A By the mpk A Generate and sign content and request message body jrReq A If the signature format is legal, the ring signature σ A It is effective.

[0029] Specifically, it also includes:

[0030] Medical patient node X in the DPK ring obtains the DPK certificate of medical patient node Y in the same ring Then pass the public key CA of the root certificate of the certificate authentication center pk Verify DPK certificate effectiveness;

[0031] like If the signature is consistent with its content, the signer is a legitimate certificate authentication center node, and the certificate is within the validity period and is available, then the DPK certificate of medical patient node Y is valid;

[0032] Medical patient node X also obtains the KEM certificate of medical patient node Y through the public key CA of the certificate authentication center root certificate pk verifying the validity of the KEM certificate .

[0033] If the signature of Cert is consistent with its content, the signer is a legitimate certificate authentication center node, the certificate is within the validity period and is in a usable state, it means that the KEM certificate of the medical patient node Y is valid.

[0034] If the DPK certificate and the KEM certificate of the medical patient node Y are both verified, the medical patient node X performs key exchange with the medical patient node Y according to the key exchange mechanism, and this operation is denoted as where sessKey XY is the session key of X and Y, and cipherText XY is the ciphertext sent by X to Y when X communicates with Y.

[0035] When Y receives the cipherText XY , the medical patient DPK certificate , and the medical patient KEM certificate Cert KEMX , it verifies the validity of the DPK certificate through the public key CA of the certificate authentication center root certificate pk .

[0036] If the signature of Cert is consistent with its content, the signer is a legitimate certificate authentication center node, the certificate is within the validity period and is in a usable state, it means that the DPK certificate of the medical patient node X is valid.

[0037] The medical patient node Y also verifies the validity of the KEM certificate Cert pk through the public key CA of the certificate authentication center root certificate kemX .

[0038] If the signature of Cert kemX is consistent with its content, the signer is a legitimate certificate authentication center node, the certificate is within the validity period and is in a usable state, it means that the KEM certificate of the medical patient node X is valid.

[0039] If the DPK certificate and the KEM certificate of the medical patient node X are both verified, Y uses its own KEM private key sk kemY to unpack the ciphertext cipherText XY and obtain the session key sessKey XY .

[0040] Specifically, it also includes:

[0041] The medical patient node sending the broadcast signs the broadcast message using a private key corresponding to its medical patient DPK certificate and sends the broadcast message to other medical patient nodes in the same ring;

[0042] The other medical patient nodes in the same ring receive the broadcast message and verify the validity of the identity of the medical patient node sending the broadcast and the ring signature using a public key corresponding to the DPK certificate;

[0043] If the identity of the medical patient node sending the broadcast and the ring signature are both valid, the broadcast message is viewed.

[0044] Specifically, the verification of the validity of the identity of the medical patient node sending the broadcast and the ring signature using a public key corresponding to the DPK certificate comprises:

[0045] Checking whether the medical patient node sending the broadcast is in a preset list of legal medical patient nodes using the DPK certificate;

[0046] If the medical patient node sending the broadcast is in the list of legal medical patient nodes, the identity of the medical patient node sending the broadcast is verified as legal;

[0047] Verifying whether the ring signature of the medical patient node sending the broadcast is consistent with the original message content and can prove that the message is generated by a member node in the ring using a public key corresponding to the DPK certificate;

[0048] If the ring signature is consistent with the original message content and can prove that the message is generated by a member node in the ring, the validity of the ring signature of the medical patient node sending the broadcast is verified.

[0049] Specifically, it further comprises:

[0050] The medical institution node signs a broadcast message using a private key sk id and sends the broadcast message to medical patient nodes in the same ring;

[0051] The medical patient nodes in the same ring verify the validity of the signature according to an identity public key pk id in the medical institution identity certificate;

[0052] If the signature is valid, the broadcast message is viewed.

[0053] Specifically, the medical patient nodes in the same ring verify the validity of the signature according to an identity public key pk id in the medical institution identity certificate, comprising:

[0054] The medical patient nodes in the same ring verify the validity of the signature according to an identity public key pk idverifying whether the medical institution identity certificate is within a valid period and is in a usable state;

[0055] if the medical institution identity certificate is within a valid period and is in a usable state, the signature is valid.

[0056] Specifically, it further comprises:

[0057] The medical patient node C sends an update or revocation certificate request to the certificate authority center node, the certificate authority center node receives the request, revokes the old DPK certificate of the medical patient node, and then generates a new DPK certificate dpk Aupdt for it;

[0058] The medical patient node C receives the new DPK certificate dpk Aupdt , and sends the new DPK certificate dpk Aupdt , the revocation certificate request dpk Arvk , the update certificate request dpk Aupdt and the certificate serial numbers of both to the medical institution node Z in the ring where it is located;

[0059] The medical institution node Z obtains the revocation certificate request dpk Arvk and the update certificate request dpk Arvk according to the received certificate serial numbers, and deletes the old certificate from the ring it maintains by verifying that the revocation certificate request dpk Arvk , the update certificate request dpk Arvk , the new DPK certificate dpk Aupdt and the identity of the medical patient node C are all valid, and adds the new DPK certificate dpk Aupdt to the latest ring thereof.

[0060] Specifically, the verification that the revocation certificate request dpk Arvk , the update certificate request dpk Arvk , the new DPK certificate dpk Aupdt and the identity of the medical patient node C are all valid comprises:

[0061] The medical institution node Z checks whether the format and content of the revocation certificate request dpk Arvk , the update certificate request dpk Arvk meet preset requirements, and whether the certificate serial numbers in the revocation certificate request dpk Arvk , the update certificate request dpk Arvk are consistent with the information recorded;

[0062] If the revocation certificate request dpk Arvk , the update certificate request dpkArvk The format and content of the revocation certificate request dpk Arvk , update certificate request dpk Arvk The certificate serial number in the revocation certificate request dpk Arvk , update certificate request dpk Arvk Is valid;

[0063] The medical institution node Z verifies whether the new DPK certificate dpk pk Is within the valid period and is in the available state according to the public key CA Aupdt Of the certificate authentication center root certificate;

[0064] If the new DPK certificate dpk Aupdt Is within the valid period and is in the available state, the new DPK certificate dpk Aupdt Is valid;

[0065] The medical institution node Z extracts the identity information of the medical patient node C from the revocation certificate request dpk Arvk , update certificate request dpk Arvk , matches the extracted identity information of the medical patient node C with the identity information in the old certificate;

[0066] If the extracted identity information of the medical patient node C matches the identity information in the old certificate, the identity of the medical patient node C is valid.

[0067] One or more technical solutions provided in the present application have at least the following technical effects or advantages:

[0068] The certificate authentication center node generates and issues a corresponding identity certificate for each node in the digital medical system based on all received and generated public keys, wherein when the certificate authentication center node receives the master public key MPK of the medical patient node and the identity information, it verifies the patient node information offline. If the verification is passed, the corresponding derived public key DPK is generated using the master public key MPK of the medical patient node. At the same time, the medical institution node sends its public key pk id To the certificate authentication center node, and the certificate authentication center node generates and issues a corresponding identity certificate for the public key pk id of the medical institution node after verifying its identity and qualification information. Based on the above process, the top layer of the certificate hierarchy is the certificate authentication center root certificate, and its sub-certificates include the medical institution identity certificate Cert M , the master public key MPK certificate Cert mpkA of the medical patient node, and the derived public key DPK anonymous certificate Cert dpkAEach medical institution node and medical patient node can only have one valid Cert at the same time M and Cert mpkA . The medical institution node and the medical patient node can apply for a KEM public key certificate Cert KEM to the certificate authentication center node for key exchange with each other. Subsequently, both parties generate a session key sessKey to protect the secure communication between the nodes of the digital medical system. This hierarchical anti-quantum certificate structure provides a secure and effective certificate management and identity and authentication mechanism for the medical system proposed by the application, which does not rely on traditional asymmetric encryption and decryption algorithms, can resist attacks by quantum computers on cryptographic algorithms, and provides anonymity, traceability and linkability for the medical patient nodes of the system. BRIEF DESCRIPTION OF DRAWINGS

[0069] Figure 1 A principle diagram of an anti-quantum identity authentication method for a digital medical system based on a consortium blockchain is provided for an embodiment of the application.

[0070] Figure 2 A hierarchical structure of an anti-quantum cryptographic certificate system for a digital medical system in an embodiment of the application. DETAILED DESCRIPTION

[0071] The embodiment of the application provides an anti-quantum identity authentication method for a digital medical system based on a consortium blockchain, which solves the technical problem that identity authentication and key exchange in a digital medical system in the prior art cannot resist attacks by quantum computers. The method has the characteristics of identity anonymity, linkability and traceability.

[0072] The technical solution in the embodiment of the application is as follows to solve the above technical problem:

[0073] The embodiment of the application provides an anti-quantum identity authentication and key exchange method for a digital medical system based on a consortium blockchain, which can realize medical patient privacy protection and encrypted communication. The digital medical system comprises a certificate authentication center organization, a medical institution organization and a medical patient organization. The smart contract comprises a certificate authentication center contract, a medical institution contract and a medical patient contract.

[0074] The certificate authentication center organization comprises a certificate authentication center node, and the certificate authentication center node calls the certificate authentication center contract to generate a certificate, which is used to generate a certificate to ensure the integrity and traceability of data.

[0075] The medical institution organization comprises a plurality of medical institution nodes, and the medical institution nodes call the medical institution contract to provide public key ring maintenance and communication services for the digital medical system.

[0076] The medical patient organization includes a plurality of medical patient groups, and each medical patient group represents a medical patient node. The medical patient node invokes a medical patient contract to perform ring signature related operations and communication. The medical institution node provides ring signature public key management and authentication services to the medical patient node.

[0077] The certificate authority contract includes a certificate generation function, which provides registration services for the medical institution node and the medical patient node.

[0078] The medical institution contract includes a ring signature related operation function, which provides ring signature related operations for the medical patient node.

[0079] The medical patient contract includes a ring signature related operation function and a communication related function. The ring signature related operation function provides ring signature related operations for the medical patient node. The communication related function provides encrypted communication services for the medical patient node.

[0080] In order to better understand the above technical solutions, the above technical solutions will be described in detail in combination with the drawings in the specification and specific embodiments.

[0081] As shown in Figure 1 and Figure 2 , the anti-quantum identity authentication method of the digital medical system based on the alliance block chain provided by the embodiment of the application comprises:

[0082] First, deploy all nodes in the digital medical system. After all nodes in the digital medical system network are deployed, install three kinds of contracts in each node, i.e. a certificate authority contract, a medical institution contract and a medical patient contract.

[0083] Each medical institution node randomly generates a public-private key pair (pk id ,sk id ), and sends the public key pk id to the certificate authority node to register as a legal node in the digital medical system. Each medical patient node randomly generates a master public-private key pair (mpk A ,msk A ), and sends the master public key mpk A and identity information to the certificate authority node to register as a legal node in the digital medical system.

[0084] Specifically, each medical patient node randomly selects a private seed seed A , which is used to generate its master public-private key pair (mpk A ,msk A ), which is denoted as MasterKeyGen(seed A )→(mpk A ,mskA )。

[0085] After the certificate authentication center node verifies the detailed information of the medical patient node offline, the main public key mpk A of the medical patient node is used to generate its derived public key dpk A , denoted as DerivedPublicKeyGen(mpk A )→dpk A . Specifically, the certificate authentication center node generates and issues a certificate authentication center root certificate and a medical institution identity certificate Cert id for each medical institution node according to the public key pk M , and generates and issues a certificate authentication center root certificate, a medical patient MPK certificate Cert A , and a medical patient DPK certificate Cert A for each medical patient node according to the main public key mpk mpkA of the medical patient node and its derived public key dpk dpkA ; with the help of the alliance blockchain Hyperledger Fabric, the certificate authentication center node can conveniently manage the on-chain certificates, which are stored under the certificate serial number serialNum generated and distributed by the certificate authentication center node, and through which the relevant certificates can be further queried, updated or revoked.

[0086] The medical institution node verifies the validity of the medical institution identity certificate Cert M ; specifically, the medical institution node verifies the validity of the medical institution identity certificate Cert M , including:

[0087] The medical institution node extracts the signature of the certificate authentication center node from Cert M , and verifies whether the signature is consistent with the content of Cert pk using the public key CA M of the certificate authentication center root certificate;

[0088] If consistent, it indicates that the signature of Cert M is issued by a legitimate certificate authentication center node, and the signature verification is passed;

[0089] The medical institution node extracts the validity period, including the start time and the end time, from Cert M ;

[0090] If Cert M is within the validity period, the validity period verification is passed;

[0091] The medical institution node queries Cert MWhether the certificate is in the certificate revocation list of the certificate authority node;

[0092] If Cert M If the certificate is not in the certificate revocation list, the certificate status verification is passed;

[0093] Medical institution node from Cert M In this embodiment, the preset information includes: medical institution name, identity public key pk id , certificate serial number, etc.

[0094] If the preset information matches the actual information of the medical institution node, the certificate content consistency verification passes;

[0095] If the signature verification, validity period verification, certificate status verification, and certificate content consistency verification pass, it means that the medical institution identity certificate Cert M It is effective.

[0096] If the medical institution identity certificate Cert M It is valid. The medical institution node obtains the corresponding derived public key dpk from all medical patient nodes connected to this node. i , Medical Patient MPK Certificate Cert mpkA and medical patient DPK certificate Cert dpkA , and maintain a unique DPK ring miRing=(dpk1,dpk2,...,dpk n ); This ring contains: the DPK certificates of one or more medical patient nodes, which is equivalent to one or more medical patient nodes joining this medical institution node.

[0097] When a new medical patient node A needs to request medical services from a medical institution node B, the new medical patient node A sends a ring-joining request to the medical institution node B that is applying to join. The ring-joining request includes: a request message body jrReq A , the ring signature σ of the new medical patient node A A , Medical Patient MPK Certificate and DPK certificate for medical patients Serial number serialNo and serialNo.

[0098] The medical institution node B that applied to join retrieves the MPK certificate of the new medical patient node A on the blockchain according to the serial number in the ring joining request and DPK certificate for medical patients The process is expressed as and and extract the public key CA of the certificate authority root certificate pk , use the public key CA pk to verify the validity of the MPK certificate and the medical patient DPK certificate , the medical institution node B applying to join also verifies the validity of the ring signature σ in the ring addition request A ;

[0099] Specifically, use the public key CA pk to verify the validity of the MPK certificate and the medical patient DPK certificate , the medical institution node B applying to join also verifies the validity of the ring signature σ in the ring addition request A , including:

[0100] Use the public key CA pk to verify and whether they both contain the signature of the certificate authority node, whether they are both within the valid period, and whether the certificate serial numbers are consistent with the blockchain record;

[0101] If and both contain the signature of the certificate authority node, are within the valid period, and the certificate serial numbers are consistent with the blockchain record, then and the issuance legality is passed;

[0102] The medical institution node B applying to join verifies whether the ring signature σ in the ring addition request A is generated by mpk A , whether the signature content is consistent with the request message body jrReq A , and whether the signature format (structure and length, etc.) is legal;

[0103] If the ring signature σ A is generated by mpk A , the signature content is consistent with the request message body jrReq A , and the signature format is legal, then the ring signature σ A is valid.

[0104] If all the verifications are passed, the medical institution node B accepts the medical patient node A and adds its derived public key dpk A to the DPK ring it maintains.

[0105] In order to realize point-to-point transmission communication between medical patient nodes in the same DPK ring, it also includes:

[0106] The medical patient node X in the DPK ring obtains the DPK certificate of the medical patient node Y in the same ring Then pass the public key CA of the root certificate of the certificate authority pk Verify DPK certificate The validity of Whether the signature is consistent with its content, whether the signer is a legitimate certificate authentication center node, whether the certificate is within the validity period, and whether the certificate is in an available state;

[0107] like If the signature is consistent with its content, the signer is a legitimate certificate authentication center node, and the certificate is within the validity period and is available, then the DPK certificate of medical patient node Y is valid;

[0108] Medical patient node X also obtains the KEM certificate of medical patient node Y Then pass the public key CA of the root certificate of the certificate authority pk Verify KEM certificate The validity of Whether the signature is consistent with its content, whether the signer is a legitimate certificate authentication center node, whether the certificate is within the validity period, and whether the certificate is in an available state;

[0109] like If the signature is consistent with its content, the signer is a legitimate certificate authentication center node, and the certificate is within the validity period and is in an available state, then the KEM certificate of medical patient node Y is valid;

[0110] If the DPK certificate and KEM certificate of the medical patient node Y are both verified, the medical patient node X performs a key exchange with the medical patient node Y according to the key exchange mechanism. This operation is recorded as where sessKey XY The cipherText is the session key between X and Y. XY It is the ciphertext sent by X to Y when X and Y communicate.

[0111] When Y receives the cipherText sent by X XY , Medical Patient DPK Certificate and medical patient KEM certificate Cert KEMX After that, the public key of the root certificate of the certificate authority CA pk Verify DPK certificate The validity of Whether the signature is consistent with its content, whether the signer is a legitimate certificate authentication center node, whether the certificate is within the validity period, and whether the certificate is in an available state;

[0112] like If the signature is consistent with its content, the signer is a legitimate certificate authentication center node, and the certificate is within the validity period and is available, then the DPK certificate of medical patient node X is valid;

[0113] Medical patient node Y also passes the public key of the root certificate of the certificate authority CA pk Verify KEM certificate The validity of Whether the signature is consistent with its content, whether the signer is a legitimate certificate authentication center node, whether the certificate is within the validity period, and whether the certificate is in an available state;

[0114] like If the signature is consistent with its content, the signer is a legitimate certificate authentication center node, and the certificate is within the validity period and is in an available state, then the KEM certificate of medical patient node X is valid;

[0115] If both the DPK certificate and KEM certificate of the medical patient node X are verified, Y uses its own KEM private key sk kemY CipherText XY Decapsulate and obtain the session key sessKey XY .

[0116] Due to the secure certificate management mechanism of the certificate authentication center node on the chain, medical patient nodes X and Y only need to provide a set of certificate serial numbers to call the API for verifying the smart contract. At the same time, the medical patient DPK certificate and medical patient KEM certificate related to both can be verified. After the key exchange is successful, medical patient nodes X and Y can use the session key sessKey XY As a symmetric key or message authentication code MAC (Message Authentication Code) key of a symmetric encryption and decryption algorithm, efficient communication is carried out to ensure the confidentiality, integrity and authentication of the communication between medical patient nodes X and Y. If the medical patient node needs to conduct secure point-to-point transmission communication with the medical institution node, both need to perform a similar certificate verification and key exchange process as described above. The only difference is that during the certificate verification process, the medical institution node only needs to verify its identity certificate because it does not need to use an anonymous service. The process for the medical institution node to verify its identity certificate is the same as the process of verifying the DPK certificate, that is, by retrieving the serial number of the certificate and using the public key CA of the root certificate of the certificate authentication center pk Verify the validity of the digital signature. After the key exchange is successful, the medical institution node and the medical patient node can achieve point-to-point transmission communication with encryption and authentication guarantees.

[0117] In order to realize the broadcast between nodes of the digital medical system, it also includes:

[0118] When a medical patient node needs to broadcast a message (such as a consultation message, a prescription message, a medical assistance message, etc.) to other medical patient nodes, the medical patient node sending the broadcast signs the broadcast message using the private key corresponding to the medical patient DPK certificate of the medical patient node, and sends the broadcast message to other medical patient nodes in the same ring;

[0119] Other medical patient nodes in the same ring receive the broadcast message and verify the validity of the identity of the medical patient node sending the broadcast and the ring signature using the public key corresponding to the DPK certificate;

[0120] Specifically, verifying the validity of the identity of the medical patient node sending the broadcast and the ring signature using the public key corresponding to the DPK certificate includes:

[0121] Checking whether the medical patient node sending the broadcast is in the list of pre-set legal medical patient nodes using the DPK certificate;

[0122] If it is in the list of legal medical patient nodes, the identity of the medical patient node sending the broadcast is verified to be legal;

[0123] Verifying whether the ring signature of the medical patient node sending the broadcast is consistent with the original message content and can prove that the message is generated by a member node in the ring using the public key corresponding to the DPK certificate;

[0124] If the ring signature is consistent with the original message content and can prove that the message is generated by a member node in the ring, the validity of the ring signature of the medical patient node sending the broadcast is verified.

[0125] If the identity of the medical patient node sending the broadcast and the ring signature are both valid, the broadcast message is viewed.

[0126] When a medical institution node needs to broadcast a message to medical patient nodes in the ring maintained by the medical institution node, it also includes:

[0127] The medical institution node signs the broadcast message using its private key sk id , and sends the broadcast message to medical patient nodes in the same ring;

[0128] Medical patient nodes in the same ring verify the validity of the signature according to the identity public key pk id in the medical institution identity certificate;

[0129] Specifically, medical patient nodes in the same ring verify the validity of the signature according to the identity public key pk id in the medical institution identity certificate, including:

[0130] Medical patient nodes in the same ring verify the validity of the signature according to the identity public key pk idVerify if the medical institution identity certificate is in the valid period and is in the available state;

[0131] If the medical institution identity certificate is in the valid period and is in the available state (i.e. not expired or not revoked), the signature is valid.

[0132] If the signature is valid, the broadcast message is viewed.

[0133] Since all certificates are managed by the certificate authority node on the blockchain, if the private key of a certain medical patient node is leaked, a request for updating or revoking the certificate needs to be sent to the certificate authority node. Specifically, it also includes:

[0134] The medical patient node C sends an update or revoking certificate request to the certificate authority node, the certificate authority node receives the request and revokes the old DPK certificate of the medical patient node, and then generates a new DPK certificate for it

[0135] The medical patient node C receives the new DPK certificate And sends the new DPK certificate Revoking certificate request Update certificate request And the certificate serial numbers of both to the medical institution node Z in the ring where it is located;

[0136] The medical institution node Z obtains the revoking certificate request And the update certificate request According to the received certificate serial numbers, and verifies the revoking certificate request Update certificate request New DPK certificate The identities of the medical patient node C are all valid, the old certificate is deleted from the ring it maintains, and the new DPK certificate Is added to its latest ring.

[0137] Specifically, by verifying the revoking certificate request Update certificate request New DPK certificate The identities of the medical patient node C are all valid, including:

[0138] The medical institution node Z checks whether the format and content of the revoking certificate request Update certificate request Meet the preset requirements to ensure that the request contains necessary information such as the identity of the patient node, the type of request, etc., whether the certificate serial numbers in the revoking certificate request Update certificate request Are consistent with the information recorded to ensure that the request has not been modified or forged;

[0139] If the revocation certificate request is in the correct format and content, the revocation certificate request is valid. If the certificate serial number in the revocation certificate request is consistent with the information in the record, it means that the request content is complete, the format is consistent with the expectation, and the serial number is consistent, so the revocation certificate request is valid.

[0140] The medical institution node Z verifies whether the new DPK certificate pk is within the valid period and is in the available state according to the public key CA of the certificate authority center root certificate.

[0141] If the new DPK certificate is within the valid period and is in the available state, the new DPK certificate is valid, that is, the new DPK certificate is issued by a trusted certificate authority center.

[0142] The medical institution node Z extracts the identity information of the medical patient node C from the revocation certificate request update certificate request , and matches the extracted identity information of the medical patient node C with the identity information in the old certificate.

[0143] If the extracted identity information of the medical patient node C matches the identity information in the old certificate, the identity of the medical patient node C is valid.

[0144] In order to periodically verify the identity of the nodes in the ring to maintain the security of the ring, it also includes:

[0145] The medical institution node broadcasts an existence query message to all medical patient nodes in the ring it maintains. If there is a malicious medical patient node that does not reply to the query message on time for multiple times or refuses to leave the ring for multiple times, the medical institution node removes the certificate of the malicious medical patient node from the ring it maintains.

[0146] ​The embodiment of the present application combines the anti-quantum cryptography with the alliance block chain and applies it to the digital medical system, which can ensure the anonymity, traceability and linkability of the medical patients, and also help the medical patients to perform efficient message authentication and encryption and decryption in the communication process. Specifically, in order to provide anonymity, linkability and traceability, the medical institution node and the medical patient node both use the NIST anti-quantum signature algorithm and the ring signature algorithm. In order to provide encrypted communication, the NIST anti-quantum key exchange algorithm is used to support the nodes in the digital medical system to transmit data more efficiently and safely in the communication and broadcast process. In addition, the embodiment of the present application also sets the check intelligent contract version number to prevent malicious modification of the intelligent contract and forgery of the installed intelligent contract.

[0147] Those skilled in the art will appreciate that embodiments of the present application can be provided as methods, systems, or computer program products. Accordingly, the present application can take the form of an entirely hardware embodiment, an entirely software embodiment, or an embodiment combining software and hardware aspects. Furthermore, the present application can take the form of a computer program product on one or more computer-usable storage media (including, but not limited to, disk storage, CD-ROMs, optical storage devices, etc.) embodying computer-readable program code.

[0148] The present application is described in reference to the flowcharts and / or block diagrams of the methods, devices (systems), and computer program products according to the embodiments of the present application. It should be understood that each flow and / or block in the flowcharts and / or block diagrams, and the combination of the flows and / or blocks in the flowcharts and / or block diagrams can be implemented by computer program instructions. These computer program instructions can be provided to the processor of a general-purpose computer, a special-purpose computer, an embedded processor, or other programmable data processing device to produce a machine, so that the instructions executed by the processor of the computer or other programmable data processing device produce the functions specified in the flowcharts and / or block diagrams. Figure 1 one or more flows and / or blocks Figure 1 means for performing the functions specified in the flow(s) or block(s).

[0149] These computer program instructions can also be stored in a computer-readable memory that can direct the computer or other programmable data processing device to work in a specific manner, so that the instructions stored in the computer-readable memory produce a product including instruction means, which implements the functions specified in the flowcharts and / or block diagrams. Figure 1 one or more flows and / or blocks Figure 1 one or more blocks.

[0150] These computer program instructions can also be loaded into a computer or other programmable data processing apparatus to cause a series of operational steps to be performed on the computer or other programmable apparatus to produce a computer implemented process such that the instructions which execute on the computer or other programmable apparatus provide steps for implementing the functions specified in the flowchart block or blocks. Figure 1 one or more flowcharts and / or blocks Figure 1 one or more flowcharts and / or blocks

[0151] The embodiments of the present application described above are not meant to limit the present application. Although the present application has been described in detail with reference to the preferred embodiments, those skilled in the art will understand that the present application can be modified or equivalent alternatives substituted without departing from the spirit and scope of the present application. Accordingly, the scope of the present application is not meant to be limited to the preferred embodiments described above.

Claims

1. A quantum-resistant identity authentication method for a digital medical system based on a consortium blockchain, characterized in that: include: Each medical institution node randomly generates a public-private key pair , and the public key Sent to the certificate authentication center node; each medical patient node randomly generates a master public and private key pair , and the master public key and identity information are sent to the certificate authentication center node; The certificate authentication center node is based on the public key Generate and issue a certificate authority root certificate and medical institution identity certificate for each medical institution node The certificate authentication center node is based on the master public key Generate its derived public key , and generate and issue a certificate authentication center root certificate and medical patient MPK certificate for each medical patient node and DPK certificate for medical patients ; The medical institution node verifies the medical institution identity certificate effectiveness; If the medical institution identity certificate is valid, the medical institution node obtains the corresponding derived public key from all medical patient nodes connected to this node , Medical Patient MPK Certificate and DPK certificate for medical patients , and maintain a unique DPK ring ; The new medical patient node A sends a ring-adding request to the medical institution node B that is applying to join; the ring-adding request includes: a request message body for connecting the ring , the ring signature of the new medical patient node A , Medical Patient MPK Certificate and DPK certificate for medical patients Serial number; The medical institution node B that applied to join retrieves the MPK certificate of the new medical patient node A on the blockchain according to the serial number in the ring addition request and DPK certificate for medical patients , and extract the public key of the root certificate of the certificate authority , using this public key Verify the MPK certificate and DPK certificate for medical patients The validity of the medical institution node B that applies to join also verifies the ring signature in the ring addition request effectiveness; If all verifications pass, the medical institution node B accepts the medical patient node A and derives its public key Join the maintained DPK ring; In order to achieve point-to-point transmission communication between medical patient nodes in the same DPK ring, it also includes: Medical patient node X in the DPK ring obtains the DPK certificate of medical patient node Y in the same ring , and then pass the public key of the root certificate of the certificate authority Verify DPK certificate effectiveness; like If the signature is consistent with its content, the signer is a legitimate certificate authentication center node, and the certificate is within the validity period and is available, then the DPK certificate of medical patient node Y is valid; Medical patient node X also obtains the KEM certificate of medical patient node Y , and then pass the public key of the root certificate of the certificate authority Verify KEM certificate effectiveness; like If the signature is consistent with its content, the signer is a legitimate certificate authentication center node, and the certificate is within the validity period and is in an available state, then the KEM certificate of medical patient node Y is valid; If the DPK certificate and KEM certificate of the medical patient node Y are both verified, the medical patient node X performs a key exchange with the medical patient node Y according to the key exchange mechanism. This operation is recorded as ,in is the session key between X and Y, It is the ciphertext sent by X to Y when X and Y communicate.

2. The quantum-resistant identity authentication method for a digital medical system based on a consortium blockchain as claimed in claim 1, characterized in that: The medical institution node verifies the medical institution identity certificate effectiveness, including: The medical institution node is from Extract the signature of the certificate authentication center node and use the public key of the root certificate of the certificate authentication center Verify that the signature matches the The content is consistent; If they are consistent, the signature verification is successful; The medical institution node is from Extract the validity period from If the If it is within the said validity period, the validity period verification is passed; The medical institution node queries the Whether it is in the certificate revocation list of the certificate authentication center node; If the If the certificate is not in the certificate revocation list, the certificate status verification is passed; The medical institution node is from Extract preset information; If the preset information matches the actual information of the medical institution node, the certificate content consistency verification passes; If the signature verification is passed, the validity period verification is passed, the certificate status verification is passed, and the certificate content consistency verification is passed, then the medical institution identity certificate It is effective.

3. The quantum-resistant identity authentication method for a digital medical system based on a consortium blockchain as claimed in claim 1, characterized in that: The public key is used Verify the MPK certificate and DPK certificate for medical patients The validity of the medical institution node B that applies to join also verifies the ring signature in the ring addition request effectiveness, including: Using the public key Verify the and stated Whether they all contain the signature of the certificate authentication center node, whether they are all within the validity period, and whether the certificate serial numbers are consistent with the blockchain records; If the and stated All of them contain the signature of the certificate authentication center node, are within the validity period, and the certificate serial number is consistent with the blockchain record, then the and stated The legality of issuance is passed; The medical institution node B that applied to join verifies the ring signature in the ring addition request Whether the Is the generated and signed content consistent with the request message body? Consistency, whether the signature format is legal; If the ring signature As stated Generate and sign content and request message body If the signature format is legal, then the ring signature It is effective.

4. The quantum-resistant identity authentication method for a digital medical system based on a consortium blockchain as claimed in claim 1, characterized in that: Also includes: When Y receives the , Medical Patient DPK Certificate and KEM certificate for medical patients Then, through the public key of the root certificate of the certificate authority Verify DPK certificate effectiveness; like If the signature is consistent with its content, the signer is a legitimate certificate authentication center node, and the certificate is within the validity period and is available, then the DPK certificate of medical patient node X is valid; Medical patient node Y also passes the public key of the root certificate of the certificate authority Verify KEM certificate effectiveness; like If the signature is consistent with its content, the signer is a legitimate certificate authentication center node, and the certificate is within the validity period and is in an available state, then the KEM certificate of medical patient node X is valid; If both the DPK certificate and KEM certificate of medical patient node X are verified, Y uses its own KEM private key Ciphertext Decapsulate and obtain the session key .

5. The quantum-resistant identity authentication method for a digital medical system based on a consortium blockchain as claimed in claim 1, characterized in that: Also includes: The medical patient node sending the broadcast uses the private key corresponding to its medical patient DPK certificate to sign the broadcast message and sends the broadcast message to other medical patient nodes in the same ring; Other medical patient nodes in the same ring receive the broadcast message and use the public key corresponding to the DPK certificate to verify the identity of the medical patient node sending the broadcast and the validity of the ring signature; If the medical patient node identity and ring signature sending the broadcast are both valid, then the broadcast message is checked.

6. The quantum-resistant identity authentication method for a digital medical system based on a consortium blockchain as claimed in claim 5, characterized in that: The use of the public key corresponding to the DPK certificate to verify the validity of the medical patient node identity and ring signature sending the broadcast includes: Using the DPK certificate to check whether the medical patient node sending the broadcast is in a preset legal medical patient node list; If the node is in the list of legal medical patient nodes, the legality of the identity of the medical patient node sending the broadcast is verified; Use the public key corresponding to the DPK certificate to verify whether the ring signature of the medical patient node sending the broadcast is consistent with the original message content and whether it can prove that the message was generated by a member node in the ring; If the ring signature is consistent with the original message content and can prove that the message is generated by a member node in the ring, the validity verification of the ring signature of the medical patient node that sends the broadcast is passed.

7. The quantum-resistant identity authentication method for a digital medical system based on a consortium blockchain as claimed in claim 1, characterized in that: Also includes: Medical institution nodes use their private keys Sign the broadcast message and send it to the medical patient nodes in the same ring; The medical patient nodes in the same ring are based on the identity public key in the medical institution's ID card. Verifying the validity of the signature; If the signature is valid, the broadcast message is checked.

8. The quantum-resistant identity authentication method for a digital medical system based on a consortium blockchain as claimed in claim 7, characterized in that: The medical patient nodes in the same ring are based on the identity public key in the medical institution's identity card Verifying the validity of the signature, including: The medical patient nodes in the same ring are based on the identity public key in the medical institution's ID card. Verify whether the medical institution identity certificate is valid and available; If the medical institution identity certificate is within the validity period and is in an available state, the signature is valid.

9. The quantum-resistant identity authentication method for a digital medical system based on a consortium blockchain as claimed in claim 1, characterized in that: Also includes: The medical patient node C sends a request to update or revoke the certificate to the certificate authentication center node. The certificate authentication center node receives the request and revokes the old DPK certificate of the medical patient node, and then generates a new DPK certificate for it. ; The medical patient node C receives the new DPK certificate and the new DPK certificate , Certificate Revocation Request , Update Certificate Request The certificate serial numbers of both are sent to the medical institution node Z in the ring where they are located; The medical institution node Z obtains the certificate revocation request based on the received certificate serial number and renewal certificate request and verify the certificate revocation request by , Update Certificate Request , New DPK certificate , the identity of the medical patient node C is valid, the old certificate is deleted from the ring it maintains, and the new DPK certificate Added to its latest ring.

10. The quantum-resistant identity authentication method for a digital medical system based on a consortium blockchain as claimed in claim 9, characterized in that: The certificate revocation request is verified by , Update Certificate Request , New DPK certificate , the identities of the medical patient nodes C are all valid, including: The medical institution node Z checks the certificate revocation request , Update Certificate Request Whether the format and content of the certificate meet the preset requirements, the certificate revocation request , Update Certificate Request Whether the certificate serial number in the certificate is consistent with the information in the record; If the certificate revocation request , Update Certificate Request The format and content of the certificate revocation request meet the preset requirements. , Update Certificate Request The certificate serial number in the certificate is consistent with the information in the record, then the certificate revocation request , Update Certificate Request is effective; The medical institution node Z is based on the public key of the root certificate of the certificate authentication center Verify the new DPK certificate Whether it is within the validity period and in available status; If the new DPK certificate If the new DPK certificate is valid and available, is effective; The medical institution node Z requests the certificate to be revoked from , Update Certificate Request extracting the identity information of the medical patient node C, and matching the extracted identity information of the medical patient node C with the identity information in the old certificate; If the extracted identity information of the medical patient node C matches the identity information in the old certificate, the identity of the medical patient node C is valid.

Citation Information

Patent Citations

  • Ring signature method for anonymizing information based on multivariate public key cryptography

    CN102006165A

  • Conditional anonymous ring signature and privacy calculation-based alliance chain privacy protection method

    CN114124406A