Method and system for realizing oracle machine for protecting privacy and source authenticity of multi-source data

By introducing a trusted center and a three-party handshake protocol, combined with authenticated encryption and zero-knowledge proof, the privacy and source authenticity issues of multi-source data are solved, the complexity of key management is reduced, and the security and efficiency of data interaction are improved.

CN120602084APending Publication Date: 2025-09-05SHANDONG UNIV
View PDF 0 Cites 2 Cited by

Patent Information

Application Number
CN202510794111.2
Authority / Receiving Office
CN · China
Patent Type
Applications(China)
Current Assignee / Owner
Filing Date
2025-06-13
Publication Date
2025-09-05

AI Technical Summary

Technical Problem

Existing oracle solutions cannot effectively guarantee the authenticity and privacy of data sources when processing multi-source data, and the key management is highly complex, resulting in reduced overall performance.

Method used

A trusted center is introduced to integrate multiple data sources. Through authenticated encryption, cryptographic commitment and zero-knowledge proof, combined with a three-party handshake protocol, the privacy and authenticity of multi-source data are ensured, and the complexity of key management is reduced.

Benefits of technology

It ensures data privacy and source authenticity in a multi-source data environment while reducing the complexity of key management and improving the efficiency and security of data interaction.

✦ Generated by Eureka AI based on patent content.

Smart Images

  • Figure CN120602084A_ABST
    Figure CN120602084A_ABST
Patent Text Reader

Abstract

The invention relates to the technical field of oracle machines, and provides an oracle machine implementation method and system for protecting multi-source data privacy and source authenticity, and the method comprises the steps: integrating the data of each data source through a credible center, and establishing communication between a verifier, a certifier and each data source; the certifier calls a query template provided by the verifier and generates a query of each data source and a query of each data source in combination with the private parameters, the certifier and the verifier perform calculation through two parties to generate an MAC value of the query, and encryption operation is performed on the query of each data source in combination with a held session key share; each data source generates encrypted and authenticated multi-source data based on the encrypted query; after the certifier carries out commitment operation on the verifier, the MAC key is recovered, and the multi-source data subjected to encryption authentication are decrypted and verified to obtain the multi-source data; and for communication data, the source authenticity is proved through zero-knowledge proof. And the complexity of multi-data source key management and use is reduced.
Need to check novelty before this filing date? Find Prior Art

Description

Technical Field

[0001] The present invention belongs to the field of oracle technology, and in particular to an oracle implementation method and system for protecting the privacy and source authenticity of multi-source data. Background Art

[0002] The statements in this section merely provide background information related to the present invention and do not necessarily constitute prior art.

[0003] The blockchain is a deterministic, closed system environment that can only actively access data within the chain, not data from the real world outside the chain. As smart contracts and decentralized applications on the blockchain increasingly demand external data, an effective method is needed to map the vast amount of off-chain data onto the blockchain. This is why oracle technology has been introduced. As a key technology serving blockchain systems, oracles provide off-chain data and write external information to the blockchain. They serve as the interface for data exchange between the blockchain and the real world, enabling data interoperability between the blockchain and the real world. However, due to the immaturity of relevant theoretical research and technological development, as well as the potential for malicious activity during data exchange, traditional oracles face challenges in ensuring the authenticity and privacy of off-chain data sources when used for on-chain and off-chain data exchange. Ensuring the trustworthiness, reliability, and security of on-chain and off-chain data exchange has become an urgent need.

[0004] As oracle technology continues to evolve, existing implementations are incorporating cryptographic techniques to address these potential security issues. For example, operational oracle services like Provable and Chainlink enable smart contracts to retrieve external data from the network and verify the authenticity of the data source through techniques like zero-knowledge proofs.

