CN113434906B - Data query method, device, computer equipment and storage medium - Google Patents

Data query method, device, computer equipment and storage medium Download PDF

Info

Publication number
CN113434906B
CN113434906B CN202110758662.5A CN202110758662A CN113434906B CN 113434906 B CN113434906 B CN 113434906B CN 202110758662 A CN202110758662 A CN 202110758662A CN 113434906 B CN113434906 B CN 113434906B
Authority
CN
China
Prior art keywords
data
node
object identifier
encrypted data
query
Prior art date
Legal status (The legal status is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the status listed.)
Active
Application number
CN202110758662.5A
Other languages
Chinese (zh)
Other versions
CN113434906A (en
Inventor
李正扬
王健宗
Current Assignee (The listed assignees may be inaccurate. Google has not performed a legal analysis and makes no representation or warranty as to the accuracy of the list.)
Ping An Technology Shenzhen Co Ltd
Original Assignee
Ping An Technology Shenzhen Co Ltd
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 Ping An Technology Shenzhen Co Ltd filed Critical Ping An Technology Shenzhen Co Ltd
Priority to CN202110758662.5A priority Critical patent/CN113434906B/en
Publication of CN113434906A publication Critical patent/CN113434906A/en
Application granted granted Critical
Publication of CN113434906B publication Critical patent/CN113434906B/en
Active legal-status Critical Current
Anticipated expiration legal-status Critical

Links

Classifications

    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F21/00Security arrangements for protecting computers, components thereof, programs or data against unauthorised activity
    • G06F21/60Protecting data
    • G06F21/62Protecting access to data via a platform, e.g. using keys or access control rules
    • G06F21/6218Protecting 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/6227Protecting 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
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F21/00Security arrangements for protecting computers, components thereof, programs or data against unauthorised activity
    • G06F21/60Protecting data
    • G06F21/602Providing cryptographic facilities or services
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F21/00Security arrangements for protecting computers, components thereof, programs or data against unauthorised activity
    • G06F21/60Protecting data
    • G06F21/62Protecting access to data via a platform, e.g. using keys or access control rules
    • G06F21/6218Protecting 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/6245Protecting personal data, e.g. for financial or medical purposes

Landscapes

  • Engineering & Computer Science (AREA)
  • Theoretical Computer Science (AREA)
  • Health & Medical Sciences (AREA)
  • Bioethics (AREA)
  • General Health & Medical Sciences (AREA)
  • Software Systems (AREA)
  • Computer Security & Cryptography (AREA)
  • Physics & Mathematics (AREA)
  • General Engineering & Computer Science (AREA)
  • General Physics & Mathematics (AREA)
  • Computer Hardware Design (AREA)
  • Databases & Information Systems (AREA)
  • Medical Informatics (AREA)
  • Information Retrieval, Db Structures And Fs Structures Therefor (AREA)
  • Storage Device Security (AREA)

Abstract

The embodiment of the application belongs to the field of information security, and relates to a data query method, a device, computer equipment and a storage medium, wherein the method comprises the following steps: acquiring a first object identifier stored in a local node; determining a common object identifier, namely an object identifier of each node intersection object according to a key protocol algorithm; the object data corresponding to the common object identifier in the local node is first candidate query data; calculating first encryption data of each node according to the first candidate query data; transmitting first encrypted data to each node and receiving the first encrypted data transmitted by each node; calculating second encrypted data according to each first encrypted data of the local node, and receiving the second encrypted data sent by each node; and performing data decryption on each second encrypted data to obtain the object data statistical information of the intersection object in each node. In addition, the present application relates to blockchain technology in which object data may be stored. The method and the device realize data query under the condition that the privacy of the object data is not exposed.

Description

Data query method, device, computer equipment and storage medium
Technical Field
The present disclosure relates to the field of information security technologies, and in particular, to a data query method, a data query device, a computer device, and a storage medium.
Background
Data querying is a very common and widely used technology, and when querying, a querying party provides content to be queried to a data holder, the data holder searches and counts in a database, and then returns a result to the querying party.
Today, object data of objects is often stored in different places. For example, in the financial field, user data of users are often stored in different companies, which hold different user data although they hold the same user. Each company often hopes to conduct data mining in a joint statistics mode, and the data value is fully utilized; at the same time, companies do not want to expose user data for non-intersecting users in the joint statistics nor to expose specific values for own user data. Moreover, with standardization of data privacy protection, data circulation cannot be performed at will among different companies, so that data query cannot be performed under the condition that object data is not exposed.
Disclosure of Invention
An embodiment of the application aims to provide a data query method, a data query device, computer equipment and a storage medium, so as to solve the problem of exposing object data during data query.
In order to solve the above technical problems, the embodiments of the present application provide a data query method, which adopts the following technical schemes:
acquiring a first object identifier stored in a local node;
determining an intersection set of the first object identifier and a second object identifier according to a preset key protocol algorithm to obtain a common object identifier, wherein the second object identifier is an object identifier stored in each node in the cluster;
determining object data corresponding to the common object identifier in the local node as first candidate query data;
calculating first encrypted data corresponding to each node according to the first candidate query data and the number of nodes;
transmitting first encrypted data corresponding to the nodes, and receiving the first encrypted data corresponding to the local nodes transmitted by the nodes;
according to each first encrypted data corresponding to the local node, calculating second encrypted data of the local node, and receiving the second encrypted data sent by each node;
and carrying out data decryption on each second encrypted data to obtain data query information, wherein the data query information is the object data statistical information of the intersection objects in each node.
In order to solve the above technical problems, the embodiments of the present application further provide a data query device, which adopts the following technical schemes:
the identification acquisition module is used for acquiring a first object identification stored in the local node;
the intersection determining module is used for determining an intersection of the first object identifier and a second object identifier according to a preset key protocol algorithm to obtain a common object identifier, wherein the second object identifier is an object identifier stored in each node in the cluster;
the data determining module is used for determining object data corresponding to the common object identifier in the local node as first candidate query data;
the first calculation module is used for calculating first encryption data corresponding to each node according to the first candidate query data and the number of nodes;
the sending and receiving module is used for sending first encrypted data corresponding to the nodes and receiving the first encrypted data corresponding to the local nodes sent by the nodes;
the second calculation module is used for calculating second encrypted data of the local node according to each first encrypted data corresponding to the local node and receiving the second encrypted data sent by each node;
And the data reconstruction module is used for carrying out data decryption on each second encrypted data to obtain data query information, wherein the data query information is the object data statistical information of the intersection objects in each node.
In order to solve the above technical problems, the embodiments of the present application further provide a computer device, which adopts the following technical schemes:
acquiring a first object identifier stored in a local node;
determining an intersection set of the first object identifier and a second object identifier according to a preset key protocol algorithm to obtain a common object identifier, wherein the second object identifier is an object identifier stored in each node in the cluster;
determining object data corresponding to the common object identifier in the local node as first candidate query data;
calculating first encrypted data corresponding to each node according to the first candidate query data and the number of nodes;
transmitting first encrypted data corresponding to the nodes, and receiving the first encrypted data corresponding to the local nodes transmitted by the nodes;
according to each first encrypted data corresponding to the local node, calculating second encrypted data of the local node, and receiving the second encrypted data sent by each node;
And carrying out data decryption on each second encrypted data to obtain data query information, wherein the data query information is the object data statistical information of the intersection objects in each node.
In order to solve the above technical problems, embodiments of the present application further provide a computer readable storage medium, which adopts the following technical solutions:
acquiring a first object identifier stored in a local node;
determining an intersection set of the first object identifier and a second object identifier according to a preset key protocol algorithm to obtain a common object identifier, wherein the second object identifier is an object identifier stored in each node in the cluster;
determining object data corresponding to the common object identifier in the local node as first candidate query data;
calculating first encrypted data corresponding to each node according to the first candidate query data and the number of nodes;
transmitting first encrypted data corresponding to the nodes, and receiving the first encrypted data corresponding to the local nodes transmitted by the nodes;
according to each first encrypted data corresponding to the local node, calculating second encrypted data of the local node, and receiving the second encrypted data sent by each node;
And carrying out data decryption on each second encrypted data to obtain data query information, wherein the data query information is the object data statistical information of the intersection objects in each node.
Compared with the prior art, the embodiment of the application has the following main beneficial effects: acquiring a first object identifier in a local node, processing the first object identifier according to a key protocol algorithm, and determining intersection objects of nodes under the condition that specific first object identifiers are not exposed to obtain a common object identifier; the method comprises the steps that object data corresponding to common object identifiers in local nodes are first candidate query data in joint query, encryption calculation is adopted in joint query, and first candidate query data and the number of nodes are calculated to obtain first encryption data of each node; transmitting first encrypted data corresponding to the nodes to each node, and receiving the first encrypted data corresponding to the local nodes transmitted by each node; calculating second encrypted data of the local node according to each first encrypted data of the local node, and receiving the second encrypted data sent by each node; and then, carrying out data decryption on each second encrypted data according to a preset decryption mode to obtain data query information, wherein the data query information is the object data statistical information of intersection objects in each node, and each node breaks a data barrier in the joint query process and realizes data query under the condition of not exposing specific private data.
Drawings
For a clearer description of the solution in the present application, a brief description will be given below of the drawings that are needed in the description of the embodiments of the present application, it being obvious that the drawings in the following description are some embodiments of the present application, and that other drawings may be obtained from these drawings without inventive effort for a person of ordinary skill in the art.
FIG. 1 is an exemplary system architecture diagram in which the present application may be applied;
FIG. 2 is a flow chart of one embodiment of a data query method according to the present application;
FIG. 3 is a schematic diagram of an embodiment of a data querying device according to the present application;
FIG. 4 is a schematic structural diagram of one embodiment of a computer device according to the present application.
Detailed Description
Unless defined otherwise, all technical and scientific terms used herein have the same meaning as commonly understood by one of ordinary skill in the art to which this application belongs; the terminology used in the description of the applications herein is for the purpose of describing particular embodiments only and is not intended to be limiting of the application; the terms "comprising" and "having" and any variations thereof in the description and claims of the present application and in the description of the figures above are intended to cover non-exclusive inclusions. The terms first, second and the like in the description and in the claims or in the above-described figures, are used for distinguishing between different objects and not necessarily for describing a sequential or chronological order.
Reference herein to "an embodiment" means that a particular feature, structure, or characteristic described in connection with the embodiment may be included in at least one embodiment of the present application. The appearances of such phrases in various places in the specification are not necessarily all referring to the same embodiment, nor are separate or alternative embodiments mutually exclusive of other embodiments. Those of skill in the art will explicitly and implicitly appreciate that the embodiments described herein may be combined with other embodiments.
In order to better understand the technical solutions of the present application, the following description will clearly and completely describe the technical solutions in the embodiments of the present application with reference to the accompanying drawings.
As shown in fig. 1, the system architecture 100 may include terminal devices 101, 102, 103, a network 104, and servers 105, 106, 107. The network 104 is the medium used to provide communication links between the terminal devices 101, 102, 103 and the servers 105, 106, 107. The network 104 may include various connection types, such as wired, wireless communication links, or fiber optic cables, among others.
A user may interact with the servers 105, 106, 107 via the network 104 using the terminal devices 101, 102, 103 to receive or send messages or the like. Various communication client applications, such as a web browser application, a shopping class application, a search class application, an instant messaging tool, a mailbox client, social platform software, etc., may be installed on the terminal devices 101, 102, 103.
The terminal devices 101, 102, 103 may be various electronic devices having a display screen and supporting web browsing, including but not limited to smartphones, tablet computers, electronic book readers, MP3 players (Moving Picture ExpertsGroup Audio Layer III, dynamic video expert compression standard audio plane 3), MP4 (Moving PictureExperts Group Audio Layer IV, dynamic video expert compression standard audio plane 4) players, laptop and desktop computers, and the like.
The servers 105, 106, 107 may be servers providing various services, such as a background server providing support for pages displayed on the terminal devices 101, 102, 103.
It should be noted that, the data query method provided in the embodiments of the present application is generally executed by a server, and accordingly, the data query device is generally disposed in the server. In this application, server 105 is described as the main body, and the local node runs in server 105, and at the same time, nodes also run in servers 106 and 107. To distinguish the server 105 from the servers 106, 107, the server 105 is described herein as a "local server".
It should be understood that the number of terminal devices, networks and servers in fig. 1 is merely illustrative. There may be any number of terminal devices, networks, and servers, as desired for implementation.
With continued reference to FIG. 2, a flow chart of one embodiment of a data query method according to the present application is shown. The data query method comprises the following steps:
step S201, a first object identifier stored in a local node is obtained.
In this embodiment, the electronic device (e.g., the server shown in fig. 1) on which the data query method operates may communicate through a wired connection manner or a wireless connection manner. It should be noted that the wireless connection may include, but is not limited to, 3G/4G connections, wiFi connections, bluetooth connections, wiMAX connections, zigbee connections, UWB (ultra wideband) connections, and other now known or later developed wireless connection means.
The first object identifier may be an identifier of an object, and specifically may be an identifier of an object stored in a local node. Object data of the objects can be stored in different nodes, each node stores object data of a certain number of objects, and objects in each node can have intersection; for an intersection object, object data of the intersection object stored by different nodes may be different. For example, in a financial marketing scenario, the object may be a user and the first object identification may be a user identification, such as a user name, a user number, or the like. The nodes may be servers of different subsidiaries under the same company where the user consumes, each of the subsidiaries having a portion of the user's consumption amount stored.
By the data query method, the query and statistics of the object data are realized under the condition that each node does not expose specific object data.
When the local server is about to perform joint data query, a first object identifier stored in the local node is acquired.
Step S202, determining an intersection set of a first object identifier and a second object identifier according to a preset key protocol algorithm to obtain a common object identifier, wherein the second object identifier is an object identifier stored in each node in the cluster.
Wherein the second object identification may be an identification of an object, the second object identification being stored in other nodes in the cluster.
The key agreement algorithm is an algorithm for ensuring that both parties in communication safely determine a symmetric key. The first object identifier and the second object identifier are also data privacy, so that in order to not expose the existing object identifiers of all nodes, the local node and all nodes can calculate according to a key protocol algorithm, and thus a common object identifier is obtained. The shared object identifier is an object identifier of an intersection object shared by the nodes.
Further, the step S202 may include:
step S2021, ordering the nodes in the cluster to obtain a node sequence, and setting the first node in the node sequence as an intersection solving node.
Specifically, the local server may sort the nodes in the cluster to obtain a node sequence. The nodes have node identifiers, which may be numbers, and the nodes may be ordered according to the node identifiers, or randomly ordered.
For orderly computation, the first node in the sequence of nodes may be set as the intersection solving node. An intersection finding node is a node that is currently to determine an intersection object with a local node.
Step S2022, calculating the first object identifier in the local node and the second object identifier of the intersection solving node according to a preset key protocol algorithm, so as to determine an intermediate common object identifier, where the intermediate common object identifier is the object identifier of the intersection object of the local node and the intersection solving node.
Specifically, the local node in the local server may calculate the first object identifier according to a preset key protocol algorithm to obtain a first calculation result, and at the same time, the intersection solving node also calculates the second object identifier according to the preset key protocol algorithm to obtain a second calculation result, so as to determine the object identifiers of the intersection objects in the local node and the intersection solving node based on the first calculation result and the second calculation result, and obtain the intermediate shared object identifier.
Further, the step S2022 may include: taking a first object identifier of a local node as a primitive root, and calculating the primitive root through a Diffie Hellman key protocol algorithm to obtain a first secret key; receiving a second secret key sent by the intersection solving node, wherein the second secret key is obtained by calculating a second object identifier in the intersection solving node according to a Diffie Hellman key protocol algorithm by the intersection solving node; comparing the first secret key with the second secret key to determine the same secret key; and determining the first object identification corresponding to the same secret key as an intermediate shared object identification.
The Diffie Hellman is an algorithm for ensuring that a shared key passes through an unsafe network safely, and two parties needing to communicate safely can determine a symmetric key through the algorithm and then encrypt and decrypt by using the key. The Diffie Hellman key agreement algorithm can only be used for key exchange and cannot encrypt and decrypt messages.
Specifically, the present application determines the same object identification in each node without exposing each node object identification by means of the principles of Diffie Hellman key agreement algorithm.
Based on the principle of Diffie Hellman key agreement algorithm, the local serverA prime number p is randomly selected and disclosed, and the first object identifier is used as the primitive root of the prime number p when calculation is performed. For each first object identification, the local server randomly selects a random number a smaller than the prime number p and calculates a first public key a=hash (x) a mod p, where hash represents the hash operation, x is the first object identification in the local node, and mod represents the remainder operation. The local server will first public key a=hash (x) a The modp is sent to the intersection solving node.
The second object identifier in the intersection solving node is y, the intersection solving node randomly selects a random number B smaller than the prime number p, and calculates a second public key b=hash (y) b modp, then the second public key b=hash (y) b The modp is sent to the local node.
The local node receives the second public key b=hash (y) sent by the intersection solving node b After modp, the first secret key ba=b is calculated a modp; the intersection solving node receives a first public key A=hash (x) sent by the local node a After modp, a second secret key ab=a is calculated b modp, then let the second secret key ab=a b The modp is sent to the local node.
The server compares each first secret key with each second secret key, when a certain first secret key is equal to a certain second secret key in value, according to a Diffie Hellman key protocol algorithm, the first object identification and the second object identification of the two secret keys are generated to be equal, and thus the shared object can be determined, and the middle shared object identification is obtained.
In this embodiment, the first object identifier is used as a primitive root, the private key is calculated according to the primitive root through the Diffie Hellman key protocol algorithm, and whether the private key is identical is compared, so that whether the first object identifier is identical to the second object identifier can be determined, and the determination of the common object under the condition that the specific object identifier is not disclosed is realized.
Step S2023, setting the next node in the node sequence as an intersection solving node, and performing iterative computation on the intermediate shared object identifier and the second object identifier of the intersection solving node according to the key protocol algorithm until the last node in the node sequence, to obtain a shared object identifier, where the shared object identifier is the object identifier of each node intersection object.
Specifically, since the object identifiers of all node intersection objects in the cluster are obtained, the calculation with the nodes in the node sequence needs to be continued on the basis of the obtained intermediate common object identifier.
The local node can set the next node in the node sequence as a new intersection solving node, then calculate the intermediate shared object identifier and the second object identifier of the intersection solving node according to the key protocol algorithm to obtain a new intermediate shared object identifier, and when the calculation with the last node in the node sequence is completed, the shared object identifier can be obtained, wherein the shared object identifier is the object identifier of each node intersection object, and each node stores the object data of the object corresponding to the shared object identifier.
In this embodiment, the nodes in the cluster are sequenced to obtain a node sequence, and then each node in the node sequence is calculated according to a key protocol algorithm, so that intersection objects of all the nodes can be determined, and a common object identifier is obtained.
In step S203, the object data corresponding to the common object identifier in the local node is determined as the first candidate query data.
Specifically, after the shared object identifier is obtained, the local server reads the object data stored in the local node, and determines the object data corresponding to the shared object identifier as first candidate query data. For other nodes, object data corresponding to the stored common object identification may be determined as second candidate query data. The first candidate query data and the second candidate query data are to participate in a federated data query.
It is emphasized that, to further ensure the privacy and security of the object data, the object data may also be stored in a node of a blockchain.
The blockchain referred to in the application is a novel application mode of computer technologies such as distributed data storage, point-to-point transmission, consensus mechanism, encryption algorithm and the like. The Blockchain (Blockchain), which is essentially a decentralised database, is a string of data blocks that are generated by cryptographic means in association, each data block containing a batch of information of network transactions for verifying the validity of the information (anti-counterfeiting) and generating the next block. The blockchain may include a blockchain underlying platform, a platform product services layer, an application services layer, and the like.
Step S204, according to the first candidate query data and the number of nodes, calculating first encrypted data corresponding to each node.
Specifically, when the first candidate query data and the second candidate query data are queried and counted, multiple rounds of computation are needed, firstly, the local server needs to compute first encrypted data corresponding to each node according to the first candidate query data and the number of nodes participating in joint query in the cluster. And for each node in the cluster, the local server calculates the first encryption data corresponding to each node according to the second candidate query data in the local node and the number of nodes participating in the joint query.
Further, the step S204 may include: determining a first encryption data calculation mode according to the number of nodes; substituting the node serial numbers of the nodes and the first candidate query data into a first encryption data calculation mode to obtain first encryption data corresponding to the nodes.
Specifically, the first encrypted data has a general algorithm formula, and when the first encrypted data is applied, the general algorithm formula needs to be adjusted according to the number of nodes to obtain an adaptive first encrypted data calculation mode. In one embodiment, the general algorithm formula for the first encrypted data is as follows:
f(x)=s+a 1 x+a 2 x 2 +...+a n-1 x n-1 (modp) (1)
where s is the first candidate query data stored in the local node, a i I e 1, 2..n-1 is a random number, n is the number of nodes involved in the joint query, x is the node number of the nodes, which in one embodiment may constitute a natural number array starting from 1; p is a local serviceThe prime numbers that are randomly selected and disclosed by the machine.
When the method is applied, the specific form of f (x) is adjusted according to the number of nodes, so as to obtain a first encrypted data calculation mode, for example, when the number of nodes n is 3, the first encrypted data calculation mode is as follows:
f(x)=s+a 1 x+a 2 x 2 modp (2)
when the local node calculates first encrypted data, the node serial numbers of all nodes and first candidate query data are substituted into a formula (2), and the first encrypted data f (1) corresponding to the local node is calculated if the local node serial numbers are 1 and the node serial numbers of the other two nodes (called a second node and a third node) are 2 and 3, wherein the corresponding first encrypted data of the second node is f (2), and the corresponding first encrypted data of the third node is f (3).
In this embodiment, the first encryption data calculation mode is determined according to the number of nodes, and then the node serial number and the first candidate query data are substituted for calculation, so as to encrypt the first candidate query data.
Step S205, first encrypted data corresponding to the node is sent to each node, and the first encrypted data corresponding to the local node sent by each node is received.
Specifically, the local server leaves the first encrypted data corresponding to the local node, and transmits the first encrypted data corresponding to them to each node. Meanwhile, other nodes also calculate first encrypted data corresponding to each node according to the second data to be queried, and send the calculated first encrypted data to the corresponding node. The local node receives first encrypted data corresponding to the local node sent by other nodes.
In the foregoing example, the local server transmits the first encrypted data f (2) to the second node, and transmits the first encrypted data f (3) to the third node. The second node calculates first encrypted data g (1), g (2) and g (3), and transmits the first encrypted data g (1) to the local node and the first encrypted data g (3) to the third node. The third node calculates first encrypted data d (1), d (2), and d (3), and transmits the first encrypted data d (1) to the local node, and transmits second encrypted data d (2) to the second node. The algorithm formula g (x) used by the second node for calculating the first encrypted data is the same as the algorithm formula d (x) used by the third node for calculating the first encrypted data, and the difference is that the candidate query data carried in during calculation are the second candidate query data of each node.
Step S206, calculating second encrypted data of the local node according to each first encrypted data corresponding to the local node, and receiving the second encrypted data sent by each node.
Specifically, after obtaining each first encrypted data corresponding to the local node, the local server calculates each first encrypted data according to a preset calculation mode, so as to obtain second encrypted data of the local node.
And each node calculates the received first encrypted data according to the same calculation mode to obtain second encrypted data corresponding to the node, and then sends the second encrypted data to the local node.
Further, the step S206 may include: performing linear operation on each first encrypted data corresponding to the local node to obtain second encrypted data of the local node; and receiving second encrypted data corresponding to the nodes, which are sent by each node.
Specifically, the preset calculation mode may be a linear operation, and the local server performs a linear operation on each first encrypted data corresponding to the local node. And each node also performs the same linear operation on the corresponding first encrypted data to obtain the second encrypted data of each node, and then sends the second encrypted data to the local node.
In one embodiment, the local server adds the first encrypted data corresponding to the local node to obtain the second encrypted data of the local node. For example, in the foregoing examples, if the local server already has the first encrypted data f (1), g (1), and d (1), then calculate the second encrypted data h (1) =f (1) +g1) +d1; the second node has the first encrypted data f (2), g (2) and d (2), and calculates second encrypted data h (2) =f (2) +g2) +d (2); the third node already has the first encrypted data f (3), g (3), and d (3), and calculates the second encrypted data h (3) =f (3) +g3) +d (3).
In this embodiment, the first encrypted data may be subjected to linear operation to obtain second encrypted data, and the second encrypted data sent by each node is received, so as to prepare data for data query statistics.
In step S207, the data decryption is performed on each second encrypted data to obtain data query information, where the data query information is the object data statistics of the intersection objects in each node.
Specifically, after obtaining the second encrypted data of each node, the local server calculates the second encrypted data according to a preset calculation mode, wherein the calculation process is the decryption process of the encrypted data, and the calculation result is the data query information. The data query information is a statistical result of object data of the intersection object in each node. For example, when the first candidate query data is the amount of money consumed by the user at a certain subsidiary, the second query data is the amount of money consumed by the user at other subsidiary, and the data query information may be the sum of the amounts of money consumed by the user at the respective subsidiary.
Further, the step S207 may include: carrying out data reconstruction on each second encrypted data according to a preset data reconstruction algorithm to obtain decrypted data; and determining the decrypted data as data query information, wherein the data query information is object data statistical information of intersection objects in all nodes.
Specifically, the local server may calculate each second encrypted data according to a preset data reconstruction algorithm, where the calculation process is a data reconstruction process, that is, a decryption process. The preset data reconstruction algorithm formula is as follows:
where α is the node number, and the local server holds (α, h (α)), α=1, 2,3; p is a prime number randomly selected and disclosed by the local server.
Based on the Shamir secret sharing principle, decrypted data, which is data query information, namely object data statistical information of intersection objects in all nodes, can be obtained according to a formula (3). For example, based on Shamir secret sharing principle, h (0) =s+v+c, where h (0) is data query information, s is first candidate query data in the local node, and v and c are second candidate query data in the second node and the third node, respectively.
In this embodiment, the data reconstruction is performed on each second encrypted data according to a preset data reconstruction algorithm, so as to realize data decryption, and obtain data query information, thereby realizing query statistics of object data under the condition that the private data is not exposed.
In this embodiment, a first object identifier in a local node is obtained, the first object identifier is processed according to a key protocol algorithm, and an intersection object of each node can be determined without exposing a specific first object identifier, so as to obtain a common object identifier; the method comprises the steps that object data corresponding to common object identifiers in local nodes are first candidate query data in joint query, encryption calculation is adopted in joint query, and first candidate query data and the number of nodes are calculated to obtain first encryption data of each node; transmitting first encrypted data corresponding to the nodes to each node, and receiving the first encrypted data corresponding to the local nodes transmitted by each node; calculating second encrypted data of the local node according to each first encrypted data of the local node, and receiving the second encrypted data sent by each node; and then, carrying out data decryption on each second encrypted data according to a preset decryption mode to obtain data query information, wherein the data query information is the object data statistical information of intersection objects in each node, and each node breaks a data barrier in the joint query process and realizes data query under the condition of not exposing specific private data. .
Further, after the step S207, the method may further include: and according to the received query information acquisition request sent by the request node, sending the data query information to the request node.
Wherein the query information acquisition request may be a request requesting data query information from a local node. The node sending the query information acquisition request is the requesting node.
In particular, other nodes in the cluster may obtain data query information from the local node. When other nodes in the cluster are to acquire data query information from the local node, the node serves as a request node to send a query information acquisition request to the local server. The local server verifies the identity of the request node, and after the request node is verified, the data query information is sent to the request node.
In one embodiment, data query rights may be assigned to a portion of the nodes in the cluster, such as the local nodes in the present application. When the nodes without the data query authority in the cluster need to perform data query, the nodes with the data query authority can perform data query, and then the data query information is acquired from the nodes with the data query authority.
In this embodiment, the data query information may be sent to other nodes, so as to implement information sharing.
Those skilled in the art will appreciate that implementing all or part of the above-described methods in accordance with the embodiments may be accomplished by way of a computer program stored in a computer-readable storage medium, which when executed, may comprise the steps of the embodiments of the methods described above. The storage medium may be a nonvolatile storage medium such as a magnetic disk, an optical disk, a Read-Only Memory (ROM), or a random access Memory (Random Access Memory, RAM).
It should be understood that, although the steps in the flowcharts of the figures are shown in order as indicated by the arrows, these steps are not necessarily performed in order as indicated by the arrows. The steps are not strictly limited in order and may be performed in other orders, unless explicitly stated herein. Moreover, at least some of the steps in the flowcharts of the figures may include a plurality of sub-steps or stages that are not necessarily performed at the same time, but may be performed at different times, the order of their execution not necessarily being sequential, but may be performed in turn or alternately with other steps or at least a portion of the other steps or stages.
With further reference to fig. 3, as an implementation of the method shown in fig. 2, the present application provides an embodiment of a data query device, where an embodiment of the device corresponds to the embodiment of the method shown in fig. 2, and the device may be specifically applied to various electronic devices.
As shown in fig. 3, the data query device 300 in this embodiment includes: an identification acquisition module 301, an intersection determination module 302, a data determination module 303, a first calculation module 304, a transmission and reception module 305, a second calculation module 306, and a data reconstruction module 307, wherein:
the identifier obtaining module 301 is configured to obtain a first object identifier stored in a local node.
The intersection determining module 302 is configured to determine an intersection of the first object identifier and a second object identifier according to a preset key protocol algorithm, so as to obtain a common object identifier, where the second object identifier is an object identifier of each node stored in the cluster.
The data determining module 303 is configured to determine, as the first candidate query data, object data corresponding to the common object identifier in the local node.
The first calculating module 304 is configured to calculate first encrypted data corresponding to each node according to the first candidate query data and the number of nodes.
The transmitting and receiving module 305 is configured to transmit first encrypted data corresponding to a node to each node, and receive first encrypted data corresponding to a local node transmitted by each node.
The second calculating module 306 is configured to calculate second encrypted data of the local node according to each first encrypted data corresponding to the local node, and receive the second encrypted data sent by each node.
The data reconstruction module 307 is configured to decrypt the second encrypted data to obtain data query information, where the data query information is the object data statistics of the intersection object in each node.
In this embodiment, a first object identifier in a local node is obtained, the first object identifier is processed according to a key protocol algorithm, and an intersection object of each node can be determined without exposing a specific first object identifier, so as to obtain a common object identifier; the method comprises the steps that object data corresponding to common object identifiers in local nodes are first candidate query data in joint query, encryption calculation is adopted in joint query, and first candidate query data and the number of nodes are calculated to obtain first encryption data of each node; transmitting first encrypted data corresponding to the nodes to each node, and receiving the first encrypted data corresponding to the local nodes transmitted by each node; calculating second encrypted data of the local node according to each first encrypted data of the local node, and receiving the second encrypted data sent by each node; and then, carrying out data decryption on each second encrypted data according to a preset decryption mode to obtain data query information, wherein the data query information is the object data statistical information of intersection objects in each node, and each node breaks a data barrier in the joint query process and realizes data query under the condition of not exposing specific private data.
In some alternative implementations of the present embodiment, the intersection determination module 302 may include: the node ordering sub-module, the identification computing sub-module and the iteration computing sub-module, wherein:
the node sequencing sub-module is used for sequencing all the nodes in the cluster to obtain a node sequence, and setting a first node in the node sequence as an intersection solving node.
The identifier calculation sub-module is used for calculating the first object identifier in the local node and the second object identifier of the intersection solving node according to a preset key protocol algorithm so as to determine an intermediate shared object identifier, wherein the intermediate shared object identifier is the object identifier of the intersection object of the local node and the intersection solving node.
And the iterative computation sub-module is used for setting the next node in the node sequence as an intersection solving node, and carrying out iterative computation on the intermediate shared object identifier and the second object identifier of the intersection solving node according to a key protocol algorithm until the last node in the node sequence to obtain a shared object identifier, wherein the shared object identifier is the object identifier of each node intersection object.
In this embodiment, the nodes in the cluster are sequenced to obtain a node sequence, and then each node in the node sequence is calculated according to a key protocol algorithm, so that intersection objects of all the nodes can be determined, and a common object identifier is obtained.
In some optional implementations of the present embodiment, the identity computation sub-module may include: the device comprises a first computing unit, a second computing unit, a key comparison unit and an identification determination unit, wherein:
the first computing unit is used for computing the primitive root by using the first object identifier of the local node as the primitive root through a Diffie Hellman key protocol algorithm to obtain a first secret key.
The second calculating unit is used for receiving a second secret key sent by the intersection solving node, wherein the second secret key is obtained by calculating a second object identifier in the intersection solving node according to a Diffie Hellman key protocol algorithm by the intersection solving node.
And the key comparison unit is used for comparing the first secret key with the second secret key to determine the same secret key.
And the identification determining unit is used for determining the first object identification corresponding to the same secret key as the middle shared object identification.
In this embodiment, the first object identifier is used as a primitive root, the private key is calculated according to the primitive root through the Diffie Hellman key protocol algorithm, and whether the private key is identical is compared, so that whether the first object identifier is identical to the second object identifier can be determined, and the determination of the common object under the condition that the specific object identifier is not disclosed is realized.
In some alternative implementations of the present embodiment, the first computing module 304 may include: a mode determination sub-module and a first calculation sub-module, wherein:
the mode determining submodule is used for determining a first encryption data computing mode according to the number of the nodes.
And the first calculation sub-module is used for substituting the node serial numbers of the nodes and the first candidate query data into a first encryption data calculation mode to obtain first encryption data corresponding to the nodes.
In this embodiment, the first encryption data calculation mode is determined according to the number of nodes, and then the node serial number and the first candidate query data are substituted for calculation, so as to encrypt the first candidate query data.
In some alternative implementations of the present embodiment, the second computing module 306 may include: a linear operation sub-module and a second receiving sub-module, wherein:
and the linear operation sub-module is used for carrying out linear operation on each first encrypted data corresponding to the local node to obtain second encrypted data of the local node.
And the second receiving sub-module is used for receiving second encrypted data corresponding to the nodes, which are sent by each node.
In this embodiment, the first encrypted data may be subjected to linear operation to obtain second encrypted data, and the second encrypted data sent by each node is received, so as to prepare data for data query statistics.
In some alternative implementations of the present embodiment, the data reconstruction module 307 may include: a data reconstruction sub-module and a decryption determination sub-module, wherein:
and the data reconstruction sub-module is used for carrying out data reconstruction on each second encrypted data according to a preset data reconstruction algorithm to obtain decrypted data.
And the decryption determination submodule is used for determining the decryption data into data query information, wherein the data query information is the object data statistical information of intersection objects in all nodes.
In this embodiment, the data reconstruction is performed on each second encrypted data according to a preset data reconstruction algorithm, so as to realize data decryption, and obtain data query information, thereby realizing query statistics of object data under the condition that the private data is not exposed.
In some optional implementations of this embodiment, the data query device 300 may further include an information sending module, where the information sending module is configured to: and according to the received query information acquisition request sent by the request node, sending the data query information to the request node.
In this embodiment, the data query information may be sent to other nodes, so as to implement information sharing.
In order to solve the technical problems, the embodiment of the application also provides computer equipment. Referring specifically to fig. 4, fig. 4 is a basic structural block diagram of a computer device according to the present embodiment.
The computer device 4 comprises a memory 41, a processor 42, a network interface 43 communicatively connected to each other via a system bus. It should be noted that only computer device 4 having components 41-43 is shown in the figures, but it should be understood that not all of the illustrated components are required to be implemented and that more or fewer components may be implemented instead. It will be appreciated by those skilled in the art that the computer device herein is a device capable of automatically performing numerical calculations and/or information processing in accordance with predetermined or stored instructions, the hardware of which includes, but is not limited to, microprocessors, application specific integrated circuits (Application Specific Integrated Circuit, ASICs), programmable gate arrays (fields-Programmable Gate Array, FPGAs), digital processors (Digital Signal Processor, DSPs), embedded devices, etc.
The computer equipment can be a desktop computer, a notebook computer, a palm computer, a cloud server and other computing equipment. The computer equipment can perform man-machine interaction with a user through a keyboard, a mouse, a remote controller, a touch pad or voice control equipment and the like.
The memory 41 includes at least one type of readable storage medium including flash memory, hard disk, multimedia card, card memory (e.g., SD or DX memory, etc.), random Access Memory (RAM), static Random Access Memory (SRAM), read Only Memory (ROM), electrically Erasable Programmable Read Only Memory (EEPROM), programmable Read Only Memory (PROM), magnetic memory, magnetic disk, optical disk, etc. In some embodiments, the storage 41 may be an internal storage unit of the computer device 4, such as a hard disk or a memory of the computer device 4. In other embodiments, the memory 41 may also be an external storage device of the computer device 4, such as a plug-in hard disk, a Smart Media Card (SMC), a Secure Digital (SD) Card, a Flash Card (Flash Card) or the like, which are provided on the computer device 4. Of course, the memory 41 may also comprise both an internal memory unit of the computer device 4 and an external memory device. In this embodiment, the memory 41 is typically used to store an operating system and various application software installed on the computer device 4, such as computer readable instructions of a data query method. Further, the memory 41 may be used to temporarily store various types of data that have been output or are to be output.
The processor 42 may be a central processing unit (Central Processing Unit, CPU), controller, microcontroller, microprocessor, or other data processing chip in some embodiments. The processor 42 is typically used to control the overall operation of the computer device 4. In this embodiment, the processor 42 is configured to execute computer readable instructions stored in the memory 41 or process data, such as computer readable instructions for executing the data query method.
The network interface 43 may comprise a wireless network interface or a wired network interface, which network interface 43 is typically used for establishing a communication connection between the computer device 4 and other electronic devices.
The computer device provided in this embodiment may perform the above-described data query method. The data query method here may be the data query method of each of the above embodiments.
In this embodiment, a first object identifier in a local node is obtained, the first object identifier is processed according to a key protocol algorithm, and an intersection object of each node can be determined without exposing a specific first object identifier, so as to obtain a common object identifier; the method comprises the steps that object data corresponding to common object identifiers in local nodes are first candidate query data in joint query, encryption calculation is adopted in joint query, and first candidate query data and the number of nodes are calculated to obtain first encryption data of each node; transmitting first encrypted data corresponding to the nodes to each node, and receiving the first encrypted data corresponding to the local nodes transmitted by each node; calculating second encrypted data of the local node according to each first encrypted data of the local node, and receiving the second encrypted data sent by each node; and then, carrying out data decryption on each second encrypted data according to a preset decryption mode to obtain data query information, wherein the data query information is the object data statistical information of intersection objects in each node, and each node breaks a data barrier in the joint query process and realizes data query under the condition of not exposing specific private data.
The present application also provides another embodiment, namely, a computer-readable storage medium storing computer-readable instructions executable by at least one processor to cause the at least one processor to perform the steps of the data query method as described above.
In this embodiment, a first object identifier in a local node is obtained, the first object identifier is processed according to a key protocol algorithm, and an intersection object of each node can be determined without exposing a specific first object identifier, so as to obtain a common object identifier; the method comprises the steps that object data corresponding to common object identifiers in local nodes are first candidate query data in joint query, encryption calculation is adopted in joint query, and first candidate query data and the number of nodes are calculated to obtain first encryption data of each node; transmitting first encrypted data corresponding to the nodes to each node, and receiving the first encrypted data corresponding to the local nodes transmitted by each node; calculating second encrypted data of the local node according to each first encrypted data of the local node, and receiving the second encrypted data sent by each node; and then, carrying out data decryption on each second encrypted data according to a preset decryption mode to obtain data query information, wherein the data query information is the object data statistical information of intersection objects in each node, and each node breaks a data barrier in the joint query process and realizes data query under the condition of not exposing specific private data.
From the above description of the embodiments, it will be clear to those skilled in the art that the above-described embodiment method may be implemented by means of software plus a necessary general hardware platform, but of course may also be implemented by means of hardware, but in many cases the former is a preferred embodiment. Based on such understanding, the technical solution of the present application may be embodied essentially or in a part contributing to the prior art in the form of a software product stored in a storage medium (such as ROM/RAM, magnetic disk, optical disk), comprising several instructions for causing a terminal device (which may be a mobile phone, a computer, a server, an air conditioner, or a network device, etc.) to perform the method described in the embodiments of the present application.
It is apparent that the embodiments described above are only some embodiments of the present application, but not all embodiments, the preferred embodiments of the present application are given in the drawings, but not limiting the patent scope of the present application. This application may be embodied in many different forms, but rather, embodiments are provided in order to provide a more thorough understanding of the present disclosure. Although the present application has been described in detail with reference to the foregoing embodiments, it will be apparent to those skilled in the art that modifications may be made to the embodiments described in the foregoing, or equivalents may be substituted for elements thereof. All equivalent structures made by the specification and the drawings of the application are directly or indirectly applied to other related technical fields, and are also within the protection scope of the application.

