CN114531220A - Efficient fault-tolerant dynamic phrase searching method based on forward privacy and backward privacy - Google Patents

Efficient fault-tolerant dynamic phrase searching method based on forward privacy and backward privacy Download PDF

Info

Publication number
CN114531220A
CN114531220A CN202210030502.3A CN202210030502A CN114531220A CN 114531220 A CN114531220 A CN 114531220A CN 202210030502 A CN202210030502 A CN 202210030502A CN 114531220 A CN114531220 A CN 114531220A
Authority
CN
China
Prior art keywords
document
cloud server
user
index
hash
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.)
Pending
Application number
CN202210030502.3A
Other languages
Chinese (zh)
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.)
Chongqing University of Post and Telecommunications
Original Assignee
Chongqing University of Post and Telecommunications
Priority date (The priority date is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the date listed.)
Filing date
Publication date
Application filed by Chongqing University of Post and Telecommunications filed Critical Chongqing University of Post and Telecommunications
Priority to CN202210030502.3A priority Critical patent/CN114531220A/en
Publication of CN114531220A publication Critical patent/CN114531220A/en
Pending legal-status Critical Current

Links

Images

Classifications

    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L9/00Cryptographic mechanisms or cryptographic arrangements for secret or secure communications; Network security protocols
    • H04L9/001Cryptographic mechanisms or cryptographic arrangements for secret or secure communications; Network security protocols using chaotic signals
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F16/00Information retrieval; Database structures therefor; File system structures therefor
    • G06F16/30Information retrieval; Database structures therefor; File system structures therefor of unstructured textual data
    • G06F16/33Querying
    • G06F16/3331Query processing
    • G06F16/334Query execution
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L9/00Cryptographic mechanisms or cryptographic arrangements for secret or secure communications; Network security protocols
    • H04L9/08Key distribution or management, e.g. generation, sharing or updating, of cryptographic keys or passwords
    • H04L9/0816Key establishment, i.e. cryptographic processes or cryptographic protocols whereby a shared secret becomes available to two or more parties, for subsequent use
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L9/00Cryptographic mechanisms or cryptographic arrangements for secret or secure communications; Network security protocols
    • H04L9/32Cryptographic mechanisms or cryptographic arrangements for secret or secure communications; Network security protocols including means for verifying the identity or authority of a user of the system or for message authentication, e.g. authorization, entity authentication, data integrity or data verification, non-repudiation, key authentication or verification of credentials
    • H04L9/321Cryptographic mechanisms or cryptographic arrangements for secret or secure communications; Network security protocols including means for verifying the identity or authority of a user of the system or for message authentication, e.g. authorization, entity authentication, data integrity or data verification, non-repudiation, key authentication or verification of credentials involving a third party or a trusted authority
    • H04L9/3213Cryptographic mechanisms or cryptographic arrangements for secret or secure communications; Network security protocols including means for verifying the identity or authority of a user of the system or for message authentication, e.g. authorization, entity authentication, data integrity or data verification, non-repudiation, key authentication or verification of credentials involving a third party or a trusted authority using tickets or tokens, e.g. Kerberos
    • YGENERAL TAGGING OF NEW TECHNOLOGICAL DEVELOPMENTS; GENERAL TAGGING OF CROSS-SECTIONAL TECHNOLOGIES SPANNING OVER SEVERAL SECTIONS OF THE IPC; TECHNICAL SUBJECTS COVERED BY FORMER USPC CROSS-REFERENCE ART COLLECTIONS [XRACs] AND DIGESTS
    • Y02TECHNOLOGIES OR APPLICATIONS FOR MITIGATION OR ADAPTATION AGAINST CLIMATE CHANGE
    • Y02DCLIMATE CHANGE MITIGATION TECHNOLOGIES IN INFORMATION AND COMMUNICATION TECHNOLOGIES [ICT], I.E. INFORMATION AND COMMUNICATION TECHNOLOGIES AIMING AT THE REDUCTION OF THEIR OWN ENERGY USE
    • Y02D30/00Reducing energy consumption in communication networks
    • Y02D30/50Reducing energy consumption in communication networks in wire-line communication networks, e.g. low power modes or reduced link rate

Landscapes

  • Engineering & Computer Science (AREA)
  • Computer Security & Cryptography (AREA)
  • Signal Processing (AREA)
  • Computer Networks & Wireless Communication (AREA)
  • Theoretical Computer Science (AREA)
  • Databases & Information Systems (AREA)
  • General Physics & Mathematics (AREA)
  • General Engineering & Computer Science (AREA)
  • Physics & Mathematics (AREA)
  • Data Mining & Analysis (AREA)
  • Computational Linguistics (AREA)
  • Storage Device Security (AREA)
  • Information Retrieval, Db Structures And Fs Structures Therefor (AREA)

Abstract

The invention discloses a forward and backward privacy-based efficient fault-tolerant dynamic phrase searching method, which comprises a data owner, a cloud server and a user. The method comprises the following steps: and a key generation stage for generating a key and a public parameter. In the index construction stage, a data owner designs an index structure by using piecewise linear chaotic mapping, an AND-OR structure cascaded minhash function, a bloom filter, an inverted index AND a matrix. And a trapdoor generation stage, wherein the user generates the trapdoor by using the phrase. And in the phrase searching stage, the cloud server checks the stored encryption indexes and returns an intermediate encryption result. And after receiving the file identifier, the user decrypts the file identifier and returns the acquired file identifier to the cloud server. The cloud server returns the encrypted file of the response, and the user decrypts the file. And in the updating token generation stage, the user generates a token and sends the token to the cloud server. And in the index updating stage, the cloud server updates the index and the document according to the token. The invention realizes forward privacy, backward privacy, high-efficiency search and dynamic update.

Description

