CN111415718A - Electronic prescription sharing method based on block chain and conditional proxy re-encryption - Google Patents

Electronic prescription sharing method based on block chain and conditional proxy re-encryption Download PDF

Info

Publication number
CN111415718A
CN111415718A CN202010132242.1A CN202010132242A CN111415718A CN 111415718 A CN111415718 A CN 111415718A CN 202010132242 A CN202010132242 A CN 202010132242A CN 111415718 A CN111415718 A CN 111415718A
Authority
CN
China
Prior art keywords
electronic prescription
key
representing
user
node
Prior art date
Legal status (The legal status is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the status listed.)
Granted
Application number
CN202010132242.1A
Other languages
Chinese (zh)
Other versions
CN111415718B (en
Inventor
唐飞
陈云龙
Current Assignee (The listed assignees may be inaccurate. Google has not performed a legal analysis and makes no representation or warranty as to the accuracy of the list.)
Shanghai Guoxing Medical Instrument Co ltd
Original Assignee
Chongqing University of Post and Telecommunications
Priority date (The priority date is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the date listed.)
Filing date
Publication date
Application filed by Chongqing University of Post and Telecommunications filed Critical Chongqing University of Post and Telecommunications
Priority to CN202010132242.1A priority Critical patent/CN111415718B/en
Publication of CN111415718A publication Critical patent/CN111415718A/en
Application granted granted Critical
Publication of CN111415718B publication Critical patent/CN111415718B/en
Active legal-status Critical Current
Anticipated expiration legal-status Critical

Links

Images

Classifications

    • GPHYSICS
    • G16INFORMATION AND COMMUNICATION TECHNOLOGY [ICT] SPECIALLY ADAPTED FOR SPECIFIC APPLICATION FIELDS
    • G16HHEALTHCARE INFORMATICS, i.e. INFORMATION AND COMMUNICATION TECHNOLOGY [ICT] SPECIALLY ADAPTED FOR THE HANDLING OR PROCESSING OF MEDICAL OR HEALTHCARE DATA
    • G16H20/00ICT specially adapted for therapies or health-improving plans, e.g. for handling prescriptions, for steering therapy or for monitoring patient compliance
    • G16H20/10ICT specially adapted for therapies or health-improving plans, e.g. for handling prescriptions, for steering therapy or for monitoring patient compliance relating to drugs or medications, e.g. for ensuring correct administration to patients
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F21/00Security arrangements for protecting computers, components thereof, programs or data against unauthorised activity
    • G06F21/60Protecting data
    • G06F21/602Providing cryptographic facilities or services
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F21/00Security arrangements for protecting computers, components thereof, programs or data against unauthorised activity
    • G06F21/60Protecting data
    • G06F21/62Protecting access to data via a platform, e.g. using keys or access control rules
    • G06F21/6218Protecting access to data via a platform, e.g. using keys or access control rules to a system of files or objects, e.g. local or distributed file system or database
    • G06F21/6245Protecting personal data, e.g. for financial or medical purposes
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F21/00Security arrangements for protecting computers, components thereof, programs or data against unauthorised activity
    • G06F21/60Protecting data
    • G06F21/64Protecting data integrity, e.g. using checksums, certificates or signatures

Landscapes

  • Engineering & Computer Science (AREA)
  • Theoretical Computer Science (AREA)
  • Health & Medical Sciences (AREA)
  • General Health & Medical Sciences (AREA)
  • Computer Security & Cryptography (AREA)
  • Bioethics (AREA)
  • General Engineering & Computer Science (AREA)
  • General Physics & Mathematics (AREA)
  • Physics & Mathematics (AREA)
  • Software Systems (AREA)
  • Computer Hardware Design (AREA)
  • Medical Informatics (AREA)
  • Epidemiology (AREA)
  • Medicinal Chemistry (AREA)
  • Public Health (AREA)
  • Primary Health Care (AREA)
  • Bioinformatics & Cheminformatics (AREA)
  • Chemical & Material Sciences (AREA)
  • Databases & Information Systems (AREA)
  • Medical Treatment And Welfare Office Work (AREA)

Abstract

The invention belongs to the field of block chain data sharing, and particularly relates to an electronic prescription sharing method based on block chain and conditional proxy re-encryption, which comprises the following steps: generating a public parameter, and initializing a shared node; generating a second key of the user; the electronic prescription has a person signature electronic prescription; the electronic prescription sharer encrypts the IPFS value and the symmetric key; the electronic prescription sharer generates a conditional proxy re-encryption key by using the key; the sharee acquires and verifies the electronic prescription; the invention solves the problem of key escrow based on identity through distributed key generation, realizes the delegation of fine-grained decryption authority of data by utilizing conditional proxy re-encryption, and finally realizes the safe storage and the credible sharing of the electronic prescription by combining the characteristics of decentralization and non-falsification of a block chain.

Description

Electronic prescription sharing method based on block chain and conditional proxy re-encryption
Technical Field
The invention belongs to the field of block chain data sharing, and particularly relates to an electronic prescription sharing method based on block chain and conditional proxy re-encryption.
Background
With the continuous development of scientific technology, more and more information technology means are assisting hospitals to gradually step into paperless times, and the electronic prescription of the hospitals is one of the representatives of medical informatization application. The electronic prescription is transmitted by means of a network, is programmed by adopting an information technology, bears the medicine treatment information filled for a patient by a doctor in the diagnosis and treatment activities, and is used as a dispensing voucher. The electronic prescription data archived by the hospital not only needs to be approved by patients and laws, but also can become a powerful evidence to solve disputes encountered by the hospital. At present, electronic prescriptions are only used in a local area network of a hospital, so that the development of medical departments is limited, and the prescription is difficult to be out-flowed. Solving the bottleneck problems of electronic prescriptions is a necessary way to promote the development of electronic prescriptions. Therefore, it is of great significance to carry out intensive research on aspects of storage, sharing and the like of electronic prescriptions.
The blockchain technology utilizes a chain data structure to verify and store data, a distributed node consensus algorithm generates and updates data, a cryptology mode ensures the safety of data transmission and access, an intelligent contract consisting of automatic script codes is used for programming and operating the data, the blockchain is constructed on a point-to-point (P2P) network, the blockchain is a brand-new distributed infrastructure and computing paradigm, has the characteristics of decentralization, non-tampering and traceability, and has wide application prospects when the blockchain is adopted for management of electronic prescription storage, sharing and the like. For example, the method, apparatus and system for acquiring medical prescriptions based on blockchain, which is disclosed in patent application No. CN201910911167.6, includes receiving an electronic prescription and a user identification sent by a terminal of a medical institution; generating a digital abstract of the electronic prescription and storing the contract prescription; storing the digital summary and the user identification to a first block in a block chain; and sending the first block identifier to a user terminal, signing the first block identifier by using a first private key by the user terminal, generating a first block identifier, a signature and a prescription certificate, and acquiring the electronic prescription from the service system by the target institution terminal according to the prescription certificate. By the method, the user side can not directly contact the electronic prescription, thereby avoiding the artificial modification of the electronic prescription and ensuring the authenticity of the electronic prescription.
However, when the electronic prescription is encrypted, the method only carries out electronic encryption once, so that the sharees are easy to crack in the decryption process, and the safety of the electronic prescription is poor; this method does not verify the signature of the acquired electronic prescription when the electronic prescription is acquired, and thus cannot judge the correctness of the electronic prescription.
Disclosure of Invention
In order to solve the problems of the prior art, the invention provides an electronic prescription sharing method based on block chain and conditional proxy re-encryption, which comprises the following steps:
generating common parameters of the block chain system of the alliance;
according to the system public parameters, each sharing node generates a first public key and a first private key of the sharing node, and the first public key and the first private key of the system are generated together according to the first public keys and the first private keys of the sharing nodes;
each node generates a first private key of a user according to the identity information of the user, the user verifies the correctness of the first private key of the user according to public parameters, and a second public key and a second private key of the user are generated according to the correct first private key of the user; the user comprises an electronic prescription issuing person, an electronic prescription sharing person and a shared person;
the electronic prescription maker signs the electronic prescription through a second private key and uploads the electronic prescription with the signature to the system; the electronic prescription sharer downloads the signed electronic prescription, encrypts the signed electronic prescription by using a first symmetric key generated randomly to generate an electronic prescription ciphertext, uploads the electronic prescription ciphertext to the IPFS distributed file system, and returns the IPFS value of the electronic prescription ciphertext to the electronic prescription sharer; the IPFS value is the acquisition place of the ciphertext;
the electronic prescription sharer encrypts the IPFS value and the first symmetric key of the electronic prescription ciphertext by using the second public key, and embeds a condition value in the encrypted ciphertext, wherein the condition value is used for re-encrypting the electronic prescription ciphertext; the electronic prescription sharer uploads the encrypted second key, namely a second key ciphertext to the block chain system of the alliance;
the electronic prescription sharer generates a conditional proxy re-encryption key by using the identity information of the sharee, a second private key of the electronic prescription sharer and the condition value, and uploads a ciphertext of the conditional proxy re-encryption key to the alliance block chain;
the shared user obtains the re-encryption key ciphertext from the alliance block chain, and the shared user utilizes a first private key of the shared user to decrypt the re-encryption key ciphertext to obtain an IPFS value and a first symmetric key; the sharee downloads the electronic prescription ciphertext from the IPFS system, and decrypts the electronic prescription ciphertext by using the first symmetric key to obtain the electronic prescription; the sharee verifies the signature of the electronic prescription using the second public key of the electronic prescription issuer.
Preferably, the generating of the parameters common to the block chain system of the federation includes:
step 1: the alliance block chain sharing node selects two multiplication cyclic groups G with prime number q in order1And G2Setting bilinear mapping e: G1×G1→G2
Step 2: hash function H is selected to alliance block chain sharing node1:{0,1}*→G2
Figure RE-GDA0002457853610000031
H3:{0,1}*→G1
Figure RE-GDA0002457853610000032
H5:G2→G1
Figure RE-GDA0002457853610000033
And step 3: randomly selecting a prime number p, and recording a shared node in the block chain of the union as Ai(i 1, 2.. N), then the common parameters are obtained as: params ═ G1,G2,g,p,e,H1,H2,H3,H4,H5,H6}。
Preferably, the process of verifying the correctness of the first private key of the user according to the public parameter by the user comprises:
1): each sharing node AiRandomly selecting an N-1 order polynomial algorithm according to the common parameters;
2): computing each shared node A according to a polynomialiA of (A)ikA value of and AikValue group is sent to each sharing nodeWherein
Figure RE-GDA0002457853610000034
And k is 0, 1.... N-1;
3): calculate each shared node AiSent to other alliance blockchain node AjSecret value t ofij=Fi(j) Wherein j is 1,2,. N, j ≠ i;
4): each sharing node AiReceiving secret value tjiPass verification
Figure RE-GDA0002457853610000035
If the secret value is valid, the node A judges that the secret value is validjHonesty; otherwise, claim AjResending tij
5): calculate the parameter w for each shared node, i.e.
Figure RE-GDA0002457853610000036
Preferably, the step of generating the first public key and the first private key of the system includes:
step 1: each sharing node AiRandomly selecting two polynomials of the order of N-1 by system parameters, and converting the coefficient b of one polynomial into a polynomialtiAs the first private key of the shared node, order
Figure RE-GDA0002457853610000037
A first public key as a sharing node;
step 2: calculate each shared node AiVerification information value B ofikSending the verification information group to each sharing node; wherein k is 0,1, a.
And step 3: calculate each node AiSending to other alliance block chain sharing node AjSecret value s of (j ≠ 1, 2.. N, j ≠ i)ij=fi(j),s'ij=f′(j);
And 4, step 4: each node AiReceiving a secret value sji,s'jiVerification of
Figure RE-GDA0002457853610000041
Whether the secret value is valid or not, if yes, the sent secret value is valid; otherwise, claim AjResending;
and 5: the first keys of the N alliance block chain sharing nodes are united to generate a first key pair of the system
Figure RE-GDA0002457853610000042
Step 6: each sharing node AiThe first public key of the sharing node
Figure RE-GDA0002457853610000043
Sending to each shared node, and calculating
Figure RE-GDA0002457853610000044
Taking y as a first public key of the system;
and 7: according to the obtained information, the latest public parameter params ═ G of the block chain of the new alliance which is published last is obtained1,G2,g,p,e,H1,H2,H3,H4,H5,H6,N,y,y'}。
Preferably, the generating step of the second public key and the second private key of the user includes:
step 1: the user joining the system will identify itselfiSending to the alliance block chain system;
step 2: each sharing node AjAccording to the received user identity idiGenerating a first private key of a user
Figure RE-GDA0002457853610000045
Sending the first private key of the user to the user;
and step 3: when the user receives the sharing node AjFirst private key of user
Figure RE-GDA0002457853610000046
Verifying the correctness of the first private key of the user if
Figure RE-GDA0002457853610000047
If yes, sharing node AjThe sent first private key of the user is correct, otherwise, the shared node A is requiredjResending;
and 4, step 4: after the user receives the first private keys of the user sent by all the sharing nodes, the user calculates the second private key of the user according to the first private keys of all the users
Figure RE-GDA0002457853610000048
And the second public key of the user is
Figure RE-GDA0002457853610000051
Preferably, the process of signing the electronic prescription by the electronic prescription holder through the second private key comprises:
step 1: electronic prescription issuing person idaSigning the generated electronic prescription m, and randomly selecting an integer by an electronic prescription maker
Figure RE-GDA0002457853610000052
And calculate
Figure RE-GDA0002457853610000053
Generating an electronic prescription signature sigma (u, v) according to the calculated u and v, packaging the electronic prescription m and sigma into m 'by using a second private key, and sending the m' to the electronic prescription sharer;
step 2: electronic prescription sharer idiUsing a randomly generated first symmetric key
Figure RE-GDA0002457853610000054
Encrypting the signed electronic prescription to generate an electronic prescription ciphertext C ═ Encsym(dek, m'), uploading the electronic prescription ciphertext C to the IPFS distributed file system, and returning the IPFS value of the electronic prescription ciphertext to the electronic prescription sharer.
Preferably, the process of encrypting the IPFS value of the electronic prescription cryptograph and the first symmetric key by the electronic prescription sharer using the second public key includes:
step 1: electronic prescription sharer using the second public key
Figure RE-GDA0002457853610000055
The IPFS value of the M (IPFS | | | dek) electronic prescription ciphertext and the first symmetric key dek are encrypted, and one is randomly selected
Figure RE-GDA0002457853610000056
And condition of re-encryption
Figure RE-GDA0002457853610000057
Obtain the second layer ciphertext
Figure RE-GDA0002457853610000058
Wherein C is1=gr
Figure RE-GDA0002457853610000059
C3=gcr, h=H4(C1,C2,C3),C4=uhr
Step 2: the patient will encrypt the second layer of ciphertext
Figure RE-GDA00024578536100000510
And uploading the alliance block chain system.
Preferably, the process of generating the conditional proxy re-encryption key includes:
step 1: randomly select one
Figure RE-GDA00024578536100000511
And one x ∈ G2The electronic prescription sharer passes the second private key of the sharer
Figure RE-GDA00024578536100000512
Identity id of shareejAnd generating a proxy re-encryption key by the condition value c when encrypting M (IPFS dek)
Figure RE-GDA00024578536100000513
Wherein R is1=gr′
Figure RE-GDA00024578536100000514
R4=ur′
Step 2: electronic prescription sharer will
Figure RE-GDA00024578536100000515
Uploading a block chain of the alliance;
and step 3: the shared node in the block chain system of the alliance obtains the conditional proxy re-encryption authority through the competition of the consensus algorithm, and the node obtains the second layer ciphertext data with the condition c
Figure RE-GDA00024578536100000516
By re-encrypting the key with condition c
Figure RE-GDA0002457853610000061
Conversion to sharee idjDecipherable first layer cipher text data
Figure RE-GDA0002457853610000062
Wherein C'1=C1,C′2=C2e(C1,R3)/e(C3,R1),C′3=R1,C′4=R2,h′=H6(C′1,C′2,C′3,C′4),
Figure RE-GDA0002457853610000063
By e (C)1,uh)=e(g,C4) To verify the validity of the second layer of ciphertext.
Preferably, the process of obtaining and verifying the electronic prescription by the sharee comprises:
step 1: the sharee uses the second private key of the sharee
Figure RE-GDA0002457853610000064
Decryption
Figure RE-GDA0002457853610000065
Calculating H ═ H4(C′1,C′2,C′3,C′4) Verification of e (C'3,uh′)=e(C′5G) whether or not, if yes, calculating
Figure RE-GDA0002457853610000066
Otherwise, the first layer of ciphertext is tampered, and the electronic prescription is requested again;
step 2: calculating M ═ C'2/e(C′1,H5(x) Get the first symmetric key dek and the IPFS value of the electronic prescription ciphertext;
and step 3: the sharee downloads the electronic prescription ciphertext C according to the IPFS value, and the electronic prescription plaintext m and the signature sigma are obtained through decryption of the first symmetric key dek;
and 4, step 4: the sharee verifies whether the signature is valid or not through a second public key of the electronic prescribing person, namely e (v, g) e (u, y) e (H (id)a)tY); if the equation is established, the signature is valid, otherwise, the electronic prescription signature is invalid, and the electronic prescription is shared again.
The invention realizes the user key to be generated in a centralized way by utilizing the nodes in the block chain of the alliance, avoids the problem of key escrow under the traditional public key encryption mode based on the identity, and enables the user to generate the private key based on the identity; the invention utilizes the randomly generated symmetric key to encrypt the electronic prescription plaintext, thereby having higher encryption efficiency; the invention utilizes the nodes in the alliance block chain as proxy nodes to carry out conditional proxy re-encryption, thereby realizing fine-grained decryption authority delegation and effectively ensuring privacy when patients share electronic prescriptions; the electronic prescription ciphertext is stored by using the IPFS distributed file system, so that decentralized storage is realized; the invention utilizes the alliance block chain to store the related information of the electronic prescription, ensures that the electronic prescription can not be tampered and realizes the credible sharing.
Drawings
FIG. 1 is a block diagram of the present invention;
FIG. 2 is an overall flow diagram of the present invention;
FIG. 3 is a block diagram of an initialization process of the present invention;
FIG. 4 is a block diagram of a node initialization process of the present invention;
FIG. 5 is a block diagram of a user private key generation process of the present invention;
FIG. 6 is a block diagram of a flow of a doctor signing electronic prescription and a patient encrypting electronic prescription;
FIG. 7 is a block diagram of a patient encryption IPFS value and symmetric key flow;
FIG. 8 is a block diagram of a process for a patient to generate a conditional proxy re-encryption key for a requester;
FIG. 9 is a block diagram of a sharee's process of obtaining an electronic prescription and verifying.
Detailed Description
The technical solutions in the embodiments of the present invention will be clearly and completely described below with reference to the accompanying drawings, and it is to be understood that the described embodiments are only a part of the embodiments of the present invention, and not all of the embodiments. All other embodiments, which can be derived by a person skilled in the art from the embodiments given herein without making any creative effort, shall fall within the protection scope of the present invention.
The alliance blockchain system model is composed of three parts, namely an alliance blockchain layer, a user layer and an IPFS layer, as shown in figure 1, wherein computers of hospitals, pharmacies and supervision departments are used as sharing nodes to form an alliance blockchain, a first secret key of the system and a first secret key of each node are initialized, a user sends information to the sharing nodes, and receives the first secret key of the sharing nodes to generate a second secret key of the user. And secondly, the electronic prescription maker user generates an electronic prescription and signs and sends the electronic prescription to the electronic prescription sharer user. The electronic prescription sharer user uploads an electronic prescription ciphertext to the IPFS distributed file system, uploads a key ciphertext and a conditional proxy re-encryption key to the alliance block chain system, and the alliance block chain system performs conditional proxy re-encryption on the key ciphertext. And finally, the shared user decrypts the encrypted key ciphertext from the load under the block chain of the alliance to obtain the key, downloads the ciphertext from the IPFS distributed file system for decryption and verifies the signature of the electronic prescription issuing person.
The invention relates to an electronic prescription sharing method based on block chain and conditional proxy re-encryption, as shown in figure 2, the method comprises the following steps:
generating common parameters of the block chain system of the alliance;
according to the system public parameters, each sharing node generates a first public key and a first private key of the sharing node, and the first public key and the first private key of the system are generated together according to the first public keys and the first private keys of the sharing nodes;
each node generates a first private key of a user according to the identity information of the user, the user verifies the correctness of the first private key of the user according to public parameters, and a second public key and a second private key of the user are generated according to the correct first private key of the user; the user comprises an electronic prescription issuing person, an electronic prescription sharing person and a shared person;
the electronic prescription maker signs the electronic prescription through a second private key and uploads the electronic prescription with the signature to the system; the electronic prescription sharer downloads the signed electronic prescription, encrypts the signed electronic prescription by using a first symmetric key generated randomly to generate an electronic prescription ciphertext, uploads the electronic prescription ciphertext to the IPFS distributed file system, and returns the IPFS value of the electronic prescription ciphertext to the electronic prescription sharer; obtaining place of IPFS value as ciphertext
The electronic prescription sharer encrypts the IPFS value and the first symmetric key of the electronic prescription ciphertext by using the second public key, and embeds a condition value in the encrypted ciphertext, wherein the condition value is used for re-encrypting the electronic prescription ciphertext; the electronic prescription sharer uploads the encrypted second key, namely a second key ciphertext to the block chain system of the alliance;
the electronic prescription sharer generates a conditional proxy re-encryption key by using the identity information of the sharee, a second private key of the electronic prescription sharer and the condition value, and uploads a ciphertext of the conditional proxy re-encryption key to the alliance block chain;
the shared user obtains the re-encryption key ciphertext from the alliance block chain, and the shared user utilizes a first private key of the shared user to decrypt the re-encryption key ciphertext to obtain an IPFS value and a first symmetric key; the sharee downloads the electronic prescription ciphertext from the IPFS system, and decrypts the electronic prescription ciphertext by using the first symmetric key to obtain the electronic prescription; the sharee verifies the signature of the electronic prescription by using the second public key of the electronic prescription issuer;
wherein, IPFS is an interplanetary file transfer system.
As shown in fig. 3, generating parameters common to the federation blockchain system includes:
step 1: the league block chain link point selects two multiplication cyclic groups G with prime number q in order1And G2Setting bilinear mapping e: G1×G1→G2
Step 2: hash function H is selected to alliance block chain link point1:{0,1}*→G2
Figure RE-GDA0002457853610000081
H3:{0,1}*→G1
Figure RE-GDA0002457853610000082
H5:G2→G1
Figure RE-GDA0002457853610000083
And step 3: randomly selecting a prime number p, and enabling each node in the block chain of the alliance to be Ai(i 1, 2.. N), then the common parameters are obtained as: params ═ G1,G2,g,p,e,H1,H2,H3,H4,H5,H6};
Wherein q and p each represent a prime number, e represents a bilinear map, G1Representing a first multiplication cycle group, G2Representing a second multiplication cycle group, AiRepresenting a shared node, HiRepresenting a hash function, and i ∈ {1, 2, 3, 4, 5, 6}, g being the generator of the first multiplication loop group, params representing a system common parameter.
As shown in fig. 4, the process of verifying the correctness of the first private key of the user according to the public parameter by the user includes:
1): each sharing node AiRandomly selecting an N-1 order polynomial algorithm according to the common parameters; the algorithm expression is as follows:
Fi(x)=ai0+ai1x+......+ai(N-1)xN-1
wherein, ai(N-1)Representing randomly chosen elements, x, in a finite fieldN-1Representing randomly chosen non-zero elements in a finite field.
2): computing each node A according to a polynomialiA of (A)ikA value of and AikThe value group is sent to each sharing node, wherein
Figure RE-GDA0002457853610000091
And k is 0, 1.... N-1;
3): calculate each shared node AiSent to other alliance blockchain node AjSecret value t ofij=Fi(j) Wherein (j ≠ 1, 2.. N, j ≠ i);
4): each sharing node AiReceiving secret value tjiPass verification
Figure RE-GDA0002457853610000092
If the secret value is valid, the node A judges that the secret value is validjHonesty; otherwise, claim AjResending tij
5): calculate the parameter w for each shared node, i.e.
Figure RE-GDA0002457853610000093
Wherein A isiRepresenting a shared node, AikIndicating that the shared node authentication information value,
Figure RE-GDA0002457853610000094
indicating the message broadcast by the node, mod p indicating the modulo operation, k indicating the number of shared nodes, tijRepresenting secret values sent by the nodes, Fi(j) Representing the selected polynomial.
The step of generating the first public key and the first private key of the system comprises the following steps:
step 1: each sharing node AiRandomly selecting two polynomials of the order of N-1 by system parameters, and converting the coefficient b of one polynomial into a polynomialtiAs the first private key of the shared node, order
Figure RE-GDA0002457853610000101
A first public key as a sharing node; wherein the expressions of the two polynomials are:
fi(x)=bi0+bi1x+......+bi(N-1)xN-1
f′i(x)=ci0+ci1x+......+ci(N-1)xN-1
wherein, bi(N-1)Representing a randomly selected element in a finite field, ci(N-1)Representing randomly chosen elements in a finite field.
Step 2: calculate each shared node AiVerification information value B ofikSending the verification information group to each sharing node; wherein k is 0,1, a.
And step 3: calculate each node AiSending to other alliance block chain sharing node AjSecret value s of (j ≠ 1, 2.. N, j ≠ i)ij=fi(j),s′ij=f′(j);
And 4, step 4: each node AiReceiving a secret value sji,s′jiVerification of
Figure RE-GDA0002457853610000102
Whether the secret value is valid or not, if yes, the sent secret value is valid; otherwise, claim AjResending;
and 5: the first keys of the N alliance block chain sharing nodes are united to generate a first key pair of the system
Figure RE-GDA0002457853610000103
Step 6: each sharing node AiThe first public key of the sharing node
Figure RE-GDA0002457853610000104
Sending to each shared node, and calculating
Figure RE-GDA0002457853610000105
Taking y as a first public key of the system;
and 7: according to the obtained information, the latest public parameter params ═ G of the block chain of the new alliance which is published last is obtained1,G2,g,p,e,H1,H2,H3,H4,H5,H6,N,y,y'};
Wherein, btiA first private key representing a shared node, y' representing the first private key of the shared node, BikThe authentication information is represented by a representation of,
Figure RE-GDA0002457853610000106
which represents the first authentication parameters, is,
Figure RE-GDA0002457853610000107
representing a second verification parameter, mod p representing a modulo operation, sijDenotes a first secret value, s'ijWhich represents the second secret value, is,
Figure RE-GDA0002457853610000108
representing a third authentication parameter, s representing a system first key pair, G1Representing a first multiplication cycle group, G2Representing a second multiplication cycle group, g being a generator of the multiplication cycle group, p representing a random prime number, e representing a bilinear map, HiAnd i ∈ {1, 2, 3, 4, 5, 6} represents a hash function, N represents the number of federation blockchains, and y represents the system first public key.
As shown in fig. 5, the generating of the second public key and the second private key of the user includes:
step 1: the user joining the system will identify itselfiSending to the alliance block chain system;
step 2: each sharing node AjAccording to the received user identity idiGenerating a first private key of a user
Figure RE-GDA0002457853610000111
Sending the first private key of the user to the user;
and step 3: when the user receives the sharing node AjFirst private key of user
Figure RE-GDA0002457853610000112
Verifying the correctness of the first private key of the user if
Figure RE-GDA0002457853610000113
If yes, sharing node AjThe sent first private key of the user is correct, otherwise, the shared node A is requiredjResending;
and 4, step 4: after the user receives the first private keys of the user sent by all the sharing nodes, the user calculates the second private key of the user according to the first private keys of all the users
Figure RE-GDA0002457853610000114
And the second public key of the user is
Figure RE-GDA0002457853610000115
Wherein idiWhich represents the information on the identity of the user,
Figure RE-GDA0002457853610000116
representing the first private key of the user, g representing the generator of the multiplicative cyclic group, e representing the bilinear map, H (id)i) A hash value representing identity information, y' represents the first public key of the sharing node,
Figure RE-GDA0002457853610000117
representing the user's second private key,
Figure RE-GDA0002457853610000118
representing the second public key, H, of the user1(ida) Representing the hash function value.
As shown in fig. 6, the process of signing the electronic prescription by the electronic prescription holder through the second private key includes:
step 1: electronic prescription issuing person idaSigning the generated electronic prescription m, and randomly selecting an integer by an electronic prescription maker
Figure RE-GDA0002457853610000119
And calculating u ═ H1(ida)r,
Figure RE-GDA00024578536100001110
Generating an electronic prescription signature sigma (u, v) according to the calculated u and v, packaging the electronic prescription m and sigma into m 'by using a second private key, and sending the m' to the electronic prescription sharer;
step 2: electronic prescription sharer idiUsing a randomly generated first symmetric key
Figure RE-GDA00024578536100001111
Encrypting the signed electronic prescription to generate an electronic prescription ciphertext C ═ Encsym(dek, m'), uploading the electronic prescription ciphertext C to an IPFS distributed file system, and returning the IPFS value of the electronic prescription ciphertext to the electronic prescription sharer;
wherein the content of the first and second substances,
Figure RE-GDA0002457853610000121
set of all pairs of modulo multiplicative invertible elements in the representation, H1(.)rRepresenting a hash operation, Encsym(.), dek denotes a first symmetric key, m' denotes an electronic prescription and signed package file, u denotes a first intermediate argument, v denotes a second intermediate argument,
Figure RE-GDA0002457853610000122
representing the user's second private key.
As shown in fig. 7, the process of encrypting the IPFS value and the first symmetric key of the electronic prescription cryptograph by the electronic prescription sharer using the second public key includes:
step 1: electronic prescription sharer using the second public key
Figure RE-GDA0002457853610000123
The IPFS value of the M (IPFS | | | dek) electronic prescription ciphertext and the first symmetric key dek are encrypted, and one is randomly selected
Figure RE-GDA0002457853610000124
And condition of re-encryption
Figure RE-GDA0002457853610000125
Obtain the second layer ciphertext
Figure RE-GDA0002457853610000126
Wherein C is1=gr
Figure RE-GDA0002457853610000127
C3=gcr, h=H4(C1,C2,C3),C4=uhr
Step 2: the patient will encrypt the second layer of ciphertext
Figure RE-GDA0002457853610000128
Uploading a block chain system of the alliance;
wherein, grA generator representing a multiplication loop group, M (. quadrature.) representing an encryption process, Me (. quadrature.)rThe electronic prescription cryptogram is represented and,
Figure RE-GDA0002457853610000129
representing the second public key of the user, y representing the first public key of the node, CiRepresents elements in the second level ciphertext, wherein i ∈ {1, 2, 3, 4, 5, 6}, gcrAnd uhrRespectively, representing partial re-encrypted ciphertext, dek representing a first symmetric key,
Figure RE-GDA00024578536100001210
expressed under the modulus qC denotes an encryption condition value, and y denotes a system first public key.
As shown in fig. 8, the process of generating the conditional proxy re-encryption key includes:
step 1: randomly select one
Figure RE-GDA00024578536100001211
And one x ∈ G2The electronic prescription sharer passes the second private key of the sharer
Figure RE-GDA00024578536100001212
Identity id of shareejAnd condition value c when encrypting M ═ IPFS | | | dek) generates a proxy re-encryption key
Figure RE-GDA00024578536100001213
Wherein R is1=gr′
Figure RE-GDA00024578536100001214
R4=ur′
Step 2: electronic prescription sharer will
Figure RE-GDA00024578536100001215
Uploading a block chain of the alliance;
and step 3: the shared node in the block chain system of the alliance obtains the conditional proxy re-encryption authority through the competition of the consensus algorithm, and the node obtains the second layer ciphertext data with the condition c
Figure RE-GDA00024578536100001216
By re-encrypting the key with condition c
Figure RE-GDA0002457853610000131
Conversion to sharee idjDecipherable first layer cipher text data
Figure RE-GDA0002457853610000132
Wherein C is1′=C1,C′2=C2e(C1,R3)/e(C3,R1),C′3=R1,C′4=R2,h′=H6(C′1,C′2,C′3,C′4),
Figure RE-GDA0002457853610000133
By e (C)1,uh)=e(g,C4) Verifying the validity of the second layer of ciphertext;
where dek denotes the first symmetric key,
Figure RE-GDA0002457853610000134
representing the multiplicative cyclic group modulo q, M (.) -representing the process of encryption,
Figure RE-GDA0002457853610000135
representing proxy re-encryption key, g1Generator representing multiplication loop group, e bilinear map, gr' denotes a partial re-encryption key, x denotes a random value in a multiplication loop group, e ()r′Denotes a bilinear mapping algorithm, ur' denotes an intermediate parameter, Ci' denotes the decrypted first-layer ciphertext data, where i ∈ {1, 2, 3, 4, 5 }.
As shown in fig. 9, the process of obtaining and verifying the electronic prescription by the sharee includes:
step 1: the sharee uses the second private key of the sharee
Figure RE-GDA0002457853610000136
Decryption
Figure RE-GDA0002457853610000137
Calculating H ═ H4(C′1,C′2,C′3,C′4) Verification of e (C'3,uh′)=e(C′5G) whether or not, if yes, calculating
Figure RE-GDA0002457853610000138
Otherwise the first layer is secretThe file is tampered, and the electronic prescription is requested again;
step 2: calculating M ═ C'2/e(C′1,H5(x) Get the first symmetric key dek and the IPFS value of the electronic prescription ciphertext;
and step 3: the sharee downloads the electronic prescription ciphertext C according to the IPFS value, and the electronic prescription plaintext m and the signature sigma are obtained through decryption of the first symmetric key dek;
and 4, step 4: the shared person passes the verification that e (v, g) is e (u, y) e (H (id)a)tY) confirming whether the signature is valid; if the equation is established, the signature is valid, otherwise, the electronic prescription signature is invalid, and the electronic prescription is shared again;
wherein the content of the first and second substances,
Figure RE-GDA0002457853610000139
representing a first layer of ciphertext data, h' representing a value to be verified, e representing a bilinear map, u representing a first intermediate parameter, v representing a second intermediate parameter,
Figure RE-GDA00024578536100001310
representing the user's second private key, H (.)tRepresents a hash function, idaRepresenting user identity information, dek representing a first symmetric key, g representing a generator of a first multiplicative cyclic group, and y representing a system first public key.
Those skilled in the art will appreciate that all or part of the steps in the methods of the above embodiments may be implemented by instructions associated with hardware via a program, which may be stored in a computer-readable storage medium, and the storage medium may include: ROM, RAM, magnetic or optical disks, and the like.
The above-mentioned embodiments, which further illustrate the objects, technical solutions and advantages of the present invention, should be understood that the above-mentioned embodiments are only preferred embodiments of the present invention, and should not be construed as limiting the present invention, and any modifications, equivalents, improvements, etc. made within the spirit and principle of the present invention should be included in the protection scope of the present invention.

