A method and system for protecting graph-structured data privacy based on negative databases

CN116522375BActive Publication Date: 2026-09-01WUHAN UNIV OF TECH
View PDF 0 Cites 0 Cited by

Patent Information

Application Number
CN202310238723.4
Authority / Receiving Office
CN · China
Patent Type
Patents(China)
Current Assignee / Owner
Filing Date
2023-03-13
Publication Date
2026-09-01
Estimated Expiration
2043-03-13

AI Technical Summary

Technical Problem

同时,每个负数据库都可以转换为SAT实例,很难解决SAT问题,因此很难被逆转

Benefits of technology

模块2.4,用于生成扰动图NDB-Graph(,)。

✦ Generated by Eureka AI based on patent content.

Smart Images

  • Figure CN116522375B_ABST
    Figure CN116522375B_ABST
Patent Text Reader

Abstract

This invention discloses a graph structure data privacy protection method based on a negative database. It proposes an encoding method suitable for converting graph data to a negative database, which differs from the anonymization and perturbation methods used in traditional graph structure data publishing. A perturbation graph NDB-Graph computation method is proposed to protect the privacy of graph structure data. This method can be used to estimate perturbation feature attributes of graph data, such as degree, number of triangles, clustering coefficient, and average shortest path length. The data published by this invention not only effectively maintains the privacy of the published data but is also easy to implement, highly efficient, and has the advantages of maintaining data feature utility and high security with high accuracy. Furthermore, it allows for more flexible balancing of security and data utility through parameter settings. Experiments on four sets of real graph datasets and one randomly generated graph dataset demonstrate that this method can effectively preserve the characteristics of graphs and possesses good usability and security.
Need to check novelty before this filing date? Find Prior Art

Description

Technical Field

[0001] This invention belongs to the field of information security technology, and relates to a method and system for protecting the privacy of graph structure data, and more particularly to a method and system for protecting the privacy of graph structure data based on a negative database. Background Technology

[0002] With the rapid development of modern information technology, the research and application of various forms of data have become widespread. Graph-structured data is a type of data composed of nodes and edges. This type of data models entities as nodes in a graph, and the relationships between entities are modeled as edges connecting two nodes, i.e., G=(V,E). Here, V is the set of nodes, and E is the set of edges. Different forms of graph structure data nodes and edges can also have different feature attributes and weights. From basic graph algorithms to mining these graph structure data, people can obtain a lot of useful information and apply it to various scenarios. However, using this data inevitably involves some user privacy and sensitive information contained within it. For example, if a person's identity is disclosed in an infectious disease network, some of their sensitive information will be leaked. Or, external personnel with background knowledge can use the network to launch link attacks, thereby identifying a person's undisclosed social relationships, etc. Therefore, protecting the privacy of graph structure data is essential.

[0003] Traditional privacy protection methods for graph data can be broadly categorized into graph editing-based anonymization methods and graph perturbation methods based on differential privacy models. Graph editing-based methods can be further divided into random graph editing, probabilistic graph editing, k-anonymity, and generalization methods using vertex clustering. Both graph editing-based anonymization and differential privacy model-based graph perturbation methods have certain limitations and shortcomings. For example, k-anonymity methods alter the structure and characteristics of the original data, reducing data usability. Furthermore, different anonymization schemes are required for various types of graph data and different privacy protection requirements, which can further alter the structure and characteristics of the original data and reduce usability. Random graph editing methods ignore the equal security of all nodes in the graph dataset, only providing security for random nodes. Clustering generalization methods based on supernodes and superedges significantly reduce the utility of the original network. Among perturbation-based methods, differential privacy belongs to this category. This statistical approach ensures that the data obtained by an attacker containing a specific person is almost identical to the data without that person's record. However, applying differential privacy to graph data faces the problem of edges or vertex pairs being too sensitive to noise. This is mainly because the graph structure is too complex, making it difficult to satisfy differential privacy. Therefore, how to effectively balance the security and data utility provided by differential privacy is a major challenge in the application of this technology in graph data publishing.

