CN103023637A - Encryption and search method for revocable keyword search public keys in cloud storage - Google Patents

Encryption and search method for revocable keyword search public keys in cloud storage Download PDF

Info

Publication number
CN103023637A
CN103023637A CN2012105679908A CN201210567990A CN103023637A CN 103023637 A CN103023637 A CN 103023637A CN 2012105679908 A CN2012105679908 A CN 2012105679908A CN 201210567990 A CN201210567990 A CN 201210567990A CN 103023637 A CN103023637 A CN 103023637A
Authority
CN
China
Prior art keywords
keywords
ciphertext
keyword
server
trapdoor
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
CN2012105679908A
Other languages
Chinese (zh)
Other versions
CN103023637B (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.)
University of Electronic Science and Technology of China
Original Assignee
University of Electronic Science and Technology of China
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 University of Electronic Science and Technology of China filed Critical University of Electronic Science and Technology of China
Priority to CN201210567990.8A priority Critical patent/CN103023637B/en
Publication of CN103023637A publication Critical patent/CN103023637A/en
Application granted granted Critical
Publication of CN103023637B publication Critical patent/CN103023637B/en
Expired - Fee Related legal-status Critical Current
Anticipated expiration legal-status Critical

Links

Images

Abstract

The invention discloses an encryption and search method for revocable keyword search public keys in cloud storage and belongs to the technical field of network security. The method includes: setting system public parameters and dividing system time into z time segments, and creating a public-private key pair at a client; when data storage requests occurs, selecting a keyword collection of a data file, selecting optional symmetrical encryption algorithm to encrypt the data file, utilizing the public key and the current time segment to encrypt the keyword collection, and transmitting the encrypted keyword collection to the cloud server; when the next time segment arrives, generating keyword collection cipher again, and updating the cloud server on a server; when a keyword search request occurs, by the client, utilizing the private key and the current time segment to calculate trap door information of the keywords, transmitting the trap door information to the cloud server, and by the cloud server, obtaining the search results and sending back file cipher containing the search keywords to users. The encryption and search method is suitable for cloud storage with high safety requirements, safe, and efficient, and has the capability of revoking server search.

Description