Claims (9)

1. A method for sharing electronic prescriptions based on blockchain and conditional proxy re-encryption, the method comprising:
generating common parameters of the block chain system of the alliance;
according to the system public parameters, each sharing node generates a first public key and a first private key of the sharing node, and the first public key and the first private key of the system are generated together according to the first public keys and the first private keys of the sharing nodes;
each node generates a first private key of a user according to the identity information of the user, the user verifies the correctness of the first private key of the user according to public parameters, and a second public key and a second private key of the user are generated according to the correct first private key of the user; the user comprises an electronic prescription issuing person, an electronic prescription sharing person and a shared person;
the electronic prescription maker signs the electronic prescription through a second private key and uploads the electronic prescription with the signature to the system; the electronic prescription sharer downloads the signed electronic prescription, encrypts the signed electronic prescription by using a first symmetric key generated randomly to generate an electronic prescription ciphertext, uploads the electronic prescription ciphertext to the IPFS distributed file system, and returns the IPFS value of the electronic prescription ciphertext to the electronic prescription sharer; the IPFS value is an acquisition address of the ciphertext;
the electronic prescription sharer encrypts the IPFS value and the first symmetric key of the electronic prescription ciphertext by using the second public key, and embeds a condition value in the encrypted ciphertext, wherein the condition value is used for re-encrypting the electronic prescription ciphertext; the electronic prescription sharer uploads the encrypted second key, namely a second key ciphertext to the block chain system of the alliance;
the electronic prescription sharer generates a conditional proxy re-encryption key by using the identity information of the sharee, a second private key of the electronic prescription sharer and the condition value, and uploads a ciphertext of the conditional proxy re-encryption key to the alliance block chain;
the shared user obtains the re-encryption key ciphertext from the alliance block chain, and the shared user utilizes a first private key of the shared user to decrypt the re-encryption key ciphertext to obtain an IPFS value and a first symmetric key; the sharee downloads the electronic prescription ciphertext from the IPFS system, and decrypts the electronic prescription ciphertext by using the first symmetric key to obtain the electronic prescription; the sharee verifies the signature of the electronic prescription by using the second public key of the electronic prescription issuer;
wherein, IPFS is an interplanetary file transfer system.
2. The electronic prescription sharing method based on blockchain and conditional proxy re-encryption of claim 1, wherein the generating of federation blockchain system common parameters comprises:
step 1: the sharing node of the block chain of the alliance selects two multiplication circulation groups G with the order of prime number q1And G2Setting bilinear mapping e: G1×G1→G2
Step 2: hash function H is selected to sharing node of alliance block chain1:{0,1}*→G2,H2:
Figure RE-FDA0002457853600000021
H3:{0,1}*→G1,H4:
Figure RE-FDA0002457853600000022
H5:G2→G1,H6:
Figure RE-FDA0002457853600000023
And step 3: randomly selecting a prime number p, and enabling each node in the block chain of the alliance to be Ai(i 1, 2.. N), then the common parameters are obtained as: params ═ G1,G2,g,p,e,H1,H2,H3,H4,H5,H6};
Wherein q and p each represent a prime number, e represents a bilinear map, G1Representing a first multiplication cycle group, G2Representing a second multiplication cycle group, AiRepresenting a shared node, HiRepresentation haThe objective function, i ∈ {1, 2, 3, 4, 5, 6}, g is the generator of the first multiplicative cyclic group, and params represents the system common parameters.
3. The electronic prescription sharing method based on blockchain and conditional proxy re-encryption as claimed in claim 1, wherein the process of the user verifying the correctness of the first private key of the user according to the public parameter comprises:
1): each sharing node AiRandomly selecting an N-1 order polynomial algorithm according to the common parameters;
2): computing each shared node A according to a polynomialiA of (A)ikA value of and AikThe value group is sent to each sharing node, wherein
Figure RE-FDA0002457853600000024
And k is 0, 1.... N-1;
3): calculate each shared node AiSent to other alliance blockchain node AjSecret value t ofij=Fi(j) Wherein j is 1,2,. N, j ≠ i;
4): each sharing node AiReceiving secret value tjiPass verification
Figure RE-FDA0002457853600000025
If the secret value is valid, the node A judges that the secret value is validjHonesty; otherwise, claim AjResending tij
5): calculate the parameter w for each shared node, i.e.
Figure RE-FDA0002457853600000026
Wherein A isiRepresenting a shared node, AikIndicating that the shared node authentication information value,
Figure RE-FDA0002457853600000031
indicating messages broadcast by the node, mod p indicating a fortuneK denotes the number of shared nodes, tijRepresenting secret values sent by the nodes, Fi(j) Representing the selected polynomial.
4. The method of claim 1, wherein the step of generating the first public key and the first private key of the system comprises:
step 1: each sharing node AiRandomly selecting two polynomials of the order of N-1 by system parameters, and converting the coefficient b of one polynomial into a polynomialtiAs the first private key of the shared node, order
Figure RE-FDA0002457853600000032
A first public key as a sharing node;
step 2: calculate each shared node AiVerification information value B ofikSending the verification information group to each sharing node; wherein k is 0,1, a.
And step 3: calculate each node AiSending to other alliance block chain sharing node AjSecret value s of (j ≠ 1, 2.. N, j ≠ i)ij=fi(j),s′ij=f′(j);
And 4, step 4: each node AiReceiving a secret value sji,s′jiVerification of
Figure RE-FDA0002457853600000033
Whether the secret value is valid or not, if yes, the sent secret value is valid; otherwise, claim AjResending;
and 5: the first keys of the N alliance block chain sharing nodes are united to generate a first key pair of the system
Figure RE-FDA0002457853600000034
Step 6: each sharing node AiThe first public key of the sharing node
Figure RE-FDA0002457853600000035
Sending to each shared node, and calculating
Figure RE-FDA0002457853600000036
Taking y as a first public key of the system;
and 7: according to the obtained information, the latest public parameter params ═ G of the block chain of the new alliance which is published last is obtained1,G2,g,p,e,H1,H2,H3,H4,H5,H6,N,y,y′};
Wherein, btiA first private key representing a shared node, y' representing the first private key of the shared node, BikThe authentication information is represented by a representation of,
Figure RE-FDA0002457853600000037
which represents the first authentication parameters, is,
Figure RE-FDA0002457853600000038
representing a second verification parameter, mod p representing a modulo operation, sijDenotes a first secret value, s'ijWhich represents the second secret value, is,
Figure RE-FDA0002457853600000039
representing a third authentication parameter, s representing a system first key pair, G1Representing a first multiplication cycle group, G2Representing a second multiplication cycle group, g being a generator of the multiplication cycle group, p representing a random prime number, e representing a bilinear map, HiAnd i ∈ {1, 2, 3, 4, 5, 6} represents a hash function, N represents the number of federation blockchains, y represents the system first public key, and params represents the system public parameter.
5. The method for sharing electronic prescription based on block chain and conditional proxy re-encryption as claimed in claim 1, wherein the step of generating the second public key and the second private key of the user comprises:
step 1: joining systemThe user sends the identity information id of the useriSending to the alliance block chain system;
step 2: each sharing node AjAccording to the received user identity idiGenerating a first private key of a user
Figure RE-FDA0002457853600000041
Sending the first private key of the user to the user;
and step 3: when the user receives the sharing node AjFirst private key of user
Figure RE-FDA0002457853600000042
Verifying the correctness of the first private key of the user if
Figure RE-FDA0002457853600000043
If yes, sharing node AjThe sent first private key of the user is correct, otherwise, the shared node A is requiredjResending;
and 4, step 4: after the user receives the first private keys of the user sent by all the sharing nodes, the user calculates the second private key of the user according to the first private keys of all the users
Figure RE-FDA0002457853600000044
And the second public key of the user is
Figure RE-FDA0002457853600000045
Wherein idiWhich represents the information on the identity of the user,
Figure RE-FDA0002457853600000046
representing the first private key of the user, g representing the generator of the multiplicative cyclic group, e representing the bilinear map, H (id)i) A hash value representing identity information, y' represents the first public key of the sharing node,
Figure RE-FDA0002457853600000047
indicating a second userThe private key is used to encrypt the data,
Figure RE-FDA0002457853600000048
representing the second public key, H, of the user1(ida) Representing the hash function value.
6. The electronic prescription sharing method based on block chain and conditional proxy re-encryption of claim 1, wherein the process of signing the electronic prescription by the electronic prescription holder through the second private key comprises:
step 1: electronic prescription issuing person idaSigning the generated electronic prescription m, and randomly selecting an integer by an electronic prescription maker
Figure RE-FDA0002457853600000049
And calculating u ═ H1(ida)r,t=H1(m||u),
Figure RE-FDA00024578536000000410
Generating an electronic prescription signature sigma (u, v) according to the calculated u and v, packaging the electronic prescription m and sigma into m 'by using a second private key, and sending the m' to the electronic prescription sharer;
step 2: electronic prescription sharer idiUsing a randomly generated first symmetric key
Figure RE-FDA0002457853600000051
Encrypting the signed electronic prescription to generate an electronic prescription ciphertext C ═ Encsym(dek, m'), uploading the electronic prescription ciphertext C to an IPFS distributed file system, and returning the IPFS value of the electronic prescription ciphertext to the electronic prescription sharer;
wherein the content of the first and second substances,
Figure RE-FDA0002457853600000052
set of all pairs of modulo multiplicative invertible elements in the representation, H1(.)rRepresenting a hash operation, Encsym(.) represents symmetric encryption, dek represents a first symmetric cipherA key, m' denotes a package file of the electronic prescription and the signature, u denotes a first intermediate argument, v denotes a second intermediate argument,
Figure RE-FDA0002457853600000053
representing the user's second private key.
7. The electronic prescription sharing method based on blockchain and conditional proxy re-encryption of claim 1, wherein the process of encrypting the IPFS value and the first symmetric key of the electronic prescription cryptograph by the electronic prescription sharer using the second public key comprises:
step 1: electronic prescription sharer using second public key of user
Figure RE-FDA0002457853600000054
The IPFS value of the M (IPFS | | | dek) electronic prescription ciphertext and the first symmetric key dek are encrypted, and one is randomly selected
Figure RE-FDA0002457853600000055
And condition of re-encryption
Figure RE-FDA0002457853600000056
Obtain the second layer ciphertext
Figure RE-FDA0002457853600000057
Wherein C is1=gr
Figure RE-FDA0002457853600000058
C3=gcr,h=H4(C1,C2,C3),C4=uhr
Step 2: the patient will encrypt the second layer of ciphertext
Figure RE-FDA0002457853600000059
Uploading a block chain system of the alliance;
wherein, grA generator representing a multiplication loop group, M (. quadrature.) representing an encryption process, Me (. quadrature.)rThe electronic prescription cryptogram is represented and,
Figure RE-FDA00024578536000000510
representing the second public key of the user, y representing the first public key of the node, CiRepresents elements in the second level ciphertext, wherein i ∈ {1, 2, 3, 4, 5, 6}, gcrAnd uhrRespectively, representing partial re-encrypted ciphertext, dek representing a first symmetric key,
Figure RE-FDA00024578536000000511
denotes the multiplicative cyclic group modulo q, c denotes the encryption condition value, and y denotes the system first public key.
8. The electronic prescription sharing method based on block chain and conditional proxy re-encryption as claimed in claim 1, wherein the process of generating the conditional proxy re-encryption key comprises:
step 1: randomly select one
Figure RE-FDA00024578536000000512
And one x ∈ G2The electronic prescription sharer passes the second private key of the sharer
Figure RE-FDA0002457853600000061
Identity id of shareejAnd generating a proxy re-encryption key by the condition value c when encrypting M (IPFS dek)
Figure RE-FDA0002457853600000062
Wherein R is1=gr'
Figure RE-FDA0002457853600000063
R4=ur’
Step 2: electronic prescription sharer will
Figure RE-FDA0002457853600000064
Uploading a block chain of the alliance;
and step 3: the shared node in the block chain system of the alliance obtains the conditional proxy re-encryption authority through the competition of the consensus algorithm, and the node obtains the second layer ciphertext data with the condition c
Figure RE-FDA0002457853600000065
By re-encrypting the key with condition c
Figure RE-FDA0002457853600000066
Conversion to sharee idjDecipherable first layer cipher text data
Figure RE-FDA0002457853600000067
Wherein C'1=C1,C'2=C2e(C1,R3)/e(C3,R1),C′3=R1,C′4=R2,h′=H6(C′1,C′2,C'3,C'4),
Figure RE-FDA0002457853600000068
By e (C)1,uh)=e(g,C4) Verifying the validity of the second layer of ciphertext;
where dek denotes the first symmetric key,
Figure RE-FDA0002457853600000069
representing the multiplicative cyclic group modulo q, M (.) -representing the process of encryption,
Figure RE-FDA00024578536000000610
representing proxy re-encryption key, g1Generator representing multiplication loop group, e bilinear map, gr'Represents a partial re-encryption key, x represents a random value in a multiplicative cyclic group, e ()r'Denotes a bilinear mapping algorithm, ur'Denotes an intermediate parameter, C'iRepresenting the decrypted first-level ciphertext data, i ∈ {1, 2, 3, 4, 5 }.
9. The electronic prescription sharing method based on blockchain and conditional proxy re-encryption as claimed in claim 1, wherein the process of obtaining and verifying the electronic prescription by the sharee comprises:
step 1: the sharee uses the second private key of the sharee
Figure RE-FDA00024578536000000611
Decryption
Figure RE-FDA00024578536000000612
Calculating H ═ H4(C′1,C′2,C′3,C′4) Verification of e (C'3,uh′)=e(C′5G) whether or not, if yes, calculating
Figure RE-FDA00024578536000000613
Otherwise, the first layer of ciphertext is tampered, and the electronic prescription is requested again;
step 2: calculating M ═ C'2/e(C′1,H5(x) Get the first symmetric key dek and the IPFS value of the electronic prescription ciphertext;
and step 3: the sharee downloads the electronic prescription ciphertext C according to the IPFS value, and the electronic prescription plaintext m and the signature sigma are obtained through decryption of the first symmetric key dek;
and 4, step 4: the shared person passes the verification that e (v, g) is e (u, y) e (H (id)a)tY) confirming whether the signature is valid; if the equation is established, the signature is valid, otherwise, the electronic prescription signature is invalid, and the electronic prescription is shared again;
wherein the content of the first and second substances,
Figure RE-FDA0002457853600000071
representing the first layer of ciphertext data, h' representing the value to be verified, e representing the bilinear map, u representing the second layer of ciphertext dataAn intermediate parameter, v denotes a second intermediate parameter,
Figure RE-FDA0002457853600000072
representing the user's second private key, H (.)tRepresents a hash function, idaRepresenting user identity information, dek representing a first symmetric key, g representing a generator of a first multiplicative cyclic group, and y representing a system first public key.
CN202010132242.1A 2020-02-29 2020-02-29 Electronic prescription sharing method based on blockchain and conditional proxy re-encryption Active CN111415718B (en)