Claims (9)

1. A data query method, comprising the steps of:
acquiring a first object identifier stored in a local node;
determining an intersection of the first object identifier and a second object identifier according to a preset key protocol algorithm to obtain a common object identifier, wherein the second object identifier is an object identifier stored in each node in a cluster, and the key protocol algorithm is a Diffie Hellman key protocol algorithm;
determining object data corresponding to the common object identifier in the local node as first candidate query data;
calculating first encrypted data corresponding to each node according to the first candidate query data and the number of nodes;
sending first encrypted data corresponding to the nodes to each node, and receiving the first encrypted data corresponding to the local node sent by each node, wherein each node calculates the first encrypted data corresponding to the local node according to the same calculation mode as the local node based on respective second candidate query data, and the second candidate query data is object data corresponding to the common object identifier in each node;
Calculating second encrypted data of the local node according to each first encrypted data corresponding to the local node, and receiving the second encrypted data sent by each node, wherein each node calculates the second encrypted data corresponding to the node according to the same calculation mode as the local node based on each received first encrypted data;
performing data decryption on each second encrypted data to obtain data query information, wherein the data query information is object data statistical information of intersection objects in each node;
the step of decrypting the data of each second encrypted data to obtain the data query information comprises the following steps:
carrying out data reconstruction on each second encrypted data according to a preset data reconstruction algorithm to obtain decrypted data;
and determining the decrypted data as data query information, wherein the data query information is object data statistical information of intersection objects in the nodes.
2. The data query method of claim 1, wherein the step of determining the intersection of the first object identifier and the second object identifier according to a preset key agreement algorithm to obtain a common object identifier comprises:
Sequencing all nodes in the cluster to obtain a node sequence, and setting a first node in the node sequence as an intersection solving node;
calculating a first object identifier in the local node and a second object identifier of the intersection solving node according to a preset key protocol algorithm to determine an intermediate common object identifier, wherein the intermediate common object identifier is an object identifier of the intersection object of the local node and the intersection solving node;
setting the next node in the node sequence as an intersection solving node, and carrying out iterative computation on the intermediate shared object identifier and the second object identifier of the intersection solving node according to the key protocol algorithm until the last node in the node sequence to obtain a shared object identifier, wherein the shared object identifier is the object identifier of each node intersection object.
3. The data query method of claim 2, wherein the step of calculating the first object identification in the local node and the second object identification of the intersection solving node according to a preset key agreement algorithm to determine an intermediate common object identification comprises:
Taking a first object identifier of the local node as a primitive root, and calculating the primitive root through a Diffie Hellman key protocol algorithm to obtain a first secret key;
receiving a second secret key sent by the intersection solving node, wherein the second secret key is obtained by calculating a second object identifier in the intersection solving node according to the Diffie Hellman key protocol algorithm by the intersection solving node;
comparing the first secret key with the second secret key to determine the same secret key;
and determining the first object identification corresponding to the same secret key as an intermediate shared object identification.
4. The data query method of claim 1, wherein the step of calculating first encrypted data corresponding to each node based on the first candidate query data and the number of nodes comprises:
determining a first encryption data calculation mode according to the number of nodes;
substituting the node serial numbers of the nodes and the first candidate query data into the first encryption data calculation mode to obtain first encryption data corresponding to the nodes.
5. The data query method as claimed in claim 1, wherein the steps of calculating second encrypted data of the local node from each first encrypted data corresponding to the local node, and receiving the second encrypted data transmitted from each node include:
Performing linear operation on each first encrypted data corresponding to the local node to obtain second encrypted data of the local node;
and receiving second encrypted data corresponding to the nodes, which are sent by the nodes.
6. The data query method as claimed in claim 1, wherein after the step of decrypting each of the second encrypted data to obtain the data query information, further comprising:
and according to the received query information acquisition request sent by the request node, sending the data query information to the request node.
7. A data query device, comprising:
the identification acquisition module is used for acquiring a first object identification stored in the local node;
the intersection determining module is used for determining an intersection of the first object identifier and a second object identifier according to a preset key protocol algorithm to obtain a common object identifier, wherein the second object identifier is an object identifier stored in each node in the cluster, and the key protocol algorithm is a Diffie Hellman key protocol algorithm;
the data determining module is used for determining object data corresponding to the common object identifier in the local node as first candidate query data;
The first calculation module is used for calculating first encryption data corresponding to each node according to the first candidate query data and the number of nodes;
the sending and receiving module is used for sending first encrypted data corresponding to the nodes to each node and receiving the first encrypted data corresponding to the local node sent by each node, wherein each node calculates the first encrypted data corresponding to the local node according to the same calculation mode as the local node based on respective second candidate query data, and the second candidate query data is object data corresponding to the common object identifier in each node;
the second calculation module is used for calculating second encrypted data of the local node according to each first encrypted data corresponding to the local node, and receiving the second encrypted data sent by each node, wherein each node calculates the second encrypted data corresponding to the node according to the same calculation mode as the local node based on each received first encrypted data;
the data reconstruction module is used for carrying out data decryption on each second encrypted data to obtain data query information, wherein the data query information is the object data statistical information of the intersection objects in each node;
The data reconstruction module is also used for carrying out data reconstruction on each second encrypted data according to a preset data reconstruction algorithm to obtain decrypted data; and determining the decrypted data as data query information, wherein the data query information is object data statistical information of intersection objects in the nodes.
8. A computer device comprising a memory having stored therein computer readable instructions which when executed by a processor implement the steps of the data querying method of any of claims 1 to 6.
9. A computer readable storage medium having stored thereon computer readable instructions which when executed by a processor implement the steps of the data querying method according to any of claims 1 to 6.
CN202110758662.5A 2021-07-05 2021-07-05 Data query method, device, computer equipment and storage medium Active CN113434906B (en)