[0004] Negative databases are a novel data representation and privacy protection technology inspired by the negative selection mechanism of the artificial immune system. They offer the advantages of computational and database operations without the need for decryption. Furthermore, each negative database can be converted into a SAT instance, making the SAT problem difficult to solve and therefore difficult to reverse. These characteristics make negative database technology highly suitable for data privacy protection and widely applied in fields such as encrypted authentication, biometric identification, data publishing, and data mining. This property also makes it suitable for protecting the privacy of graph-structured data. Summary of the Invention

[0005] Unlike general tables and images, graph data, due to the connectivity between nodes, makes many privacy protection methods unsuitable for direct application. Furthermore, traditional privacy protection methods for graph data suffer from drawbacks such as significant changes in the published graph data's features, limited security, and difficulty in effectively balancing the security and utility offered by differential privacy. To address these shortcomings, this invention solves the following technical problem: (1) Unlike the traditional approach, this paper first uses negative database technology for privacy protection of graph structure data. Based on the characteristics of graph structure data, an efficient and simple encoding method is proposed to generate negative database. This encoding method can be applied to most forms of graph structure data. Publishing graph structure data with negative representation can protect the structural privacy of graph data, solve the privacy publishing problem of graph structure data, and is easy and efficient to operate.

[0006] (2) Unlike differential privacy methods where graph data is too sensitive to noise and difficult to implement, this invention can effectively adjust and balance its security, the preservation of data feature structure, and data utility by setting parameters according to the user's privacy protection needs.

[0007] To address the aforementioned technical problems, this invention provides a method and system for protecting graph-structured data privacy based on a negative database.

[0008] The technical solution adopted by the method of the present invention is: a graph structure data privacy protection method based on negative database, comprising the following steps: Step 1: Convert the graph structure dataset into... Bit-based binary hidden string ; Step 1.1: Convert the number of points in the graph structure dataset into binary numbers to obtain the maximum number of binary bits; Step 1.2: Connect all edge-to-vertex pairs in the graph structure dataset together. These edge-to-vertex pairs consist of the indices of the two connected vertices. Convert the vertices at each vertex into binary. If the number of bits in binary for each point is less than the maximum number of bits, pad with leading zeros until the number of bits equals the maximum number of bits; the final result is the hidden string representing the graph. s That is, the encoded image; Step 2: Generate the perturbation graph NDB-Graph ( , ); Step 2.1: Use the hidden string obtained in Step 1 s Perform negative database conversion; Step 2.2: Obtain the encoded hidden string s negative database Then, the numbers with each digit being 0 and 1 in the negative database were counted. Calculate the hidden string s The probability of each attribute bit being 0 or 1; each attribute bit is equivalent to a point connected by each edge. The decimal number j of the maximum probability value of each attribute bit calculated based on the negative database is selected as the vertex number of the NDB-Graph. Step 2.3: Traverse the hidden string s All point attribute positions, if point Then add it to the point set. ; Traversing hidden strings s All point attributes are calculated, with odd-numbered points serving as the starting points of edges and even-numbered points as the ending points. Each edge can be... , like Then add it to the edge set. ; Step 2.4: Generate the perturbation graph NDB-Graph ( , ).

[0009] The technical solution adopted by the system of the present invention is: a graph structure data privacy protection system based on a negative database, comprising the following modules: Module 1 is used to convert graph-structured datasets into... m Bit-based binary hidden string s ; Specifically, it includes the following sub-modules: Module 1.1 is used to convert the number of points in a graph structure dataset into a binary number to obtain the maximum number of binary bits; Module 1.2 is used to connect all edge-to-vertex pairs of a graph-structured dataset together. These edge-to-vertex pairs consist of the indices of the two connected vertices. The points at each vertex are converted into binary. If the number of bits in binary for each point is less than the maximum number of bits, pad with leading zeros until the number of bits equals the maximum number of bits; the final result is the hidden string representing the graph.s That is, the encoded image; Module 2 is used to generate the perturbation graph NDB-Graph. , ); Specifically, it includes the following sub-modules: Module 2.1 is used to apply the hidden string obtained from Module 1. s Perform negative database conversion; Module 2.2 is used to obtain the encoded hidden string. s negative database Then, the numbers with each digit being 0 and 1 in the negative database were counted. Calculate the hidden string s The probability of each attribute bit being 0 or 1; each attribute bit is equivalent to a point connected by each edge. The decimal number j of the maximum probability value of each attribute bit calculated based on the negative database is selected as the vertex number of the NDB-Graph. Module 2.3 is used to traverse hidden strings. s All point attribute positions, if point Then add it to the point set. ; Traversing hidden strings s All point attributes are calculated, with odd-numbered points serving as the starting points of edges and even-numbered points as the ending points. Each edge can be... , like Then add it to the edge set. ; Module 2.4 is used to generate the perturbation graph NDB-Graph. , ).