Efficient fault-tolerant dynamic phrase searching method based on forward privacy and backward privacy
Technical Field
The invention belongs to the technical field of information security technology and cloud-based Internet of things, and relates to a forward and backward privacy-based efficient fault-tolerant dynamic phrase searching method which can be used for intelligently processing data services in a cloud.
Background
In recent years, cloud computing has gained great popularity because it can greatly reduce storage costs, and some stored data needs appropriate protection due to the inclusion of sensitive information, such as corporate financial information, corporate tax information, personal email, personal health and medical records, and the like. However, the data owner and the cloud server are not always in the same trusted domain, possibly resulting in data leakage risk references. Since the user cannot control the data, internal attacks from the cloud storage server provider or external attacks from hackers may be suffered. In recent years, many companies have had serious data leakage incidents. To prevent sensitive data from leaking out when outsourcing storage, one possible solution is to encrypt the data before outsourcing. This will conflict with the availability of data because one cannot perform common operations such as retrieving encrypted data.
In order to securely search for encrypted data, searchable encryption techniques have been developed in recent years. In addition, slight spelling errors and format inconsistencies occasionally occur when the user enters. However, most of the existing searchable encryption methods only support precise searching, and cannot solve the situation. A straightforward approach to solving this problem is to use a spell-checking mechanism. However, this approach is not suitable for some reasons. For example, it may require additional interaction, which may increase the computational cost of the user. Thus, to meet these needs, fuzzy searches have been developed that not only increase flexibility, but also tolerate less spelling and format inconsistencies.
The application provides a high-efficiency fault-tolerant dynamic phrase searching method based on forward and backward privacy. The chaotic encryption algorithm piecewise linear chaotic mapping and the minhash function are adopted to carry out fuzzy processing on information, and a bloom filter index is constructed to realize efficient search and dynamic update. The safety certificate based on formalization shows that the application has higher safety and better performance.
The invention combines the variant, the inverted index and the matrix of the bloom filter, and designs an index structure. And encrypting the position information of each keyword in each document by using a lightweight encryption algorithm so as to realize phrase search. Safety analysis and performance analysis show that the invention has more ideal performance.
Disclosure of Invention
The present invention is directed to solving the above problems of the prior art. An efficient fault-tolerant dynamic phrase search method based on forward and backward privacy is proposed. The technical method of the invention is as follows:
an efficient fault-tolerant dynamic phrase search method based on forward and backward privacy comprises the following steps:
a key generation stage, generating a key and a public parameter;
in the index construction stage, a data owner designs an index structure by using a piecewise linear chaotic map, an AND-OR structure cascaded minhash function, a bloom filter, an inverted index AND a matrix;
a trapdoor generation stage, wherein a user generates a trapdoor by using a phrase;
in the phrase searching stage, the cloud server checks the stored encryption indexes and returns an intermediate encryption result; after receiving the file identifier, the user decrypts the file identifier and returns the acquired file identifier to the cloud server; the cloud server returns the encrypted file of the response, and the user decrypts the file;
in the updating token generation stage, a user generates a token and sends the token to a cloud server;
and in the index updating stage, the cloud server updates the index and the document according to the token.
Further, in the key generation stage, generating a key and a public parameter specifically includes:
(1) giving a security parameter beta, and randomly selecting kxlambda minhash functions H from the same locality sensitive hash function family1Selecting a secret key generation algorithm SKGen (), and selecting two single hash functions H2And H3
(2)sk1←SKGen(1β),sk2←SKGen(1β),sk3←SKGen(1β) After authenticating the user, the sk is transmitted through the secure channel2Respectively transmitted to the cloud server and the user to send the sk1,sk3Transmitting to the user through a secure channel; the secret key is { sk1,sk2,sk3H, common parameters are { k, λ, H }1,H2,H3}。
Further, the piece of thread Linear audio Map specifically includes:
the Piecewise Linear Chaotic Map (PWLCM) is described as:
Figure BDA0003466228550000031
wherein x isn∈(0,1),p∈(0,0.5)。xnFor the function value obtained at the nth time, xn-1The function value obtained for the (n-1) th time, F [ x ]n-1]Representing the input value as xn-1P represents a decimal number, F (1-x)n-1) For input values of 1-xn-1The function value of (1).
Further, the minhash function of the AND-OR structure specifically includes:
minhash is a LSH function family, which is used for Jaccard distance, Minhash uses a random hash function for each element in the set, and selects the minimum value of all hash values;
the hash function satisfying the following two conditions is called (d1, d2, p1, p2) -sensory:
(1) if d (x, y) ≦ d1, the probability of h (x) ≦ h (y) is at least p 1;
(2) if d (x, y) ≧ d2, the probability of h (x) ≧ h (y) is at most p 2;
wherein d (x, y) represents a distance measure between x and y; d1 represents the distance of case (1), d2 represents the distance of case (2), p1 represents the probability of case (1), and p2 represents the probability of case (2).
The cascade of AND AND OR operations can generate more hash tables, so that p1 is closer to 1, AND p2 is closer to 0;
using kAfter the random function implements the AND structure, the structure is expressed as g ═ h1,h2,...,hk);h1,h2,...,hkRespectively representing hash values calculated by k different hash functions. In this case, if g (x) is g (y), and only if
Figure BDA0003466228550000032
g (x), g (y) represent k hash values obtained when the input values are x and y, respectively. The OR structure is then implemented using λ different AND structures, whose structure is denoted as f ═ g1∨g2∨...∨gλ) (ii) a If f (x) is f (y), and only if f (x) is f (y)
Figure BDA0003466228550000033
Thus, the family of (d1, d2, p1, p2) -sensory functions can be changed to the family of (d1, d2, p1 ', p 2') -sensory functions, wherein
Figure BDA0003466228550000034
p1 ', p 2' represent different probabilities obtained through a cascade of AND AND OR operations, respectively.
Further, the bloom filter is composed of an m-bit binary vector and a plurality of random mapping functions, and is mainly used for searching whether an element exists in a certain set or not, and the element is mapped into the binary vector by the random mapping function to operate.
Further, the index building stage specifically includes:
for each wi∈WD,i∈[1,Λ],WDThe number of the keywords in the keyword set is lambda; (1) will wiEach letter ψaIs mapped to [0, 1 ] using a one-way hash function]Inner decimal fraction, a ∈ [1, Y ]]Y is wiThe number of the letters is mapped to an interval [0, s ] by using a piecewise linear chaotic mapping algorithm]S is a secret parameter of minhash, and the obtained group of integers is a keyword wiThe code of (2), the code is used as the input of minhash;
(2) using AND-OR structure AND from the same officeRandomly selecting k x lambda minhash functions from the partially sensitive hash function family, and respectively pairing wiPerforming operation to obtain k x lambda value xi,j∈[1,m],i∈[1,Λ],j∈[1,λ]The k x λ values form k hash tables, each of which x is assumed to not collidei,jMapping to an array of size m gamma, m > | WDI x k x λ, m represents the size of the array γ, WDIs a set of keywords.
(3) Will be provided with
Figure BDA0003466228550000041
Becomes 1 in the array gamma
Figure BDA0003466228550000042
And random gamma xi,υ]The corresponding bucket points to an array f of size | D | ><f1,...,fi,...,f|D|>,i∈[1,Λ],υ∈[1,k×λ]Λ ν ≠ a × λ +1), where each element is a linked list, the first element of which contains the document identifier id (d)k) And a pointer to the next element if the identifier is id (d)k) Contains the keyword wiThen list fi=<id(dk),fk,1,...,fk,j,...,fk,t>,i∈[1,|D|],k∈[1,|D|],j∈[1,t]Where t is a keyword wiThe identifier is id (d)k) The number of locations in the document of (a),
Figure BDA0003466228550000043
poskjrepresenting a keyword wiWhen the identifier is id (d)k) If the identifier is id (d)k) Does not contain the keyword wiThen in the linked list fiIn the table, v random invalid characters are filled, v belongs to [1, theta ]](ii) a θ represents the maximum number of values of v.
(4) Using sk1Symmetric encryption of document set D ζ ← EncDoc (sk)1,D);
(5) The data owner sends the index γ and the encrypted document set ζ to the cloud server.
Further, the phrase searching stage specifically includes:
(1) for the cloud server, after receiving the trapdoor T sent by the user,
firstly, a list CT is generated, and user names and counter values CT are storedserverLet ctserverIs 0, ct each time a search query is received from the userserverAdding 1 to the value of (c);
② judging H2(ctserver,sk2)==H2(ctuser,sk2) If not, returning the 'query failure' of the user, and if so, calculating the position loc of each bucket in the index
Figure BDA0003466228550000051
loc represents the location of each bucket in the index,
Figure BDA0003466228550000052
representing a hash value obtained using loc.
For each wiSelecting lambda value in the first hash table according to y and Q
Figure BDA0003466228550000056
Is equal, it is mapped to the value in the array gamma, and judged
Figure BDA0003466228550000053
Whether the result is true or not; if the hash tables are not established, sequentially judging k hash tables, and if only one hash table can be established, performing the fourth step;
if one of the hash tables is true, then for
Figure BDA0003466228550000054
xi,a*λ+1The ith keyword is represented by the a x lambda +1 hash value obtained by using a hash function, namely the hash value is the position of a corresponding bucket in the array gamma, and a belongs to [0, k-1 ]]Taking out the array f pointed by the pointer;
fifthly, sending all the taken arrays to the user according to the query sequence;
(2) after the user receives the arrays sent by the cloud server, each element f of each received array is subjected tokj
Firstly, a keyword w is calculated by using a formula (1)iThe position in the document or a random number,
Figure BDA0003466228550000055
obtaining an array before encryption;
secondly, the user calculates all the obtained arrays, judges whether the positions of the keywords to be inquired in the same document are connected or not, and calculates to obtain a document identifier set R which is { id (d) }i),i∈[1,N]}; the user sends the R to a cloud server;
(3) after receiving the response, the cloud server sends the ciphertext of the corresponding document to the user;
(4) user usage Key sk1And decrypting the received ciphertext to obtain the document plaintext to be inquired.
Further, the update token generation stage specifically includes:
(1) adding a document: the data owner generates a sub-index gamma for the document to be added by the same method as the second step of establishing the index*Will be gamma*And encrypted document xi*As update token
Figure BDA0003466228550000061
Sending the data to a cloud server; operation type up or add;
(2) deleting the document: data owner for document d to be deletedi,i∈[1,N]A document diId (d) ofi) As update tokens
Figure BDA0003466228550000062
And sending the data to the cloud server. Operation type up ═ delete;
(3) and (3) modifying the document: operation type up ═ modify ";
adding keywords of a certain document: data owner for document d to be modifiedi,i∈[1,N]Extracting diCorresponding one | WDA line vector of dimension | x k, f corresponding to a keyword to be addedi(i∈[1,N]) The random number in (1) is changed into the position of the keyword, and the random number is used
Figure BDA0003466228550000066
Encrypting; in addition, select
Figure BDA0003466228550000063
Selecting v (v is equal to [1, theta ]) from corresponding linked list containing random numbers]) Replacing the original chain table elements with random numbers, wherein the number of the selected v and the original chain table may be different; the newly generated sub-index gamma is*And encrypted document xi*As update tokens
Figure BDA0003466228550000064
Sending the data to a cloud server; multiple keywords in the same document can be added once in the operation;
deleting the keywords of a certain document: data owner for document d to be modifiedi,i∈[1,N]Extracting d to obtainiCorresponding one | WDA row vector of dimension | × k, f corresponding to the keyword to be deletedi(i∈[1,N]) In the method, the encrypted data of the original key word position is used as v (v is belonged to [1, theta ]]) A random number substitution; in addition, select
Figure BDA0003466228550000065
Selecting v (v is equal to [1, theta ]) from corresponding linked list containing random numbers]) Replacing the original chain table elements with random numbers, wherein the number of the selected v and the original chain table may be different; the newly generated sub-index gamma*And diIdentifier id (d) ofi) As update tokens
Figure BDA0003466228550000071
Sending the information to a cloud server; this operation can delete multiple keywords in the same document at a time.
Further, the index updating stage specifically includes:
(1) adding a document: cloud server receiving
Figure BDA0003466228550000072
Then, respectively adding gamma*And xi*Added to γ and ξ;
(2) deleting the document: cloud server receiving
Figure BDA0003466228550000073
Then, deleting the corresponding linked list in gamma and according to id (d)i) Corresponding document d in encrypted document set zetaiDeleting;
(3) and (3) modifying the document: cloud server receiving
Figure BDA0003466228550000074
Then, respectively adding gamma*And xi*Replacing the corresponding positions in γ and ξ.
The invention has the following advantages and beneficial effects:
the invention provides a high-efficiency fault-tolerant dynamic phrase searching method based on forward and backward privacy. It has both forward and backward privacy and supports ambiguous phrase searches and dynamic updates. Specifically, the innovation herein is: the fuzzy search is realized by utilizing a chaotic encryption algorithm piecewise linear chaotic mapping AND a minhash function with cascade connection of an AND structure AND an OR structure; the phrase search and dynamic update are realized by using the variants and matrix construction indexes of the bloom filter. The innovation herein mainly lies in the construction of the index, the search phase and the implementation of the dynamic update phase. In the existing methods, a method for realizing fuzzy search by using a chaotic encryption algorithm piecewise linear chaotic mapping rarely occurs. Meanwhile, it is not common in the existing phrase search method to use a matrix to store location information. The technology of 2-9 is characterized in that the chaos encryption algorithm is combined with linear chaotic mapping in a segmented mode, a minhash function with an AND structure AND an OR structure in a cascade mode, a bloom filter AND a matrix, AND forward privacy, backward privacy, phrase search AND dynamic updating are achieved. When the functions are realized, the efficiency of the method is ensured to be higher than that of the general fuzzy search method.
The invention relates to a high-efficiency fault-tolerant dynamic phrase searching method based on forward and backward privacy, which encrypts the position information of each keyword in each document by using a lightweight encryption algorithm so as to realize phrase searching. And the FTPS can quickly find the corresponding position during searching, thereby ensuring that the searching efficiency is more efficient. Meanwhile, forward privacy and backward privacy are realized, and the method has better safety.
Drawings
FIG. 1 is a keyword encoding of the preferred embodiment provided by the present invention;
FIG. 2 is an index structure diagram of the present invention;
FIG. 3 is a CT table of the present invention;
FIG. 4 is a schematic diagram of an efficient fault-tolerant dynamic phrase search method based on forward and backward privacy.
Detailed Description
The technical method in the embodiment of the invention will be described in detail in the following with reference to the accompanying drawings in the embodiment of the invention. The described embodiments are only some of the embodiments of the present invention.
The technical method for solving the technical problems comprises the following steps:
the bitcoin transaction model of the present invention is described in further detail below with reference to fig. 1, 2, and 3. The method specifically comprises the following modules and steps:
1) piecewise Linear chaos mapping of Piecewise Linear Chaotic Map:
piecewise Linear Chaotic Map (PWLCM): chaos has many interesting properties, such as good pseudo-randomness and sensitivity to its control parameters, which can be directly linked to the confusing and spreading properties of cryptography. And these systems are deterministic, that is, their future behavior is not subject to random elements, determined entirely by their parameters. However, since the chaotic signal is pseudo-random, an unauthorized user may recognize it as noise.
The chaotic encryption algorithm utilizes the characteristics of chaos such as certainty, mixing, internal randomness and the like, and is simple to realize and rapid in encryption on the premise of ensuring safety.
PWLCM, one of the simplest chaotic encryption algorithms, also possesses these characteristics. It can be described as:
Figure BDA0003466228550000081
wherein x isn∈(0,1),p∈(0,0.5)。xnFor the function value obtained at the nth time, xn-1The function value obtained at the n-1 th time, F [ x ]n-1]Representing the input value as xn-1P represents a decimal number, F (1-x)n-1) For input values of 1-xn-1The function value of (1).
2) Minhash function of AND-OR structure:
minhash is a family of LSH functions that is used for the Jaccard distance. The Minhash uses a random hash function on each element in the set and selects the minimum of all hash values.
localization reactive hashing (LSH) is a technique used to solve the problem of finding similar nodes in a high dimensional space. If a linear search is performed directly in a high-dimensional space, it is faced with a dimensional disaster and is very inefficient, and the LSH is used to map points in the high-dimensional space to one or more different hashtables, which are called buckets (buckets) in terms of location. It maps two points in high dimensional space that are close with a high probability to the same bucket, that is, points in the same bucket are likely to be close in high dimensional space. Therefore, the searching can be carried out according to the characteristic, and the searching efficiency is improved.
The hash function satisfying the following two conditions is called (d1, d2, p1, p2) -sensory:
(1) if d (x, y) ≦ d1, the probability of h (x) ≦ h (y) is at least p 1;
(2) if d (x, y) ≧ d2, the probability of h (x) ≧ h (y) is at most p 2.
Where d (x, y) represents a distance measure between x and y. d1 represents the distance of case (1), d2 represents the distance of case (2), p1 represents the probability of case (1), and p2 represents the probability of case (2).
AND the concatenation of AND OR operations can generate more hash tables, bringing p1 closer to 1 AND p2 closer to 0.
After the AND structure is implemented using k random functions, the structure is expressed as g ═ h1,h2,...,hk)。h1,h2,...,hkRespectively representing hash values calculated by k different hash functions. If and only if g (x) g (y)
Figure BDA0003466228550000091
g (x), g (y) represent k hash values obtained when the input values are x and y, respectively. The OR structure is then implemented using λ different AND structures, whose structure is denoted as f ═ g1∨g2∨...∨gλ). If f (x) is f (y), and only if f (x) is f (y)
Figure BDA0003466228550000092
Thus, the family of (d1, d2, p1, p2) -sensory functions can be changed to the family of (d1, d2, p1 ', p 2') -sensory functions, wherein
Figure BDA0003466228550000093
The p1 ', p 2' sub-tables represent different probabilities obtained through a cascade of AND AND OR operations.
3) A bloom filter:
the bloom filter consists of an m-bit binary vector and a number of random mapping functions. It is mainly used to find out if an element exists in a certain set, and it is operated by mapping the element into binary vector by using random mapping function. The method has the advantages of fast search time, small required storage space, certain error recognition rate and difficulty in executing deletion operation.
The method is divided into six stages, as shown in fig. 4, which are a key generation stage, an index establishment stage, a trapdoor generation stage, a phrase search stage, an update token generation stage, and an index update stage. The details are as follows.
And a key generation stage:
(1) giving a security parameter beta, and randomly selecting kxlambda minhash functions H from the same locality sensitive hash function family1Selecting a secret key generation algorithm SKGen (), and selecting two single hash functions H2And H3
(2)sk1←SKGen(1β),sk2←SKGen(1β),sk3←SKGen(1β). After authenticating the user, the sk is transmitted through a secure channel2Respectively transmitted to the cloud server and the user to send the sk1,sk3Transmitted to the user over a secure channel. The secret key is { sk1,sk2,sk3H, common parameters are { k, λ, H }1,H2,H3}。
An index establishing stage: for each wi∈WD,i∈[1,Λ](WDIs a keyword set, lambda is the number of keywords in the keyword set),
(1) will wiEach letter ψa(a∈[1,Y]Y is wiNumber of letters of) is mapped to [0, 1 ] using a one-way hash function]Inner decimal, and then the value is mapped to the interval [0, s ] using the Piecewise Linear conditional Map (PWLCM) algorithm]Is used (s is the secret parameter of minhash). The obtained group of integers is the key word wiAs input to the minhash, as shown in fig. 1.
(2) Using AND-OR structure AND randomly selecting k x lambda minhash functions from the same locality sensitive hash function family, respectively for wiPerforming operation to obtain k x lambda value xi,j∈[1,m],i∈[1,Λ],j∈[1,λ]These k x λ values form k hash tables. Each value x thereof is divided intoi,jMapping to an array gamma of size m (m > W)DI x k x λ, assuming the hash does not collide). m represents the size of the array gamma, WDIs a set of keywords.
(3) Will be provided with
Figure BDA0003466228550000101
Becomes 1 in the array gamma
Figure BDA0003466228550000102
And at random
Figure BDA0003466228550000103
The corresponding bucket points to an array f of size | D | ><f1,...,fi,...,f|D|>Where each element is a linked list. The first element of the linked list contains the document identifier id (d)k) And a pointer to the next element. If the identifier is id (d)k) The document of (a) contains a keyword wiThen list fi=<id(dk),fk,1,...,fk,j,...,fk,t>,i∈[1,|D|],k∈[1,|D|],j∈[1,t]Where t is a keyword wiWhen the identifier is id (d)k) The number of positions in the document of (a),
Figure BDA0003466228550000111
poskjrepresenting a keyword wiThe identifier is id (d)k) The position of the j-th occurrence in the document of (1). If the identifier is id (d)k) Does not contain the keyword wiThen in the linked list fiIn the table, v random invalid characters are filled, v belongs to [1, theta ]]. θ represents the maximum number of values of v. The index structure is as in figure 2.
(4) Using sk1Symmetrically encrypting document set D ζ ← EncDoc (sk)1,D)。
(5) The data owner sends the index γ and the encrypted document set ζ to the cloud server.
A trapdoor generation stage: query Q ═ w1,...,wbAnd b is the number of keywords in the query Q.
(1) A counter table CT is generated which has two columns: username and ctuserWherein ct isuserIs 0, and each time the same user sends a search query to the CS, to ctuserAnd adding 1. And setting the initial value to be 0, and adding 1 to the value of the search query every time the same user sends the search query to the cloud server.
(2) For each wiBelongs to Q, and k is calculated as lambdaHash table of1=H2(xi,1,ctuser,sk2),...,yk×λ=H2(xi,k×λ,ctuser,sk2) Wherein x isi,1=h1(wi),...,xi,k×λ=hk×λ(wi)。
(3) Trapdoor T ═ y1,1,...,yb,k×λ,H2(ctuser,sk2)}。
Phrase search phase:
(1) for the cloud server, after receiving the trapdoor T sent by the user,
generating a list CT (as in FIG. 3), storing the user name and the counter value CTserverLet ctserverIs 0, ct each time a search query is received from the userserverPlus 1.
② judging H2(ctserver,sk2)==H2(ctuser,sk2) If not, returning the 'query failure' of the user, and if so, calculating the position loc of each bucket in the index
Figure BDA0003466228550000112
loc represents the location of each bucket in the index,
Figure BDA0003466228550000113
representing a hash value obtained using loc.
③ for each wiSelecting lambda value in the first hash table according to y and Q
Figure BDA0003466228550000114
Is equal, it is mapped to the value in the array gamma, and judged
Figure BDA0003466228550000121
Whether or not this is true. If not, sequentially judging k hash tables, and if only one hash table can be established, performing the fourth step.
If one of the hash tables is true, then for
Figure BDA0003466228550000122
xi,a*λ+1The ith keyword is represented by the a x lambda +1 hash value obtained by using a hash function, namely the hash value is the position of a corresponding bucket in the array gamma, and a belongs to [0, k-1 ]]The array f to which it points is fetched.
And fifthly, sending all the taken arrays to the user according to the query sequence.
(2) After the user receives the arrays sent by the cloud server, each element f of each received array is subjected tokj
Firstly, a keyword w is calculated by using a formula (1)iThe position in the document or a random number,
Figure BDA0003466228550000123
resulting in the array before encryption.
Secondly, the user operates all the obtained arrays and judges whether the positions of the keywords to be inquired in the same document are connected or not. Calculating to obtain a document identifier set R ═ { id (d)i),i∈[1,N]}. The user sends R to the cloud server.
(3) And after receiving the response, the cloud server sends the ciphertext of the corresponding document to the user.
(4) User usage Key sk1And decrypting the received ciphertext to obtain the document plaintext to be inquired.
And an update token generation stage:
(1) adding a document: the data owner generates a sub-index gamma for the document to be added by the same method as the second step of establishing the index*Will be gamma*And encrypted document xi*As update tokens
Figure BDA0003466228550000124
And sending the data to the cloud server. The operation type up is "add".
(2) Deleting textGear: data owner for document d to be deletedi,i∈[1,N]A document diIdentifier id (d) ofi) As update tokens
Figure BDA0003466228550000125
And sending the data to the cloud server. The operation type up is "delete".
(3) And (3) modifying the document: the operation type up is "modify".
Adding keywords of a certain document: data owner for document d to be modifiedi,i∈[1,N]Extracting d to obtainiCorresponding one | WDA line vector of dimension | x k, f corresponding to a keyword to be addedi(i∈[1,N]) The random number in (1) is changed into the position of the keyword, and the random number is used
Figure BDA0003466228550000131
And (4) encrypting. In addition, select
Figure BDA0003466228550000132
Selecting v (v is epsilon [1, theta ]) from corresponding linked list containing random numbers]) And replacing the original chain table elements with random numbers, wherein the number of the selected v and the original chain table may be different. The newly generated sub-index gamma*And encrypted document xi*As update tokens
Figure BDA0003466228550000133
And sending the data to the cloud server. This operation can add multiple keywords in the same document at a time.
Deleting the keywords of a certain document: data owner for document d to be modifiedi,i∈[1,N]Extracting diCorresponding one | WDA row vector of dimension | x k, f corresponding to a keyword to be deletedi(i∈[1,N]) In the method, the encrypted data of the original key word position is used as v (v is belonged to [1, theta ]]) And replacing the random numbers. In addition, select
Figure BDA0003466228550000134
Selecting v (v is equal to [1, theta ]) from corresponding linked list containing random numbers]) Random number, replacing original chain tableThe number of elements, v selected at this time, and the original chain table may not be the same. The newly generated sub-indexes gamma and diIdentifier id (d) ofi) As update tokens
Figure BDA0003466228550000135
And sending the data to the cloud server. This operation can delete multiple keywords in the same document at a time.
And an index updating stage:
(1) adding a document: cloud server receiving
Figure BDA0003466228550000136
Then, respectively adding gamma*And xi*Added to γ and ξ.
(2) Deleting the document: cloud server receiving
Figure BDA0003466228550000137
Then, deleting the corresponding linked list in gamma and according to id (d)i) Corresponding document d in encrypted document set zetaiAnd (5) deleting.
(3) And (3) modifying the document: cloud server receiving
Figure BDA0003466228550000138
Then, respectively adding gamma*And xi*Replacing the corresponding positions in γ and ξ.
It should also be noted that the terms "comprises," "comprising," or any other variation thereof, are intended to cover a non-exclusive inclusion, such that a process, method, article, or apparatus that comprises a list of elements does not include only those elements but may include other elements not expressly listed or inherent to such process, method, article, or apparatus. Without further limitation, an element defined by the phrase "comprising an … …" does not exclude the presence of other like elements in a process, method, article, or apparatus that comprises the element.
The above examples are to be construed as merely illustrative and not limitative of the remainder of the disclosure. After reading the description of the invention, the skilled person can make various changes or modifications to the invention, and these equivalent changes and modifications also fall into the scope of the invention defined by the claims.