Priority Applications (1)

Application Number Priority Date Filing Date Title
CN202010132242.1A CN111415718B (en) 2020-02-29 2020-02-29 Electronic prescription sharing method based on blockchain and conditional proxy re-encryption

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
CN202010132242.1A CN111415718B (en) 2020-02-29 2020-02-29 Electronic prescription sharing method based on blockchain and conditional proxy re-encryption

Publications (2)

Publication Number Publication Date
CN111415718A true CN111415718A (en) 2020-07-14
CN111415718B CN111415718B (en) 2024-02-09

Family

ID=71492832

Family Applications (1)

Application Number Title Priority Date Filing Date
CN202010132242.1A Active CN111415718B (en) 2020-02-29 2020-02-29 Electronic prescription sharing method based on blockchain and conditional proxy re-encryption

Country Status (1)

Country Link
CN (1) CN111415718B (en)

Cited By (11)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN112489760A (en) * 2020-11-26 2021-03-12 泰康保险集团股份有限公司 Prescription processing method and system based on distributed identity authentication
CN112561523A (en) * 2020-12-08 2021-03-26 爱信诺征信有限公司 Block chain system, method, electronic device and storage medium
CN112685763A (en) * 2021-03-18 2021-04-20 上海众旦信息科技有限公司 Data opening method and system based on ciphertext authorized access
CN112989415A (en) * 2021-03-23 2021-06-18 广东工业大学 Private data storage and access control method and system based on block chain
CN113067857A (en) * 2021-03-15 2021-07-02 新疆大学 Electronic medical record cross-hospital sharing method based on double-chain structure
CN113268764A (en) * 2021-02-24 2021-08-17 西安交通大学 Personal credit data authorization method for mixed chain and threshold proxy re-encryption
CN113810421A (en) * 2021-09-18 2021-12-17 上海万向区块链股份公司 Block chain-based PRE Internet of things data sharing method and system
CN114513327A (en) * 2021-12-30 2022-05-17 电子科技大学 Block chain-based Internet of things privacy data rapid sharing method
CN115021903A (en) * 2022-05-23 2022-09-06 湖北工业大学 Electronic medical record sharing method and system based on block chain
CN116996276A (en) * 2023-07-20 2023-11-03 广州芳禾数据有限公司 Data sharing method and device based on conditional proxy re-encryption
CN117390699A (en) * 2023-11-09 2024-01-12 河南大学 Block chain-based privacy protection online medical pre-diagnosis method and system

