Method, apparatus and electronic device for transmitting intersection data
Patent Information
- Application Number
- CN202110847484.3
- Authority / Receiving Office
- CN · China
- Patent Type
- Patents(China)
- Current Assignee / Owner
- Filing Date
- 2021-07-27
- Publication Date
- 2026-10-16
- Estimated Expiration
- 2041-07-27
AI Technical Summary
[0004]但是,上述方法因难以兼顾数据保密性、可用性和可溯性,存在无法保障传输交集数据过程中的数据安全,而导致隐私泄露的问题
[0035] Fourthly, this application provides a computer-readable storage medium storing a computer program, which, when executed by a processor, implements the above-described method steps for detecting an object with an abnormal motion state.
Smart Images

Figure CN115688124B_ABST
Abstract
Description
Technical Field
[0001] This application relates to the field of computer technology, and in particular to a method, apparatus and electronic device for transmitting intersection data. Background Technology
[0002] As data privacy protection gains increasing importance, the significant losses caused by the lack of data sharing between institutions (enterprises) have become a major pain point in the industry. While protecting the privacy of users and institutions, risks can be mitigated and losses reduced by transmitting overlapping data, followed by transmitting privacy data containing that overlapping data.
[0003] Currently, the main schemes for finding the intersection of data include: the PSI (Private Set Intersection) protocol using hash functions, the PSI protocol based on public key encryption, the PSI protocol based on chaotic circuits, the PSI protocol based on unintentional transmission protocols, and the PSI protocol based on homomorphic encryption.
[0004] However, the above methods are difficult to balance data confidentiality, availability and traceability, and there is a problem of privacy leakage due to the inability to guarantee data security during the transmission of intersecting data. Summary of the Invention
[0005] This application provides a method, apparatus, and electronic device for transmitting intersection data.
[0006] In a first aspect, this application provides a method for transmitting intersection data, the method comprising:
[0007] Identify N trading parties requesting intersection data, and obtain the datasets of the N trading parties respectively. The datasets include M sub-data, each sub-data includes K unit data with different attributes, N is an integer greater than or equal to 2, and M or K is an integer greater than or equal to 1.
[0008] Extract the same unit data under the same attribute as the intersection data, wherein the intersection data also includes the data order number that identifies the transaction party and the attribute sequence number that identifies the attribute;
[0009] The data order number and attribute sequence number of the intersection data are sent to the transaction party corresponding to the data order number.
[0010] The above methods enable the acquisition and transmission of intersectional data while ensuring privacy and security. They also guarantee the confidentiality, availability, and traceability of data during transmission, breaking down information barriers and effectively saving data transmission time.
[0011] In one possible design, determining the N trading parties requesting intersection data and obtaining the datasets of the N trading parties respectively includes:
[0012] Identify the N parties to a transaction who request the intersection of their data;
[0013] Obtain the authorization data of the N transacting parties;
[0014] Based on the encrypted unit data of the authorized data, obtain the dataset of the N trading parties.
[0015] The above methods effectively ensure data security, meet the transaction needs of different numbers of trading parties, and achieve high efficiency in data processing through encryption, saving time for subsequent data transmission.
[0016] In one possible design, after sending the data order number and attribute sequence number of the intersection data to the transaction party corresponding to the data order number, the method further includes:
[0017] Identify the first transacting party requesting privacy data, determine whether there is a responding party, wherein the privacy data represents sub-data containing intersecting data, and the responding party is other transacting parties that agree to the request of the first transacting party;
[0018] If the respondent exists, the respondent's privacy data will be sent to the first transacting party.
[0019] By using the above methods, information barriers between multiple trading parties can be broken down, enabling the transmission of private data while protecting the security of the trading parties themselves and their data.
[0020] In one possible design, sending the responder's privacy data to the first transacting party includes:
[0021] Based on the intersection data of the first transacting parties, extract the privacy data of the responding party;
[0022] The privacy data is encrypted using the public key of the first transacting party;
[0023] The privacy data is sent to the first transacting party.
[0024] The above methods enable the exchange of private data while ensuring privacy and security, break down information barriers in multi-party transactions, and effectively improve data security during transmission by using blockchain.
[0025] Secondly, this application provides an apparatus for transmitting intersection data, the apparatus comprising:
[0026] The acquisition module identifies N trading parties requesting intersection data and acquires the datasets of the N trading parties respectively. The datasets include M sub-data, each sub-data including K unit data with different attributes, where N is an integer greater than or equal to 2, and M or K is an integer greater than or equal to 1.
[0027] The calculation module extracts the same unit data under the same attribute as the intersection data, wherein the intersection data also includes the data order number that identifies the transaction party and the attribute sequence number that identifies the attribute;
[0028] The transmission module sends the data order number and attribute sequence number of the intersection data to the transaction party corresponding to the data order number.
[0029] In one possible design, the acquisition module is specifically used to identify N trading parties requesting intersection data; acquire authorization data of the N trading parties; and acquire the dataset of the N trading parties based on the encrypted unit data in the authorization data.
[0030] In one possible design, after the transmission module, a first transacting party requesting privacy data is identified, and a responding party is determined to exist. The privacy data represents sub-data containing intersecting data, and the responding party is another transacting party that agrees to the request of the first transacting party. If the responding party exists, the privacy data of the responding party is sent to the first transacting party.
[0031] In one possible design, sending the responder's privacy data to the first transacting party specifically involves extracting the responder's privacy data based on the intersection data of the first transacting party; encrypting the privacy data using the first transacting party's public key; and sending the privacy data to the first transacting party.
[0032] Thirdly, this application provides an electronic device, the electronic device comprising:
[0033] Memory, used to store computer programs;
[0034] When a processor executes a computer program stored in the memory, it implements the above-described method steps for detecting objects with abnormal motion states.
[0035] Fourthly, this application provides a computer-readable storage medium storing a computer program, which, when executed by a processor, implements the above-described method steps for detecting an object with an abnormal motion state.
[0036] For the various aspects of the second to fourth aspects mentioned above, and the technical effects that each aspect may achieve, please refer to the above description of the technical effects that can be achieved for the first aspect or the various possible solutions in the first aspect, which will not be repeated here. Attached Figure Description
[0037] Figure 1 A structural diagram illustrating a possible application scenario provided in this application;
[0038] Figure 2 A flowchart of a method for transmitting intersection data provided in this application;
[0039] Figure 3 A schematic diagram of encrypted unit data provided in this application;
[0040] Figure 4 This application provides a schematic diagram for obtaining intersection data;
[0041] Figure 5 A flowchart of a method for transmitting privacy data provided in this application;
[0042] Figure 6 A schematic diagram illustrating the transmission of privacy data provided in this application;
[0043] Figure 7 A schematic diagram of an apparatus for transmitting intersection data provided in this application;
[0044] Figure 8 A schematic diagram of the structure of an electronic device provided in this application. Detailed Implementation
[0045] See Figure 1 As shown in the embodiment of this application, a possible application scenario is proposed.
[0046] Blockchain network 100 can be a network composed of n peer blockchain nodes, where n is an integer greater than or equal to 2. Each blockchain node can include one or more ledger nodes and one consensus node. Ledger nodes are used to record every transaction that occurs in blockchain network 100. For example, if the first node initiates a transaction to the second node, multiple ledger nodes in blockchain network 100 will jointly record this transaction. The consensus node is responsible for reaching consensus on each transaction in blockchain network 100 according to the consensus mechanism. In addition, blockchain network 100 also requires n blockchain nodes to jointly formulate smart contracts, and smart contracts can be deployed on each of the n ledger nodes.
[0047] The encryption / decryption unit 101 is used to encrypt or decrypt data. The encryption / decryption unit 101 can be implemented using a symmetric encryption method with a threshold secret sharing protocol. However, the characteristics of the symmetric encryption method require the encryption / decryption unit 101 to obtain joint authorization from all the aforementioned transaction parties before encrypting or decrypting data.
[0048] The computing unit 102 can be composed of three or more computing nodes. These nodes can acquire data from various trading parties, split the dataset into unit data, compare unit data with the same attributes, and identify the common unit data as intersection data. The computing nodes can also distribute the acquired data to various trading parties. Furthermore, the computing nodes can receive requests from various trading parties or initiate requests to them.
[0049] Based on the above scenario, this application provides a method that can be applied to the above scenario. This method can securely and effectively transmit intersection data, solving the problem that existing technologies have increased risks in transmitting intersection data due to the difficulty in balancing the confidentiality, availability and traceability of privacy data, and effectively ensuring the security of multi-party transmission of intersection data.
[0050] The method provided in the embodiments of this application will be further described in detail below with reference to the accompanying drawings.
[0051] See Figure 2 As shown in the figure, this application provides a method for transmitting intersection data, and the specific process is as follows:
[0052] Step 201: Identify the N trading parties requesting intersection data, and obtain the datasets of the N trading parties respectively;
[0053] Before executing step 201, in order to accurately obtain the requests of N trading parties, the n blockchain nodes in the same blockchain network correspond to the n trading parties respectively. Here, the trading parties can represent individuals or organizations, such as enterprises or institutions.
[0054] The aforementioned n transacting parties can jointly formulate a smart contract based on their business scenarios. The smart contract defines the data format for each party, specifying data attributes and attribute numbers. For example, in a financial business scenario, the data format could be defined as: "01 Product Name, 02 Borrower Name, 03 ID Number, 04 Loan Date, 05 Repayment Status". Here, "Product Name", "Borrower Name", "ID Number", "Loan Date" or "Repayment Status" represent data attributes, and "01", "02", "03", "04", or "05" represent the attribute number. Furthermore, each attribute can correspond to multiple data units; in this embodiment, a data unit is represented as the smallest indivisible data unit. By adhering to the smart contract's definition of the data format, data that is deemed useless by one party is avoided, thus preventing the waste of computational resources.
[0055] In this embodiment, considering that not every party to a transaction is willing to request the transmission of intersection data every time, the N parties requesting intersection data are first identified, and each of the N parties generates its own public and private keys locally. Then, the authorized data conforming to the smart contract specifications of each of the N parties is obtained. Here, the authorized data can be local data and can be selected and uploaded according to the needs of each of the N parties. Finally, the encryption and decryption units of the N parties are simultaneously activated to encrypt the unit data in the authorized data of the N parties, obtaining a dataset of the N parties. The dataset includes M sub-data, each sub-data including K encrypted unit data with different attributes, where N is an integer greater than or equal to 2 and less than or equal to n, and M or K is an integer greater than or equal to 1.
[0056] For example, one method for encrypting unit data using an encryption / decryption unit can be found in [reference needed]. Figure 3 As shown, if there are three trading parties, and all three parties simultaneously enable encryption / decryption units, using the encryption method of the (2,3) threshold secret sharing protocol, and agreeing on the data format as: "Data Order Number (01 Product Name; 02 Borrower Name; 03 ID Number; 04 Loan Date; 05 Repayment Status)", taking trading party A as an example: "htxx001(x1; x2; 3; x4; x5)" is a sub-data of trading party A, "htxx001(m1; m2; m3; m4; m5)" is the sub-data encrypted from "htxx001(x1; x2; 3; x4; x5)", "htxx001" is the data order number identifying trading party A, "m1" is the unit data encrypted from "x1", and the attribute sequence number of "m1" is "01".
[0057] It's important to note that each time N trading parties authorize a request for intersectional data, it can be considered that the N trading parties agree to transmit the intersectional data and simultaneously authorize the use of their respective encryption / decryption units for encrypting and decrypting their respective sent and received data. Furthermore, trading parties can choose permanent authorization or one-time authorization: if they grant permanent authorization, their authorization information is implicitly accepted in subsequent requests; if they grant one-time authorization, their authorization information must be obtained again for each subsequent request.
[0058] Step 202: Extract the data of the same cells with the same attributes as the intersection data;
[0059] To ensure that the intersection data with other trading parties is obtained while each trading party only has its own dataset, this application proposes a computing power unit that uses three or more computing nodes to obtain the intersection data. The computing nodes in this computing power unit can correspond to the trading parties or to a third-party organization or individual trusted by the trading parties. By using three or more computing nodes, it is possible to prevent any single computing node from obtaining the entire dataset of any trading party, thus ensuring the privacy and security of the data of each trading party.
[0060] For example, one method for finding the intersection of computing nodes within a computing unit can be found in [reference needed]. Figure 4 As shown, the datasets for trading parties A, B, and C are: “htxx001(m1;m2;m3;m4;m5)”, “hbzx001(n1;m2;n3;n4;n5)”, and “jszn001(m1;o2;o3;o4;n5)”, respectively. Each computing node can randomly obtain the unit data of each trading party and perform calculations and comparisons on all unit data corresponding to the same attribute number for each trading party to obtain identical unit data and corresponding data order numbers. For example, comparing the unit data under “Product Name” for attribute number “01”, where the data order number and unit data corresponding to “01” are: Trading party A “htxx001(m1)”, Trading party B “hbzx001(n1)”, and Trading party C “jszn001(m1)”. By comparing the unit data “m1”, “n1”, and “m2”, the results can be obtained. The cell data corresponding to “m1”, “htxx001(m1)” and “jszn001(m1)” are the same, which means that the intersection data “m1” of trading party A and trading party C exists. Following the same method, all the intersection data are extracted as follows: “htxx001(m1)” and “jszn001(m1)” under “01”, “htxx001(m2)” and “hbzx001(m2)” under “02”, and “hbzx001(n5)” and “jszn001(n5)” under “05”.
[0061] Step 203: Send the data order number and attribute sequence number of the intersection data to the transaction party corresponding to the data order number;
[0062] To ensure the security of the process of obtaining intersection data among the transacting parties, in this embodiment, each computing node can send relevant information about the intersection data to the corresponding transacting party based on the data order number, including: the data order number and attribute sequence number corresponding to the intersection data. Additionally, the relevant information of this transmission is recorded on the blockchain.
[0063] After receiving the relevant information, each trading party can locate the subset of data containing the intersection data by using the data order number, and then identify the unit data in the subset as the intersection data by using the attribute sequence number.
[0064] In one possible implementation, in order to achieve privacy data interoperability while ensuring privacy and security, and to break down information barriers, after sending the data order number and attribute sequence number of the intersection data to the transaction party corresponding to the data order number, privacy data can also be transmitted based on the intersection data.
[0065] See Figure 5 As shown in the figure, this application embodiment provides a method for transmitting privacy data based on intersection data, and the specific process is as follows:
[0066] Step 501: Identify the first party requesting privacy data and send the request to the other parties.
[0067] Among N trading parties, if there exists a first trading party that receives the intersection data, and this first trading party requests to obtain sub-data (i.e., privacy data) from other trading parties that have the same intersection data, then the first trading party's request can be received by the computing node. The computing node will then identify other trading parties that have the same intersection data as the first trading party through computation and send requests to these other trading parties to transmit privacy data. Furthermore, the first trading party's request can be a request for privacy data based on a partial intersection of the data.
[0068] Other parties that receive the request from the compute node and respond accordingly will act as the responding parties.
[0069] Step 502: Determine if a responder exists;
[0070] If yes, proceed to step 503; otherwise, proceed to step 504.
[0071] Step 503: Send the responder's privacy data to the first transacting party;
[0072] Based on the intersection data and public / private keys of the first transacting party, the computing node can extract the corresponding private data from the responding party, encrypt the private data using the first transacting party's public key, and send the encrypted private data to the first transacting party. Additionally, the relevant information of this transmission is recorded on the blockchain, and the portion of this information containing private data is encrypted using a hash value.
[0073] After receiving the encrypted private data, the first party in the transaction uses its own private key to decrypt it, obtaining the responder's private data, and then uses the encryption / decryption unit to decrypt the encrypted unit data within the private data.
[0074] For example, one method of sending the responder's private data to the first transacting party can be seen in... Figure 6 As shown, if party A is the first party to the transaction and requests private data containing "m1", and the computing node receives a response from party C containing "m1", then party C is the responder. The computing node extracts the sub-data "(m1,o2,o3,o4,n5)" containing "m1" from party C, encrypts the sub-data using party A's public key to generate "(g1,g2,g3,g4,g5)", and sends the encrypted "(g1,g2,g3,g4,g5)" to party A. Party A decrypts the encrypted data using its private key to obtain party C's private data "(m1,o2,o3,o4,n5)". Finally, party A can use the encryption / decryption unit to decrypt the data using the (2,3) threshold secret sharing protocol to obtain party C's local private data "(x1,z2,z3,z4,y5)".
[0075] Step 504: End the process.
[0076] Here, we complete a request for the intersection data of N trading parties, revoke the authorization of the data of the N trading parties, and revoke the authorization of the encryption and decryption units of the N trading parties.
[0077] The above methods enable the transmission of overlapping and private data while ensuring privacy and security. They also take into account the confidentiality, availability, and traceability of data during transmission, breaking down information barriers and effectively saving data transmission time.
[0078] Based on the same inventive concept, this application provides a method, apparatus, and electronic device for transmitting intersection data, which solves the problem in the prior art where the difficulty in balancing the confidentiality, availability, and traceability of private data leads to increased risks during the transmission of intersection data, effectively ensuring the security of multi-party transmission of intersection data. See [link to relevant documentation]. Figure 7 The device includes:
[0079] The acquisition module 701 determines the N trading parties requesting intersection data, and acquires the datasets of the N trading parties respectively. The datasets include M sub-data, each sub-data including K unit data with different attributes, where N is an integer greater than or equal to 2, and M or K is an integer greater than or equal to 1.
[0080] The calculation module 702 extracts the same unit data under the same attribute as the intersection data, wherein the intersection data also includes the data order number identifying the transaction party and the attribute sequence number identifying the attribute;
[0081] The transmission module 703 sends the data order number and attribute sequence number of the intersection data to the transaction party corresponding to the data order number.
[0082] In one possible design, the acquisition module 701 is specifically used to determine N trading parties requesting intersection data; acquire the authorization data of the N trading parties; and acquire the dataset of the N trading parties based on the encrypted unit data in the authorization data.
[0083] In one possible design, after the transmission module 703, the system further includes determining a first transacting party requesting privacy data, determining whether a responding party exists, wherein the privacy data represents sub-data containing intersecting data, and the responding party is another transacting party that agrees to the request of the first transacting party; if the responding party exists, the privacy data of the responding party is sent to the first transacting party.
[0084] In one possible design, sending the responder's privacy data to the first transacting party specifically involves extracting the responder's privacy data based on the intersection data of the first transacting party; encrypting the privacy data using the first transacting party's public key; and sending the privacy data to the first transacting party.
[0085] Based on the aforementioned device, overlapping data can be transmitted securely and efficiently, enabling the exchange of private data while ensuring privacy and security. It also breaks down information barriers in multi-party transactions and effectively enhances data security during transmission using blockchain technology. This addresses the problem in existing technologies where the difficulty in balancing the confidentiality, availability, and traceability of private data leads to increased risks during overlapping data transmission, effectively ensuring the security of multi-party overlapping data transmission.
[0086] Based on the same inventive concept, this application also provides an electronic device that can realize the function of the aforementioned device for transmitting intersection data. (Refer to...) Figure 8 The electronic device includes:
[0087] At least one processor 801 and a memory 802 connected to at least one processor 801. In this embodiment, the specific connection medium between the processor 801 and the memory 802 is not limited. Figure 8 The example shown is the connection between processor 801 and memory 802 via bus 800. Bus 800 is... Figure 8 The connections between other components are indicated by thick lines and are for illustrative purposes only, not as limiting information. The 800 bus can be divided into address bus, data bus, control bus, etc., for ease of representation. Figure 8 The term is represented by a single thick line, but this does not imply that there is only one bus or one type of bus. Alternatively, the processor 801 can also be called a controller; there is no restriction on the name.
[0088] In this embodiment, memory 802 stores instructions executable by at least one processor 801. By executing the instructions stored in memory 802, at least one processor 801 can perform the previously discussed method for transmitting intersection data. Processor 801 can implement... Figure 8 The functions of each module in the device shown.
[0089] The processor 801 is the control center of the device. It can connect to various parts of the control device through various interfaces and lines. By running or executing instructions stored in memory 802 and calling data stored in memory 802, the processor can perform various functions and process data, thereby monitoring the device as a whole.
[0090] In one possible design, processor 801 may include one or more processing units. Processor 801 may integrate an application processor and a modem processor, wherein the application processor mainly handles the operating system, user interface, and applications, and the modem processor mainly handles wireless communication. It is understood that the modem processor may also not be integrated into processor 801. In some embodiments, processor 801 and memory 802 may be implemented on the same chip; in some embodiments, they may also be implemented on separate chips.
[0091] The processor 801 can be a general-purpose processor, such as a central processing unit (CPU), digital signal processor, application-specific integrated circuit, field-programmable gate array or other programmable logic device, discrete gate or transistor logic device, or discrete hardware component, capable of implementing or executing the methods, steps, and logic block diagrams disclosed in the embodiments of this application. The general-purpose processor can be a microprocessor or any conventional processor. The steps of the method for transmitting intersection data disclosed in the embodiments of this application can be directly manifested as being executed by a hardware processor, or being executed by a combination of hardware and software modules within the processor.
[0092] Memory 802, as a non-volatile computer-readable storage medium, can be used to store non-volatile software programs, non-volatile computer-executable programs, and modules. Memory 802 may include at least one type of storage medium, such as flash memory, hard disk, multimedia card, card-type memory, random access memory (RAM), static random access memory (SRAM), programmable read-only memory (PROM), read-only memory (ROM), electrically erasable programmable read-only memory (EEPROM), magnetic storage, magnetic disk, optical disk, etc. Memory 802 can be any other medium capable of carrying or storing desired program code in the form of instructions or data structures that can be accessed by a computer, but is not limited thereto. In the embodiments of this application, memory 802 can also be a circuit or any other device capable of implementing storage functions for storing program instructions and / or data.
[0093] By designing and programming the processor 801, the code corresponding to the data transfer method described in the foregoing embodiments can be embedded into the chip, enabling the chip to execute it during operation. Figure 2 The steps of the method for transmitting intersection data in the illustrated embodiment are as follows. How to design and program the processor 801 is a technique well-known to those skilled in the art and will not be described further here.
[0094] Based on the same inventive concept, embodiments of this application also provide a storage medium storing computer instructions that, when executed on a computer, cause the computer to perform the method for transmitting intersection data described above.
[0095] In some possible implementations, various aspects of the method for transmitting intersection data provided in this application can also be implemented in the form of a program product, which includes program code that, when the program product is run on a device, causes the control device to perform the steps in the method for transmitting intersection data according to the various exemplary embodiments of this application described above.
[0096] Those skilled in the art will understand that embodiments of this application can be provided as methods, apparatus, or computer program products. Therefore, this application can take the form of a completely hardware embodiment, a completely software embodiment, or an embodiment combining software and hardware aspects. Furthermore, this application can take the form of a computer program product embodied on one or more computer-usable storage media (including but not limited to disk storage, CD-ROM, optical storage, etc.) containing computer-usable program code.
[0097] This application is described with reference to flowchart illustrations and / or block diagrams of methods, apparatus (systems, devices), and computer program products according to embodiments of this application. It will be understood that each block of the flowchart illustrations and / or block diagrams, and combinations of blocks in the flowchart illustrations and / or block diagrams, can be implemented by computer program instructions. These computer program instructions can be provided to a processor of a general-purpose computer, special-purpose computer, embedded processor, or other programmable data processing apparatus to produce a machine, such that the instructions, which execute via the processor of the computer or other programmable data processing apparatus, generate instructions for implementing the flowchart... Figure 1 One or more processes and / or boxes Figure 1 A device that provides the functions specified in one or more boxes.
[0098] These computer program instructions may also be stored in a computer-readable storage medium that can direct a computer or other programmable data processing device to function in a particular manner, such that the instructions stored in the computer-readable storage medium produce an article of manufacture including instruction means, which are implemented in a process Figure 1 One or more processes and / or boxes Figure 1 The function specified in one or more boxes.
[0099] These computer program instructions may also be loaded onto a computer or other programmable data processing equipment to cause a series of operational steps to be performed on the computer or other programmable equipment to produce a computer-implemented process, thereby providing instructions that execute on the computer or other programmable equipment for implementing the process. Figure 1 One or more processes and / or boxes Figure 1 The steps of the function specified in one or more boxes.
[0100] Obviously, those skilled in the art can make various modifications and variations to this application without departing from the spirit and scope of this application. Therefore, if such modifications and variations fall within the scope of the claims of this application and their equivalents, this application also intends to include such modifications and variations.
Claims
1. A method for transmitting intersection data, characterized in that, The method includes: Identify the N transaction parties corresponding to the N blockchain nodes located in the same blockchain network for the requested intersection data, and obtain the datasets of the N transaction parties respectively. The datasets include M sub-data, each sub-data including K unit data with different attributes, where N is an integer greater than or equal to 2, and M and K are integers greater than or equal to 1. The unit data of each trading party is randomly obtained by at least 3 computing nodes on the computing power unit, and all unit data of each trading party corresponding to the same attribute number are calculated and compared to obtain the same unit data and the corresponding data order number; the same unit data under the same attribute is extracted as the intersection data, wherein the intersection data also includes the data order number identifying the trading party and the attribute number identifying the attribute; The data order number and attribute sequence number of the intersection data are sent to the corresponding transaction party through the at least 3 computing nodes, and the data order number and attribute sequence number are recorded on the blockchain network; A first transacting party requesting privacy data is identified, and it is determined whether a responding party exists. The privacy data represents sub-data containing intersecting data, and the responding party is another transacting party that agrees to the request of the first transacting party. If the responding party exists, the privacy data of the responding party is sent to the first transacting party.
2. The method as described in claim 1, characterized in that, The step of obtaining the datasets of the N trading parties includes: Obtain the authorization data of the N transacting parties; Based on the encrypted unit data of the authorized data, obtain the dataset of the N trading parties.
3. The method as described in claim 1, characterized in that, Sending the responder's privacy data to the first transacting party includes: Based on the intersection data of the first trading parties, extract the privacy data of the responding party; The privacy data is encrypted using the public key of the first transacting party; The privacy data is sent to the first transacting party.
4. A device for transmitting intersection data, characterized in that, The device includes: The acquisition module determines the N transaction parties corresponding to the N blockchain nodes located in the same blockchain network that request the intersection data, and acquires the datasets of the N transaction parties respectively. The datasets include M sub-data, each sub-data including K unit data with different attributes, where N is an integer greater than or equal to 2, and M and K are integers greater than or equal to 1. The calculation module randomly acquires unit data from each trading party through at least three computing nodes on the computing power unit, and performs calculation and comparison on all unit data corresponding to the same attribute number for each trading party to obtain identical unit data and corresponding data order number; extracts identical unit data under the same attribute as intersection data, wherein the intersection data also includes the data order number identifying the trading party and the attribute number identifying the attribute; The transmission module sends the data order number and attribute sequence number of the intersection data to the corresponding transaction party through the at least three computing nodes, and records the data order number and attribute sequence number on the blockchain network. A first transacting party requesting privacy data is identified, and it is determined whether a responding party exists. The privacy data represents sub-data containing intersecting data, and the responding party is another transacting party that agrees to the request of the first transacting party. If the responding party exists, the privacy data of the responding party is sent to the first transacting party.
5. The apparatus as described in claim 4, characterized in that, The acquisition module is specifically used to identify N trading parties requesting intersection data; acquire the authorization data of the N trading parties; and acquire the dataset of the N trading parties based on the encrypted unit data in the authorization data.
6. The apparatus as claimed in claim 4, characterized in that, The step of sending the responder's privacy data to the first transacting party specifically involves extracting the responder's privacy data based on the intersection data of the first transacting party; encrypting the privacy data using the first transacting party's public key; and sending the privacy data to the first transacting party.
7. An electronic device, characterized in that, include: Memory, used to store computer programs; A processor, when executing a computer program stored in the memory, implements the method steps of any one of claims 1-3.
8. A computer-readable storage medium, characterized in that, The computer-readable storage medium stores a computer program that, when executed by a processor, implements the steps of the method described in any one of claims 1-3.
Citation Information
Patent Citations
Transaction data synchronous docking method and device, computer device and storage medium
CN110008282A
Data processing method and system and storage medium
CN110598427A
Privacy intersection method and device
CN112597524A
Private data processing method, device and system
CN112632610A