Claims (9)

1. A high-efficiency fault-tolerant dynamic phrase searching method based on forward and backward privacy is characterized by comprising the following steps:
a key generation stage, generating a key and a public parameter;
in the index construction stage, a data owner designs an index structure by using piecewise linear chaotic mapping, an AND-OR structure cascaded minhash function, a bloom filter, an inverted index AND a matrix;
a trapdoor generation stage, wherein a user generates a trapdoor by using a phrase;
in the phrase searching stage, the cloud server checks the stored encryption indexes and returns an intermediate encryption result; after receiving the file identifier, the user decrypts the file identifier and returns the acquired file identifier to the cloud server; the cloud server returns the encrypted file of the response, and the user decrypts the file;
in the updating token generation stage, a user generates a token and sends the token to a cloud server;
and in the index updating stage, the cloud server updates the index and the document according to the token.
2. The efficient fault-tolerant dynamic phrase search method based on forward and backward privacy as claimed in claim 1, wherein the key generation phase generates a key and a public parameter, specifically comprising:
(1) giving a security parameter beta, and randomly selecting kxlambda minhash functions H from the same locality sensitive hash function family1Selecting a secret key generation algorithm SKGen (), and selecting two single hash functions H2And H3
(2)sk1←SKGen(1β),sk2←SKGen(1β),sk3←SKGen(1β) After authenticating the user, the sk is transmitted through the secure channel2Respectively transmitted to the cloud server and the user to send the sk1,sk3Transmitting to the user through a secure channel; the secret key is { sk1,sk2,sk3H, common parameters are k, λ, H1,H2,H3}。
3. The efficient fault-tolerant dynamic phrase searching method based on forward and backward privacy as claimed in claim 2, wherein the piecewise linear chaotic mapping specifically comprises:
the Piecewise Linear Chaotic Map (PWLCM) is described as:
Figure FDA0003466228540000011
wherein x isn∈(0,1),p∈(0,0.5)。xnFor the value of the function obtained at the nth time, xn-1The function value obtained at the n-1 th time, F [ x ]n-1]Representing the input value as xn-1P represents a decimal number, F (1-x)n-1) For input values of 1-xn-1The function value of (1).
4. The efficient fault-tolerant dynamic phrase searching method based on forward AND backward privacy as claimed in claim 3, wherein the minhash function of the AND-OR structure specifically comprises:
minhash is a LSH function family, which is used for Jaccard distance, Minhash uses a random hash function for each element in the set, and selects the minimum value of all hash values;
the hash function satisfying the following two conditions is called (d1, d2, p1, p2) -sensory:
(1) if d (x, y) ≦ d1, the probability of h (x) ≦ h (y) is at least p 1;
(2) if d (x, y) ≧ d2, the probability of h (x) ≧ h (y) is at most p 2;
wherein d (x, y) represents a distance measure between x and y; d1 represents the distance of case (1), d2 represents the distance of case (2), p1 represents the probability of case (1), and p2 represents the probability of case (2);
the cascade of AND AND OR operations can generate more hash tables, so that p1 is closer to 1, AND p2 is closer to 0;
after the AND structure is implemented using k random functions, the structure is expressed as g ═ h1,h2,...,hk);h1,h2,...,hkRespectively representing hash values calculated by k different hash functions. In this case, if g (x) is g (y), and only if
Figure FDA0003466228540000021
g (x), g (y) respectively represent k hash values obtained when the input values are x and y; then, λ different AND structures are used to realize an OR structure, the structure of which is expressed as
Figure FDA0003466228540000022
If and only if f (x) and f (y) are present
Figure FDA0003466228540000023
Thus, the family of (d1, d2, p1, p2) -sensory functions can be changed to the family of (d1, d2, p1 ', p 2') -sensory functions, wherein
Figure FDA0003466228540000024
The p1 ', p 2' sub-tables represent different probabilities obtained through a cascade of AND AND OR operations.
5. The efficient fault-tolerant forward and backward privacy-based dynamic phrase search method as claimed in claim 4, wherein the bloom filter is composed of an m-bit binary vector and a plurality of random mapping functions, and is mainly used to find out whether an element exists in a certain set, and it is operated by mapping the element into the binary vector by the random mapping function.
6. The efficient fault-tolerant dynamic phrase searching method based on forward and backward privacy of claim 5, wherein the index construction stage specifically comprises:
for each wi∈WD,i∈[1,Λ],WDThe number of the keywords in the keyword set is lambda;
(1) will wiEach letter ψaIs mapped to [0, 1 ] using a one-way hash function]Inner decimal fraction, a ∈ [1, Y ]]Y is wiThe value is mapped to the interval [0, s ] by using a piece wise Linear mapping (PIECWISE Linear mapping) algorithm]S is a secret parameter of minhash, and the obtained group of integers is a keyword wiThe code of (2), using the code as the input of minhash;
(2) using AND-OR structure AND randomly selecting k x lambda minhash functions from the same locality sensitive hash function family, respectively for wiPerforming operation to obtain k x lambda value xi,j∈[1,m],i∈[1,Λ],j∈[1,λ]The k x λ values form k hash tables, each of which x is assumed to not collidei,jMapping to an array of size m gamma, m > | WDI x k x λ, m represents the size of the array γ, WDIs a set of keywords.
(3) Will be provided with
Figure FDA0003466228540000031
Becomes 1 in the array gamma
Figure FDA0003466228540000032
And random gamma xi,υ]The corresponding bucket points to an array f of size | D | ><f1,...,fi,...,f|D|>,i∈[1,Λ],υ∈[1,k×λ]Λ ν ≠ a × λ +1), where each element is a linked list, the first element of which contains the document identifier id (d)k) And a pointer to the next element if the identifier is id (d)k) The document of (a) contains a keyword wiThen list fi=<id(dk),fk,1,...,fk,j,...,fk,t>,i∈[1,|D|],k∈[1,|D|],j∈[1,t]Where t is a keyword wiWhen the identifier is id (d)k) The number of locations in the document of (a),
Figure FDA0003466228540000033
poskjrepresenting a keyword wiWhen the identifier is id (d)k) If the identifier is id (d)k) Does not contain the keyword wiThen in the linked list fiIn the table, v random invalid characters are filled, v belongs to [1, theta ]](ii) a θ represents the maximum number of values of v;
(4) using sk1Symmetric encryption of document set D ζ ← EncDoc (sk)1,D);
(5) The data owner sends the index γ and the encrypted document set ζ to the cloud server.
7. The efficient fault-tolerant dynamic phrase searching method based on forward and backward privacy as claimed in claim 6, wherein the phrase searching stage specifically comprises:
(1) for the cloud server, after receiving the trapdoor T sent by the user,
firstly, a list CT is generated, and user names and counter values CT are storedserverLet ctserverIs 0, ct each time a search query is received for the userserverAdding 1 to the value of (c);
② judging H2(ctserver,sk2)==H2(ctuser,sk2) If not, returning the 'query failure' of the user, and if so, calculating the position loc of each bucket in the index
Figure FDA0003466228540000041
loc represents the location of each bucket in the index,
Figure FDA0003466228540000042
represents a hash value obtained using loc;
③ for each wiSelecting lambda value in the first hash table according to y and Q
Figure FDA0003466228540000043
Is equal, it is mapped to the value in the array gamma, and judged
Figure FDA0003466228540000044
Whether the result is true or not; if the hash tables are not established, sequentially judging k hash tables, and if only one hash table can be established, performing the fourth step;
if one of the hash tables is true, then for
Figure FDA0003466228540000045
xi,a*λ+1The ith keyword is represented by the a x lambda +1 hash value obtained by using a hash function, namely the hash value is the position of a corresponding bucket in the array gamma, and a belongs to [0, k-1 ]]Taking out the array f pointed by the pointer;
fifthly, sending all the taken arrays to the user according to the query sequence;
(2) after the user receives the arrays sent by the cloud server, each element f of each received array is subjected tokj
Firstly, a keyword w is calculated by using a formula (1)iThe position in the document or a random number,
Figure FDA0003466228540000046
obtaining an array before encryption;
secondly, the user calculates all the obtained arrays, judges whether the positions of the keywords to be inquired in the same document are connected or not, and calculates to obtain a document identifier set R which is { id (d) }i),i∈[1,N]}; the user sends the R to the cloud server;
(3) after receiving the response, the cloud server sends the ciphertext of the corresponding document to the user;
(4) user usage Key sk1And decrypting the received ciphertext to obtain the document plaintext to be inquired.
8. The efficient fault-tolerant dynamic phrase searching method based on forward and backward privacy as claimed in claim 7, wherein the update token generation stage specifically comprises:
(1) adding a document: the data owner generates a sub-index gamma for the document to be added by the same method as the second step of establishing the index*Will be gamma*And encrypted document xi*As update tokens
Figure FDA0003466228540000051
Sending the data to a cloud server; operation type up or add;
(2) deleting the document: data owner for document d to be deletedi,i∈[1,N]A document diIdentifier id (d) ofi) As update tokens
Figure FDA0003466228540000052
And sending the data to the cloud server. Operation type up ═ delete;
(3) and (3) modifying the document: operation type up ═ modify ";
adding a keyword of a certain document: data owner for document d to be modifiedi,i∈[1,N]Extracting diCorresponding one | WDA line vector of dimension | x k, f corresponding to a keyword to be addedi(i∈[1,N]) The random number in (1) is changed into the position of the keyword, and the random number is used
Figure FDA0003466228540000053
Encrypting; in addition, select
Figure FDA0003466228540000054
Selecting v (v is epsilon [1, theta ]) from corresponding linked list containing random numbers]) Replacing the original chain table elements with random numbers, wherein the number of the selected v and the original chain table may be different; the newly generated sub-index gamma is*And encrypted document xi*As update tokens
Figure FDA0003466228540000055
Sending the data to a cloud server; multiple keywords in the same document can be added once in the operation;
deleting the keywords of a certain document: data owner for document d to be modifiedi,i∈[1,N]Extracting diCorresponding one | WDA row vector of dimension | x k, f corresponding to a keyword to be deletedi(i∈[1,N]) In the method, the encrypted data of the original key word position is used as v (v is belonged to [1, theta ]]) A random number substitution; in addition, select
Figure FDA0003466228540000056
Selecting v (v is equal to [1, theta ]) from corresponding linked list containing random numbers]) Replacing the original chain table elements with random numbers, wherein the number of the selected v and the original chain table may be different; the newly generated sub-index gamma is*And diIdentifier id (d) ofi) As update token
Figure FDA0003466228540000057
Sending the data to a cloud server; this operation can delete multiple keywords in the same document at a time.
9. The efficient fault-tolerant dynamic phrase searching method based on forward and backward privacy as claimed in claim 8, wherein the index updating stage specifically comprises:
(1) adding a document: cloud server receiving
Figure FDA0003466228540000061
Then, respectively adding gamma*And xi*Added to γ and ξ;
(2) deleting the document: cloud server receiving
Figure FDA0003466228540000062
Then, deleting the corresponding linked list in gamma and according to id (d)i) Corresponding document d in encrypted document set zetaiDeleting;
(3) and (3) modifying the document: cloud server receiving
Figure FDA0003466228540000063
Then, respectively adding gamma*And xi*Replacing the corresponding positions in γ and ξ.
CN202210030502.3A 2022-01-12 2022-01-12 Efficient fault-tolerant dynamic phrase searching method based on forward privacy and backward privacy Pending CN114531220A (en)