[0010] This invention proposes a graph structure data privacy protection method based on negative databases. Compared with traditional graph data privacy protection methods, this method can not only effectively maintain the privacy of the published data, but is also easy to implement, highly efficient, and has the advantages of maintaining data feature utility and high security with high precision. Furthermore, it can more flexibly balance its security and data utility through parameter settings. Attached Figure Description

[0011] Figure 1 This is an example diagram of a graph structure data encoding method according to an embodiment of the present invention; Figure 2 This is a flowchart illustrating the generation process of the NDB-Graph perturbation graph in an embodiment of the present invention. Detailed Implementation

[0012] To facilitate understanding and implementation of the present invention by those skilled in the art, the present invention will be further described in detail below with reference to the accompanying drawings and embodiments. It should be understood that the embodiments described herein are for illustration and explanation only and are not intended to limit the present invention.

[0013] Please refer to Table 1 below for the relevant symbols and their definitions involved in the method of this invention.

[0014] Table 1

[0015] Please see Figure 1 and Figure 2 This invention provides a graph structure data privacy protection method based on a negative database, which mainly includes the following: Content 1: Based on the characteristics of graph structure data and related negative database generation algorithms, a reasonable encoding form for converting graph data into a negative database is proposed.

[0016] The raw data used for generating the negative database needs to be represented in binary form. Consider converting a graph-structured dataset into an m-bit binary hidden string s. There are several ways to encode the graph data into this hidden string s, such as using the graph's adjacency matrix, adjacency list, or ordered even-numbered edge-vertex pairs. Since many real-world graph datasets have a large number of nodes in their adjacency matrices and are extremely sparse, using an adjacency matrix combination encoding method incurs high storage overhead and wastes a lot of space. Adjacency lists, due to the uncertainty of the edges of each node, require additional degree information when calculating the perturbation graph later. Therefore, this patent primarily uses the form of binary strings of edge-vertex pairs to represent the graph data. Its specific form is as follows: Step (a): Convert the number of points in the dataset into binary numbers to obtain the maximum number of binary bits.

[0017] Step (b): Connect all the edge pairs in the dataset together. These edge pairs consist of the indices of the two connected points. Convert the points at each point into binary.

[0018] Step (c): If the number of bits converted to binary for each point is less than the maximum number of bits, pad with leading zeros until the number of bits equals the maximum number of bits.

[0019] Step (d): Finally, a hidden string s representing the graph is obtained, which is the encoded graph. Return the hidden string s.

[0020] Figure 1 This is a schematic diagram of a specific encoding method. A graph with 5 nodes is shown in the figure, therefore the maximum number of digits for each node's index is 3 (2). 2 <5<2 3Connect each edge pair, then convert each bit into binary, padding with 0s if the bit length is less than the maximum of 3. Finally, this graph will be encoded into the string s on the right side of the graph.

[0021] Content 2: A method for inferring perturbation graphs (NDB-Graph) based on negative representation graph data is proposed, as well as a method for estimating feature data such as degree distribution, clustering coefficient, number of triangles, and shortest average path length based on negative database graph data.

