CN107635018B - Cross-domain medical cloud storage system supporting emergency access control and safe deduplication - Google Patents
Cross-domain medical cloud storage system supporting emergency access control and safe deduplication Download PDFInfo
- Publication number
- CN107635018B CN107635018B CN201711051952.6A CN201711051952A CN107635018B CN 107635018 B CN107635018 B CN 107635018B CN 201711051952 A CN201711051952 A CN 201711051952A CN 107635018 B CN107635018 B CN 107635018B
- Authority
- CN
- China
- Prior art keywords
- key
- medical
- ciphertext
- bgk
- patient
- Prior art date
- Legal status (The legal status is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the status listed.)
- Active
Links
- 238000003860 storage Methods 0.000 title claims abstract description 43
- 238000004422 calculation algorithm Methods 0.000 claims description 48
- 238000000034 method Methods 0.000 claims description 35
- 230000008569 process Effects 0.000 claims description 17
- 239000011159 matrix material Substances 0.000 claims description 15
- 238000004364 calculation method Methods 0.000 claims description 9
- 238000006243 chemical reaction Methods 0.000 claims description 4
- 238000013507 mapping Methods 0.000 claims description 4
- 230000009466 transformation Effects 0.000 claims description 4
- 238000012795 verification Methods 0.000 claims description 4
- 125000004122 cyclic group Chemical group 0.000 claims description 3
- 238000012546 transfer Methods 0.000 claims description 3
- 238000012790 confirmation Methods 0.000 claims 1
- 230000007246 mechanism Effects 0.000 abstract description 7
- 230000005540 biological transmission Effects 0.000 abstract description 6
- 238000010586 diagram Methods 0.000 description 10
- 230000006870 function Effects 0.000 description 8
- 238000004590 computer program Methods 0.000 description 7
- 238000001514 detection method Methods 0.000 description 6
- 238000013475 authorization Methods 0.000 description 4
- 238000012545 processing Methods 0.000 description 4
- 238000005516 engineering process Methods 0.000 description 3
- 238000000605 extraction Methods 0.000 description 3
- 238000003745 diagnosis Methods 0.000 description 2
- 230000036541 health Effects 0.000 description 2
- 230000003993 interaction Effects 0.000 description 2
- 238000012544 monitoring process Methods 0.000 description 2
- 238000012946 outsourcing Methods 0.000 description 2
- 208000017667 Chronic Disease Diseases 0.000 description 1
- 206010010071 Coma Diseases 0.000 description 1
- 230000002776 aggregation Effects 0.000 description 1
- 238000004220 aggregation Methods 0.000 description 1
- 230000006399 behavior Effects 0.000 description 1
- 230000009286 beneficial effect Effects 0.000 description 1
- 238000011161 development Methods 0.000 description 1
- 201000010099 disease Diseases 0.000 description 1
- 208000037265 diseases, disorders, signs and symptoms Diseases 0.000 description 1
- 230000000694 effects Effects 0.000 description 1
- 230000008030 elimination Effects 0.000 description 1
- 238000003379 elimination reaction Methods 0.000 description 1
- 230000002349 favourable effect Effects 0.000 description 1
- 239000007943 implant Substances 0.000 description 1
- 238000004519 manufacturing process Methods 0.000 description 1
- 208000010125 myocardial infarction Diseases 0.000 description 1
- 230000003121 nonmonotonic effect Effects 0.000 description 1
- 230000003287 optical effect Effects 0.000 description 1
- 238000011160 research Methods 0.000 description 1
- 238000012552 review Methods 0.000 description 1
Images
Landscapes
- Medical Treatment And Welfare Office Work (AREA)
- Storage Device Security (AREA)
- Medicines Containing Antibodies Or Antigens For Use As Internal Diagnostic Agents (AREA)
Abstract
The invention relates to a cross-domain medical cloud storage system supporting emergency access control and safe duplicate removal, wherein a patient sets a password and an emergency access key based on the password, and informs an emergency contact of the password; the patient appoints an access strategy and an emergency access key to encrypt medical documents of the patient and then store the medical documents into the public cloud; the user registers to the medical institution to obtain an anonymous identity and an attribute key, obtains a corresponding proxy key and sends the proxy key to the public cloud, the public cloud generates a part of ciphertext of the encrypted medical document according to the proxy key, and the user obtains a plaintext of the encrypted medical document according to the attribute key and the part of ciphertext; the emergency contact acquires the emergency access key by using the password to decrypt the encrypted medical document of the patient; the public cloud interacts with a private cloud of the medical institution to perform a secure deduplication operation to eliminate copies of the encrypted medical documents. The invention supports emergency access, and adopts a safe duplicate removal mechanism to delete redundant ciphertext containing the same message, thereby saving storage space and transmission overhead.
Description
Technical Field
The invention relates to the technical field of cloud storage, in particular to a cross-domain medical cloud storage system supporting emergency access control and safe duplication elimination.
Background
The development of internet of things (IoT) technology has made it possible for medical institutions to provide high-quality, more convenient, and more widespread medical services. Medical institutions may implant tiny sets of wireless sensor nodes into patients (or attached to the surface of the patient's skin) to monitor their health and collect important physiological data, which facilitates emergency medical rescue and chronic disease detection. The elderly can enjoy modern medical services anytime and anywhere using wearable or implantable medical sensors.
After the medical IoT network collects the medical data, the medical data is transmitted to a data center for storage and disease diagnosis. To protect the privacy of the patient, the medical documents need to be encrypted before transmission to prevent eavesdropping on the public channel. The data owner defines authorization attributes and relationships by enforcing access policies on the protected data. Only the user (e.g., doctor, nurse, anesthesiologist, or patient's family) who possesses the attribute key has the authority to decrypt the ciphertext. This method is called attribute-based encryption (ABE).
In modern medical systems, a patient with a difficult condition may be diagnosed and treated in different hospitals. Therefore, there is a need to implement a cross-domain secure data sharing system to facilitate patient treatment between different hospitals. The doctor at hospital B can review the exam report generated at hospital a. Encrypted medical documents generated by different hospitals are sent to a public cloud server for storage, and the encrypted medical documents are accessed by users. The patient defines a cross-domain access policy for his encrypted medical records. Each medical professional registers with their medical institution to obtain a key for decrypting the patient's encrypted document.
Emergency situations such as car accidents or sudden coma of the patient may occur in the medical system. In these emergency situations, electronic medical documents of the patient need to be acquired to save their lives. While emergency personnel on site are likely to not have access to the patient's encrypted medical documents. Security mechanisms that protect data privacy may hinder emergency treatment of patients. It is therefore crucial to devise an emergency access method for emergency situations, which enables access to electronic medical documents even if emergency personnel do not have the associated attribute keys. At the same time, the emergency access rights should be controllable and protected against malicious access by an attacker.
Different medical personnel may use different access policies to encrypt the same medical data. The ciphertext is transmitted to a public cloud server, and a large amount of storage space is occupied. In order to save storage space and transmission overhead, an effective method is to eliminate redundant ciphertext containing the same message in the cloud server, and the method is called safe deduplication.
In 2009 Brucker et al proposed an access control model with emergency access functionality and a security architecture that supports emergency access. They then integrate the emergency access mechanism into an attribute-based encryption scheme to implement a security log system for analyzing the user's behavior during emergency access. Marinovic et al proposed a new emergency access model named Rampole that adds integrity constraints in the decision making process to enable a decision maker to manage emergency access privileges in a fine-grained manner. Maw et al devised an emergency access model for wireless sensor medical networks and are concerned with the problem of access rights management across medical domains. However, these studies only give a basic architecture and no specific solution. In 2016, Zhang et al proposed a password-based emergency access scheme based on two-factor encryption: password-based encryption and master private key-based encryption.
In 2013, Bellare et al proposed message locked encryption (message locked encryption) to implement secure deduplication and can derive encryption and decryption keys from messages. In 2014, Li et al proposed a system for managing aggregated keys in secure deduplication. The system is implemented by the Dekey technology and is based on a secret sharing scheme. Later, they proposed a secure deduplication system in a hybrid cloud architecture (including public and private clouds) and able to resist collusion attacks. In 2015, Liu et al constructed a novel secure deduplication system based on a password authenticated key exchange protocol. Since these security deduplication systems do not take into account the issue of access control, Cui et al propose a security deduplication system based on attribute access control using zero knowledge proof.
In 2007, Ostrovsky proposed an attribute-based encryption algorithm such that the user's key could represent both monotonic (monotone) and non-monotonic (non-monotone) access policies. To reduce the decryption computation overhead, Green et al propose outsourcing decryption methods so that users can recover messages using lightweight computing. In order to detect the correctness of the converted ciphertext, people research verifiable outsourcing decryption and provide an effective way for correctness verification. The traitor tracing problem in ABE was studied to recover the identity of a malicious user. One has studied the security search problem in ABE: the user sends the keyword trapdoor to the cloud server for searching, and the cloud server returns the ciphertext containing the same keyword. Yang et al propose a time domain attribute based access control scheme to protect cloud-based video content sharing that embeds time into the ciphertext and key to achieve time control. To reduce trust in a single authority center, the ABE scheme of multiple authority centers has been studied.
Disclosure of Invention
Aiming at the prior art, the invention provides a cross-domain medical cloud storage system supporting emergency access control and safe duplicate removal, which supports emergency access control and safe duplicate removal and solves the problems of data redundancy, high storage overhead and the like.
In order to achieve the purpose, the technical scheme of the invention is as follows: a cross-domain medical cloud storage system supporting emergency access control and safe duplicate removal comprises a key generation center, a medical institution and a public cloud;
the key generation center is used for generating public parameters and a main private key of the cross-domain medical cloud storage system, detecting the medical quality of the medical institution and generating a public key/private key for the medical institution;
the medical institution distributes an attribute set according to the characteristics of the user, generates an attribute key, and executes storage and calculation service for the user through a private cloud;
the public cloud is used for storing medical documents of patients of different medical institutions and responding to data access inquiry;
the patient acquires medical service through a medical institution, sets a password and an emergency access key based on the password, and informs an emergency contact of the password; the patient appoints an access strategy and an emergency access key to encrypt medical documents of the patient and then store the medical documents to the public cloud; the emergency contact list is managed by a private cloud of the medical institution;
the method comprises the steps that a user registers in a medical institution to obtain an anonymous identity and an attribute key, obtains a corresponding proxy key according to the anonymous identity and the attribute key and sends the proxy key to a public cloud, the public cloud generates a part of ciphertext of an encrypted medical document according to the proxy key, and the user obtains a plaintext of the encrypted medical document according to the attribute key and the part of ciphertext;
the emergency contact acquires the emergency access key by using the password to decrypt the encrypted medical document of the patient;
the public cloud interacts with a private cloud of the medical institution to perform a secure deduplication operation to eliminate copies of encrypted medical documents.
Further, the key generation center inputs security parameters 1κGenerating public parameters and a main private key of the system by using a GlobalSetup algorithm, which comprises the following specific steps:
GlobalSetup(1κ) → (PP, MSK): key generation centric randomly selected hash function Secure symmetric encryption/decryption algorithm SEnc/SDec and symmetric key spaceThe key generation center then selects a cyclic groupGenerating element ofAnd random numberCalculating Y ═ e (g)1,g2)ηSetting the common parameter PP ═ g, g1,g2,g3,Y,H1,H2,SEnc/SDec), setting a main private key MSK as eta; wherein,p is a prime number,represents fromAnd selecting a random value eta.
Further, when the ith medical institution registers to the cross-domain medical cloud storage system, the key generation center checks the medical quality of the ith medical institution; if qualified, the key generation center assigns an identity MI to the facilityiAnd generates a public key PK thereforiAnd a private key SKiCross-domain medical cloud storage system public PKiSK is transmitted via a secure channeliTo medical institutions MIiThe method comprises the following steps:
KeyGen.MI(MIi,MSK)→(PKi,SKi): random selection of alpha by key generation centeri,βi,Based on the master private key MSK and the identity MI of the medical institutioniIs calculated to obtain
MIiPublic key PKi:
MIiPrivate key SKi:
MIiIs PKi=(pki,1,pki,2) The private key is SKi=(Ki,1,Ki,2,Ki,3,Ki,4,Ki,5)。
Further, when the jth user Ui,jTo medical institutions MIiDuring registration, the medical institution verifies the identity of the user Ui,jDistributing anonymous identitiesAnd hide its true identity, depending on the user identity, MIiAssigning a set of attribute collectionsTo characterize the user and for anonymous identity PIDi,jUser generated attribute key SKi,jThe method comprises the following steps:
medical institution MIiV 'is chosen randomly'i,j,Setting vi,j=vi+v'i,jCalculating the user's attribute key SKi,j:
ski,j,3=gt,
Further, a random number is selectedPID based on user anonymous identityi,jAnd attribute key SKi,jComputing proxy key DKi,jAnd sending to the public cloud, calculating as follows:
DK3=(ski,j,3)τ=(gt)τ
Further, the emergency access key generation method is as follows:
the patient sets a password pwi,jAnd emergency access key BGK based on the passwordi,jUsing the password pwi,jGenerating an emergency access key, BGKi,jAuxiliary information (BGK)i,j,1,BGKi,j,2) BGKi,j,1Sending the BGK to public cloudi,j,2To medical institutions MIiPrivate cloud, emergency contact utilizes password pwi,jAnd auxiliary information (BGK)i,j,1,BGKi,j,2) Recovering to obtain BGK (emergency access key)i,j(ii) a The concrete implementation is as follows:
KeyGen.BGK(PIDi,j,pwi,j)→(BGKi,j,1,BGKi,j,2): randomly selecting ζ1,ζ2,σ1,Ψ,Ψ1∈RG, setting a BGK (emergency access key)i,jΨ, PID based on the anonymous identity of the patienti,jAnd password pwi,jAnd (3) calculating:
further, emergency contacts are in contact with the public cloud and medical institutions MIiInteracts according to the anonymous identity PID of the patienti,jPassword pwi,jAnd auxiliary information BGKi,j,1,BGKi,j,2Obtaining an emergency access key BGKi,jThe specific process is as follows:
Extract.BGK(PIDi,j,pwi,j,BGKi,j,1,BGKi,j,2)→BGKi,j: emergency contact selection random numberComputingAnd sends it to the public cloud and medical institution MIi(ii) a Public cloud selection of random numbersComputingAnd transmits it to the medical structure MIi(ii) a Medical institution MIiSelecting random numbersComputingAnd send it to the public cloud; public cloud computingAnd will be (A)1,W1) Sending the information to an emergency contact; medical institution MIiComputingAnd will be (A)2,W2) Sending the information to an emergency contact; by calculating BGKi,j=Ψ=(W1·W2)·(A1·A2)ξAn emergency access key is obtained.
Further, the way that the patient specifies the access policy and the emergency access key to encrypt his medical document is: patient embedding access policy in the process of encrypting medical document MAccess policy based on medical document MMedical institution MIiPublic key PKiAnonymous identity of the patient PIDi,jAnd emergency access key BGKi,jObtaining the ciphertext CT and the transformation key TKi,jAnd the proof information pf is specifically realized as:
ρ will matrixIs mapped to the medical institution, delta is the matrixThe row vector of (a) is mapped to an attribute,is thatLine x of (1), patient random selectionLet v be (z, v)2,...vn)T,w=(0,w2,...,wn)TLet us order λxAnd wxRespectively representZ and 0, sign<·>Computing a transformation key by performing an inner product operation
The patient isX in each row of the random selectionFor the medical document M, a document number is setComputing the elements of the ciphertext CT:
γ=H2(Ψ,PIDi,j,FID),
C-1=g1 z,C0=γ·Yz=γ·e(g1,g2)η·z, whereinAfter M represents0, (C) ciphertext CT ═ CM,C-1,C0,{C1,x,C2,x,C3,x,C4,x}x∈[l]) (ii) a Where x ∈ [ l ]]Denotes that x is more than or equal to 1 and l is a matrixThe number of rows of (c);
θ=H1(CM,C-1,C0,{C1,x,C2,x,C3,x,C4,x}x∈[l],D1,D2,D3,B1,B2),D4=r1-θ·H1(M),
D5=r2-θ·H1(γ), the certification information pf ═ D1,D2,D3,D4,D5θ), patient handle (PID)i,jFID, CT, pf) to the public cloud, and the TK for the key conversioni,jTo medical institutions MIiAnd the proof information pf is used for enabling the public cloud to distinguish different ciphertexts encrypted by the same plaintext information.
Further, the secure deduplication operation comprises:
the method comprises the following steps: and detecting whether the ciphertext is valid:
ValidityTest (CT, pf) → 1/0: and calculating by the public cloud according to the ciphertext CT and the proof information pf:
θ'=H1(CM,C-1,C0,{C1,x,C2,x,C3,x,C4,x}x∈[l],D1,D2,D3,B1',B2')
verifying whether the equation theta' is true or not, if true, outputting 1 to indicate that the ciphertext is valid, and otherwise, outputting 0 to indicate that the ciphertext is invalid;
step two: detecting whether the ciphertext contains the same medical document:
MsgTest(pf1,pf2) → 1/0: let pf1=(D1,D2,D3,D4,D5,θ),pf2=(D1',D2',D3',D4',D5', θ'), the public cloud proves information pf according to the ciphertext1And pf2Verification of equation e (D)1,D2')=e(D1',D2) If yes, outputting 1 to show that the two ciphertexts are in the same plaintext encryption form, otherwise outputting 0;
step three: re-encrypting the ciphertext using the combined access policy, such that a user having access to the original ciphertext may also access the encrypted data:
assume that the ciphertext and corresponding access policy areMedical institution MIiDeriving a combined access policyAnd using combined access policiesRe-encrypting the ciphertext to generate a new ciphertext CT', bundle (CT)1,...,CTm) The ciphertext with the smallest document number is denoted as CT, and CT is assumed to be1,FID=FID1:
Medical institution MIiPID based on anonymous identity of patienti,jTK for converting secret keyi,jCiphertext CT and combined access strategyComputing a new ciphertext CT', whereinρ' willIs mapped to the medical institution, δ' willThe row of (a) is mapped to an attribute,to representThe x-th row of (a),random selectionLet v ═ z ', v'2,...v'n)T,w'=(0,w'2,...,w'n)TWhereinOrder toλ'xAnd w'xRespectively representZ and 0 fraction corresponding to the x-th row of (1), medical institution MIiIs composed ofX in each row of the random selectionAnd calculates ciphertext CT '═ C'M,C'-1,C'0,{C'1,x,C'2,x,C'3,x,C'4,x}x∈[l]):C’M=CM,C'0=C0·Yz=γ·Yz', Due to the fact that To obtainUsing a transfer key TKi,jCalculating element C'1,x:
Further, the specific way for the user to obtain the plaintext of the encrypted medical document by using the attribute key is as follows:
public cloud-based proxy key DKi,jPartially decrypting the ciphertext and generating a partial ciphertext CTp:
PartialDec(CT,DKi,j)→CTp: public cloud according to ciphertext CT and proxy key DKi,jComputingSo that
Dec1(CTp,SKi,j) → M/. T: user with attribute key according to partial cipher text CTp=(CM,C0,CT) And attribute key SKi,jRecovering fromObtaining againAnd M' ═ SDec (H)2(γ),CM) (ii) a If it is notOutputting the medical document M; otherwise output ^ T, whereAfter M representsAnd 0.
Compared with the prior art, the invention has the following beneficial effects:
(1) cross-domain fine-grained access control: the invention uses the encryption algorithm with cross-domain access strategy based on the attribute to encrypt the medical record of the patient, so that the authorized user (including the patient, the medical staff or the friends and relatives of the patient) in the system can access the medical record.
(2) Password-based emergency access: the invention provides an emergency access mechanism, a password and a group of emergency contacts are preset by a patient, and in an emergency situation, the emergency contacts can acquire an emergency access key by using the password so as to recover all medical data of the patient, so that the emergency access mechanism is favorable for timely treating the patient.
(3) Safe de-weighting: the invention supports the safe duplicate removal of the encrypted data based on the attribute, effectively saves the storage space and reduces the transmission cost between the public cloud and the user, and the duplicate removal operation comprises three stages: firstly, detecting whether a ciphertext is valid; secondly, detecting whether the ciphertext contains the same medical document; and finally, the ciphertext is re-encrypted by using the combined access strategy, so that an authorized user who can access the original ciphertext can access the encrypted data.
Drawings
FIG. 1 is a system framework diagram of the present invention;
FIG. 2 is a diagram of the system set up process of the present invention;
FIG. 3 is a key generation process for a medical facility of the present invention;
FIG. 4 is a user attribute key generation process of the present invention;
FIG. 5 is a proxy key generation process of the present invention;
FIG. 6 is a password-based emergency access key generation process of the present invention;
fig. 7 is a process of password-based emergency access key extraction according to the present invention.
Detailed Description
The invention is further explained below with reference to the drawings and the embodiments.
The invention relates to a cross-domain medical cloud storage system supporting emergency access control and safe duplicate removal, which comprises a key generation center, a medical institution and a public cloud;
the key generation center is used for generating public parameters and a main private key of the cross-domain medical cloud storage system, detecting the medical quality of the medical institution and generating a public key/private key for the medical institution;
the medical institution distributes an attribute set according to the characteristics of the user, generates an attribute key, and executes storage and calculation service for the user through the private cloud;
the public cloud is used for storing medical documents of patients of different medical institutions and responding to data access inquiry;
the patient acquires medical service through a medical institution, sets a password and an emergency access key based on the password, and informs an emergency contact of the password; the patient appoints an access strategy and an emergency access key to encrypt medical documents of the patient and then store the medical documents to the public cloud; the emergency contact list is managed by a private cloud of the medical institution;
the method comprises the steps that a user registers in a medical institution to obtain an anonymous identity and an attribute key, obtains a corresponding proxy key according to the anonymous identity and the attribute key and sends the proxy key to a public cloud, the public cloud generates a part of ciphertext of an encrypted medical document according to the proxy key, and the user obtains a plaintext of the encrypted medical document according to the attribute key and the part of ciphertext;
the emergency contact acquires the emergency access key by using the password to decrypt the encrypted medical document of the patient;
the public cloud interacts with a private cloud of the medical institution to perform a secure deduplication operation to eliminate copies of the encrypted medical documents.
The specific implementation process is as follows:
as shown in FIG. 1, the system framework of the present invention comprises the following entities of various types, each of which has the following features and functions:
key Generation Center (KGC): the KGC is a trusted third party entity and is responsible for generating system public parameters and generating a master private key and storing the master private key in a secret manner; the KGC is also responsible for detecting the medical quality of the medical institution and generating public/private keys for it.
Medical Institution (MI): the medical institution registers to the KGC to acquire a public key/private key pair, is responsible for treating patients and managing patients and medical staff in the medical field, distributes a group of attribute sets according to the characteristics of the patients and the medical staff and generates an attribute key, and executes storage and calculation services for the users through a private cloud, such as emergency contact list storage, cipher text re-encryption, emergency access key extraction and the like of the patients.
Data owner (based on medical internet of things): the data owner is typically a patient and the medical internet of things system is responsible for monitoring physiological data of the patient. Implanting several small wireless sensors in the patient or attached to the surface of the patient's skin to continuously monitor the patient's physiological parameters and send them to the aggregation node; medical data of a patient is recorded in an electronic medical document, in order to protect privacy of the patient, the medical document is encrypted into a ciphertext, an access policy is specified for the ciphertext so as to perform access control, only an authorized user can recover the document, then the protected medical document is outsourced to a public cloud for storage, and in order to deal with an emergency, the patient presets a password, an emergency access key and a set of emergency contacts (such as his main doctor, family or friend). The emergency access key may be used to decrypt all encrypted medical documents of the patient. The patient securely hands the password to an Emergency Contact (ECP). When the patient encounters an emergency, the ECP may derive the emergency access key from the password and recover the patient's medical documentation. The private cloud of the medical institution is responsible for managing ECP lists of patients.
Public cloud: the public cloud is responsible for storing medical documents of data owners from different medical institutions and responding to data access queries; according to the attributes of the data user and the access policy of the encrypted document, the public cloud can detect whether the user has the right to access the data, and provide partial decryption service for the user to reduce the calculation burden of the user. To eliminate copies of encrypted medical documents, the public cloud interacts with the private cloud of the medical institution to perform secure deduplication operations to save storage space.
The data user: a data user (e.g., a medical person or a patient's friend, relative) registers with a medical institution to obtain an attribute key, and the user sends a data access query to the public cloud to obtain an encrypted medical document and decrypts it using the attribute key.
Emergency Contact (ECP): the patient securely shares the password to the emergency contact and the ECP uses the password to obtain the emergency access key to decrypt the patient's medical documents when the patient is in a dangerous condition.
1. System set-up
FIG. 2 shows the system setup process, KGC inputs security parameters 1κThe GlobalSetup algorithm generates the public parameters PP and the master private key MSK of the system. The public parameter PP is disclosed in the system, and the KGC secretly stores the MSK. Globalsetup (1)κ) → (PP, MSK): the KGC executes the algorithm. KGC randomly selects a hash functionSecure symmetric encryption/decryption algorithm SEnc/SDec and symmetric key spaceKGC selection cycle groupGenerating element ofAnd random numberCalculating Y ═ e (g)1,g2)η. KGC sets the common parameter PP ═ g, g1,g2,g3,Y,H1,H2secc/SDec), MSK is set to η. Wherein, represents fromAnd selecting a random value eta.
2. Key generation for medical institutions
As shown in fig. 3, when the ith medical facility registers with the system, the KGC checks whether it is a qualified facility. If qualified, the KGC assigns an identity MI to the medical facilityiAnd generates a public key PK thereforiAnd a private key SKi. System publication PKiSK is transmitted via a secure channeliTo MIi。
KeyGen.MI(MIi,MSK)→(PKi,SKi): the KGC executes the algorithm. Input of algorithm is main private key MSK and identity MI of medical institutioni. Random selection of alpha by KGCi,βi,And calculating to obtain MIiPublic key PKi:
MIiPrivate key SKi:
MIiIs PKi=(pki,1,pki,2) The private key is SKi=(Ki,1,Ki,2,Ki,3,Ki,4,Ki,5)。
3. User key generation
As shown in FIG. 4, when the jth user Ui,jTo medical institutions MIiWhen registering, the medical institution first verifies his identity. The user may be a patient, doctor, nurse, or other persona. In order to protect user privacy, MIiFor user Ui,jDistributing anonymous identitiesAnd hide its true identity. Based on user identity, MIiAssigning a set of attribute collectionsTo describe the characteristics of the user. Then MIiFor anonymous identities to PIDi,jUser generated attribute key SKi,j。
Medical institution MIiThe algorithm is executed. The input to the algorithm is the medical institution MIiIdentity of the user, anonymous identity PID of the useri,j,MIiPrivate key SKiAnd attributes of the userMIiV 'is chosen randomly'i,j,Setting vi,j=vi+v'i,j(viUnknown), calculate PIDi,jIs a secret key SKi,j:
ski,j,3=gt,
4. Proxy key generation
As shown in FIG. 5, at this stage, the user (anonymous identity PID)i,j) Generating a proxy key DKi,jAnd sends it to the public cloud. The public cloud converts the ciphertext by using the proxy key, so that the user can recover the medical document only by light-weight calculation. Meanwhile, the public cloud cannot acquire plaintext information of the medical document.
KeyGen.Del(PIDi,j,SKi,j)→DKi,j: the user executes the algorithm. The input of the algorithm is the anonymous identity PID of the useri,jAnd a private key SKi,j. User selection of random numbersComputing authorizationKey DKi,j:
DK3=(ski,j,3)τ=(gt)τ,
5. Password-based emergency access key generation
As shown in fig. 6, emergency access key generation process, to provide effective data access when a patient encounters an emergency situation (e.g., a sudden faint or heart attack), the patient presets a password-based emergency access key BGKi,jIt can be used to decrypt encrypted medical documents that are all of the patient. Patient (anonymous identity PID)i,j) Setting password pwi,jAnd emergency access key BGKi,j. The patient specifies a set of emergency contacts (e.g. his attending physician, family or friend) and tells them the password pw in secreti,j. The emergency contact may utilize the password pwi,jThe emergency access key for the patient is recovered. The private cloud of the medical facility where the patient is located is responsible for storing the emergency contact list. Patient utilizes password pwi,jGenerating an emergency access key, BGKi,jAuxiliary information (BGK)i,j,1,BGKi,j,2) And sends it to the public cloud and the MI, respectivelyiA private cloud. The emergency contact may utilize the password pwi,jObtaining emergency access key BGK by recovering auxiliary informationi,j。
KeyGen.BGK(PIDi,j,pwi,j)→(BGKi,j,1,BGKi,j,2): the patient executes the algorithm. The input to the algorithm is the anonymous identity PID of the patienti,jAnd password pwi,j. Patient random selection ζ1,ζ2,σ1,Ψ,Ψ1∈RG, setting a BGK (emergency access key)i,jΨ, calculate:
BGK for patientsi,j,1Sending the BGK to public cloudi,j,2To medical institutions MIiA private cloud.
6. Password-based emergency access key extraction
When the patient (anonymous identity PID)i,j) In an emergency situation, the patient needs to have quick access to his encrypted medical documentation in order to give him immediate and effective treatment. Medical institution MIiWill contact his designated emergency contact who knows the emergency access key BGK with the patienti,jCorresponding password pwi,j. Emergency contact with public cloud and MIiThe private cloud carries out interaction to obtain an emergency access key BGKi,j。
Extract.BGK(PIDi,j,pwi,j,BGKi,j,1,BGKi,j,2)→BGKi,j: the emergency contacts of the patient, the public cloud, and the medical institution interactively execute the algorithm. Anonymous identity PID entered into a patienti,jPassword pwi,jAnd auxiliary information BGKi,j,1,BGKi,j,2BGK outputs BGKi,jThe interaction process of the algorithm is shown in fig. 7.
(6) User BGK calculationi,j=Ψ=(W1·W2)·(A1·A2)ξAn emergency access key is obtained.
7. Encryption
When the medical internet of things generates a medical document, a patient encrypts the document M into a ciphertext and embeds an access strategy in the encryption processCipher-output and conversion key TK of encryption algorithmi,jAnd certification information pf. According to a combined access strategy, a safe deduplication algorithm utilizes a transformed key TKi,jAnd (5) encrypting the ciphertext again. The proving information pf enables the public cloud to distinguish different ciphertexts encrypted by the same plaintext information. TK for patienti,jTo MIiThe public cloud is responsible for storage (CT, pf).
The patient executes the algorithm. The input of the algorithm is a medical document M, and the access strategyMIiPublic key PKiAnonymous identity of the patient PIDi,jAnd emergency access key BGKi,jWhereinρ will matrixIs mapped to the medical institution, delta is the matrixThe row vector of (a) maps to an attribute.Is thatRow x.
Patient random selectionLet v be (z, v)2,...vn)T,w=(0,w2,...,wn)T. Order to They are respectively representedZ and 0 share (share), symbol, corresponding to row x<·>Representing an inner product operation. Patient calculation of a conversion key
The patient isX in each row of the random selectionFor the electronic medical document M, the patient sets the document numberCalculating elements of CT;
γ=H2(Ψ,PIDi,j,FID),
C0=γ·Yz=γ·e(g1,g2)η·z,
D2=gs,
θ=H1(CM,C-1,C0,{C1,x,C2,x,C3,x,C4,x}x∈[l],D1,D2,D3,B1,B2),
D4=r1-θ·H1(M),
D5=r2-θ·H1(γ)。
the information is verified as pf ═ D (D)1,D2,D3,D4,D5θ), patient handle (PID)i,jFID, CT, pf) to the public cloud, secretly transmitting TKi,jTo MIi。
8. Safe deduplication
(1) Ciphertext validity detection
In the safe duplicate removal process, the public cloud firstly checks whether the stored ciphertext is valid. And outputting 1 by the ciphertext validity detection algorithm to show that the ciphertext is valid, and otherwise, outputting 0.
ValidityTest (CT, pf) → 1/0: the public cloud executes the algorithm. The inputs to the algorithm are the ciphertext CT and the proof information pf.
Public cloud computing
θ'=H1(CM,C-1,C0,{C1,x,C2,x,C3,x,C4,x}x∈[l],D1,D2,D3,B1',B2'),
It is verified whether the equation θ' holds. If true, the algorithm outputs 1, otherwise 0 is output.
(2) Information isocratic detection
If the validity detection algorithm has verified that both ciphertexts are valid, the information equality detection algorithm will detect whether they are in the form of ciphertexts of the same plaintext. If so, the algorithm outputs 1, otherwise outputs 0.
MsgTest(pf1,pf2) → 1/0: the public cloud executes the algorithm. The input of the algorithm is the certification information pf of the ciphertext1And pf2. Assuming pf1=(D1,D2,D3,D4,D5,θ),pf2=(D1',D2',D3',D4',D5', θ'). Public cloud verification equation e (D)1,D2')=e(D1',D2) Whether or not this is true. If yes, the algorithm outputs 1 to indicate that the two ciphertexts are in the encrypted form of the same plaintext, otherwise 0 is output.
(3) Re-encrypted ciphertext
If it is verified that a set of ciphertext sets contains the same information and belongs to the same data owner, the public cloud performs a secure deduplication operation. Assume that the ciphertext and corresponding access policy are
Medical institution MIiFirstly, these access policies are combined into(combination of Access policiesMIiUsing combined access policiesRe-encrypting ciphertextA new ciphertext CT' is generated. Thus, Ciphertext (CT)1,...,CTm) Any predefined user of (2) can access the new ciphertext CT'. Handle (CT)1,...,CTm) The ciphertext with the minimum document number is marked as CT. Let CT be equal to CT1,FID=FID1。Medical institution MIiThe algorithm is executed. The input to the algorithm is the anonymous identity PID of the patienti,jTK for converting secret keyi,jCiphertext CT and combined access strategyWhereinρ' willIs mapped to the medical institution, δ' willThe rows of (2) map to attributes.To representThe x-th row of (a),
MIirandom selectionLet v ═ z ', v'2,...v'n)T,w'=(0,w'2,...,w'n)TWherein(z unknown). Order toThey are respectively representedRow x of (a) corresponds to z and 0 shares (share). MIiIs composed ofX in each row of the random selectionAnd calculates ciphertext CT '═ C'M,C'-1,C'0,{C'1,x,C'2,x,C'3,x,C'4,x}x∈[l]):
C'M=CM,
C'0=C0·Yz=γ·Yz',
Using a transfer key TKi,jCan calculate element C'1,x:
Obviously, C'1,xStructure of (2) and C in the original ciphertext1,xHas consistency.
9. Partial decryption
To reduce the computational burden on the user, the public cloud utilizes a proxy key DKi,jPartially decrypting the ciphertext and generating a partial ciphertext CTp. In this process, the public cloud cannot acquire plaintext information M of the ciphertext.
PartialDec(CT,DKi,j)→CTp: the public cloud executes the algorithm. The input of the algorithm is ciphertext CT and authorization key DKi,j. Public cloud computingSo thatComputingAnd will CTp=(CM,C0,CT) And sending the data to the user.
10. Decryption and authentication with attribute keys
Possession of an Attribute Key SKi,jBy a decryption algorithm Dec1And recovering to obtain the medical document M.
Dec1(CTp,SKi,j) → M/. T: the user in possession of the attribute key executes the algorithm. The input of the algorithm is partial cipher text CTp=(CM,C0,CT) And attribute key SKi,jThe user resumes obtainingAnd M' ═ SDec (H)2(γ),CM). If it is notIndicating that the partial decryption algorithm executed by the public cloud is correct, and outputting a medical document M by the algorithm; otherwise, outputting ^ t.
11. Decryption and authentication with emergency access key
Extracting an emergency access key BGK by an emergency contact by using algorithm extracti,jAnd using a decryption algorithm Dec2The patient's medical document is decrypted.
Dec2(PIDi,j,FID,CM,BGKi,j) → M/. T: the emergency contact of the patient executes the algorithm. The input to the algorithm is the anonymous identity PID of the patienti,jDocument number FID and ciphertext CMAnd emergency access key BGKi,jThe emergency contact recovers γ ═ H2(BGKi,j,PIDi,jFID) and M' ═ SDec (H)2(γ),CM) If, ifIndicating that an emergency contact has correctly extracted BGKi,jOutputting a medical document M by an algorithm; otherwise, outputting ^ t.
12. Access policy
Definition 1 (access architecture): defining a set of entities { P }1,...,PnH, if any set B and C satisfies: when in useAnd isTime of flightThenOne access structure is { P1,...,PnNon-empty subset ofFor example Is called an authorization set, is notA set in (2) is referred to as an unauthorized set.
Definition 2: (Linear secret sharing scheme (LSSS)). Entity collectionsAbove secret sharing scheme Π is called linearityAbove) if and only if: 1. share of each party (share) formingThe vector of (c). 2. There is a matrix M of l × n called the generator matrix of pi shares (share). The ith line of l, M is marked by ρ (i) (ρ is { 1.·, l } to) for all i ═ 1.·,.., l, MA function of). Let vector v equal (s, r)2,...rn) Where s is the secret to be sharedRandom selectionMv is the share vector ((Mv) of the secret s according to ΠiBelonging to ρ (i)). By definition, each LSSS has linear reconstruction properties. Suppose Π is the Access StructureLSSS of (1), orderIs an arbitrary authorization set, and defines I ═ { I: ρ (I) ∈ S }, whereAccording to Π, if anySo thatIs a valid share of any secret s, then isi∈IwiλiS. For an unauthorized set, there is no such constant. The invention uses a LSSS matrix (M, p) to express the access policy associated with the ciphertext.
13. Bilinear group
AlgorithmInputting a security parameter lambda, outputting prime order bilinear mapping parameters p, g,e. whereinAndis a multiplicative cyclic group of prime order p, g isThe generator of (1). MappingIs a bilinear map. The bilinear map e has three attributes: (1) bilinear:and isWith e (u)a,vb)=e(uv)ab. (2) Non-degradability: e (g, g) ≠ 1. (3) Calculability: e can be obtained by efficient calculation.
The internet of things (IOT) technology allows medical devices in a wireless medical sensor network to be connected to the internet, which brings great convenience to daily health monitoring and diagnosis of patients and the elderly. Since the patient's medical information is very sensitive, it needs to be encrypted before transmission and storage. The invention provides a cross-domain medical cloud storage system supporting emergency access control and safe deduplication, which supports data sharing and access of cross-medical domains. In the encryption phase, the invention encrypts the medical document using a cross-domain access policy so that medical personnel from different medical domains can access it. Emergency situations may occur in medical applications, for example, a patient suddenly falls down and needs emergency rescue. To address emergency situations, the present invention provides a password-based emergency access mechanism that can decrypt any encrypted medical documents of a patient to save the patient's life. In addition, the invention adopts a safe deduplication mechanism to delete redundant ciphertext containing the same message, thereby saving storage space and transmission overhead.
As will be appreciated by one skilled in the art, embodiments of the present application may be provided as a method, system, or computer program product. Accordingly, the present application may take the form of an entirely hardware embodiment, an entirely software embodiment or an embodiment combining software and hardware aspects. Furthermore, the present application may take the form of a computer program product embodied on one or more computer-usable storage media (including, but not limited to, disk storage, CD-ROM, optical storage, and the like) having computer-usable program code embodied therein.
The present application is described with reference to flowchart illustrations and/or block diagrams of methods, apparatus (systems), and computer program products according to embodiments of the application. It will be understood that each flow and/or block of the flow diagrams and/or block diagrams, and combinations of flows and/or blocks in the flow diagrams and/or block diagrams, can be implemented by computer program instructions. These computer program instructions may be provided to a processor of a general purpose computer, special purpose computer, embedded processor, or other programmable data processing apparatus to produce a machine, such that the instructions, which execute via the processor of the computer or other programmable data processing apparatus, create means for implementing the functions specified in the flowchart flow or flows and/or block diagram block or blocks.
These computer program instructions may also be stored in a computer-readable memory that can direct a computer or other programmable data processing apparatus to function in a particular manner, such that the instructions stored in the computer-readable memory produce an article of manufacture including instruction means which implement the function specified in the flowchart flow or flows and/or block diagram block or blocks.
These computer program instructions may also be loaded onto 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
Instructions which execute on the programmable apparatus provide steps for implementing the functions specified in the flowchart flow or flows and/or block diagram block or blocks.
The above are preferred embodiments of the present invention, and all changes made according to the technical scheme of the present invention that produce functional effects do not exceed the scope of the technical scheme of the present invention belong to the protection scope of the present invention.
Claims (7)
1. A cross-domain medical cloud storage system supporting emergency access control and safe duplicate removal is characterized by comprising a key generation center, a medical institution and a public cloud;
the key generation center is used for generating public parameters and a main private key of the cross-domain medical cloud storage system, detecting the medical quality of the medical institution and generating a public key/private key for the medical institution;
the medical institution distributes an attribute set according to the characteristics of the user, generates an attribute key, and executes storage and calculation service for the user through a private cloud;
the public cloud is used for storing medical documents of patients of different medical institutions and responding to data access inquiry;
the patient acquires medical service through a medical institution, sets a password and an emergency access key based on the password, and informs an emergency contact of the password; the patient appoints an access strategy and an emergency access key to encrypt medical documents of the patient and then store the medical documents to the public cloud; the emergency contact list is managed by a private cloud of the medical institution;
the method comprises the steps that a user registers in a medical institution to obtain an anonymous identity and an attribute key, obtains a corresponding proxy key according to the anonymous identity and the attribute key and sends the proxy key to a public cloud, the public cloud generates a part of ciphertext of an encrypted medical document according to the proxy key, and the user obtains a plaintext of the encrypted medical document according to the attribute key and the part of ciphertext;
the emergency contact acquires the emergency access key by using the password to decrypt the encrypted medical document of the patient;
the public cloud interacts with a private cloud of the medical institution, and performs a security deduplication operation to eliminate a copy of the encrypted medical document;
wherein the key generation center inputs a security parameter 1κGenerating public parameters and a main private key of the system by using a GlobalSetup algorithm, which comprises the following specific steps:
GlobalSetup(1κ) → (PP, MSK): key generation centric randomly selected hash function Secure symmetric encryption/decryption algorithm SEnc/SDec and symmetric key spaceThe key generation center then selects a cyclic groupGenerating element ofAnd random numberCalculating Y ═ e (g)1,g2)ηWhere e denotes bilinear pairwise arithmetic, and a common parameter PP ═ g, g is set1,g2,g3,Y,H1,H2SEnc/SDec), setting a main private key MSK as eta; wherein,p is a prime number,represents fromSelecting a random value eta;
when the ith medical institution registers to the cross-domain medical cloud storage system, the key generation center checks the medical quality of the ith medical institution; if qualified, the key generation center assigns an identity MI to the facilityiAnd generates a public key PK thereforiAnd a private key SKiCross-domain medical cloud storage system public PKiSK is transmitted via a secure channeliTo medical institutions MIiThe method comprises the following steps:
KeyGen.MI(MIi,MSK)→(PKi,SKi): key generation center random selectionBased on the master private key MSK and the identity MI of the medical institutioniIs calculated to obtain
MIiPublic key PKi:
MIiPrivate key SKi:
MIiIs PKi=(pki,1,pki,2) The private key is SKi=(Ki,1,Ki,2,Ki,3,Ki,4,Ki,5)。
2. The cross-domain medical cloud storage system supporting emergency access control and security deduplication as claimed in claim 1, wherein when jth user U is presenti,jTo medical institutions MIiDuring registration, the medical institution verifies the identity of the user Ui,jDistributing anonymous identitiesAnd hide its true identity, depending on the user identity, MIiAssigning a set of attribute collectionsTo characterize the user and for anonymous identity PIDi,jUser generated attribute key SKi,jThe method comprises the following steps:
medical institution MIiRandom selectionSetting vi,j=vi+v'i,jCalculating the user's attribute key SKi,j:
ski,j,3=gt,
3. The cross-domain medical cloud storage system supporting emergency access control and secure deduplication as claimed in claim 2System, characterized in that a random number is selectedPID based on user anonymous identityi,jAnd attribute key SKi,jComputing proxy key DKi,jAnd sending to the public cloud, calculating as follows:
DK3=(ski,j,3)τ=(gt)τ
4. The cross-domain medical cloud storage system supporting emergency access control and security deduplication as claimed in claim 1, wherein the emergency access key generation manner is:
the patient sets a password pwi,jAnd emergency access key BGK based on the passwordi,jUsing the password pwi,jGenerating an emergency access key, BGKi,jAuxiliary information (BGK)i,j,1,BGKi,j,2) BGKi,j,1Sending the BGK to public cloudi,j,2To medical institutions MIiPrivate cloud, emergency contact utilizes password pwi,jAnd auxiliary information (BGK)i,j,1,BGKi,j,2) Recovering to obtain BGK (emergency access key)i,j(ii) a The concrete implementation is as follows: BGK (PID)i,j,pwi,j)→(BGKi,j,1,BGKi,j,2): random selectionΨ,Ψ1∈RG, setting a BGK (emergency access key)i,jΨ, PID based on the anonymous identity of the patienti,jAnd password pwi,jAnd (3) calculating:
5. the cross-domain medical cloud storage system supporting emergency access control and security deduplication of claim 4, wherein the emergency contact is MI with a public cloud and a medical institutioniInteracts according to the anonymous identity PID of the patienti,jPassword pwi,jAnd auxiliary information BGKi,j,1,BGKi,j,2Obtaining an emergency access key BGKi,jThe specific process is as follows: extract.BGK (PID)i,j,pwi,j,BGKi,j,1,BGKi,j,2)→BGKi,j: tighten upSelection of random number for emergency contactComputingAnd sends it to the public cloud and medical institution MIi(ii) a Public cloud selection of random numbersComputingAnd transmits it to the medical structure MIi(ii) a Medical institution MIiSelecting random numbersComputingAnd send it to the public cloud; public cloud computingAnd will be (A)1,W1) Sending the information to an emergency contact; medical institution MIiComputingAnd will be (A)2,W2) Sending the information to an emergency contact; by calculating BGKi,j=Ψ=(W1·W2)·(A1·A2)ξAn emergency access key is obtained.
6. The cross-domain medical cloud storage system supporting emergency access control and security deduplication as claimed in claim 1, wherein the patient-specified access policy and emergency access key encrypt their medical documents in a manner that: patient history in encrypted medical document MIn-flight embedded access policyAccess policy based on medical document MMedical institution MIiPublic key PKiAnonymous identity of the patient PIDi,jAnd emergency access key BGKi,jObtaining the ciphertext CT and the transformation key TKi,jAnd the proof information pf is specifically realized as:ρ will matrixIs mapped to the medical institution, delta is the matrixThe row vector of (a) is mapped to an attribute,is thatThe x-th row of (a),the expression is given by taking a matrix of l × n, the number of rows is l, the number of columns is n, and each element in the matrix is selected fromIs selected from, whereinRepresents the set 0,1, …, p-1;
patient random selectionLet v be (z, v)2,...vn)T,w=(0,w2,...,wn)TLet us orderλxAnd wxRespectively representZ and 0, sign<,>Computing a transformation key by performing an inner product operation
The patient isX in each row of the random selection Representing a positive integer, and setting a document number for the medical document MComputing the elements of the ciphertext CT:
Υ=H2(Ψ,PIDi,j,FID),
C0=Υ·Yz=Υ·e(g1,g2)η·z, whereinAfter M representsThe number of the 0 s is 0,presentation element PKρ(x),1T ofxThe power; ρ (x) represents the mapping of the access control function ρ to the input element x; alpha is alphaρ(x) Denotes an alpha element, beta, corresponding to ρ (x)ρ(x)Denotes β elements corresponding to ρ (x), δ (x) denotes an access control function δ mapping an input element x, Ψ denotes an emergency access key, and CT ═ CM,C-1,C0,{C1,x,C2,x,C3,x,C4,x}x∈[l]) (ii) a Where x ∈ [ l ]]Denotes that x is more than or equal to 1 and l is a matrixThe number of rows of (c);
θ=H1(CM,C-1,C0,{C1,x,C2,x,C3,x,C4,x}x∈[l],D1,D2,D3,B1,B2),D4=r1-θ·H1(M),
D5=r2-θ·H1(γ), confirmation information pf ═ D (D)1,D2,D3,D4,D5θ), patient handle (PID)i,jFID, CT, pf) to the public cloud, and the TK for the key conversioni,jTo medical institutions MIiAnd the proof information pf is used for enabling the public cloud to distinguish different ciphertexts encrypted by the same plaintext information.
7. The cross-domain medical cloud storage system supporting emergency access control and secure deduplication of claim 6, wherein secure deduplication operations comprise:
the method comprises the following steps: and detecting whether the ciphertext is valid:
ValidityTest (CT, pf) → 1/0: and calculating by the public cloud according to the ciphertext CT and the proof information pf:
θ'=H1(CM,C-1,C0,{C1,x,C2,x,C3,x,C4,x}x∈[l],D1,D2,D3,B1',B2')
verifying whether the equation theta' is true or not, if true, outputting 1 to indicate that the ciphertext is valid, and otherwise, outputting 0 to indicate that the ciphertext is invalid;
step two: detecting whether the ciphertext contains the same medical document:
MsgTest(pf1,pf2) → 1/0: let pf1=(D1,D2,D3,D4,D5,θ),pf2=(D1',D2',D3',D4',D5',θ'),D1',D2',D3',D4',D5' indicating a proof message pf2The first 5 elements in the public cloud according to the certification information pf of the ciphertext1And pf2Verification of equation e (D)1,D2')=e(D1',D2) If yes, outputting 1 to show that the two ciphertexts are in the same plaintext encryption form, otherwise outputting 0;
step three: re-encrypting the ciphertext using the combined access policy, such that a user having access to the original ciphertext may also access the encrypted data:
assume that the ciphertext and corresponding access policy areMedical institution MIiDeriving a combined access policyAnd using combined access policiesRe-encrypting the ciphertext to generate a new ciphertext CT', bundle (CT)1,...,CTm) The cipher text with the minimum number of the middle document is marked as CT, and the CT is made to be CT1,FID=FID1:FID1A representation of the identifier of the document,
medical institution MIiPID based on anonymous identity of patienti,jTK for converting secret keyi,jCiphertext CT and combined access strategyComputing a new ciphertext CT', wherein Representing a matrix of l '× n', with the number of rows l ', the number of columns n', and each element in the matrix fromIs selected from, whereinRepresents the set 0,1, …, p-1;
ρ' willIs mapped to the medical institution, δ' willThe row of (a) is mapped to an attribute,to representThe x-th row of (a),random selectionLet v ═ z ', v'2,...v'n)T,w'=(0,w'2,...,w'n)TWhereinOrder toλ'xAnd w'xRespectively representZ and 0 fraction corresponding to the x-th row of (1), medical institution MIiIs composed ofX in each row of the random selectionAnd calculates ciphertext CT '═ C'M,C'-1,C'0,{C'1,x,C'2,x,C'3,x,C'4,x}x∈[l]):
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN201711051952.6A CN107635018B (en) | 2017-10-30 | 2017-10-30 | Cross-domain medical cloud storage system supporting emergency access control and safe deduplication |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN201711051952.6A CN107635018B (en) | 2017-10-30 | 2017-10-30 | Cross-domain medical cloud storage system supporting emergency access control and safe deduplication |
Publications (2)
Publication Number | Publication Date |
---|---|
CN107635018A CN107635018A (en) | 2018-01-26 |
CN107635018B true CN107635018B (en) | 2021-05-18 |
Family
ID=61107055
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
CN201711051952.6A Active CN107635018B (en) | 2017-10-30 | 2017-10-30 | Cross-domain medical cloud storage system supporting emergency access control and safe deduplication |
Country Status (1)
Country | Link |
---|---|
CN (1) | CN107635018B (en) |
Families Citing this family (6)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN109194523B (en) * | 2018-10-01 | 2021-07-30 | 西安电子科技大学 | Privacy protection multi-party diagnosis model fusion method and system and cloud server |
CN109922128A (en) * | 2019-01-08 | 2019-06-21 | 中金数据(武汉)超算技术有限公司 | A kind of data safety exchange method suitable for across cloud service deployment environment |
CN111324898B (en) * | 2020-01-20 | 2023-04-07 | 福州大学 | Block chain-based electronic medical document dual-access control system |
CN111756777B (en) * | 2020-08-28 | 2020-11-17 | 腾讯科技(深圳)有限公司 | Data transmission method, data processing device, data processing apparatus, and computer storage medium |
CN112735566B (en) * | 2020-12-28 | 2023-05-30 | 武汉联影医疗科技有限公司 | Medical image management method, device, computer equipment and storage medium |
CN117294465B (en) * | 2023-08-11 | 2024-06-07 | 广州大学 | Attribute encryption system and method based on cross-domain communication |
Citations (3)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN104683351A (en) * | 2015-03-17 | 2015-06-03 | 西安电子科技大学 | System and method for controlling anonymous hospitalizing and security access of medical information based on property |
CN106254374A (en) * | 2016-09-05 | 2016-12-21 | 电子科技大学 | A kind of cloud data public audit method possessing duplicate removal function |
CN107104982A (en) * | 2017-05-26 | 2017-08-29 | 福州大学 | Have traitor tracing function in mobile electron medical treatment can search for encryption system |
Family Cites Families (1)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US8099603B2 (en) * | 2006-05-22 | 2012-01-17 | Corestreet, Ltd. | Secure ID checking |
-
2017
- 2017-10-30 CN CN201711051952.6A patent/CN107635018B/en active Active
Patent Citations (3)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN104683351A (en) * | 2015-03-17 | 2015-06-03 | 西安电子科技大学 | System and method for controlling anonymous hospitalizing and security access of medical information based on property |
CN106254374A (en) * | 2016-09-05 | 2016-12-21 | 电子科技大学 | A kind of cloud data public audit method possessing duplicate removal function |
CN107104982A (en) * | 2017-05-26 | 2017-08-29 | 福州大学 | Have traitor tracing function in mobile electron medical treatment can search for encryption system |
Also Published As
Publication number | Publication date |
---|---|
CN107635018A (en) | 2018-01-26 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
Yang et al. | Privacy-preserving smart IoT-based healthcare big data storage and self-adaptive access control system | |
CN107635018B (en) | Cross-domain medical cloud storage system supporting emergency access control and safe deduplication | |
Au et al. | A general framework for secure sharing of personal health records in cloud system | |
Yang et al. | Lightweight sharable and traceable secure mobile health system | |
CN108040056B (en) | Safe medical big data system based on Internet of things | |
WO2019090988A1 (en) | Cryptography attribute-based access control method and system based on dynamic rule | |
Deepa et al. | RETRACTED ARTICLE: E health care data privacy preserving efficient file retrieval from the cloud service provider using attribute based file encryption | |
CN107104982B (en) | It can search for encryption system with traitor tracing function in mobile electron medical treatment | |
Chen et al. | An infrastructure framework for privacy protection of community medical internet of things: Transmission protection, storage protection and access control | |
CN105897742B (en) | Anonymous Identity base access control method applied to electronic health care network | |
CN107579980A (en) | Lightweight double call control system in medical Internet of Things | |
CN112364376A (en) | Attribute agent re-encryption medical data sharing method | |
Du et al. | A medical information service platform based on distributed cloud and blockchain | |
CN114938382B (en) | Electronic medical record safe and controllable sharing method based on alliance block chain | |
CN111274594A (en) | Block chain-based secure big data privacy protection sharing method | |
CN111931249A (en) | Medical secret data statistical analysis method supporting transmission fault-tolerant mechanism | |
CN115378966A (en) | Intelligent medical online service system and intelligent medical online service method | |
Sun et al. | A privacy-aware and traceable fine-grained data delivery system in cloud-assisted healthcare IIoT | |
CN110752024A (en) | Online medical diagnosis service system based on privacy protection | |
CN105656881B (en) | A kind of electronic health record can verify that outsourcing storage and retrieval system and method | |
CN113411323A (en) | Medical record data access control system and method based on attribute encryption | |
CN115134132A (en) | Certificateless identity anonymous privacy protection medical data integrity verification method | |
CN115473743A (en) | Searchable medical data sharing method for resisting internal keyword guessing attack | |
CN113660278B (en) | Quantum attack resistant non-interactive attribute proxy re-encryption method and system | |
Niu et al. | A data-sharing scheme that supports multi-keyword search for electronic medical records |
Legal Events
Date | Code | Title | Description |
---|---|---|---|
PB01 | Publication | ||
PB01 | Publication | ||
SE01 | Entry into force of request for substantive examination | ||
SE01 | Entry into force of request for substantive examination | ||
GR01 | Patent grant | ||
GR01 | Patent grant |