Priority Applications (1)

Application Number Priority Date Filing Date Title
CN202210030502.3A CN114531220A (en) 2022-01-12 2022-01-12 Efficient fault-tolerant dynamic phrase searching method based on forward privacy and backward privacy

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
CN202210030502.3A CN114531220A (en) 2022-01-12 2022-01-12 Efficient fault-tolerant dynamic phrase searching method based on forward privacy and backward privacy

Publications (1)

Publication Number Publication Date
CN114531220A true CN114531220A (en) 2022-05-24

Family

ID=81621687

Family Applications (1)

Application Number Title Priority Date Filing Date
CN202210030502.3A Pending CN114531220A (en) 2022-01-12 2022-01-12 Efficient fault-tolerant dynamic phrase searching method based on forward privacy and backward privacy

Country Status (1)

Country Link
CN (1) CN114531220A (en)

Cited By (4)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN115268799A (en) * 2022-09-27 2022-11-01 武汉烜旭软件科技有限公司 Storage method and device based on cloud service
CN115292737A (en) * 2022-10-08 2022-11-04 成都泛联智存科技有限公司 Multi-keyword fuzzy search encryption method and system and electronic equipment
CN116894272A (en) * 2023-09-08 2023-10-17 北京数盾信息科技有限公司 Cloud computing system data processing method based on high-speed encryption technology
CN117131209A (en) * 2023-10-26 2023-11-28 中国传媒大学 Phrase searching and verifying method and system for encrypted data based on blockchain