[0005] When using the TLS protocol for network data transmission, some early oracle solutions failed to balance the need for data source authenticity and user privacy protection. To address this issue, DECO (Liberating Web Data Using Decentralized Oracles for TLS) combines TLS with oracles to implement a three-party communication model of server-prover-verifier, building a three-party handshake protocol. After the three parties establish a communication connection, the prover obtains off-chain data from the server and uses cryptographic methods such as authenticated encryption, multi-party secure computation, cryptographic commitments, and zero-knowledge proofs to prove the authenticity of the data source to the verifier while protecting the privacy of the data obtained from the server.

[0006] However, the data that the prover obtains and proves to the verifier in each DECO session comes from a single data source. If in some scenarios, the prover needs to prove the authenticity of the sources of n groups of related data (i.e., multi-source data) to the verifier, it is necessary to execute the oracle solution for each group of data separately. As the data scale increases, the overall performance will be reduced. Summary of the Invention

[0007] In order to solve the technical problems existing in the above-mentioned background technology, the present invention provides an oracle implementation method and system for protecting the privacy and source authenticity of multi-source data. By introducing a trusted center in addition to the multiple data sources, the data of multiple data sources are integrated, thereby reducing the complexity of multi-source data key management and use. On this basis, the privacy and source authenticity of multi-source data are guaranteed through authenticated encryption, cryptographic commitment and zero-knowledge proof.

[0008] In order to achieve the above object, the present invention adopts the following technical solutions: A first aspect of the present invention provides an oracle implementation method for protecting the privacy and source authenticity of multi-source data, which includes: The verifier, certifier, and each data source establish communication, and when establishing communication, the data from each data source is integrated through the trusted center; The prover calls the query template provided by the verifier and generates queries for each data source based on private parameters. For each data source query, the prover and the verifier perform two-party calculations to generate the query MAC value. Combined with the session key shares held, the query for each data source is encrypted and sent to each data source. Each data source generates encrypted and authenticated multi-source data based on the encrypted query. After the prover commits to the verifier, it recovers the MAC key, decrypts and verifies the encrypted and authenticated multi-source data, and obtains the multi-source data. For communication data between the prover, verifier and each data source, the authenticity of the source is proved through zero-knowledge proof.

[0009] Furthermore, the step of establishing communication includes: the trusted center and each data source randomly select the trusted center and data source private keys respectively, and after calculating the server public key based on the trusted center private key, each data source sends a handshake message to the prover; the trusted center sends a handshake message to the prover based on the handshake message of each data source; after the prover verifies the handshake message of each data source and the trusted center, it sends a handshake message to the verifier; after the verifier verifies the handshake message of the prover, it randomly selects the private key and public key of the verifier and sends them to the prover; the prover randomly selects the prover private key and calculates the prover public key, and sends parameters for key exchange to each data source and the trusted center.

[0010] Furthermore, the step of establishing communication further includes: the prover calculates a point on EC based on the prover's private key and the server's public key; the verifier calculates a point on EC based on the verifier's private key and the server's public key; the prover and the verifier run The algorithm generates a shared value, performs two-party calculations, obtains the session key, and shares the session key.

[0011] Furthermore, the step of establishing communication also includes: the prover calculates the digest value of all handshake messages and performs two-party calculation with the verifier After that, a request for handshake completion is initiated to each data source and the trusted center, and after the trusted center and each data source initiate a request for handshake completion to the prover, the verifier and the prover establish the communication after verification is passed through two-party computing.

[0012] Furthermore, the zero-knowledge proof includes a data calculation circuit, and the data calculation circuit is constructed based on the relationship between multi-source data.

[0013] Furthermore, the zero-knowledge proof includes a query generation circuit, and the query generation circuit simulates a process in which the prover generates queries for each data source according to a query template provided by the server.

[0014] Furthermore, the zero-knowledge proof includes an authenticated encryption circuit, and the authenticated encryption circuit simulates the process of authenticated encryption operation, the purpose of which is to prove that the multi-source data input into the zero-knowledge proof is the multi-source data obtained by the prover by decrypting the encrypted and authenticated multi-source data obtained from each data element, rather than other data input by the prover.

[0015] Furthermore, the zero-knowledge proof includes a data comparison circuit, and the data comparison circuit is used to compare the input data and generated data of other circuits in the zero-knowledge proof, and to pair the proof information of all input data according to the comparison results.