Priority Applications (1)

Application Number Priority Date Filing Date Title
CN202110758662.5A CN113434906B (en) 2021-07-05 2021-07-05 Data query method, device, computer equipment and storage medium

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
CN202110758662.5A CN113434906B (en) 2021-07-05 2021-07-05 Data query method, device, computer equipment and storage medium

Publications (2)

Publication Number Publication Date
CN113434906A CN113434906A (en) 2021-09-24
CN113434906B true CN113434906B (en) 2024-01-16

Family

ID=77759115

Family Applications (1)

Application Number Title Priority Date Filing Date
CN202110758662.5A Active CN113434906B (en) 2021-07-05 2021-07-05 Data query method, device, computer equipment and storage medium

Country Status (1)

Country Link
CN (1) CN113434906B (en)

Families Citing this family (2)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN114143000A (en) * 2021-11-29 2022-03-04 百保(上海)科技有限公司 Secret trace query method and device based on careless transmission protocol and secret sharing
CN115086037B (en) * 2022-06-16 2024-04-05 京东城市(北京)数字科技有限公司 Data processing method and device, storage medium and electronic equipment

Citations (5)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN109726580A (en) * 2017-10-31 2019-05-07 阿里巴巴集团控股有限公司 A kind of data statistical approach and device
CN110457945A (en) * 2019-08-01 2019-11-15 卫盈联信息技术(深圳)有限公司 Method, inquiry method, apparatus, service method, apparatus and the storage medium of list inquiry
CN111222157A (en) * 2019-10-30 2020-06-02 支付宝(杭州)信息技术有限公司 Method and device for inquiring block chain private data
CN111931253A (en) * 2020-09-15 2020-11-13 腾讯科技(深圳)有限公司 Data processing method, system, device and medium based on node group
CN112990484A (en) * 2021-04-21 2021-06-18 腾讯科技(深圳)有限公司 Model joint training method, device and equipment based on asymmetric federated learning