Citations (2)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US20210191990A1 (en) * 2019-12-20 2021-06-24 Rakuten, Inc. Efficient cross-modal retrieval via deep binary hashing and quantization
CN113762077A (en) * 2021-07-19 2021-12-07 沈阳工业大学 Multi-biological-characteristic iris template protection method based on double-hierarchical mapping

Patent Citations (2)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US20210191990A1 (en) * 2019-12-20 2021-06-24 Rakuten, Inc. Efficient cross-modal retrieval via deep binary hashing and quantization
CN113762077A (en) * 2021-07-19 2021-12-07 沈阳工业大学 Multi-biological-characteristic iris template protection method based on double-hierarchical mapping

Non-Patent Citations (3)

* Cited by examiner, † Cited by third party
Title
CHAUDHARI P.等: "Privacy preserving searchable encryption with fine-grained access control", IEEE TRANSACTIONS ON CLOUD COMPUTING, 31 December 2019 (2019-12-31) *
WANG B 等: "Privacy-preserving Multikeyword Fuzzy Search over Encrypted Data in the Cloud", PROCEEDINGS OF IEEE INFOCOM.TORONTO:INSTITUTE OF ELECTRICAL AND ELECTRONICS ENGINEERS, 31 December 2014 (2014-12-31) *
姚寒冰;邢娜娜;周俊伟;李勇华;: "支持结果排序的安全密文检索方法研究", 计算机科学, no. 05, 15 May 2018 (2018-05-15) *