Citations (25)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN103647642A (en) * 2013-11-15 2014-03-19 河海大学 Certificate-based agent heavy encryption method and system
CN104363218A (en) * 2014-11-04 2015-02-18 河海大学 Proxy re-encryption method and system on basis of certificate conditions
CN104683351A (en) * 2015-03-17 2015-06-03 西安电子科技大学 System and method for controlling anonymous hospitalizing and security access of medical information based on property
WO2018032374A1 (en) * 2016-08-13 2018-02-22 深圳市樊溪电子有限公司 Encrypted storage system for block chain and method using same
WO2018037148A1 (en) * 2016-08-22 2018-03-01 Nokia Technologies Oy Method and apparatus for blockchain verification of healthcare prescriptions
CN108063752A (en) * 2017-11-02 2018-05-22 暨南大学 A kind of credible genetic test and data sharing method based on block chain and proxy re-encryption technology
CN109144961A (en) * 2018-08-22 2019-01-04 矩阵元技术(深圳)有限公司 Authority sharing method and device
CN109361704A (en) * 2018-12-12 2019-02-19 深圳市网心科技有限公司 Cloud storage data encryption and transmission method, system, equipment and storage medium
CN109451077A (en) * 2019-01-04 2019-03-08 大连大学 The model that medical cloud search permission is shared
CN109886027A (en) * 2019-01-14 2019-06-14 湘潭大学 A kind of medical data secure sharing method based on block chain
CN109902480A (en) * 2019-03-01 2019-06-18 重庆邮电大学 A kind of efficient authentication method for alliance's chain
CN109951453A (en) * 2019-02-26 2019-06-28 符安文 A kind of safe encryption method based on block chain
CN110008746A (en) * 2019-04-01 2019-07-12 大连理工大学 Medical records storage, shared and safety Claims Resolution model and method based on block chain
CN110098919A (en) * 2019-04-26 2019-08-06 西安电子科技大学 The acquisition methods of data permission based on block chain
CN110400642A (en) * 2019-06-12 2019-11-01 梁胤豪 A kind of medical data shared system and design method based on block chain technology
CN110430161A (en) * 2019-06-27 2019-11-08 布比(北京)网络技术有限公司 It is a kind of that data anonymous sharing method and system are supervised based on block chain
US20190372762A1 (en) * 2018-06-01 2019-12-05 Duality Technologies, Inc. Secure and distributed management of a proxy re-encryption key ledger
US20190379646A1 (en) * 2018-06-11 2019-12-12 Fujitsu Limited Delayed-access encryption for blockchain field
CN110602084A (en) * 2019-09-10 2019-12-20 上海黔易数据科技有限公司 Decentralized contract signing and checking method
KR102065315B1 (en) * 2019-10-04 2020-01-13 주식회사 도우테크 System and method for keeping and sharing a file based on block chain network
JP2020010267A (en) * 2018-07-12 2020-01-16 コニカミノルタ株式会社 Distributed medical information sharing system, medical information provision server, and program
CN110719295A (en) * 2019-10-21 2020-01-21 武汉大学 Identity-based food data security-oriented proxy re-encryption method and device
CN110740033A (en) * 2019-08-19 2020-01-31 杭州云象网络技术有限公司 block chain multi-party data sharing method based on secret sharing technology
CN110797099A (en) * 2019-10-28 2020-02-14 河北北方学院 Medical data sharing method and system based on block chain
CN110851878A (en) * 2019-11-20 2020-02-28 南京邮电大学 Accountability medical data storage method based on block chain