[0016] Furthermore, it also includes: the verifier verifies the output of the zero-knowledge proof, and the verification indicates that the authenticity of the source of the multi-source data has been completed while ensuring the privacy of the multi-source data and the personal attributes of the prover meet the requirements of the verifier.

[0017] A second aspect of the present invention provides an oracle implementation system for protecting the privacy and source authenticity of multi-source data, which includes a verifier, a prover, a trusted center, and various data sources; The verifier, certifier, trusted center and each data source implement the oracle through the steps in the oracle implementation method for protecting the privacy and source authenticity of multi-source data as described in the first aspect.

[0018] Compared with the prior art, the present invention has the following beneficial effects: When establishing communication, the present invention integrates part of the data from multiple data sources by introducing a trusted center outside the multiple data sources, thereby reducing the size of the key and lowering the complexity of key management and use from multiple data sources.

[0019] During the data processing process, the present invention ensures the privacy and non-tamperability of communication data through technologies such as authentication encryption and cryptographic commitment.

[0020] The present invention can prove the authenticity of the source of communication data through zero-knowledge proof. BRIEF DESCRIPTION OF THE DRAWINGS

[0021] The accompanying drawings, which constitute a part of the present invention, are used to provide a further understanding of the present invention. The exemplary embodiments of the present invention and their descriptions are used to explain the present invention and do not constitute improper limitations on the present invention.

[0022] Figure 1 This is a flowchart of an oracle implementation method for protecting the privacy and source authenticity of multi-source data in embodiment 1 of the present invention. DETAILED DESCRIPTION

[0023] To make the objectives, technical solutions and advantages of the embodiments of the present invention more clear, the technical solutions in the embodiments of the present invention will be clearly and completely described below with reference to the accompanying drawings in the embodiments of the present invention.

[0024] It should be noted that the following detailed descriptions are illustrative and intended to provide further explanation of the present invention. Unless otherwise specified, all technical and scientific terms used herein have the same meaning as commonly understood by those skilled in the art to which the present invention belongs.

[0025] Example 1 This embodiment provides an oracle implementation method for protecting the privacy and source authenticity of multi-source data.

[0026] The oracle implementation method for protecting the privacy and source authenticity of multi-source data provided in this embodiment is suitable for processing multi-source data and can ensure the privacy and source authenticity of multi-source data.

[0027] The oracle implementation method for protecting the privacy and source authenticity of multi-source data provided in this embodiment utilizes a variety of cryptographic technologies and protocols. First, when establishing communication, a trusted center is introduced outside the multiple data sources to integrate part of the data from the multiple data sources, thereby reducing the key size and the complexity of multi-data source key management and use; second, during the data processing process, technologies such as authenticated encryption and cryptographic commitment ensure the privacy and non-tamperability of the communication data during the communication process; finally, the source authenticity of the communication data can be proved through zero-knowledge proof, and the required on-chain data can be calculated and obtained.

[0028] Server: Data source Trust Center It communicates with the client and performs two-step handshake operations of key exchange and key negotiation, and sends the encrypted data to the client according to the client's query request.

[0029] Prover: The prover is the user who communicates with the server and, as part of the client, performs two-party computation with the verifier. They complete the client's operations in the key exchange, key negotiation, and query generation phases. After obtaining the encrypted off-chain data, they promise the verifier that the off-chain data and key have not been tampered with. They can then decrypt the off-chain data to obtain the plaintext. Ultimately, the plaintext is sent to the zero-knowledge proof system to complete the proof and output the corresponding proof result.

[0030] Verifier: As the other part of the client, it performs two-party computation with the prover, completing the client's operations in the key exchange, key negotiation, and query generation phases. After receiving the prover's commitment to the session data, it sends the key share to the prover. Finally, it verifies the output of the zero-knowledge proof system.

[0031] In the domain on elliptic curve of order is a prime number, .

[0032] Elliptic Curve The generator of .