[0022] In real-world datasets, the number of nodes is large, resulting in a large maximum number of binary bits for each node's index. To more accurately calculate the negative data for each node, a finer-grained QK-hidden negative data generation algorithm is used to perform negative database transformation on the graph data string s obtained from Content 1. The negative database obtained by the QK-hidden algorithm is the encoded graph hidden string s transformed into a negative database. Then, the numbers in the negative database that are 0 and 1 for each digit are counted, and the formula is used to... and formula We can derive the probability that each bit in the binary string s is 0 or 1. Therefore, the probability Pr of each attribute bit as a specific decimal number is... =x) can then be counted, for example Figure 1 When the first attribute bit of the hidden string in the graph is equal to 2, we have Pr ( =2)=Pr(the first attribute bit is 0) ×Pr(the second attribute bit is 1) ×Pr(the third attribute bit is 0). Each attribute bit is equivalent to a point connected by each edge. We choose the decimal number j of the maximum probability value of each attribute bit calculated based on the negative database as the vertex index of the NDB-Graph. The specific calculation method for the vertex index of each edge can be obtained by the formula... This indicates that the odd-numbered index attribute is the starting point of the edge, and the next even-numbered index attribute is the ending point of the edge.

[0023] The specific steps for calculating the perturbation graph NDB-Graph are as follows: Step (a): The encoded hidden string s obtained from input content one is used to calculate the parameters generated by the QK-hidden algorithm. and (in 1- ), and obtained by counting the number of 0s and 1s in each bit of the NDB. .

[0024] Step (b): Calculate the probability of each bit being 0 or 1 using the above formula: Pr( s i =0)(where Pr(s) i = 1)=1-Pr(s i = 0). Then calculate the points at each position (decimal number of each attribute position). The probability of ) ,in .