Patent Citations (25)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN103647642A (en) * 2013-11-15 2014-03-19 河海大学 Certificate-based agent heavy encryption method and system
CN104363218A (en) * 2014-11-04 2015-02-18 河海大学 Proxy re-encryption method and system on basis of certificate conditions
CN104683351A (en) * 2015-03-17 2015-06-03 西安电子科技大学 System and method for controlling anonymous hospitalizing and security access of medical information based on property
WO2018032374A1 (en) * 2016-08-13 2018-02-22 深圳市樊溪电子有限公司 Encrypted storage system for block chain and method using same
WO2018037148A1 (en) * 2016-08-22 2018-03-01 Nokia Technologies Oy Method and apparatus for blockchain verification of healthcare prescriptions
CN108063752A (en) * 2017-11-02 2018-05-22 暨南大学 A kind of credible genetic test and data sharing method based on block chain and proxy re-encryption technology
US20190372762A1 (en) * 2018-06-01 2019-12-05 Duality Technologies, Inc. Secure and distributed management of a proxy re-encryption key ledger
US20190379646A1 (en) * 2018-06-11 2019-12-12 Fujitsu Limited Delayed-access encryption for blockchain field
JP2020010267A (en) * 2018-07-12 2020-01-16 コニカミノルタ株式会社 Distributed medical information sharing system, medical information provision server, and program
CN109144961A (en) * 2018-08-22 2019-01-04 矩阵元技术(深圳)有限公司 Authority sharing method and device
CN109361704A (en) * 2018-12-12 2019-02-19 深圳市网心科技有限公司 Cloud storage data encryption and transmission method, system, equipment and storage medium
CN109451077A (en) * 2019-01-04 2019-03-08 大连大学 The model that medical cloud search permission is shared
CN109886027A (en) * 2019-01-14 2019-06-14 湘潭大学 A kind of medical data secure sharing method based on block chain
CN109951453A (en) * 2019-02-26 2019-06-28 符安文 A kind of safe encryption method based on block chain
CN109902480A (en) * 2019-03-01 2019-06-18 重庆邮电大学 A kind of efficient authentication method for alliance's chain
CN110008746A (en) * 2019-04-01 2019-07-12 大连理工大学 Medical records storage, shared and safety Claims Resolution model and method based on block chain
CN110098919A (en) * 2019-04-26 2019-08-06 西安电子科技大学 The acquisition methods of data permission based on block chain
CN110400642A (en) * 2019-06-12 2019-11-01 梁胤豪 A kind of medical data shared system and design method based on block chain technology
CN110430161A (en) * 2019-06-27 2019-11-08 布比(北京)网络技术有限公司 It is a kind of that data anonymous sharing method and system are supervised based on block chain
CN110740033A (en) * 2019-08-19 2020-01-31 杭州云象网络技术有限公司 block chain multi-party data sharing method based on secret sharing technology
CN110602084A (en) * 2019-09-10 2019-12-20 上海黔易数据科技有限公司 Decentralized contract signing and checking method
KR102065315B1 (en) * 2019-10-04 2020-01-13 주식회사 도우테크 System and method for keeping and sharing a file based on block chain network
CN110719295A (en) * 2019-10-21 2020-01-21 武汉大学 Identity-based food data security-oriented proxy re-encryption method and device
CN110797099A (en) * 2019-10-28 2020-02-14 河北北方学院 Medical data sharing method and system based on block chain
CN110851878A (en) * 2019-11-20 2020-02-28 南京邮电大学 Accountability medical data storage method based on block chain