[0033] : You can access parameters of different data sources, Corresponding to the data source .

[0034] : Generate a query template, Can be expressed as Prover Corresponding data source Query some data.

[0035] This embodiment provides a method for implementing an oracle to protect the privacy and authenticity of multi-source data, such as Figure 1 As shown, the following steps are included: Step 1: Three-party Handshake (3PHS).

[0036] This stage implements the handshake operation of the three parties, Server, Prover and Verifier, based on the handshake process of the TLS protocol.

[0037] Step 101: Initialization.

[0038] (1) Prover randomly selects 256 bits And the handshake message Send to each data source and S, start the handshake process.

[0039] (2) S and various data sources Randomly select a private key and , S according to Calculate the server public key ,and shared.

[0040] Step 102: Key exchange.

[0041] (1) Data sources Generate random numbers separately , and sends a handshake message to Prover and , and Respectively represent the handshake started by each data source and the parameters sent by each data source to the client for key exchange, where yes Certificates held, It is the use of The key pair in Signature, It is a random number generated by each data source.

[0042] (2) Trusted Center Random selection , and sends a handshake message to Prover and , and Respectively Start shaking hands and Parameters sent to the client for key exchange.

[0043] (3) Prover verifies the signature and certificates and signature and certificates Is it corresponding? After verification, Prover sends a handshake message to Verifier and .

[0044] (4) Verifier performs the same verification as Prover and randomly selects a private key after verification. And calculate the public key Send to Prover.

[0045] (5) Similarly, Prover randomly selects a private key And calculate the public key ,Will Send to S and , which represents the parameters sent by the client to the server for key exchange.

[0046] Step 103: Key negotiation: (1) Prover calculation Point on Verifier calculation Point on .

[0047] (2) Prover and Verifier operation algorithm, As Input and output of the protocol of Shared values ​​of coordinates and .

[0048] (3) Prover and Verifier perform two-party calculations , received from the previous handshake message and ,as well as Output and As input, calculate the preliminary master key in sequence , master key and session key ;Finally, Prover and Verifier will perform session key Sharing, the system generates a random number and , Prover gets , Verifier gets ,in is a symmetric key, yes Key, 、 、 ,and .

[0049] (4) Prover will then calculate the summary value of all previous handshake messages and perform two-party calculations with the Verifier ,generate ,Towards and Send handshake message , indicating that the client initiates a request to end the handshake; It is a random function constructed based on the hash function to generate the information required for subsequent communication.

[0050] (5) Trusted Center calculate Previous point , The horizontal axis To prepare the master key; then the corresponding master key can be calculated in sequence and session key Finally calculate the intermediate value , and send to each data source at the same time .

[0051] (6) The trusted center S and each data source sends to Prover , indicating that the server initiates a request to end the handshake.

[0052] (7) Prover and Verifier are verified by two-party calculation The correctness of the data can be verified. Once it is passed, the communication connection can be established and the handshake process is completed.

[0053] Step 2: Multi-source data query (Query Execution).

[0054] Parameters: Prover holds a series of private parameters and session key shares ;Verifier holds the query template and key shares Assume that data sources, .

[0055] Step 201: Query generation: (1) Prover calls the Verifier provided Template, based on private parameters Generate corresponding data source Query .

[0056] (2) Prover and Verifier are generated by two-party calculation MAC value - ; It is through the hash function calculate The algorithm of value, Indicates that The algorithm is calculated by both Prover and Verifier (because it involves both and , the essential calculation content is still based on Decide). - The algorithm flow is: Prover input and , Verifier input , calculate the label value ,in and is a defined fixed value, .

[0057] (3) Use of Prover right Perform encryption operation to obtain Send the corresponding data source ( Depend on Sure).

[0058] (4) Data source Using Session Keys in Combined with random numbers from data sources right Decrypted and and use verify ; then Generate a query Response and use After encryption authentication, Sent to P, where .

[0059] Step 202: Commitment session data: (1) Prover wants to decrypt get And verify, it is necessary to make a commitment to the Verifier, that is: Prover sends to Verifier ,ensure and Cannot be tampered with.