Patent Citations (5)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN109726580A (en) * 2017-10-31 2019-05-07 阿里巴巴集团控股有限公司 A kind of data statistical approach and device
CN110457945A (en) * 2019-08-01 2019-11-15 卫盈联信息技术(深圳)有限公司 Method, inquiry method, apparatus, service method, apparatus and the storage medium of list inquiry
CN111222157A (en) * 2019-10-30 2020-06-02 支付宝(杭州)信息技术有限公司 Method and device for inquiring block chain private data
CN111931253A (en) * 2020-09-15 2020-11-13 腾讯科技(深圳)有限公司 Data processing method, system, device and medium based on node group
CN112990484A (en) * 2021-04-21 2021-06-18 腾讯科技(深圳)有限公司 Model joint training method, device and equipment based on asymmetric federated learning

Also Published As

Publication number Publication date
CN113434906A (en) 2021-09-24

Similar Documents

Publication Publication Date Title
CN109862041B (en) Digital identity authentication method, equipment, device, system and storage medium
CN109951489B (en) Digital identity authentication method, equipment, device, system and storage medium
KR101843340B1 (en) Privacy-preserving collaborative filtering
CN113434906B (en) Data query method, device, computer equipment and storage medium
CN111294203B (en) Information transmission method
CN112131316A (en) Data processing method and device applied to block chain system
US11411742B2 (en) Private set calculation using private intersection and calculation, and applications thereof
CN112953974B (en) Data collision method, device, equipment and computer readable storage medium
Yan et al. A lightweight authentication and key agreement scheme for smart grid
CN111968714B (en) Processing method, device, system and medium for electronic medical record of block chain
CN116226289A (en) Electronic certificate management method, device, equipment and storage medium based on blockchain
CN111917533A (en) Privacy preserving benchmark analysis with leakage reducing interval statistics
WO2010133998A1 (en) Method and device for enabling portable user reputation
CN114268447B (en) File transmission method and device, electronic equipment and computer readable medium
CN117371010A (en) Data trace query method, electronic device and readable storage medium
US20230028854A1 (en) System and method of cryptographic key management in a plurality of blockchain based computer networks
WO2022110716A1 (en) Cold start recommendation method and apparatus, computer device and storage medium
CN115599959A (en) Data sharing method, device, equipment and storage medium
CN109768969A (en) Authority control method and internet-of-things terminal, electronic equipment
CN113094735B (en) Privacy model training method
CN115085934A (en) Contract management method based on block chain and combined key and related equipment
US7979712B2 (en) Network system, server and information terminal for list matching
CN110995437B (en) ETC system-based user information input method, device, equipment and storage medium
CN116095671B (en) Resource sharing method based on meta universe and related equipment thereof
CN114022259B (en) Bidding method and device based on public key assignment and identity verification

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