Non-Patent Citations (3)

* Cited by examiner, † Cited by third party
Title
周艺华,李洪明: "基于区块链的数据管理方案", 数字经济安全专题, vol. 6, no. 1, pages 37 - 45 *
张昌文,满毅,何进: "基于IPFS生物数据的存储传输", 网络空间安全, vol. 10, no. 3, pages 69 - 75 *
罗文俊;闻胜莲;程雨;: "基于区块链的电子医疗病历共享方案", 计算机应用, vol. 40, no. 01, pages 157 - 161 *

Cited By (17)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN112489760B (en) * 2020-11-26 2023-07-18 泰康保险集团股份有限公司 Prescription processing method and system based on distributed identity authentication
CN112489760A (en) * 2020-11-26 2021-03-12 泰康保险集团股份有限公司 Prescription processing method and system based on distributed identity authentication
CN112561523A (en) * 2020-12-08 2021-03-26 爱信诺征信有限公司 Block chain system, method, electronic device and storage medium
CN113268764A (en) * 2021-02-24 2021-08-17 西安交通大学 Personal credit data authorization method for mixed chain and threshold proxy re-encryption
CN113067857B (en) * 2021-03-15 2023-04-18 新疆大学 Electronic medical record cross-hospital sharing method based on double-chain structure
CN113067857A (en) * 2021-03-15 2021-07-02 新疆大学 Electronic medical record cross-hospital sharing method based on double-chain structure
CN112685763A (en) * 2021-03-18 2021-04-20 上海众旦信息科技有限公司 Data opening method and system based on ciphertext authorized access
CN112989415A (en) * 2021-03-23 2021-06-18 广东工业大学 Private data storage and access control method and system based on block chain
CN112989415B (en) * 2021-03-23 2022-03-15 广东工业大学 Private data storage and access control method and system based on block chain
CN113810421B (en) * 2021-09-18 2023-05-05 上海万向区块链股份公司 PRE (PRE) Internet of things data sharing method and system based on block chain
CN113810421A (en) * 2021-09-18 2021-12-17 上海万向区块链股份公司 Block chain-based PRE Internet of things data sharing method and system
CN114513327B (en) * 2021-12-30 2022-11-08 电子科技大学 Block chain-based Internet of things private data rapid sharing method
CN114513327A (en) * 2021-12-30 2022-05-17 电子科技大学 Block chain-based Internet of things privacy data rapid sharing method
CN115021903A (en) * 2022-05-23 2022-09-06 湖北工业大学 Electronic medical record sharing method and system based on block chain
CN115021903B (en) * 2022-05-23 2023-12-15 湖北工业大学 Electronic medical record sharing method and system based on blockchain
CN116996276A (en) * 2023-07-20 2023-11-03 广州芳禾数据有限公司 Data sharing method and device based on conditional proxy re-encryption
CN117390699A (en) * 2023-11-09 2024-01-12 河南大学 Block chain-based privacy protection online medical pre-diagnosis method and system