[0060] (2) After receiving the commitment, the Verifier sends a , Prover according to and Recovering MAC keys , and then Decryption and verification are performed by using Decryption to obtain multi-source data and the corresponding MAC value , then use verify .

[0061] Step 3: Zero-knowledge proof and verification.

[0062] Step 301: Zero-knowledge proof (Proof): Through zero-knowledge proof, Prover can ensure that the data can be proved to Verifier without revealing the privacy. Zero-knowledge proof converts the known data in the previous two stages into As input, after processing different data through four circuits, a calculation result and a proof information will be generated and output, and the Verifier will verify these results. Specifically: (1) Data calculation circuit: According to all The relationship between the two constructs the circuit (the Verifier The requirement is expressed by circuit, which is actually aimed at One variable polynomial), the circuit uses multi-source data As input, generate calculation results And output as part of the subsequent Verifier verification.

[0063] (2) Query generation circuit: This circuit simulates the Prover provided by Verifier generate The purpose of this process is to ensure that all generated queries The circuit is based on As input, the output is .if only , which means that the Prover input into the zero-knowledge proof system is correct , generated by the zero-knowledge proof system The query generated by Prover during the query generation phase are consistent.

[0064] (3) Authentication and encryption circuit: The circuit simulates the process of authenticated encryption operation, which aims to prove the authenticity of the input to the zero-knowledge proof system. Prover is Obtained Decrypted , rather than other data input by Prover. The input of this circuit is the output of the query generation circuit , the original data input into the zero-knowledge proof system , data source random number and the key , first calculate and MAC value and , then calculate the corresponding encrypted value and The output is and .if only , indicating the result obtained by querying the generation circuit Send to Prover Encrypted query the same; and This means that the input to the zero-knowledge proof system and Prover according to To Obtained Decrypted After authenticated encryption, they are equal, so we have , and the proof goal of the circuit is achieved.

[0065] (4) Data comparison circuit: This step compares the input data with the data generated in the previous part of the circuit, and generates proof information for all input data based on the comparison results. a. Compare input data and query the output of the circuit Are they equal? ​​If they are equal, it proves the private parameters input into the zero-knowledge proof system. is real and can generate correct queries; b. Compare input data Output of the authentication encryption circuit Are they equal? ​​If they are equal, it means the multi-source data input into the zero-knowledge proof system The correct encrypted response can be obtained through authenticated encryption, which means authenticity of the source.

[0066] If all comparisons are equal, it proves the authenticity of the source of the input data and outputs the proof information , otherwise output .

[0067] Step 302: Verify Verifier's output of zero-knowledge proof and Verify, verify Does it meet your requirements? Is it 1? Meet the Verifier's requirements and When , it means that the authenticity of the source of multi-source data has been proved while ensuring the privacy of multi-source data, and the personal attributes of Prover (obtained multi-source data) meet the requirements of Verifier.

[0068] Example 2 The oracle implementation system provided in this embodiment for protecting the privacy and source authenticity of multi-source data includes a verifier, a prover, a trusted center, and various data sources; The verifier, certifier, trusted center and each data source implement the oracle through the steps in the oracle implementation method for protecting the privacy and source authenticity of multi-source data as described in Example 1.

[0069] The foregoing description is merely a preferred embodiment of the present invention and is not intended to limit the present invention. Those skilled in the art will readily appreciate that various modifications and variations of the present invention are possible. Any modifications, equivalent substitutions, or improvements made within the spirit and principles of the present invention are intended to be within the scope of protection of the present invention.

Claims

1. A method for implementing an oracle machine that protects the privacy and authenticity of multi-source data, characterized in that: include: The verifier, certifier, and each data source establish communication, and when establishing communication, the data from each data source is integrated through the trusted center; The prover calls the query template provided by the verifier and generates queries for each data source based on private parameters. For each data source query, the prover and the verifier perform two-party calculations to generate the query MAC value. Combined with the session key shares held, the query for each data source is encrypted and sent to each data source. Each data source generates encrypted and authenticated multi-source data based on the encrypted query. After the prover makes a commitment to the verifier, it recovers the MAC key, decrypts and verifies the encrypted and authenticated multi-source data, and obtains the multi-source data. For communication data between the prover, verifier and each data source, the authenticity of the source is proved through zero-knowledge proof.