[0025] Step (c): The point at each location is equal to the probability Pr( The largest decimal value of x, i.e. .

[0026] Step (d): Traverse all the point attribute bits calculated in string s. If the point... Then add it to the point set. .

[0027] Step (e): Traverse all the point attribute positions calculated in string s, using odd-numbered points as the starting points of edges and even-numbered points as the ending points. That is, each edge can be represented as... , like Then add it to the edge set. .

[0028] Step (f): Return the perturbation graph NDB-Graph ( , ).

[0029] Similarly, the main steps of the feature data estimation method based on negative database graph data, such as degree distribution, clustering coefficient, number of triangles, and shortest average path length, are as follows: Step (a): The encoded hidden string s obtained from input content one is used to generate a negative database through the QK-hidden algorithm. Using the same calculation method as the perturbation graph in content two, the probability value of 0 to the maximum point on each point attribute bit is calculated.

[0030] Step (b): For a node v If each attribute has a maximum probability value equal to v The node, then v Increment the degree of the node by 1, and the degree of the node is... for: ; Similarly, clustering coefficient for: ; Among them, point Satisfy the perturbation edge ( or , v )or ( v , or It exists in the perturbation diagram; Triangle Number It can be derived from the formula = The shortest average path can be calculated similarly using the corresponding shortest path algorithm on the perturbation graph.

[0031] Step (c): Return the feature data based on the negative database graph data.

[0032] Invention Innovation: This invention proposes a data publishing method based on negative representation, building upon existing privacy protection methods for graph-structured data. Users achieve privacy protection by publishing a negative database of the original graph data. Specifically, this can be summarized as follows: (1) This invention proposes an encoding method suitable for converting graph data to negative databases, which is different from the anonymization and perturbation methods used in traditional graph structure data publishing.

[0033] (2) This invention proposes a method for calculating perturbation graphs (NDB-Graph) to protect the privacy of graph structure data. This method can be used to estimate the characteristic attributes of graph data, such as degree, number of triangles, clustering coefficient, and average shortest path length.

[0034] This invention can be applied to the following scenarios: protecting user relationship privacy when publishing single-time graph structure data (such as social networks, infectious disease networks, etc.) to third-party research institutions (such as sociological research, advertising and marketing research, epidemiological research, etc.); protecting user data privacy during data mining of graph structure data such as graph clustering, community detection, link prediction, and node classification; and protecting users from identity leakage and privacy relationship leakage when publishing data using untrusted third-party services on social networks (such as product and movie recommendation services).

[0035] This embodiment demonstrates, through experimental results on five graph feature attributes (L1 error of degree sequence, KS distance of degree sequence, clustering coefficient, total number of triangles, and average shortest path length), that the perturbed graph obtained from NDB data is quite close to the original graph. For example, the L1 error and KS distance of the degree of NDB-Graph may be very small (on the Facebook dataset, the minimum L1 error is only 6, the worst is about 1400, and the KS distance is 0.028 in the worst case). Under certain parameters, its shortest path length is also very close to the original data. Regarding the usability of the graph, through clustering experiments on several datasets, the results show that when the negative database is generated with better parameters, its F1 score and ARI coefficient are close to the original data. Users can adjust the parameters to balance the usability and security of the negative representation graph structure data according to their own security needs.

[0036] This embodiment demonstrates through experiments on four sets of real-world graphics datasets and one randomly generated graphics dataset that the method of this invention can effectively preserve the characteristics of graphics and possesses good usability and security.

[0037] It should be understood that the above description of the preferred embodiments is quite detailed, but it should not be considered as a limitation on the scope of protection of this invention. Those skilled in the art, under the guidance of this invention, can make substitutions or modifications without departing from the scope of protection of the claims of this invention, and all such substitutions or modifications fall within the scope of protection of this invention. The scope of protection of this invention should be determined by the appended claims.

Claims

1. A method for protecting data privacy in graph structures based on negative databases, characterized in that, Includes the following steps: Step 1: Convert the graph structure dataset into... m Bit-based binary hidden string s ; Step 1.1: Convert the number of points in the graph structure dataset into binary numbers to obtain the maximum number of binary bits; Step 1.2: Connect all edge-to-vertex pairs in the graph structure dataset together. These edge-to-vertex pairs consist of the indices of the two connected vertices. Convert the vertices at each vertex into binary. If the number of bits in binary for each point is less than the maximum number of bits, pad with leading zeros until the number of bits equals the maximum number of bits; the final result is the hidden string representing the graph. s That is, the encoded image; Step 2: Generate the perturbation graph NDB-Graph ( , ); Step 2.1: Use the hidden string obtained in Step 1 s Perform negative database conversion; Step 2.2: Obtain the encoded hidden string s negative database Then, the numbers with each digit being 0 and 1 in the negative database were counted. Calculate the hidden string s The probability of each attribute bit being 0 or 1; each attribute bit is equivalent to a point connected by each edge. The decimal number j of the maximum probability value of each attribute bit calculated based on the negative database is selected as the vertex number of the NDB-Graph. Step 2.3: Traverse the hidden string s All point attribute positions, if point Then add it to the point set. ; Traversing hidden strings s All point attributes are calculated, with odd-numbered points serving as the starting points of edges and even-numbered points as the ending points. Each edge can be... , like Then add it to the edge set. ; Step 2.4: Generate the perturbation graph NDB-Graph ( , ).

2. The graph structure data privacy protection method based on negative database according to claim 1, characterized in that: In step 2.1, the QK-hidden negative data generation algorithm is used to process the hidden string obtained in step 1. s Perform negative database transformation.

3. The graph structure data privacy protection method based on negative database according to claim 1, characterized in that: In step 2.2, the hidden string s Parameters are calculated using the QK-hidden negative data generation algorithm. and ; ; 1- ; in, Represents the first in each attribute The probability that a bit differs from the corresponding bit in the original string. Represents the first in each attribute The probability that a bit is the same as the corresponding bit in the original string. Indicates the selection to generate the first Types The probability parameter, This indicates selecting the first of each attribute. The probability parameter K of the bit represents The number of specific bits in each record. This represents the maximum number of bits in binary form when the number of nodes in the dataset is converted. Calculate the hidden string s The probability that each attribute bit is 0 or 1: ; 。 4. The graph structure data privacy protection method based on negative database according to any one of claims 1-3, characterized in that: The feature data calculation method based on negative database graph data specifically includes the following steps: (1) Using the hidden string obtained in step 1 s Perform negative database conversion; (2) Obtain the encoded hidden string s negative database Then, the numbers with each digit being 0 and 1 in the negative database were counted. Calculate the hidden string s The probability of each attribute bit being 0 or 1; each attribute bit is equivalent to a point connected by each edge. The decimal number j of the maximum probability value of each attribute bit calculated based on the negative database is selected as the vertex number of the NDB-Graph. (3) For a node v If each attribute has a maximum probability value equal to v The node, then v Increment the degree of the node by 1, and the degree of the node is... for: ; in, This indicates the encoded string of the first character. j Each attribute bit corresponds to a decimal value. This indicates the number of edges in the edge set of the perturbation graph structure data; Clustering coefficient for: ; Among them, point Satisfy the perturbation edge ( or , v )or ( v , or It exists in the perturbation diagram; Triangle Number for: = ; The shortest average path is calculated on the perturbation map using the corresponding shortest path algorithm.

5. A graph structure data privacy protection system based on a negative database, characterized in that, Includes the following modules: Module 1 is used to convert graph-structured datasets into... m Bit-based binary hidden string s ; specific Includes the following sub-modules: Module 1.1 is used to convert the number of points in a graph structure dataset into a binary number to obtain the maximum number of binary bits; Module 1.2 is used to connect all edge-to-vertex pairs of a graph-structured dataset together. These edge-to-vertex pairs consist of the indices of the two connected vertices. The points at each vertex are converted into binary. If the number of bits in binary for each point is less than the maximum number of bits, pad with leading zeros until the number of bits equals the maximum number of bits; the final result is the hidden string representing the graph. s That is, the encoded image; Module 2 is used to generate the perturbation graph NDB-Graph. , ); Specifically, it includes the following sub-modules: Module 2.1 is used to apply the hidden string obtained from Module 1. s Perform negative database conversion; Module 2.2 is used to obtain the encoded hidden string. s negative database Then, the numbers with each digit being 0 and 1 in the negative database were counted. Calculate the hidden string s The probability of each attribute bit being 0 or 1; each attribute bit is equivalent to a point connected by each edge. The decimal number j of the maximum probability value of each attribute bit calculated based on the negative database is selected as the vertex number of the NDB-Graph. Module 2.3 is used to traverse hidden strings. s All point attribute positions, if point Then add it to the point set. ; Traversing hidden strings s All point attributes are calculated, with odd-numbered points serving as the starting points of edges and even-numbered points as the ending points. Each edge can be... , like Then add it to the edge set. ; Module 2.4 is used to generate the perturbation graph NDB-Graph. , ).

6. The graph structure data privacy protection system based on negative database according to claim 5, characterized in that: In module 2.1, the QK-hidden negative data generation algorithm is used to process the hidden string obtained in module 1. s Perform negative database transformation.

7. The graph structure data privacy protection system based on negative database according to claim 5, characterized in that: In module 2.2, hidden strings s Parameters are calculated using the QK-hidden negative data generation algorithm. and ; ; 1- ; in, Represents the first in each attribute The probability that a bit differs from the corresponding bit in the original string. Represents the first in each attribute The probability that a bit is the same as the corresponding bit in the original string. Indicates the selection to generate the first Types The probability parameter, This indicates selecting the first of each attribute. The probability parameter of the bit, K represents The number of specific bits in each record. This represents the maximum number of bits in binary form when the number of nodes in the dataset is converted. Calculate the hidden string s The probability that each attribute bit is 0 or 1: ; 。 8. The graph structure data privacy protection system based on a negative database according to any one of claims 5-7, characterized in that: The feature data calculation system based on negative database graph data specifically includes the following modules: (1) Using the hidden string obtained from module 1 s Perform negative database conversion; (2) Obtain the encoded hidden string s negative database Then, the numbers with each digit being 0 and 1 in the negative database were counted. Calculate the hidden string s The probability of each attribute bit being 0 or 1; each attribute bit is equivalent to a point connected by each edge. The decimal number j of the maximum probability value of each attribute bit calculated based on the negative database is selected as the vertex number of the NDB-Graph. (3) For a node v If each attribute has a maximum probability value equal to v The node, then v Increment the degree of the node by 1, and the degree of the node is... for: ; in, This indicates the encoded string of the first character. j Each attribute bit corresponds to a decimal value. The clustering coefficient represents the number of edges in the edge set of the perturbation graph structure data. for: ; Among them, point Satisfy the perturbation edge ( or , v )or ( v , or It exists in the perturbation diagram; Triangle Number for: = ; The shortest average path is calculated on the perturbation map using the corresponding shortest path algorithm.