Also Published As

Publication number Publication date
CN111415718B (en) 2024-02-09

Similar Documents

Publication Publication Date Title
CN111415718B (en) Electronic prescription sharing method based on blockchain and conditional proxy re-encryption
US11552792B2 (en) Systems and methods for generating signatures
US7634085B1 (en) Identity-based-encryption system with partial attribute matching
CN113014392B (en) Block chain-based digital certificate management method, system, equipment and storage medium
US20210089676A1 (en) Methods and systems for secure data exchange
Li et al. EHRChain: A blockchain-based EHR system using attribute-based and homomorphic cryptosystem
TW201733303A (en) Determining a common secret for the secure exchange of information and hierarchical, deterministic cryptographic keys
Chen et al. Public-key quantum digital signature scheme with one-time pad private-key
CN110120939B (en) Encryption method and system capable of repudiation authentication based on heterogeneous system
US20040165728A1 (en) Limiting service provision to group members
CN107635018B (en) Cross-domain medical cloud storage system supporting emergency access control and safe deduplication
JPWO2010053036A1 (en) Data reference system, database presentation distributed system, and data reference method
CN110380845B (en) Quantum secret communication alliance chain transaction method, system and equipment based on group symmetric key pool
CN107078906A (en) Public key encryp
CN113411323B (en) Medical record data access control system and method based on attribute encryption
CN111865555B (en) Homomorphic encryption method based on k-Lin hypothesis
CN105656881B (en) A kind of electronic health record can verify that outsourcing storage and retrieval system and method
CN114979149A (en) Multi-party cooperative data sharing method supporting access policy updating
US8644509B2 (en) Data providing process based on an IBPE scheme
CN116318696B (en) Proxy re-encryption digital asset authorization method under condition of no initial trust of two parties
CN116232759A (en) Mist-blockchain assisted smart grid aggregation authentication method
JP5392264B2 (en) Name encryption device, pseudonymization device, name encryption method, and pseudonymization method
JP5097102B2 (en) Hierarchical ID-based encryption device and decryption device, method thereof, program, and recording medium
CN110445621B (en) Application method and system of trusted identification
Ramesh et al. HHDSSC: Harnessing healthcare data security in cloud using ciphertext policy attribute-based encryption