Cited By (8)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN115268799A (en) * 2022-09-27 2022-11-01 武汉烜旭软件科技有限公司 Storage method and device based on cloud service
CN115268799B (en) * 2022-09-27 2022-12-06 武汉烜旭软件科技有限公司 Storage method and device based on cloud service
CN115292737A (en) * 2022-10-08 2022-11-04 成都泛联智存科技有限公司 Multi-keyword fuzzy search encryption method and system and electronic equipment
CN115292737B (en) * 2022-10-08 2022-12-09 成都泛联智存科技有限公司 Multi-keyword fuzzy search encryption method and system and electronic equipment
CN116894272A (en) * 2023-09-08 2023-10-17 北京数盾信息科技有限公司 Cloud computing system data processing method based on high-speed encryption technology
CN116894272B (en) * 2023-09-08 2023-11-28 北京数盾信息科技有限公司 Cloud computing system data processing method based on high-speed encryption technology
CN117131209A (en) * 2023-10-26 2023-11-28 中国传媒大学 Phrase searching and verifying method and system for encrypted data based on blockchain
CN117131209B (en) * 2023-10-26 2024-02-13 中国传媒大学 Phrase searching and verifying method and system for encrypted data based on blockchain

Similar Documents

Publication Publication Date Title
Pasupuleti et al. An efficient and secure privacy-preserving approach for outsourced data of resource constrained mobile devices in cloud computing
Du et al. Privacy-preserving indexing and query processing for secure dynamic cloud storage
CN106815350B (en) Dynamic ciphertext multi-keyword fuzzy search method in cloud environment
Raman et al. Distributed storage meets secret sharing on the blockchain
Wang et al. Symmetric private information retrieval for MDS coded distributed storage
CN114531220A (en) Efficient fault-tolerant dynamic phrase searching method based on forward privacy and backward privacy
US10965448B1 (en) Dynamic distributed storage for scaling blockchain
CN112270006A (en) Searchable encryption method for hiding search mode and access mode in e-commerce platform
US20090113213A1 (en) System and method for searching encrypted numerical data
Persiano et al. Lower bounds for differentially private RAMs
Zhu et al. A novel verifiable and dynamic fuzzy keyword search scheme over encrypted data in cloud computing
Awad et al. Chaotic searchable encryption for mobile cloud storage
Miao et al. Ranked keyword search over encrypted cloud data through machine learning method
Chen et al. Verifiable dynamic ranked search with forward privacy over encrypted cloud data
Jiang et al. An Efficient Symmetric Searchable Encryption Scheme for Cloud Storage.
Rasina Begum et al. SEEDDUP: a three-tier SEcurE data DedUPlication architecture-based storage and retrieval for cross-domains over cloud
Li et al. Multi-keyword fuzzy search over encrypted cloud storage data
Fu et al. A privacy-preserving fuzzy search scheme supporting logic query over encrypted cloud data
Wang et al. Improved file-injection attacks on searchable encryption using finite set theory
Muhammad et al. A secure data outsourcing scheme based on Asmuth–Bloom secret sharing
Tian et al. A Privacy-Preserving Hybrid Range Search Scheme Over Encrypted Electronic Medical Data in IoT Systems
Wang et al. Secure and efficient similarity retrieval in cloud computing based on homomorphic encryption
Zhou et al. Integrity preserving multi-keyword searchable encryption for cloud computing
Xiong et al. An efficient searchable symmetric encryption scheme for smart grid data
CN112328626B (en) Searchable encryption method facing cloud environment and supporting fuzzy keyword sequencing

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