CN108052834A - A kind of approximate beeline querying method towards close state graph structure - Google Patents
A kind of approximate beeline querying method towards close state graph structure Download PDFInfo
- Publication number
- CN108052834A CN108052834A CN201711305987.8A CN201711305987A CN108052834A CN 108052834 A CN108052834 A CN 108052834A CN 201711305987 A CN201711305987 A CN 201711305987A CN 108052834 A CN108052834 A CN 108052834A
- Authority
- CN
- China
- Prior art keywords
- vertex
- cloud server
- client
- graph structure
- label
- 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
Links
Classifications
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F21/00—Security arrangements for protecting computers, components thereof, programs or data against unauthorised activity
- G06F21/60—Protecting data
- G06F21/62—Protecting access to data via a platform, e.g. using keys or access control rules
- G06F21/6218—Protecting access to data via a platform, e.g. using keys or access control rules to a system of files or objects, e.g. local or distributed file system or database
- G06F21/6227—Protecting access to data via a platform, e.g. using keys or access control rules to a system of files or objects, e.g. local or distributed file system or database where protection concerns the structure of data, e.g. records, types, queries
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F21/00—Security arrangements for protecting computers, components thereof, programs or data against unauthorised activity
- G06F21/60—Protecting data
- G06F21/62—Protecting access to data via a platform, e.g. using keys or access control rules
- G06F21/6218—Protecting access to data via a platform, e.g. using keys or access control rules to a system of files or objects, e.g. local or distributed file system or database
- G06F21/6245—Protecting personal data, e.g. for financial or medical purposes
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F21/00—Security arrangements for protecting computers, components thereof, programs or data against unauthorised activity
- G06F21/60—Protecting data
- G06F21/62—Protecting access to data via a platform, e.g. using keys or access control rules
- G06F21/6218—Protecting access to data via a platform, e.g. using keys or access control rules to a system of files or objects, e.g. local or distributed file system or database
- G06F21/6272—Protecting access to data via a platform, e.g. using keys or access control rules to a system of files or objects, e.g. local or distributed file system or database by registering files or documents with a third party
Landscapes
- Engineering & Computer Science (AREA)
- Theoretical Computer Science (AREA)
- Health & Medical Sciences (AREA)
- Bioethics (AREA)
- General Health & Medical Sciences (AREA)
- Computer Security & Cryptography (AREA)
- Computer Hardware Design (AREA)
- Software Systems (AREA)
- Physics & Mathematics (AREA)
- General Engineering & Computer Science (AREA)
- General Physics & Mathematics (AREA)
- Databases & Information Systems (AREA)
- Medical Informatics (AREA)
- Computer And Data Communications (AREA)
- Information Retrieval, Db Structures And Fs Structures Therefor (AREA)
Abstract
The invention belongs to graph structure technical fields, it is proposed that a kind of approximate beeline querying method towards close state graph structure.The present invention provides a kind of data structure that can supports efficiently to calculate approximation beeline between figure vertex under big data quantity environment by using the distance prophesy plane mechanism based on sketch; and it is innovative be combined to realize the protection to data safety and privacy with symmetric encipherment algorithm, while meet the functional requirement for carrying out efficiently calculating and operating to specific cipher text data.Its close state graph structure safe can be outsourced in a un-trusted Cloud Server by the present invention, while not lose the ability inquired about it again.The storage service that can be sufficiently provided using Cloud Server, while relievedly inquiry operation is given to server to perform, it is ensured that server can not obtain effective information as far as possible during interaction.
Description
Technical field
The invention belongs to graph structure technical fields, and in particular to a kind of approximate beeline towards close state graph structure is inquired about
Method.
Background technology
Graph structure data are usually used to the structural data for representing complicated, and more rich letter is included than unstructured data
Breath.With the fast development of information technology, structural data carries out depositing for various figures using increasing using chart database
Storage, management and inquiry have obtained people and have widely paid close attention to.In addition, as the development of big data is, it is necessary to the figure operated
The scale of structured data is exponentially increased, and needs further development for the treatment technology of massive data of graph structure, such as:It deposits
Storage and inquiry catenet figure, online social networks, bio-networks, RDF data collection and communication network etc..No matter in science side
Face or industrial aspect, more and more graph structure data need to carry out effective and efficient management, inquiry and analysis.Most short distance
Calculated from inquiry is one of most common graph structure data processing technique and one of the most widely used function of figure.For example,
In social network user graph structure, by calculating the beeline between user A and user B, the parent between user can be analyzed
The information such as density;In traffic route, by calculating the beeline between two places, shortest path can be carried out to circuit
Planning;In routing management, by calculating the beeline between routing node, optimization can be updated to network communication.
The computation complexity of minimum distance calculation in graph structure data between vertex is usually higher, for large-scale complicated
Graph structure data, user are difficult to be calculated locally.Cloud computing possesses superpower computing capability and storage capacity, therefore more next
More individuals and company want to store graph structure data into Cloud Server, by minimum distance calculation work(between its vertex
It can be outsourced in Cloud Server.After user can be by sending beeline inquiry request, Cloud Server performs beeline meter
It calculates, and returns result to user, resource utilization is improved with this, it is cost-effective.
However at the same time, cloud computing also brings the problem of many new information securities and data-privacy.The figure of user
Structured data inherently contains the abundant information with tap value, while each inquiry operation of user also all can be to cloud
Server reveals information.And Cloud Server supplier believes as the graph structure data that insincere third party may be uploaded by user
The inquiry request of breath and user obtain valuable or sensitive information, it might even be possible to which the comprehensive information obtained is entire to simulate
The topological structure of figure, so that the individual privacy and data of user faces serious security risk.Currently, it is how hidden in protection
On the premise of private, specific data are carried out with efficient operation and corresponding and is processed into for an important research side
To.
In addition, mainly pass through currently for the method for secret protection of 2 points of calculating point-to-point transmission beelines in figure
Anonymization technology modifies to the feature structure of figure, so as to which privacy information be hidden.But this method is by graph structure
Statistical nature changed so that the correctness of the minimum distance calculation of the point-to-point transmission of the graph structure after change is by broken
It is bad.Moreover, the side right value of graph structure is typically that secret protection is carried out in a manner of introducing noise, essence is still plaintext shape
Formula, security are still relatively low.
The content of the invention
It is an object of the invention to provide a kind of approximate beeline querying methods towards close state graph structure, solve local
The various limiting factors brought, while the effectively privacy of protection data are calculated, is allowed to be increasingly becoming graph structure data outsourcing
A kind of effective scheme.
Technical scheme:
A kind of approximate beeline querying method towards close state graph structure, the entity of participation mainly have following two:Cloud
Server and client.Wherein Cloud Server is half sincere storage device of the close state graph structure information of storage, client it is every
One member can serve as the data publication side for holding graph structure data, also can serve as data query side, and the two carries out
Information exchange.
The Cloud Server includes the queries dictionary and query token of close state graph structure information.Its work(in this programme
It can include inquiring about queries dictionary by the query token in querying command, the cipher-text information inquired is returned into client
End.
Pretreated graph structure is encrypted the close state graph structure of generation in the client, generates encryption key, raw
Into vertex label and using close state graph structure and vertex label generation queries dictionary, queries dictionary is uploaded into Cloud Server
End;Function during data query corner color is performed is generation query token, initiates querying command, generates decruption key,
Ciphertext data are decrypted, local computing is carried out to the information after decryption.For ensuring information security property, inquiry behaviour is only performed
The user of work knows and only knows the real information content of its inquiry.
This programme is intended to be operated for large-scale diagram data, it is believed that data publication side not in local to graph structure data
It is calculated, such data publication side can also be used as data query direction cloud server end and initiate inquiry request, and need not
The problem of transmission of key is considered, it is taken as that client can rationally realize issue operation and the inquiry operation of close state graph structure.
A kind of approximate beeline querying method towards close state graph structure includes the following steps:
Step 1:Client carries out pretreatment operation to graph structure data, makes graph structure data conversion into can be encrypted
The data structure of processing;
Step 2:Client generates encryption key, the graph structure by pretreatment is encrypted the close state graph structure of generation
EO, and processing generation vertex label is carried out to each vertex of graph structureIncluding step:
2.1) according to system security parameter, client generation AES encryption key K1With pseudo-random sequence key K2, wherein, K1
The graph structure by pretreatment is encrypted for AE Cloud Servers symmetric key encryption algorithm, generates encrypted indexes, K2With
Operation is encrypted in pseudo-random sequence opposite vertexes;
2.2) K is utilized2All vertex v ∈ V are calculated by pseudo-random sequence P, wherein V is vertex set, is obtained
Vertex labelVertex label inquires about close state structured data using as the query token that subsequent query operates, visitor
Family end retains the vertex label of all vertex v ∈ V in local;
2.3) K is utilized1As encryption key to the Sketch structures Sk on all vertex in figurev(v ∈ V) is encrypted, and obtains
The Sketch structures ESk of one group encryptionv(v ∈ V) can not as obtain the close state graph structure EO of effective cleartext information;
Step 3:Client utilizes vertex labelPacified with close state graph structure EO generations on insincere server
Queries dictionary is sent to Cloud Server by the queries dictionary inquired about entirely, completes the Cloud Server uploading operation of graph structure data, visitor
Family end need not carry out graph structure data local preservation, reduce the storage overhead.
Step 4:Client selects the query token on vertex, Xiang Cun according to two vertex for being intended to inquire about approximate beeline
The Cloud Server for storing up queries dictionary sends query token, and Cloud Server looks into queries dictionary according to the query token received
It askes;If Cloud Server inquires and the corresponding vertex label of query token in queries dictionaryThen sent to client
The vertex labelCorresponding ciphertext structured data is as returned data in queries dictionary;If at least one is corresponding
Vertex label fails to be queried to, then Cloud Server sends the prompting of inquiry failure to client, does not send effective returned data;
Step 5:If client receives effective returned data from Cloud Server, returned data is decrypted
Operation, obtains the Sketch structured datas of plaintext;Local computing is carried out to the data in the Sketch structures on two vertex, is obtained
Final approximate distance query result.Specifically include following steps:
5.1) client utilizes key K1To receiving two groups of ciphertext Sketch structures ESku(u ∈ V) and ESkv(v ∈ V) into
Row decryption, obtains the Sketch structures Sk of plaintextuAnd Skv;
5.2) to Sku={ (ω0,δ0),...,(ωn,δn) and Skv={ (ω0,δ0),...,(ωm,δm) in it is all
Two tuple elements find public vertex ω;
5.3) to each public vertex ω searched out, using known public vertex ω to inquiry vertex u, v's
Beeline, i.e.,
δω=δ (u, ω)=δ (ω, Sku)
δω=δ (v, ω)=δ (ω, Skv)
Wherein:U, v are inquiry vertex;Calculate δ (u, ω)+δ (ω, v);
5.4) according to the result of calculation of δ (u, ω)+δ (ω, v), the minimum value compared is approximation between required vertex
Beeline.
Further, the pretreatment operation of above-mentioned steps 1 can generate and be easy to be encrypted and reduce calculating and deposit
The data structure of expense is stored up, is specially:
1.1) client selection sampling parameters r carries out the vertex set V of non-directed graph G r+1 independent random sampling, shape
Into r+1 sampling set S0,S1,...,Sr, the number on vertex is respectively 2 in set0,21,...,2r, wherein participating in the top of sampling
The degree of point is no less than 2;
1.2) to sampling set SiIn each sampling vertex, calculate it to the distance of vertex u, obtain vertex u and taking
Sample set SiIt is middle to pinpoint ω apart from shortest samplingiWith beeline δi;
δi=δ (u, wi)=δ (u, Si)
Wherein, i=1,2,3
1.3) to all sampling set S0,S1,...,SrStep 1.2) operation is carried out, is respectively obtained on vertex u's
(ω0,δ0),(ω1,δ1)...(ωr,δr), obtain a sampling set SAMPLE [u] of vertex u;
1.4) repeated sampling is carried out to the vertex in non-directed graph G, by step 1.1) to independent operating 1.3) is operated k times, obtained
Obtain the Sketch structures Sk of vertex uu;
1.5) carry out step 1.1) to all vertex in non-directed graph G to operate to step 1.4), obtain all vertex in figure
Sketch structures, complete graph structure data pretreatment operation.
Further, above-mentioned steps 3 specifically include following steps:
3.1) client establishes a queries dictionary as storage organization, passes through vertex labelIt is arranged
Sequence is right successivelyIt is stored, obtains queries dictionary;In queries dictionary, vertex labelAnd ESkv
(v ∈ V) forms correspondence, passes through vertex labelObtain corresponding ESkv(v∈V);
3.2) queries dictionary is sent to Cloud Server by client, queries dictionary is locally stored in Cloud Server.
Further, above-mentioned steps 4 specifically include following steps:
4.1) Cloud Server of client to storage queries dictionary initiates inquiry request q=(u, v),
Calculate selection query token tk:
Tk=(tku,tkv)=(PK2(u),PK2(v))。
Wherein:Q=(u, v) is inquiry request;Tk is query token;(PK2(u),PK2(v)) it is corresponding vertex u, the top of v
Point label;
4.2) client sends query token tk to Cloud Server, waits the returned data of Cloud Server;
4.3) Cloud Server inquires about queries dictionary according to the query token tk received;According to (tku,tkv) inquiring about
Vertex label (the P of corresponding vertex u, v are found in dictionaryK2(u),PK2(v));
If vertex label (the P of the opposite vertexes u in queries dictionary, vK2(u),PK2(v)) whole successful inquirings, then perform step
It is rapid 4.4);If the vertex label there are at least one vertex is not queried to, step 4.5) is performed;
4.4) Cloud Server is according to (tku,tkv) inquired in queries dictionary respectively with vertex label PK2(u) and PK2(v)
Corresponding ESkuAnd ESkv;Cloud Server is by ESkv(v ∈ V) and ESku(u ∈ V) is used as two groups of effective returned datas
It is sent to client;Client continues to execute step 5;
4.5) ⊥ is sent to client by Cloud Server, represents there is no the group polling vertex,
Inquiry failure;Client receives invalid returned data, and scheme all processes terminate.
Beneficial effects of the present invention:
Its close state graph structure safe can be outsourced in a un-trusted Cloud Server by the present invention, while again not
Lose the ability inquired about it.The storage service that can be sufficiently provided using Cloud Server, while relievedly will inquiry
Operation gives server to perform, it is ensured that server can not obtain effective information as far as possible during interaction.
Description of the drawings
Fig. 1 is approximate beeline querying method Organization Chart of the present invention towards close state graph structure.
Fig. 2 is the graph structure process of data preprocessing flow chart of the specific embodiment of the invention.
Fig. 3 is the ciphertext graph structured data process flowchart of the specific embodiment of the invention.
Fig. 4 is the query process flow chart of the specific embodiment of the invention.
Fig. 5 is the local computing process flow diagram flow chart of the specific embodiment of the invention.
Specific embodiment
Specific embodiments of the present invention are described in detail below in conjunction with technical solution and attached drawing.
The approximate beeline querying method framework towards close state graph structure of present embodiment, as shown in Figure 1.
User C selections need to be stored in the graph structure of Cloud Server, and pretreatment operation is carried out to graph structure.
Using the distance prophesy machine schemes generation pretreatment graph structure based on Sketch structures, Sketch structures can be with for selection
It solves the problems, such as that beeline is inquired about under big data quantity environment, is that one kind being capable of efficient approximate most short distance between vertex in calculating figure
From data structure.It, can be by right in query process by calculating a Sketch structure to each vertex in figure
The approximate beelines for comparing to calculate between two inquiry vertex of the Sketch structures on two inquiry vertex.To by pre- place
The close state graph structure of generation is encrypted in the graph structure of reason, and processing generation label is carried out to each vertex of graph structure.Each
The query token on vertex is exactly the label on the vertex, and label and the pairing storage of close state graph structure are become a queries dictionary, looked into
It askes in dictionary without any valid data that can reveal cleartext information.Queries dictionary is uploaded onto the server, is wished according to user
The inquiry vertex inquired about, client form query token, query token are sent to server.Server makes according to inquiry
Board performs queries dictionary inquiry operation and query result is returned to client.If successful inquiring, server return pair
The encrypted Sketch structures on vertex should be inquired about, client is decrypted and carries out local computing after the receipt, to it;If it looks into
Ask it is unsuccessful, then server return invalid message to client.
Step 1:Client carries out pretreatment operation to graph structure data, makes graph structure data conversion into being easy to be encrypted
Processing and the data structure for reducing calculating and storage overhead, as shown in Fig. 2, specifically including following steps:
Step 1-1:Client selects sampling parameters, and r+1 independent random sampling is carried out to the vertex set V of non-directed graph G,
Form r+1 sampling set S0,S1,...,Sr, the number on vertex is respectively 2 in set0,21,...,2r(it is required that participating in sampling
2) degree on vertex is at least.
Step 1-2:To sampling set SiIn each sampling vertex, calculate it to the distance of vertex u, obtain vertex u
In sampling set SiIt is middle to pinpoint ω apart from shortest samplingiWith beeline δi=δ (u, wi)=δ (u, Si)。
Step 1-3:To all sampling set S0,S1...SrStep 1-2 operations are carried out, are respectively obtained on vertex u's
(ω0,δ0),(ω1,δ1)...(ωr,δr), obtain sampling set SAMPLE [u]={ (ω of vertex u0,δ0),...,
(ωr,δr)}。
Step 1-4:Repeated sampling is carried out to the vertex in non-directed graph G, by step 1-1 to step 1-3 operation independent operatings k
It is secondary, by this result of calculation SAMPLEP [u] of k times1,SAMPLEP[u]2...SAMPLEP[u]kUnion is taken, obtains the cloud of vertex u
Server S ketch structures Sku=SAMPLEP [u]1∪SAMPLEP[u]2∪...∪SAMPLEP[u]k。
Step 1-5:All vertex in non-directed graph G are carried out with step 1-1 to step 1-4 operations, obtains all tops in figure
The Cloud Server Sketch structures of point complete the pretreatment operation of graph structure data.
Step 2:Client generates encryption key, the graph structure by pretreatment is encrypted the close state graph structure of generation
EO, and processing generation vertex label is carried out to each vertex of graph structureAs shown in figure 3, comprise the following steps:
Step 2-1:According to system security parameter, K is generated1Operation is encrypted for pseudo-random sequence opposite vertexes, generates
Encrypted indexes;And K2The graph structure by pretreatment is encrypted for AE Cloud Server S symmetric key encryption algorithms.
Step 2-2:Utilize K2All vertex v ∈ V are calculated by pseudo-random sequence P, obtain vertex label
Vertex label inquires about close state structured data using as the query token that subsequent query operates, and C retains the top on all vertex
Point label is in local.
Step 2-3:Utilize K1As encryption key to the Cloud Server Sketch structures Sk on all vertex in figurev(v∈V)
It is encrypted, i.e., to SkvElement in (v ∈ V) is encrypted successively, such as:To SkvI-th pair element (the ω i, δ of (v ∈ V)i)
It is encrypted, calculatesObtain a group encryption Cloud Server Sketch structures ESkv=(c1,c2,...,cV),
(v ∈ V) can not as obtain the close state graph structure EO of effective cleartext information.
Step 3:C utilizes vertex label PK2(v) can be pacified with close state graph structure EO generations on insincere server
Queries dictionary is sent to Cloud Server S by the queries dictionary DX inquired about entirely.The Cloud Server for completing graph structure data uploads work
Make, C need not carry out graph structure data local preservation, reduce the storage overhead.Specifically include following steps:
Step 3-1:C establishes a queries dictionary DX as storage organization, passes through labelIt is ranked up, successively
It is rightIt is stored, obtains DX.In DX, vertex labelAnd ESkv(v ∈ V) forms correspondence, passes throughIt can be obtained by corresponding ESkv(v∈V)。
Step 3-2:Queries dictionary DX is sent to Cloud Server S by C, and Cloud Server S carries out queries dictionary DX local deposit
Storage.
Step 4:C selects the query token on vertex, is inquired about to storage according to two vertex for being intended to inquire about approximate beeline
The Cloud Server S of dictionary DX sends query token, and Cloud Server S looks into queries dictionary according to the query token received
It askes.If Cloud Server S inquired in queries dictionary DX with the corresponding vertex label of query token, send the top to C
Point label in DX corresponding ciphertext structured data as returned data;If at least one corresponding vertex label fail by
It inquires, then Cloud Server S sends the prompting of inquiry failure to C, does not send effective returned data.As shown in figure 4, it specifically includes
Following steps:
Step 4-1:The Cloud Server S of from C to storage DX initiate inquiry request q=(u, v), that is, calculate selection query token tk
=(tku,tkv)=(PK2(u),PK2(v))。
Step 4-2:C sends query token tk to Cloud Server S, waits the returned data of Cloud Server S.
Step 4-3:Cloud Server S inquires about DX according to the query token tk received.According to (tku,tkv) inquiring about
The vertex label P of corresponding vertex u, v are found in dictionary DXK2(u),PK2(v).If the vertex label of the opposite vertexes u in DX, v are complete
Portion's successful inquiring then performs step 4-4;It is not queried to if there is the vertex label at least one vertex, then performs step
4-5。
Step 4-4:Cloud Server S is according to (tku,tkv) inquired in queries dictionary DX respectively with PK2(u) and PK2(v)
Corresponding ESkuAnd ESkv, i.e. ESku:=DX [tku] and ESkv:=DX [tkv].Cloud Server S is by ESku=(cu1,cu2,...,
cuV) and ESkv=(cv1,cv2,...,cvV) as two groups of effective returned datas it is sent to C.C continues to execute step 5.
Step 4-5:⊥ is sent to C by Cloud Server S, represents there is no the group polling vertex,
Inquiry failure.C receives invalid returned data, and scheme all processes terminate.
Step 5:If C receives effective returned data from Cloud Server S, returned data is decrypted behaviour
Make, obtain the Cloud Server Sketch structured datas of plaintext.To the data in the Cloud Server Sketch structures on two vertex into
Row local computing obtains final approximate distance query result.As shown in figure 5, specifically include following steps:
Step 5-1:C utilizes key K1To receiving two groups of ciphertext Cloud Server Sketch structures ESku=(cu1,
cu2,...,cuV) and ESkv=(cv1,cv2,...,cvV) be decrypted, obtain the Cloud Server Sketch structures Sk of plaintextuWith
Skv。
Step 5-2:To Sku={ (ω0,δ0),...,(ωn,δn) and Skv={ (ω0,δ0),...,(ωm,δm) in
All elements find constituent element element (ω, δ with public vertex ωω) and (ω, δω')。
Step 5-3:To each public vertex ω searched out, using known public vertex ω to inquiry vertex u,
The beeline of v, i.e. δω=δ (u, ω)=δ (ω, Sku) and δω'=δ (v, ω)=δ (ω, Skv), calculate δ (u, ω)+δ
(ω, v).
Step 5-4:According to the result of calculation of δ (u, ω)+δ (ω, v), between the as required vertex of the minimum value compared
Approximate beeline.
Claims (4)
1. a kind of approximate beeline querying method towards close state graph structure, which is characterized in that include the following steps:
Step 1:Client carries out pretreatment operation to graph structure data, makes graph structure data conversion into can be encrypted
Data structure;
Step 2:Client generates encryption key, the graph structure by pretreatment is encrypted the close state graph structure EO of generation, and
Processing generation vertex label P is carried out to each vertex of graph structureK2(v);Including step:
2.1) according to system security parameter, client generation AES encryption key K1With pseudo-random sequence key K2, wherein, K1For
The graph structure by pretreatment is encrypted in AE Cloud Servers symmetric key encryption algorithm, generates encrypted indexes, K2For puppet
Operation is encrypted in random sequence opposite vertexes;
2.2) K is utilized2All vertex v ∈ V are calculated by pseudo-random sequence P, wherein V is vertex set, obtains vertex mark
Sign PK2(v);Vertex label inquires about close state structured data using as the query token that subsequent query operates, and client retains
The vertex label of all vertex v ∈ V is in local;
2.3) K is utilized1As encryption key to the Sketch structures Sk on all vertex in figurev(v ∈ V) is encrypted, and obtains one group
Encrypted Sketch structures ESkv(v ∈ V) can not as obtain the close state graph structure EO of effective cleartext information;
Step 3:Client utilizes vertex label PK2(v) safety is carried out on insincere server and is looked into close state graph structure EO generations
Queries dictionary is sent to Cloud Server by the queries dictionary of inquiry;
Step 4:Client selects the query token on vertex, is looked into storage according to two vertex for being intended to inquire about approximate beeline
The Cloud Server for asking dictionary sends query token, and Cloud Server inquires about queries dictionary according to the query token received;
If Cloud Server inquires and the corresponding vertex label P of query token in queries dictionaryK2(v), then being sent to client should
Vertex label PK2(v) in queries dictionary corresponding ciphertext structured data as returned data;If at least one corresponding top
Point label fails to be queried to, then Cloud Server sends the prompting of inquiry failure to client, does not send effective returned data;
Step 5:If client receives effective returned data from Cloud Server, returned data is decrypted behaviour
Make, obtain the Sketch structured datas of plaintext;Local computing is carried out to the data in the Sketch structures on two vertex, is obtained most
Whole approximate distance query result, specifically includes following steps:
5.1) client utilizes key K1To receiving two groups of ciphertext Sketch structures ESku(u ∈ V) and ESkv(v ∈ V) is solved
It is close, obtain the Sketch structures Sk of plaintextuAnd Skv;
5.2) to Sku={ (ω0,δ0),...,(ωn,δn) and Skv={ (ω0,δ0),...,(ωm,δm) in all binary
Constituent element element, finds public vertex ω;
5.3) to each public vertex ω searched out, using known public vertex ω to inquiry vertex u, v's is most short
Distance, i.e.,
δω=δ (u, ω)=δ (ω, Sku)
δω=δ (v, ω)=δ (ω, Skv)
Wherein:U, v are inquiry vertex;Calculate δ (u, ω)+δ (ω, v);
5.4) it is approximate most short between the as required vertex of the minimum value compared according to the result of calculation of δ (u, ω)+δ (ω, v)
Distance.
2. the approximate beeline querying method according to claim 1 towards close state graph structure, which is characterized in that step
1 pretreatment operation, specially:
1.1) client selection sampling parameters r carries out the vertex set V of non-directed graph G r+1 independent random sampling, forms r+1
A sampling set S0,S1,...,Sr, the number on vertex is respectively 2 in set0,21,...,2r, wherein participate in the vertex of sampling
Degree no less than 2;
1.2) to sampling set SiIn each sampling vertex, calculate it to the distance of vertex u, obtain vertex u in sampling set
SiIt is middle to pinpoint ω apart from shortest samplingiWith beeline δi;
δi=δ (u, wi)=δ (u, Si)
Wherein, i=1,2,3
1.3) to all sampling set S0,S1,...,SrStep 1.2) operation is carried out, respectively obtains (the ω on vertex u0,
δ0),(ω1,δ1)...(ωr,δr), obtain a sampling set SAMPLE [u] of vertex u;
1.4) repeated sampling is carried out to the vertex in non-directed graph G, by step 1.1) to independent operating 1.3) is operated k times, is pushed up
The Sketch structures Sk of point uu;
1.5) carry out step 1.1) to all vertex in non-directed graph G to operate to step 1.4), obtain all vertex in figure
Sketch structures complete the pretreatment operation of graph structure data.
3. the approximate beeline querying method according to claim 1 or 2 towards close state graph structure, which is characterized in that
Step 3 specifically includes following steps:
3.1) client establishes a queries dictionary as storage organization, passes through vertex label PK2(v) v ∈ V are ranked up, successively
To (PK2(v),ESkv) stored, obtain queries dictionary;In queries dictionary, vertex label PK2(v) and ESkv(v ∈ V) shape
Into correspondence, pass through vertex label PK2(v) corresponding ESk is obtainedv(v∈V);
3.2) queries dictionary is sent to Cloud Server by client, and queries dictionary is locally stored in Cloud Server.
4. the approximate beeline querying method according to claim 1 or 2 towards close state graph structure, which is characterized in that
Step 4 specifically includes following steps:
4.1) Cloud Server of client to storage queries dictionary initiates inquiry request q=(u, v),
Calculate selection query token tk:
Tk=(tku,tkv)=(PK2(u),PK2(v));
Wherein:Q=(u, v) is inquiry request;Tk is query token;(PK2(u),PK2(v)) it is corresponding vertex u, the vertex of v is marked
Label;
4.2) client sends query token tk to Cloud Server, waits the returned data of Cloud Server;
4.3) Cloud Server inquires about queries dictionary according to the query token tk received;According to (tku,tkv) in queries dictionary
Middle vertex label (the P for finding corresponding vertex u, vK2(u),PK2(v));
If vertex label (the P of the opposite vertexes u in queries dictionary, vK2(u),PK2(v)) whole successful inquirings, then perform step
4.4);If the vertex label there are at least one vertex is not queried to, step 4.5) is performed;
4.4) Cloud Server is according to (tku,tkv) inquired in queries dictionary respectively with vertex label PK2(u) and PK2(v) it is corresponding
ESkuAnd ESkv;Cloud Server is by ESkv(v ∈ V) and ESku(u ∈ V) is sent to client as two groups of effective returned datas;
Client continues to execute step 5;
4.5) ⊥ is sent to client by Cloud Server, represents there is no the group polling vertex, inquires about
Failure;Client receives invalid returned data, and scheme all processes terminate.
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN201711305987.8A CN108052834B (en) | 2017-12-11 | 2017-12-11 | A kind of approximate shortest distance querying method towards close state graph structure |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN201711305987.8A CN108052834B (en) | 2017-12-11 | 2017-12-11 | A kind of approximate shortest distance querying method towards close state graph structure |
Publications (2)
Publication Number | Publication Date |
---|---|
CN108052834A true CN108052834A (en) | 2018-05-18 |
CN108052834B CN108052834B (en) | 2019-09-27 |
Family
ID=62123651
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
CN201711305987.8A Active CN108052834B (en) | 2017-12-11 | 2017-12-11 | A kind of approximate shortest distance querying method towards close state graph structure |
Country Status (1)
Country | Link |
---|---|
CN (1) | CN108052834B (en) |
Cited By (4)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN110489986A (en) * | 2019-08-22 | 2019-11-22 | 网易(杭州)网络有限公司 | Response method, system and the electronic equipment of diagram data function |
CN112836078A (en) * | 2021-02-20 | 2021-05-25 | 山东省计算中心(国家超级计算济南中心) | Method, device, system and storage medium for safely inquiring shortest path on graph |
CN114417073A (en) * | 2022-03-28 | 2022-04-29 | 之江实验室 | Neighbor node query method and device of encryption graph and electronic equipment |
CN117349894A (en) * | 2023-12-01 | 2024-01-05 | 山东省计算中心(国家超级计算济南中心) | Graph structure shortest path query method based on filling dictionary encryption |
Citations (6)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US20110246439A1 (en) * | 2010-04-06 | 2011-10-06 | Microsoft Corporation | Augmented query search |
EP2260429B1 (en) * | 2008-02-20 | 2013-01-23 | Microsoft Corporation | Sketch-based password authentication |
CN105184182A (en) * | 2015-07-22 | 2015-12-23 | 中国科学技术大学苏州研究院 | Private information extraction-based query method for cloud computing private range |
CN105812141A (en) * | 2016-03-07 | 2016-07-27 | 东北大学 | Outsourcing encrypted data-orientated verifiable intersection operation method and system |
CN107085594A (en) * | 2017-03-14 | 2017-08-22 | 武汉大学 | Subgraph match method based on set similarity in big chart database |
CN107291861A (en) * | 2017-06-12 | 2017-10-24 | 北京理工大学 | A kind of approximate beeline querying method of belt restraining towards encryption figure |
-
2017
- 2017-12-11 CN CN201711305987.8A patent/CN108052834B/en active Active
Patent Citations (6)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
EP2260429B1 (en) * | 2008-02-20 | 2013-01-23 | Microsoft Corporation | Sketch-based password authentication |
US20110246439A1 (en) * | 2010-04-06 | 2011-10-06 | Microsoft Corporation | Augmented query search |
CN105184182A (en) * | 2015-07-22 | 2015-12-23 | 中国科学技术大学苏州研究院 | Private information extraction-based query method for cloud computing private range |
CN105812141A (en) * | 2016-03-07 | 2016-07-27 | 东北大学 | Outsourcing encrypted data-orientated verifiable intersection operation method and system |
CN107085594A (en) * | 2017-03-14 | 2017-08-22 | 武汉大学 | Subgraph match method based on set similarity in big chart database |
CN107291861A (en) * | 2017-06-12 | 2017-10-24 | 北京理工大学 | A kind of approximate beeline querying method of belt restraining towards encryption figure |
Non-Patent Citations (2)
Title |
---|
QI CHAI,GUANG GONG: "Verifiable symmetric searchable encryption for semi-honest-but-curious cloud servers", 《2012 IEEE INTERNATIONAL CONFERENCE ON COMMUNICATIONS(ICC)》 * |
XIANRUI MENG,SENY KAMARA等: "GRECS: Graph Encryption for Approximate Shortest Distance Queries", 《ACM CCS 2015 22ND ACM CONFERENCE ON COMPUTER AND COMMUNICATIONS SECURITY》 * |
Cited By (6)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN110489986A (en) * | 2019-08-22 | 2019-11-22 | 网易(杭州)网络有限公司 | Response method, system and the electronic equipment of diagram data function |
CN112836078A (en) * | 2021-02-20 | 2021-05-25 | 山东省计算中心(国家超级计算济南中心) | Method, device, system and storage medium for safely inquiring shortest path on graph |
CN112836078B (en) * | 2021-02-20 | 2021-10-22 | 山东省计算中心(国家超级计算济南中心) | Method, device, system and storage medium for safely inquiring shortest path on graph |
CN114417073A (en) * | 2022-03-28 | 2022-04-29 | 之江实验室 | Neighbor node query method and device of encryption graph and electronic equipment |
CN117349894A (en) * | 2023-12-01 | 2024-01-05 | 山东省计算中心(国家超级计算济南中心) | Graph structure shortest path query method based on filling dictionary encryption |
CN117349894B (en) * | 2023-12-01 | 2024-03-01 | 山东省计算中心(国家超级计算济南中心) | Graph structure shortest path query method based on filling dictionary encryption |
Also Published As
Publication number | Publication date |
---|---|
CN108052834B (en) | 2019-09-27 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
CN108052834B (en) | A kind of approximate shortest distance querying method towards close state graph structure | |
Li et al. | Outsourced privacy-preserving classification service over encrypted data | |
CN110008717A (en) | Support the decision tree classification service system and method for secret protection | |
Li et al. | Outsourced privacy-preserving C4. 5 decision tree algorithm over horizontally and vertically partitioned dataset among multiple parties | |
CN111654364A (en) | Method for realizing data safety communication by using block chain encryption technology | |
CN110011784A (en) | Support the KNN classified service system and method for secret protection | |
Doku et al. | Iflbc: On the edge intelligence using federated learning blockchain network | |
Guo et al. | Secure weighted aggregation for federated learning | |
Sun et al. | Relativistic quantum private database queries | |
Cui | A cross-chain protocol based on quantum teleportation for underlying architecture of metaverse | |
CN111988260B (en) | Symmetric key management system, transmission method and device | |
Gopinath et al. | Secured: quantum key distribution (SQKD) for solving side-channel attack to enhance security, based on shifting and binary conversion for securing data (SBSD) frameworks | |
An et al. | QChain: Quantum-resistant and decentralized PKI using blockchain | |
CN108197491B (en) | Subgraph retrieval method based on ciphertext | |
Wei et al. | Efficient multi-party private set intersection protocols for large participants and small sets | |
Yuan et al. | A privacy-preserving oriented service recommendation approach based on personal data cloud and federated learning | |
Karumanchi et al. | An efficient integrity based multi-user blockchain framework for heterogeneous supply chain management applications | |
Jin et al. | Privacy-preserving mining of association rules for horizontally distributed databases based on FP-tree | |
Zhang et al. | LS4BUCC: A low overhead storage architecture for blockchain based unmanned collaborative cognition system | |
Zhang et al. | Multi-party Secure Comparison of Strings Based on Outsourced Computation | |
Liu et al. | Analysis and revision of secure quantum dialogue via cavity QED | |
Ramezanian et al. | Privacy preserving queries on directed graph | |
Li et al. | Outsourced privacy-preserving random decision tree algorithm under multiple parties for sensor-cloud integration | |
CN110149199A (en) | A kind of method for secret protection and system based on attribute aware | |
Jiang et al. | RETRACTED CHAPTER: A Cooperative Placement Method for Machine Learning Workflows and Meteorological Big Data Security Protection in Cloud Computing |
Legal Events
Date | Code | Title | Description |
---|---|---|---|
PB01 | Publication | ||
PB01 | Publication | ||
SE01 | Entry into force of request for substantive examination | ||
SE01 | Entry into force of request for substantive examination | ||
GR01 | Patent grant | ||
GR01 | Patent grant |