Legal Events

Date Code Title Description
PB01 Publication
PB01 Publication
SE01 Entry into force of request for substantive examination
SE01 Entry into force of request for substantive examination
TA01 Transfer of patent application right
TA01 Transfer of patent application right

Effective date of registration: 20231226

Address after: 314500 Room 301, Unit 1, Building 61, Bishui Yuntian, wutong Street, Tongxiang City, Jiaxing City, Zhejiang Province

Applicant after: Shen Peijun

Address before: Room 801, No. 85, Kefeng Road, Huangpu District, Guangzhou, Guangdong 510000 (office only)

Applicant before: Yami Technology (Guangzhou) Co.,Ltd.

Effective date of registration: 20231226

Address after: Room 801, No. 85, Kefeng Road, Huangpu District, Guangzhou, Guangdong 510000 (office only)

Applicant after: Yami Technology (Guangzhou) Co.,Ltd.

Address before: 400065 Chongwen Road, Nanshan Street, Nanan District, Chongqing

Applicant before: CHONGQING University OF POSTS AND TELECOMMUNICATIONS

GR01 Patent grant
GR01 Patent grant
TR01 Transfer of patent right
TR01 Transfer of patent right

Effective date of registration: 20240220

Address after: Room 211-3, Building 1, No. 290 Wankang Road, Minhang District, Shanghai, 2011

Patentee after: SHANGHAI GUOXING MEDICAL INSTRUMENT Co.,Ltd.

Country or region after: China

Address before: 314500 Room 301, Unit 1, Building 61, Bishui Yuntian, wutong Street, Tongxiang City, Jiaxing City, Zhejiang Province

Patentee before: Shen Peijun

Country or region before: China

PP01 Preservation of patent right
PP01 Preservation of patent right

Effective date of registration: 20240422

Granted publication date: 20240209