Voidable keyword search public key encryption and searching method in a kind of cloud storage
Technical field
The invention belongs to the network security technology field, be specifically related to voidable keyword search key encrypt method and searching method in the secure cloud storage.
Background technology
The cloud storage is in the conceptive extension of cloud computing and development new ideas out.Cloud computing is the development of distributed treatment, parallel processing and grid computing, by network huge computing program is split into numerous less subprogram automatically, transfers to again bulky systems that the multi-section server forms and result is returned to the user after analyzing as calculated.By cloud computing technology, Internet Service Provider can be within the several seconds, processes number in necessarily even hundred million information, reaches and " supercomputer " same powerful network service.
The cloud storage refers to by functions such as cluster application, grid or distributed file systems, a large amount of various dissimilar memory devices in the network are gathered collaborative work by application software, a system of data storage and Operational Visit function externally is provided jointly.The data that the cloud stores service allows the user to store random scale are responsible for guaranteeing the fail safe of data, reliability, accessibility by cloud service provider.Under the help of cloud stores service, the user does not worry how preventing the relevant issues of losing, how guaranteeing the safe of data and need to purchase in advance the data storages such as how many spaces of data, thereby more energy is placed on the development of own service.
The advantage of cloud storage is apparent, but safety problem becomes the key factor of its development of restriction, because there is a lot of sensitive informations in the user data, if the user stores the data of oneself on the Cloud Server into, and leakage problem that will concern of data.Encryption technology is to prevent that message from revealing and the effective means of protection sensitive data; by the encryption to data; only allow the owner of data to be decrypted data, even leakage has occured in the data that are stored on the Cloud Server, any content of the data that also can not leak.Although the possibility of revealing by can stop data to the encryption of cloud data causes remote data access to become a great problem simultaneously, the search of data and inquiry become intimate unreachable target especially.The cloud data of speaking of in this manual refer to the user data stored in the Cloud Server.The server that Cloud Server refers to provide the cloud stores service, is used for the storage user data.
The keyword search public key encryption is one of base application of public-key cryptosystem, utilizes public-key cryptosystem, and the user can realize adding the search of Miyun data and returning and get function under the prerequisite of leak data content not.
At present, keyword search is encrypted and is mainly comprised single key pattern and PKI pattern.Single key pattern is applicable to the owner of cloud data and the situation that the user is same subscriber take DSE arithmetic as the basis, and is situations of different user for both, and single key pattern needs to share session key by safe lane in advance.So-called safe lane refers to information with the Internet communication of encrypted form process, although the network attack person can intercept and capture all data of transmission over networks, and the real information that he can't obtain comprising in the data.Session key is the encryption and decryption key that guarantees that the user produces at random with secure communication session between other computer or two computers.And the PKI pattern allows the owner of data to utilize data consumer's PKI to come enciphered data before data are sent to Cloud Server, has realized data sharing, and has avoided the process of consulting session key.Based on this advantage; the keyword search public key encryption is more applicable for the secure cloud storage; not only can satisfy cloud storage user to the search that adds the Miyun data and return and get demand, and realize the secret protection of cloud data, any content that search procedure can leak data.
At present, the research of keyword search public key encryption is mainly concentrated on the keyword search public key encryption of specifying the searchers, the public key encryption of multiple key search, the aspects such as keyword search public key encryption of anti-off-line keyword guessing attack, the keyword search public key encryption is directly applied to secure cloud be stored in and also have following problem on function and the performance:
(1) do not solve search capability and cancel problem;
(2) search capability of server does not obtain restriction;
(3) search speed is slow, and the searching request response time is long;
(4) search efficiency is low, and bilinearity is many to computing.
Wherein the first two problem causes great threat to the safe storage of user's cloud data, and latter two problems has consumed the computational resource of Cloud Server greatly, make it can't respond simultaneously the searching request of a large number of users, cause period of reservation of number long, therefore all need to do one's utmost to avoid.
Summary of the invention
Goal of the invention of the present invention is: for the problem of above-mentioned existence, provide in a kind of cloud storage, voidable keyword search key encrypt method, satisfying the cloud storage environment demand of high security requirement, the user where necessary, the search capability of revocable Cloud Server, reduce the system-computed expense, shorten the searching request response time, and under the condition of not leaking the cloud data content, guarantee to add the safety search of Miyun data in the cloud storage environment and return and get.
Voidable keyword search key encrypt method in the cloud storage of the present invention comprises the following steps:
Step a. system initialization:
Select security parameter k, openly parameter of system is set, and system time is divided into an integer z time slice: t 1, t 2..., t z
Step b. generates user's public private key pair:
Private key s according to user side is selected generates corresponding PKI P Pub
Step c spanned file ciphertext and set of keywords ciphertext:
(c1) when the user has data storage request, user side is chosen the set of keywords W={w of data file M i| i=1 ..., n}, and data file M is encrypted, the file cipher text C of data file M obtained;
(c2) user side is based on described open parameter, PKI P Pub, set of keywords W and current time slice t i, generate set of keywords ciphertext corresponding to described set of keywords W
Figure BDA00002645586800021
And described file cipher text C and set of keywords ciphertext
Figure BDA00002645586800022
Send to server stores;
(c3) as new time slice t I+1During arrival, user side is based on open parameter, PKI P Pub, set of keywords W and current time slice t I+1, generate new set of keywords ciphertext And described set of keywords ciphertext
Figure BDA00002645586800032
Send to server, the set of keywords ciphertext that server update is preserved.
Further, among the described step a, the open parameter p of the system that arranges, q, GF (p), E, G 1, G 2, P, e, H 1, H 2, Q is specially:
Select large prime number p, q according to described security parameter k, get GF (p) and be p rank finite field, E is the elliptic curve on the GF (p), and E (GF (p)) is the q rank addition cyclic group that the point on the E consists of, and is designated as G 1
P is addition cyclic group G 1Generator;
Multiplication loop group G 2Addition cyclic group G 1On the q factorial method cyclic group that e mapping consisted of through bilinearity of point, bilinearity is from addition cyclic group G to e 1To multiplication loop group G 2Mapping, e:G 1* G 1→ G 2
H 1And H 2The crash-resistant hash function, described H 1To multiplication loop group Z from the 0 and 1 bit sequence compound mapping that forms q *H 2To addition cyclic group G from the 0 and 1 bit sequence compound mapping that forms 1
Q is addition cyclic group G 1On a random point.
Based on encryption method of the present invention, the present invention also provides voidable keyword search method in a kind of cloud storage, comprises the following steps:
By encryption method of the present invention the cloud data file M of user's pre-stored is encrypted processing, server stores file cipher text and set of keywords ciphertext when receiving user's searching request, start search procedure of the present invention:
User side is according to open parameter, private key s, PKI P Pub, the keyword w of searching request and current time slice t i, generate trapdoor corresponding to described keyword w
Figure BDA00002645586800033
And described trapdoor
Figure BDA00002645586800034
Send to server;
Server is received trapdoor
Figure BDA00002645586800035
After, according to open parameter, PKI P Pub, trapdoor
Figure BDA00002645586800036
Set of keywords ciphertext with storage
Figure BDA00002645586800037
Verify, if be proved to be successful, then return the ciphertext C of corresponding data file M; Otherwise do not return any data.
In sum, owing to adopted technique scheme, the invention has the beneficial effects as follows:
(1) the present invention is based on the public key cryptography pattern, therefore need not transmit session key or carry out session key agreement by safe lane, thereby reduce storage, communication and the computing cost of network, be more suitable for the cloud storage environment of data sharing and high security requirement;
(2) z the time slice of dividing based on the present invention, realized the timing renewal to the set of keywords ciphertext of server end storage, solved the revocable problem of search capability, limited the search capability of server, for the cloud data provide better safety assurance;
(3) among the present invention, each the keyword w among the set of keywords W iIn the set time section, equal corresponding same set of keywords ciphertexts, thus so that in the search procedure, server of the present invention need not be one by one to each the keyword w among the set of keywords W iCiphertext verify, the number of run of the checking formula in when search is reduced to 1 time from n time, significantly improved the keyword search efficient of keyword search public key encryption;
(4) among the present invention, each the keyword w among the set of keywords W iIn the set time section, equal corresponding same set of keywords ciphertexts, thus so that the present invention's required bilinearity in the search validation process is few to computing, accelerated the search speed of server, greatly shortened the response time of user search request.
Description of drawings
Examples of the present invention will be described by way of reference to the accompanying drawings, wherein:
Fig. 1 is the public key encryption process schematic diagram of the specific embodiment of the invention;
Fig. 2 is file cipher text and the set of keywords ciphertext generative process schematic diagram of the specific embodiment of the invention;
Fig. 3 is the search procedure schematic diagram of the specific embodiment of the invention.
Embodiment
Disclosed all features in this specification, or the step in disclosed all methods or the process except mutually exclusive feature and/or step, all can make up by any way.
Disclosed arbitrary feature in this specification (comprising any accessory claim, summary and accompanying drawing) is unless special narration all can be replaced by other equivalences or the alternative features with similar purpose.That is, unless special narration, each feature is an example in a series of equivalences or the similar characteristics.
The present invention is as the basis take the elliptic curve cipher theory, voidable keyword search key encrypt method in a kind of secure cloud storage is proposed, be applied to the cloud storage environment of high security requirement, the search capability of the revocable Cloud Server of user in case of necessity, reduce computing cost, shorten the searching request response time, and under the condition of not leaking the cloud data content, realize adding the safety search of Miyun data in the cloud storage environment and returning and get.
At first the applied mathematical theory of the present invention is simply introduced:
(1) elliptic curve cryptosystem ECC
If p and q are large prime number, GF (p) is p rank finite fields, and E is the elliptic curve on the GF (p), and E (GF (p)) is the q rank cyclic group that the point on the E consists of, and P ∈ E (GF (p)) is generator.Definition and choosing of security parameter thereof about elliptic curve can be consulted document: Don Johnson, Alfred Menezes and Scott Vanstone, The Elliptic Curve Digital Signature Algorithm (ECDSA), IJLS, vol.1issue1 (2001), 36-63.
(2) Hash function
The Hash function is exactly a kind of function that long arbitrarily input message transformation is become the output message of fixed length, and this output is called the hash value of this message.The Hash function of a safety should satisfy following condition at least; 1. inputting length is arbitrarily; 2. export length and fix, it is long to get at least 128bits, so that the opposing birthday attack; 3. to each given input, can calculate at an easy rate its output, i.e. hash value; 4. the description of given Hash function, finding two different input message Hash is that calculating is upper infeasible to same value, or the description of given Hash function and a message of selecting at random, find another message different from this message so that their Hash to same value be calculate upper infeasible.The Hash function is mainly used in completeness check and improves the validity of digital signature.
Hash function H among the present invention 1: { 0,1} *→ Z q *, be to multiplication loop group Z from the 0 and 1 bit sequence compound mapping that forms q *H 2: { 0,1} *→ G 1, be the addition cyclic group G on from the 0 and 1 bit sequence compound mapping that forms to elliptic curve 1
(3) finite field
Finite field is a set that comprises limited element, satisfies character such as addition and multiplicative closeds, and the rank of finite field are the numbers of element in the territory, and rank are that the finite field of prime number p generally is designated as GF (p).In finite field, two groups are arranged, one is the group that GF (p) consists of addition, one is the group that GF (p)-0 pair of multiplication consists of.In the multiplication loop group, all powers of generator provide all elements among the group.Z among the present invention q *Expression group Z qIn remove the group that null element consists of, G 1The addition cyclic group on the elliptic curve, G 2The multiplication loop group on the elliptic curve.
(4) prime number and coprime
So-called prime number refers to any one greater than 1 integer p, if it can only by ± 1 and ± p divides exactly, and just is called prime number;
So-called coprime, refer to two integers, if their greatest common divisor is 1, claim that then they are coprime.
(5) some scalar multiplication computing
Make that E is an elliptic curve that is defined on the territory GF (p), according to " string and tangent line " rule, two some P on the E (GF (p)) and Q addition obtain the 3rd some R on the E (GF (p)).Point set E (GF (p)) and this add operation thereof consist of an addition abelian group, and O is its infinite point.
Make P=(x 1, y 1) and Q=(x 2, y 2) be two different points on the elliptic curve E, then P and Q sum R=(x 3, y 3) as giving a definition: at first draw a straight line that connects P and Q, this straight line and elliptic curve intersect at thirdly, and then this intersection point is exactly the R point about the symmetric points of x axle.
If P=is (x 1, y 1) and Q=(x 2, y 2) be two identical points on the elliptic curve E, then ask P and Q sum to be equivalent to ask that a P's doubly put R=(x 3, y 3): at first at the tangent line of P strokes and dots elliptic curve, this tangent line and elliptic curve intersect at second point, and this intersection point is exactly a times point about the symmetric points of x axle.
The computing of some scalar multiplication is substantially the most also to be most important link in the Elliptic Curve Public Key Cryptosystems.Some scalar multiplication computing Q=kP on the elliptic curve is defined as follows: a some P on a given elliptic curve E and the curve, and the dot product kP that the P on the curve E is ordered is defined as a P and k sum of self addition, kP=P+P+ ... altogether k P addition of+P.Point scalar multiplication computing is called again point multiplication operation, and it is the repeatedly point add operation of the basic identical point that carries out at elliptic curve, is determining the realization time of elliptic curve cryptosystem its running time, so determining the arithmetic speed of elliptic curve cryptosystem.Can consult document about a circular of scalar multiplication computing: Stinson A.R. work, Feng Dengguo etc. translate. Cryptography Principles and practice. and the third edition, Beijing: Electronic Industry Press, 2009.201-208.
(6) bilinearity pair
Suppose G 1The addition cyclic group, G 2Be the multiplication loop group, order of a group is all q, and P is group G 1Generator.Mapping e:G 1* G 1→ G 2Satisfy following three conditions, then be referred to as bilinearity pair.
(1) bilinearity is namely for arbitrarily
Figure BDA00002645586800061
E (aP, bP)=e (P, P) AbSet up;
(2) non-degeneracy, namely
Figure BDA00002645586800062
(3) e can effectively be calculated.
Such bilinearity to Tate that can be by the super unusual elliptic curve on the finite field and super unusual hyperelliptic curve to or Weil to constructing.About structure and the application of bilinearity to computing, can list of references: Boneh D., Franklin M., 2001.Identity-based encryption from the Weil pairings, in:Advances in Cryptology-Crypto, in:LNCS, vol.3494, Springer-Verlag, Berlin, 2001:213-229.
With reference to Fig. 1, of the present invention being implemented as follows:
Step S100. system initialization:
Step S101: select security parameter k, the system that arranges open parameter (p, q, GF (p), E, G 1, G 2, P, e, H 1, H 2, Q) as follows: select large prime number p and q according to security parameter k, GF (p) is p rank finite fields, and E is the elliptic curve on the GF (p), E (GF (p)) is the q rank addition cyclic group that the point on the E consists of, and is designated as crowd G 1, P ∈ G 1It is generator.Group G 2Crowd G 1On the q factorial method cyclic group that e mapping consisted of through bilinearity of point, bilinearity is from group G to e 1To group G 2Mapping e:G 1* G 1→ G 2H 1And H 2Be crash-resistant Hash function, Q is crowd G 1On a random point.
Step S102: system time is divided into z time slice t according to security parameter k 1, t 2..., t z, i current time slice of system is designated as t i
Step S200. generates user's public private key pair:
User side is selected secret integer at random
Figure BDA00002645586800063
As private key, calculate corresponding PKI P Pub=sP.
Step S300. spanned file ciphertext and set of keywords ciphertext:
When the user had the storage resource request of data file M, user side was at first selected the set of keywords W={w of data file M 1..., w n, choose any one symmetrical cryptographic algorithm (for example Advanced Encryption Standardalgorithm AES) data file encryption M, obtain file cipher text C.Among the present invention, both can adopt symmetric encipherment algorithm to the encryption of data file M, also can be rivest, shamir, adelman, when adopting rivest, shamir, adelman, then utilize user side PKI P PubEnciphered data is utilized private key s during deciphering.
Then utilize the open parameter of system, PKI P PubWith current time slice t iCryptography key word set { w 1..., w n, generate t iThe set of keywords ciphertext of period
Figure BDA00002645586800071
And
Figure BDA00002645586800072
Sending server with file cipher text C preserves.Instantly a time fragment t I+1During arrival, user side calculates new set of keywords ciphertext And server stores Be updated to
Figure BDA00002645586800075
With reference to Fig. 2, being implemented as follows of this process:
Step S301: when the user had data storage request, the user at first chose the W={w of data file M i| i=1 ..., then n} chooses symmetric encipherment algorithm the data file is encrypted, and obtains the file cipher text C of data file M;
Step S302: user side is according to open parameter, PKI P PubTo { w 1..., w nBe encrypted, generate current time fragment t iThe set of keywords ciphertext
Figure BDA00002645586800076
Step S302-a: select at random
Figure BDA00002645586800077
Calculate C 1=γ P and C 2=e (P Pub, Q) γ
Step S302-b: to each i=1 ..., n calculates x i=H 1(w i), utilize { x 1..., x nThe Lagrangian difference multinomial of structure, every n polynomial f obtained i(x),
f i ( x ) = Π 1 ≤ j ≠ i ≤ n x - x j x i - x j = a i , 1 + a i , 2 x + . . . + a i , n x n - 1 ,
N is the number of element in the set of keywords of selecting, polynomial f i(x) coefficient a I, 1, a I, 2...,
Figure BDA00002645586800079
Step S302-c: to each i=1 ..., n,, user side is selected a random number According to polynomial f i(x) coefficient a I, 1, a I, 2..., a I, nCalculate y ii -1γ and
Figure BDA000026455868000711
Step S302-d: to each i=1 ..., n calculates x i'=H 2(w i|| t i), t iCurrent time slice, according to a I, 1, a I, 2..., a I, nCalculate
Figure BDA000026455868000712
Wherein operation is appended in symbol " || " expression, namely t iAppend at w iAfterwards;
Step S302-e: Transmit message ciphertext C and set of keywords ciphertext
Figure BDA000026455868000713
Give server;
Step S303: as next time slice t I+1Arrive the open parameter of user side recycling system, PKI P PubWith next time slice t I+1Recomputate (S302-c) and (S302-d) step, obtain new set of keywords ciphertext
Figure BDA00002645586800081
And sending to server, server is received
Figure BDA00002645586800082
After, storage key is gathered ciphertext
Figure BDA00002645586800083
Be updated to
Figure BDA00002645586800084
Step S303-a: to each i=1 ..., n,, select a random number
Figure BDA00002645586800085
According to time slice t in (S302-b) iMultinomial coefficient a I, 1, a I, 2..., a I, n, calculate With
Figure BDA00002645586800087
The wherein value of γ and time slice t iValue identical;
Step S303-b: to each i=1 ..., n calculates
Figure BDA00002645586800088
t I+1Time slice t iNext time slice, according to polynomial f i(x) coefficient a I, 1, a I, 2..., a I, nCalculate
Figure BDA00002645586800089
With
Figure BDA000026455868000810
Step S303-c: generate the set of keywords ciphertext
Figure BDA000026455868000811
C wherein 1, C 2With time slice t iThe value of middle calculating is identical.The user side handle Send to server, server is received
Figure BDA000026455868000813
After, will
Figure BDA000026455868000814
Be updated to
Figure BDA000026455868000815
Step S400. user carries out the keyword search process:
When the user had the keyword search request, user side was according to private key s and current time slice t iGenerate trapdoor corresponding to described keyword w
Figure BDA000026455868000816
And sending to server, server judges according to trapdoor whether set of keywords ciphertext and trapdoor satisfy the checking formula, if then return the file cipher text C of corresponding data file M, otherwise do not return any information.With reference to Fig. 3, being implemented as follows of this process:
Step S401: when the user had the searching request of certain keyword w, user side was according to open parameter, private key s, the keyword w of searching request and current time slice t i, generate trapdoor corresponding to described keyword w
Figure BDA000026455868000817
Information:
Step S401-a: according to Hash function H 1Calculate
Figure BDA000026455868000818
Component T in the information 1=H 1(w), according to Hash function H 2Calculate T=H 2(w||t i), described t iIt is the current time slice of system;
Step S401-b: calculate trapdoor according to the random point Q in the open parameter and private key s
Figure BDA000026455868000819
Component T in the information 2S (Q+T);
Keyword w is at time slice t iCorresponding trapdoor is The user is the keyword trapdoor
Figure BDA000026455868000821
Send to server;
Step S402: server is received trapdoor
Figure BDA000026455868000822
After, according to open parameter, PKI P Pub, trapdoor
Figure BDA000026455868000823
Set of keywords ciphertext with storage
Figure BDA00002645586800091
Search
Figure BDA00002645586800092
In whether comprise trapdoor Corresponding keyword, and return Search Results.
Step S402-a: server is according to trapdoor
Figure BDA00002645586800094
In T 1And ciphertext In (R 1..., R n, U 1... U n) calculate respectively λ=R 1+ R 2T 1+ ... + R nT 1 N-1(modq), v=U 1+ U 2T 1+ ... + U nT 1 N-1(modq);
Step S402-b: server is according to the value check formula C of the v that obtains and λ 2=e (C 1, T 2Whether)/e (v, λ) sets up; If keyword w ∈ { w then is described 1, w 2..., w n, server returns the user to the file cipher text C of the data file M that satisfies condition; Otherwise, namely
Figure BDA00002645586800096
Then do not return any data.
The present invention is not limited to aforesaid embodiment.The present invention expands to any new feature or any new combination that discloses in this manual, and the arbitrary new method that discloses or step or any new combination of process.

Claims (10)

1. voidable keyword search key encrypt method during a cloud is stored is characterized in that, comprises the following steps:
Step a. system initialization:
Select security parameter k, openly parameter of system is set, and system time is divided into an integer z time slice: t 1, t 2..., t z
Step b. generates user's public private key pair:
Private key s according to user side is selected generates corresponding PKI P Pub
Step c spanned file ciphertext and set of keywords ciphertext:
(c1) when the user has data storage request, user side is chosen the set of keywords W={w of data file M i| i=1 ..., n}, and data file M is encrypted, the file cipher text C of data file M obtained;
(c2) user side is based on described open parameter, PKI P Pub, set of keywords W and current time slice t i, generate set of keywords ciphertext corresponding to described set of keywords W
Figure FDA00002645586700011
And described file cipher text C and set of keywords ciphertext
Figure FDA00002645586700012
Send to server stores;
(c3) as new time slice t I+1During arrival, user side is based on open parameter, PKI P Pub, set of keywords W and current time slice t I+1, generate new set of keywords ciphertext
Figure FDA00002645586700013
And described set of keywords ciphertext Send to server, the set of keywords ciphertext that server update is preserved.
2. the method for claim 1 is characterized in that, among the described step a, and the open parameter p of the system that arranges, q, GF (p), E, G 1, G 2, P, e, H 1, H 2, Q is specially:
Select large prime number p, q according to described security parameter k, get GF (p) and be p rank finite field, E is the elliptic curve on the GF (p), and E (GF (p)) is the q rank addition cyclic group that the point on the E consists of, and is designated as G 1
P is addition cyclic group G 1Generator;
Multiplication loop group G 2Addition cyclic group G 1On the q factorial method cyclic group that e mapping consisted of through bilinearity of point, bilinearity is from addition cyclic group G to e 1To multiplication loop group G 2Mapping, e:G 1* G 1→ G 2
H 1And H 2The crash-resistant hash function, described H 1To multiplication loop group Z from the 0 and 1 bit sequence compound mapping that forms q *H 2To addition cyclic group G from the 0 and 1 bit sequence compound mapping that forms 1
Q is addition cyclic group G 1On a random point.
3. method as claimed in claim 2 is characterized in that, in the described step (c2), generates set of keywords ciphertext corresponding to set of keywords W Be specially:
(c2.1) select at random
Figure FDA00002645586700015
Calculate C 1=γ P, C 2=e (P Pub, Q) γ
(c2.2) to each i=1 ..., n calculates x i=H 1(w i), according to { the x that obtains 1..., x nThe Lagrangian difference multinomial of structure, every n polynomial f obtained i(x):
f i ( x ) = Π 1 ≤ j ≠ i ≤ n x - x j x i - x j = a i , 1 + a i , 2 x + . . . + a i , n x n - 1 ,
N is the number of element in the set of keywords of selecting, polynomial f i(x) coefficient a I, 1, a I, 2...,
Figure FDA00002645586700022
(c2.3) to each i=1 ..., n selects a random number
Figure FDA00002645586700023
Based on polynomial f i(x) coefficient a I, 1, a I, 2..., a I, nCalculate y ii -1γ,
(c2.4) to each i=1 ..., n calculates x i'=H 2(w i|| t i), described t iBe current time slice, operation is appended in symbol " || " expression, namely t iAppend at w iAfterwards; Based on polynomial f i(x) coefficient a I, 1, a I, 2..., a I, n, calculate R i = Σ j = 1 n a j , i y j x j ′ ;
(c2.5) generate set of keywords ciphertext corresponding to set of keywords W
4. method as claimed in claim 3 is characterized in that, in the described step (c3), generates new set of keywords ciphertext
Figure FDA00002645586700027
Be specially:
(c3.1) to each i=1 ..., n selects a random number
Figure FDA00002645586700028
Based on the polynomial f in the step (c2.2) i(x) coefficient a I, 1, a I, 2..., a I, nCalculate y i * = ( α i * ) - 1 γ , U i * = Σ j = 1 n a j , i α j * P pub ;
(c3.2) to each i=1 ..., n calculates Based on described polynomial f i(x) coefficient a I, 1, a I, 2..., a I, nCalculate R i * = Σ j = 1 n a j , i y j * x j ′ * , U i * = Σ j = 1 n a j , i α j * P pub .
(c3.3) generate set of keywords ciphertext corresponding to set of keywords W
Figure FDA000026455867000214
5. such as claim 1,2,3 or 4 described methods, it is characterized in that, in the step (c1), based on symmetric encipherment algorithm data file M is encrypted.
6. one kind based on voidable keyword search method in the cloud storage of claim 1,2 or 3 encryption method, it is characterized in that, comprises the following steps:
User side is according to described open parameter, and private key s generates corresponding PKI P Pub, the keyword w of searching request and current time slice t i, generate trapdoor corresponding to described keyword w
Figure FDA000026455867000215
And described trapdoor
Figure FDA000026455867000216
Send to server;
Server is received trapdoor
Figure FDA00002645586700031
After, according to open parameter, PKI P Pub, trapdoor
Figure FDA00002645586700032
Set of keywords ciphertext with storage
Figure FDA00002645586700033
Verify, if be proved to be successful, then return the ciphertext C of corresponding data file M; Otherwise do not return any data.
7. method as claimed in claim 6 is characterized in that, user side generates trapdoor corresponding to keyword w Comprise two part (T 1, T 2), described T 1Based on crash-resistant hash function H 1Calculate T 1=H 1(w) obtain T 2Based on crash-resistant hash function H 2Calculate T 2=s (Q+H 2(w||t i)) obtain, wherein, Q is addition cyclic group G 1On a random point, described G 1For: select large prime number p, q according to described security parameter k, get GF (p) and be p rank finite field, E is the elliptic curve on the GF (p), and E (GF (p)) is the q rank addition cyclic group that the point on the E consists of.
8. voidable keyword search method during the cloud based on the encryption method of claim 4 is stored is characterized in that, comprises the following steps:
User side is according to described open parameter, private key s, PKI P Pub, the keyword w of searching request and current time slice t i, generate trapdoor corresponding to described keyword w And described trapdoor Send to server;
Server is received trapdoor After, according to open parameter, PKI P Pub, trapdoor
Figure FDA00002645586700038
Set of keywords ciphertext with storage Verify, if be proved to be successful, then return the ciphertext C of corresponding data file M; Otherwise do not return any data.
9. method as claimed in claim 8 is characterized in that, user side generates trapdoor corresponding to keyword w
Figure FDA000026455867000310
Comprise two part (T 1, T 2), described T 1Based on crash-resistant hash function H 1Calculate T 1=H 1(w) obtain T 2Based on crash-resistant hash function H 2Calculate T 2=s (Q+H 2(w||t i)) obtain.
10. method as claimed in claim 9 is characterized in that, server is received trapdoor
Figure FDA000026455867000311
After, according to open parameter, PKI P Pub, trapdoor Set of keywords ciphertext with storage
Figure FDA000026455867000313
The process of verifying is:
According to trapdoor
Figure FDA000026455867000314
In T 1With the set of keywords ciphertext In (R 1..., R n, U 1... U n) calculate respectively λ = R 1 + R 2 T 1 + . . . + R n T 1 n - 1 ( mod q ) , v = U 1 + U 2 T 1 + . . . + U n T 1 n - 1 ( mod q ) ;
Judge check formula C based on the value of described v and λ 2=e (C 1, T 2Whether)/e (v, λ) sets up, if set up, then checks successfully.
CN201210567990.8A 2012-12-25 2012-12-25 Encryption and search method for revocable keyword search public keys in cloud storage Expired - Fee Related CN103023637B (en)

Priority Applications (1)

Application Number Priority Date Filing Date Title
CN201210567990.8A CN103023637B (en) 2012-12-25 2012-12-25 Encryption and search method for revocable keyword search public keys in cloud storage

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
CN201210567990.8A CN103023637B (en) 2012-12-25 2012-12-25 Encryption and search method for revocable keyword search public keys in cloud storage

Publications (2)

Publication Number Publication Date
CN103023637A true CN103023637A (en) 2013-04-03
CN103023637B CN103023637B (en) 2015-07-15

Family

ID=47971801

Family Applications (1)

Application Number Title Priority Date Filing Date
CN201210567990.8A Expired - Fee Related CN103023637B (en) 2012-12-25 2012-12-25 Encryption and search method for revocable keyword search public keys in cloud storage

Country Status (1)

Country Link
CN (1) CN103023637B (en)

Cited By (19)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN103731432A (en) * 2014-01-11 2014-04-16 西安电子科技大学昆山创新研究院 Multi-user supported searchable encryption system and method
CN104852801A (en) * 2015-02-13 2015-08-19 陕西师范大学 Searchable public key encryption method
CN105007161A (en) * 2015-06-12 2015-10-28 电子科技大学 Fuzzy keyword public key searchable encryption scheme achieving unrecognizable trap door
CN105007258A (en) * 2015-05-22 2015-10-28 华中科技大学 Rapid keyword searchable public key encryption method
CN105681280A (en) * 2015-12-29 2016-06-15 西安电子科技大学 Searchable encryption method based on Chinese in cloud environment
CN106411999A (en) * 2016-07-22 2017-02-15 青岛大学 Cloud storage key generation method, cloud data storage method and auditing methods
CN106789044A (en) * 2017-02-20 2017-05-31 西南石油大学 Cloud storage ciphertext data public key can search for encryption method on lattice under master pattern
CN107454059A (en) * 2017-07-05 2017-12-08 广东工业大学 Search encryption method based on stream cipher under a kind of cloud storage condition
CN108111587A (en) * 2017-12-15 2018-06-01 中山大学 A kind of cloud storage searching method based on time release
CN108200063A (en) * 2017-12-29 2018-06-22 华中科技大学 It is a kind of to can search for public key encryption method, system and server using this method
CN108777623A (en) * 2018-05-03 2018-11-09 上海海事大学 A kind of revocable public key encryption method based on fuzzy keyword searching
CN109617683A (en) * 2018-12-15 2019-04-12 西安邮电大学 Terminal and Cloud Server
CN109643324A (en) * 2016-09-12 2019-04-16 日本电信电话株式会社 Encrypt message searching method, message sending/receiving system, server, terminal, program
CN110337649A (en) * 2016-12-30 2019-10-15 罗伯特·博世有限公司 The dynamic symmetry that do not discover for search pattern can search for the method and system encrypted
CN110826098A (en) * 2019-10-30 2020-02-21 维沃移动通信有限公司 Information processing method and electronic equipment
CN111162894A (en) * 2019-12-31 2020-05-15 西南石油大学 Statistical analysis method for outsourcing cloud storage medical data aggregation with privacy protection
CN112199698A (en) * 2020-09-30 2021-01-08 华中科技大学 Robust searchable symmetric encryption method and system
CN112560075A (en) * 2021-02-22 2021-03-26 西南石油大学 Lightweight searchable encryption method and device based on elliptic curve
CN112765669A (en) * 2021-02-01 2021-05-07 福州大学 Regular language searchable encryption system based on time authorization

Citations (2)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US20100299313A1 (en) * 2009-05-19 2010-11-25 Security First Corp. Systems and methods for securing data in the cloud
CN101931947A (en) * 2010-07-28 2010-12-29 南京航空航天大学 WSN (Wireless Sensor Network) data safety processing method based on searchable cryptograph

Patent Citations (2)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US20100299313A1 (en) * 2009-05-19 2010-11-25 Security First Corp. Systems and methods for securing data in the cloud
CN101931947A (en) * 2010-07-28 2010-12-29 南京航空航天大学 WSN (Wireless Sensor Network) data safety processing method based on searchable cryptograph

Non-Patent Citations (2)

* Cited by examiner, † Cited by third party
Title
CONG WANG 等: ""Towards Secure and Effective Utilization over Encrypted Cloud Data"", 《2011 31ST INTERNATIONAL CONFERENCE ON DISTRIBUTED COMPUTING SYSTEMS WORKSHOPS》 *
于瑞琴: ""可撤销的公钥加密方案的形式分析"", 《太原师范学院学报(自然科学版)》 *

Cited By (35)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN103731432B (en) * 2014-01-11 2017-02-08 西安电子科技大学昆山创新研究院 Multi-user supported searchable encryption method
CN103731432A (en) * 2014-01-11 2014-04-16 西安电子科技大学昆山创新研究院 Multi-user supported searchable encryption system and method
CN104852801B (en) * 2015-02-13 2018-02-13 陕西师范大学 A kind of public key encryption method that can search for
CN104852801A (en) * 2015-02-13 2015-08-19 陕西师范大学 Searchable public key encryption method
CN105007258A (en) * 2015-05-22 2015-10-28 华中科技大学 Rapid keyword searchable public key encryption method
CN105007258B (en) * 2015-05-22 2018-03-27 华中科技大学 A kind of quick keyword can search for public key encryption method
CN105007161A (en) * 2015-06-12 2015-10-28 电子科技大学 Fuzzy keyword public key searchable encryption scheme achieving unrecognizable trap door
CN105007161B (en) * 2015-06-12 2018-10-12 电子科技大学 A kind of fuzzy keyword public key search encryption method of trapdoor None- identified
CN105681280A (en) * 2015-12-29 2016-06-15 西安电子科技大学 Searchable encryption method based on Chinese in cloud environment
CN105681280B (en) * 2015-12-29 2019-02-22 西安电子科技大学 Encryption method can search for based on Chinese in a kind of cloud environment
CN106411999A (en) * 2016-07-22 2017-02-15 青岛大学 Cloud storage key generation method, cloud data storage method and auditing methods
CN106411999B (en) * 2016-07-22 2019-05-17 青岛大学 Key generation method, cloud date storage method and the auditing method of cloud storage
CN109643324B (en) * 2016-09-12 2023-08-29 日本电信电话株式会社 Encrypted message searching method, message transmitting and receiving system, terminal and medium
CN109643324A (en) * 2016-09-12 2019-04-16 日本电信电话株式会社 Encrypt message searching method, message sending/receiving system, server, terminal, program
CN110337649B (en) * 2016-12-30 2023-10-31 罗伯特·博世有限公司 Method and system for dynamic symmetric searchable encryption with imperceptible search patterns
CN110337649A (en) * 2016-12-30 2019-10-15 罗伯特·博世有限公司 The dynamic symmetry that do not discover for search pattern can search for the method and system encrypted
CN106789044A (en) * 2017-02-20 2017-05-31 西南石油大学 Cloud storage ciphertext data public key can search for encryption method on lattice under master pattern
CN106789044B (en) * 2017-02-20 2019-12-27 西南石油大学 Searchable encryption method for cipher text data public key stored in cloud on grid under standard model
CN107454059B (en) * 2017-07-05 2020-07-17 广东工业大学 Search encryption method based on sequence cipher in cloud storage environment
CN107454059A (en) * 2017-07-05 2017-12-08 广东工业大学 Search encryption method based on stream cipher under a kind of cloud storage condition
CN108111587B (en) * 2017-12-15 2020-11-06 中山大学 Cloud storage searching method based on time release
CN108111587A (en) * 2017-12-15 2018-06-01 中山大学 A kind of cloud storage searching method based on time release
US10673612B2 (en) 2017-12-29 2020-06-02 Huazhong University Of Science And Technology Method of searchable public-key encryption and system and server using the same
CN108200063A (en) * 2017-12-29 2018-06-22 华中科技大学 It is a kind of to can search for public key encryption method, system and server using this method
CN108777623A (en) * 2018-05-03 2018-11-09 上海海事大学 A kind of revocable public key encryption method based on fuzzy keyword searching
CN109617683B (en) * 2018-12-15 2021-09-17 西安邮电大学 Terminal and cloud server
CN109617683A (en) * 2018-12-15 2019-04-12 西安邮电大学 Terminal and Cloud Server
CN110826098A (en) * 2019-10-30 2020-02-21 维沃移动通信有限公司 Information processing method and electronic equipment
CN111162894A (en) * 2019-12-31 2020-05-15 西南石油大学 Statistical analysis method for outsourcing cloud storage medical data aggregation with privacy protection
CN111162894B (en) * 2019-12-31 2020-11-10 西南石油大学 Statistical analysis method for outsourcing cloud storage medical data aggregation with privacy protection
CN112199698A (en) * 2020-09-30 2021-01-08 华中科技大学 Robust searchable symmetric encryption method and system
CN112199698B (en) * 2020-09-30 2023-12-12 华中科技大学 Robust searchable symmetric encryption method and system
CN112765669B (en) * 2021-02-01 2023-04-18 福州大学 Regular language searchable encryption system based on time authorization
CN112765669A (en) * 2021-02-01 2021-05-07 福州大学 Regular language searchable encryption system based on time authorization
CN112560075A (en) * 2021-02-22 2021-03-26 西南石油大学 Lightweight searchable encryption method and device based on elliptic curve

Also Published As

Publication number Publication date
CN103023637B (en) 2015-07-15

Similar Documents

Publication Publication Date Title
CN103023637B (en) Encryption and search method for revocable keyword search public keys in cloud storage
Wang et al. Oruta: Privacy-preserving public auditing for shared data in the cloud
Parmar et al. Survey of various homomorphic encryption algorithms and schemes
Yi et al. Homomorphic encryption
Camenisch et al. Blind and anonymous identity-based encryption and authorised private searches on public key encrypted data
Chen et al. Pairings in trusted computing
Liu et al. An efficient privacy-preserving outsourced computation over public data
Yu et al. Verifiable outsourced computation over encrypted data
Yang et al. Certificateless proxy re-encryption without pairings
Chakraborty et al. Enhanced public auditability & secure data storage in cloud computing
Wei et al. Remove key escrow from the BF and Gentry identity-based encryption with non-interactive key generation
Binu et al. Secure and efficient secret sharing scheme with general access structures based on elliptic curve and pairing
Huang et al. Block-Level Message-Locked Encryption with Polynomial Commitment for IoT Data.
Ren et al. Verifiable outsourced attribute-based signature scheme
Tahat et al. Hybrid publicly verifiable authenticated encryption scheme based on chaotic maps and factoring problems
Liao et al. Cryptanalysis of an identity-based encryption scheme with equality test and improvement
Wahid et al. Implementation of certificateless signcryption based on elliptic curve using Javascript
CN109756335A (en) A kind of rank is the public key encryption decryption method of the finite field multiplier group of Mersenne Prime
Lin Secure content distribution using multi-hop proxy re-encryption
Yang et al. Efficient certificateless encryption withstanding attacks from malicious KGC without using random oracles
Kiraz et al. An efficient ID-based message recoverable privacy-preserving auditing scheme
CN107276759A (en) A kind of efficient Threshold cryptosystem scheme
Zhang et al. Efficient inner product encryption for mobile clients with constrained computation capacity
Rawat et al. Computation and communication efficient Chinese remainder theorem based multi-party key generation using modified RSA
Dogan et al. Storage and communication security in cloud computing using a homomorphic encryption scheme based Weil pairing

Legal Events

Date Code Title Description
C06 Publication
PB01 Publication
C10 Entry into substantive examination
SE01 Entry into force of request for substantive examination
C14 Grant of patent or utility model
GR01 Patent grant
CF01 Termination of patent right due to non-payment of annual fee
CF01 Termination of patent right due to non-payment of annual fee

Granted publication date: 20150715

Termination date: 20181225