2. The oracle implementation method for protecting the privacy and source authenticity of multi-source data according to claim 1, characterized in that: The steps of establishing communication include: the trusted center and each data source randomly select the trusted center and data source private keys respectively, and after calculating the server public key based on the trusted center private key, each data source sends a handshake message to the prover; the trusted center sends a handshake message to the prover based on the handshake message of each data source; the prover verifies the handshake message between each data source and the trusted center, and then sends a handshake message to the verifier; the verifier randomly selects the verifier's private key and public key after verifying the prover's handshake message, and sends them to the prover; the prover randomly selects the prover's private key and calculates the prover's public key, and sends parameters for key exchange to each data source and the trusted center.

3. The oracle implementation method for protecting the privacy and source authenticity of multi-source data according to claim 2, characterized in that: The step of establishing communication further includes: the prover calculates a point on EC based on the prover's private key and the server's public key; the verifier calculates a point on EC based on the verifier's private key and the server's public key; the prover and the verifier run The algorithm generates a shared value, performs two-party calculations, obtains the session key, and shares the session key.

4. The oracle implementation method for protecting the privacy and source authenticity of multi-source data according to claim 3 is characterized in that: The step of establishing communication also includes: the prover calculates the digest value of all handshake messages and performs two-party calculation with the verifier After that, a request for handshake completion is initiated to each data source and the trusted center, and after the trusted center and each data source initiate a request for handshake completion to the prover, the verifier and the prover establish the communication after verification is passed through two-party computing.

5. The oracle implementation method for protecting the privacy and source authenticity of multi-source data according to claim 1 is characterized in that: The zero-knowledge proof includes a data calculation circuit, and the data calculation circuit is constructed based on the relationship between multi-source data.

6. The oracle implementation method for protecting the privacy and source authenticity of multi-source data according to claim 1, characterized in that: The zero-knowledge proof includes a query generation circuit, and the query generation circuit simulates a process in which a prover generates queries for each data source according to a query template provided by a server.

7. The oracle implementation method for protecting the privacy and source authenticity of multi-source data according to claim 1, characterized in that: The zero-knowledge proof includes an authenticated encryption circuit, and the authenticated encryption circuit simulates the process of authenticated encryption operation, with the purpose of proving that the multi-source data input into the zero-knowledge proof is the multi-source data obtained by the prover by decrypting the encrypted and authenticated multi-source data obtained from each data element, rather than other data input by the prover.

8. The oracle implementation method for protecting the privacy and source authenticity of multi-source data according to claim 1, characterized in that: The zero-knowledge proof includes a data comparison circuit, and the data comparison circuit is used to compare the input data and generated data of other circuits in the zero-knowledge proof, and to pair the proof information of all input data according to the comparison result.

9. The oracle implementation method for protecting the privacy and source authenticity of multi-source data according to claim 1, characterized in that: Also includes: The verifier verifies the output of the zero-knowledge proof. If the verification is successful, it means that the authenticity of the source of the multi-source data has been proven while ensuring the privacy of the multi-source data, and the personal attributes of the prover meet the verifier's requirements.

10. An oracle implementation system that protects the privacy and authenticity of multi-source data, characterized by: Including verifiers, certifiers, trusted centers and various data sources; The verifier, certifier, trusted center and each data source implement the oracle through the steps in the oracle implementation method for protecting the privacy and source authenticity of multi-source data as described in any one of claims 1-9.

Citation Information

Cited By

  • Blockchain-based optimization method for power trading terminal data management and transaction settlement

    CN122415095A

  • Blockchain-based power transaction terminal data management and transaction settlement optimization method

    CN122415095B