A data sharing method for the Internet of Things based on blockchain and ring signature

By using blockchain and certificateless ring signature technology in IoT data sharing, the problems of identity privacy leakage, complex certificate management and key custody are solved, and decentralized data sharing and anonymous incentive mechanisms are realized.

CN119030721BInactive Publication Date: 2025-01-24QILU UNIVERSITY OF TECHNOLOGY (SHANDONG ACADEMY OF SCIENCES)
View PDF 2 Cites 0 Cited by

Patent Information

Application Number
CN202411505204.0
Authority / Receiving Office
CN · China
Patent Type
Patents(China)
Current Assignee / Owner
Filing Date
2024-10-28
Publication Date
2025-01-24
Estimated Expiration
Not applicable · inactive patent

AI Technical Summary

Technical Problem

There are problems in IoT data sharing with privacy, complex certificate management, key hosting issues, and lack of anonymous incentive mechanisms.

Method used

Adopting data sharing methods based on blockchain and ring -signature, through non -certificate ring signature algorithms and zero -knowledge certification technology, protect the identity privacy of data providers, avoid key custody and certificate management issues, and realize anonymous incentive mechanism.

Benefits of technology

Effectively protect the identity privacy of the data provider, simplify the certificate management and key custody, realize decentralized data sharing, and provide an automated anonymous incentive mechanism.

✦ Generated by Eureka AI based on patent content.

Smart Images

  • Figure CN119030721B_ABST
    Figure CN119030721B_ABST
Patent Text Reader

Abstract

The present invention discloses an Internet of Things data sharing method based on blockchain and ring signature, characterized in that it includes the following steps: S1: initialization of sharing system; S2: user registration; S3: data request and sharing; S4: verification and data acquisition; S5: anonymous reward. The present invention relates to the technical field of blockchain and cryptography, and in particular, to an Internet of Things data sharing method based on blockchain and ring signature. The technical problem to be solved by the present invention is to provide an Internet of Things data sharing method based on blockchain and ring signature to solve the problems of identity privacy leakage, certificate management, key escrow and lack of anonymous incentive mechanism in Internet of Things data sharing.
Need to check novelty before this filing date? Find Prior Art

Description

Technical Field

[0001] The present invention relates to the technical field of blockchain and cryptography, and in particular to an Internet of Things data sharing method based on blockchain and ring signature. Background Art

[0002] IoT technology is widely used in smart transportation, smart healthcare, smart grid, smart agriculture and other fields. IDC predicts that by 2025, there will be 41.6 billion IoT devices in the world, generating 79.4 ZB of data. The large amount of data generated by IoT devices has stimulated extensive research in industry and academia, focusing on how to effectively use data to create greater value. Data sharing has undoubtedly become a key technology to unleash the potential of big data. Data sharing not only improves existing work efficiency, but also significantly affects the user experience in future virtual scenarios.

[0003] Blockchain is a distributed structure in which data is stored on multiple nodes without a central authority controlling the entire system. The inherent decentralization and immutability of blockchain provide a promising solution to the security issues of IoT data sharing. Although blockchain has many advantages, there are still many problems in data sharing. First, data sharing schemes based on public key infrastructure (PKI) require PKI to generate public key certificates for each user, which brings complex certificate management issues. In addition, PKI can obtain the private key of each user, which may lead to key custody issues. Second, in the process of data sharing, most users are reluctant to reveal their true identity. For example, in medical scenarios, sensor data contains a large amount of medical data about data providers, and scientific researchers in medical institutions can infer potential diseases based on this, which may cause data providers to be reluctant to share data with medical institutions. Therefore, in the process of data sharing, how to ensure the anonymity of data providers is a challenge. In addition, most current research focuses on using the decentralized structure of blockchain to solve the trust issues associated with sharing data, while the need to protect the privacy of data providers is often overlooked. In particular, the current method of rewarding data providers may inadvertently lead to the exposure of their personal identity information, thereby increasing the risk of associating more privacy details with shared data. This oversight poses a potential threat to data providers’ willingness to participate in data sharing activities. Summary of the invention

[0004] The technical problem to be solved by the present invention is to provide an IoT data sharing method based on blockchain and ring signature to solve the problems of identity privacy leakage, certificate management, key hosting and lack of anonymous incentive mechanism in IoT data sharing.

[0005] The present invention adopts the following technical solutions to achieve the invention objectives:

[0006] A method for sharing Internet of Things data based on blockchain and ring signature, characterized by comprising the following steps:

[0007] S1: initialization of the shared system;

[0008] The key generation center first randomly selects As the system master key, is a finite field of integers, and then the security parameters are used to generate the system public parameters ,in is an additive cyclic group, P yes The generator of the group, is a multiplicative cyclic group, q is a large prime number, , e is a bilinear pairing: , , and There are three collision-resistant hash functions, specifically:

[0009] (1);

[0010] (2);

[0011] (3);

[0012] The key generation center will As your own public key, the system public parameters Public and the master key Keep it secret;

[0013] S2: User registration;

[0014] Defining Users The identity is ,user Will Provided to the key generation center, the key generation center first checks whether the identity information is registered. If it is registered, the request is rejected; otherwise, the key generation center calculates , After the calculation is completed, Package and send to users ,user Random Selection , do the following calculation:

[0015] (4);

[0016] (5);

[0017] (6);

[0018] in: and Is a user The partial private key of the user is calculated by the user himself, and the two together constitute the user The private key of the signature server is stored in the server, avoiding the key escrow problem of traditional signature.

[0019] It is the hash value of the user's identity information and is unique;

[0020] It is the intermediate value of the key pair, which is generated by the key generation center based on the master key and It is calculated that the user according to Calculate partial private key ;

[0021] and Together they form the user's public key, which is held by the user It is calculated by itself, avoiding the problem of public key certificate management in traditional signatures;

[0022] After the calculation is completed, the user Will As your public key, As your own private key;

[0023] S3: Data request and sharing;

[0024] The data requester first publishes a data sharing request on the blockchain , and transfer the cryptocurrency to the smart contract to reward data providers, where seq Is the unique identifier of the task. M It is a brief description of the required data;

[0025] When a data provider finds a new data sharing request on the blockchain that matches the data they own, they use the requester's public key to encrypt the private data. The encrypted ciphertext is c ;Then the data provider selects a set of public keys (ring) and , and randomly select , , perform the following calculation:

[0026] (7);

[0027] T exist The groups are randomly selected, so T Evenly distributed in In the group, T and The other elements in the group are computationally indistinguishable, T It is kept secret by the signer and used as a private input in subsequent zero-knowledge proofs to prove the identity. Random distribution over the finite field of integers middle, is through and It is obtained by elliptic curve multiplication, so Randomly distributed in Due to the complexity of elliptic curve computing, the adversary wants to Derived partial private key and T , which is computationally infeasible.

[0028] d is a hash value. Due to the one-way nature of the hash function, the adversary knows d , it is computationally infeasible to derive the original image of the hash value. d Used to generate a zero-knowledge proof later. The prover provides the hash original image to generate a zero-knowledge proof through the zk-SNARK algorithm to prove that he has d The hash original image will not be exposed, so as to ensure that they can get the reward.

[0029] and It is a hash value, which serves as an intermediate value for generating and verifying ring signatures and can be efficiently calculated by the signer and the verifier.

[0030] and Is a user The public key component of has been calculated during the user registration process;

[0031] Is a user The private key of Calculated;

[0032] yes The random element in the group is part of the final certificateless ring signature;

[0033] is part of the final certificateless ring signature. and Common composition , and can finally satisfy the verification equation 8;

[0034] V It is part of the final certificateless ring signature. The private key of , ) can be calculated and can satisfy the verification equation 8;

[0035] Finally, the parameters , , ,and d Composing the final certificateless ring signature;

[0036] After the calculation is completed, the data provider generates a certificateless ring signature , then , c , ) is packaged and sent to the data requester, where: Is the unique identifier of the message;

[0037] S4: Validation and data acquisition;

[0038] After receiving the message from the data provider, the data requester first sends the signature Unpack as ; then calculate = , and verify whether the following equation holds;

[0039] (8);

[0040] The mathematical theory of the equation is as follows:

[0041] ;

[0042] Verification is successful, and the data requester uses his own private key to decrypt the ciphertext c , obtain private data; after the data requester receives enough and satisfactory data, it will publish an announcement on the blockchain about the end of the data sharing request task. Subsequently, the participants participating in the data sharing will be scored by the data requester, and the scoring results will be uploaded to the blockchain;

[0043] S5: Get rewarded anonymously;

[0044] When a data provider retrieves his or her own rating results on the blockchain, he or she first runs the zk-SNARK KeyGen Algorithm to generate proof key and verification key , then run Proof Algorithm, Input = 、 and d , generate a proof according to the following constraints ;

[0045] (9);

[0046] The data provider will ( , ) is submitted to the smart contract, which runs zk-SNARK Verify Algorithm Verification If the verification is successful, funds will be transferred to the account prepared in advance by the provider in proportion to the data score. If the verification fails, the smart contract will terminate its execution.

[0047] As a further limitation of the present technical solution, there are four entities in the sharing system, including data providers, data requesters, key generation centers and blockchains.

[0048] As a further limitation of this technical solution, the workflow of the key generation center is as follows:

[0049] The key generation center first initializes the system and assists users in registering;

[0050] After user registration, data requesters publish data requirements on the blockchain and transfer assets to smart contracts to incentivize data providers;

[0051] When a data provider receives a data sharing request, if he believes that his private data meets the requester's requirements, he will use the data requester's public key to encrypt his private data into ciphertext, and then send the ciphertext to the data requester through a certificateless ring signature algorithm. The data requester verifies the validity of the signature and decrypts the ciphertext to obtain the plaintext data and scores it according to the data quality. After the scoring is completed, the scoring results are uploaded to the blockchain.

[0052] The data requester retrieves the scoring results on the blockchain, generates a zero-knowledge proof and submits it to the smart contract. The smart contract verifies the validity of the zero-knowledge proof and imposes rewards on the data provider who passes the verification.

[0053] Compared with the prior art, the advantages and positive effects of the present invention are:

[0054] 1. Identity privacy protection: This invention proposes a new certificateless ring signature to protect the identity privacy of data owners during data sharing. The real identity of the data owner is hidden in the ring and cannot be identified by attackers, thereby preventing attackers from inferring more privacy of data owners through identity link attacks. It can also solve the problems of certificate management and key custody arising from the traditional solution based on public key infrastructure.

[0055] 2. Decentralized data sharing: The present invention realizes decentralized data sharing based on blockchain, does not rely on additional trusted third parties, and data sharing requests are recorded on the blockchain, which can effectively avoid single point failure attacks.

[0056] 3. Efficient anonymous identity authentication: Compared with the traditional ring signature scheme, the certificateless ring signature algorithm we proposed has lower computational and communication costs, and is easy to deploy on resource-constrained IoT devices.

[0057] 4. Automated privacy-preserving incentive mechanism: By using zero-knowledge proof, data providers will not reveal their identities when receiving rewards, and smart contracts can automatically verify zero-knowledge proofs and automatically implement incentives. BRIEF DESCRIPTION OF THE DRAWINGS

[0058] Figure 1 It is a structural schematic diagram of the present invention.

[0059] Figure 2 It is the system framework of the present invention. DETAILED DESCRIPTION

[0060] A specific implementation of the present invention is described in detail below in conjunction with the accompanying drawings, but it should be understood that the protection scope of the present invention is not limited by the specific implementation.

[0061] The present invention comprises the following steps:

[0062] S1: initialization of the shared system;

[0063] The key generation center first randomly selects As the system master key, is a finite field of integers, and then the security parameters are used to generate the system public parameters ,in is an additive cyclic group, P yes The generator of the group, is a multiplicative cyclic group, q is a large prime number, , e is a bilinear pairing: , , and There are three collision-resistant hash functions, specifically:

[0064] (1);

[0065] (2);

[0066] (3);

[0067] The key generation center will As your own public key, the system public parameters Public and the master key Keep it secret;

[0068] Bilinear pairing is a common tool in cryptography. Defined as the additive cyclic group, is a multiplicative cyclic group, is a finite field of integers, abstracting the function is defined as a bilinear pairing with the following properties.

[0069] (a) Bilinear:

[0070] For any , ,have and e ( , )= Established;

[0071] (b) Non-degenerate:

[0072] For any , , express The unit element of

[0073] (c) Computability:

[0074] There are effective algorithms that can efficiently calculate ;

[0075] S2: User registration;

[0076] Defining Users The identity is ,user Will Provided to the key generation center, the key generation center first checks whether the identity information is registered. If it is registered, the request is rejected; otherwise, the key generation center calculates , After the calculation is completed, Package and send to users ,user Random Selection , do the following calculation:

[0077] (4);

[0078] (5);

[0079] (6);

[0080] in: and Is a user The partial private key of the user is calculated by the user himself, and the two together constitute the user The private key of the signature server is stored in the server, avoiding the key escrow problem of traditional signature.

[0081] It is the hash value of the user's identity information and is unique.

[0082] It is the intermediate value of the key pair, which is generated by the key generation center based on the master key and It is calculated that the user according to Calculate partial private key .

[0083] and Together they form the user's public key, which is held by the user It is calculated by itself, avoiding the problem of public key certificate management in traditional signatures;

[0084] After the calculation is completed, the user Will As your public key, As your own private key;

[0085] S3: Data request and sharing;

[0086] The data requester first publishes a data sharing request on the blockchain , and transfer the cryptocurrency to the smart contract to reward data providers, where seq Is the unique identifier of the task. M It is a brief description of the required data;

[0087] When a data provider finds a new data sharing request on the blockchain that matches the data they own, they use the requester's public key to encrypt the private data. The encrypted ciphertext is c ;Then the data provider selects a set of public keys (ring) and , and randomly select , , perform the following calculation:

[0088] (7);

[0089] T exist The groups are randomly selected, so T Evenly distributed in In the group, T and The other elements in the group are computationally indistinguishable, T It is kept secret by the signer and used as a private input in subsequent zero-knowledge proofs to prove the identity. Random distribution over the finite field of integers middle, is through and It is obtained by elliptic curve multiplication, so Randomly distributed in Due to the complexity of elliptic curve computing, the adversary wants to Derived partial private key and T , which is computationally infeasible.

[0090] d is a hash value. Due to the one-way nature of the hash function, the adversary knows d , it is computationally infeasible to derive the original image of the hash value. d Used to generate a zero-knowledge proof later. The prover provides the hash original image to generate a zero-knowledge proof through the zk-SNARK algorithm to prove that he has d The hash original image will not be exposed, so as to ensure that they can get the reward.

[0091] and It is a hash value, which serves as an intermediate value for generating and verifying ring signatures and can be efficiently calculated by the signer and the verifier.

[0092] and Is a user The public key component of has been calculated during the user registration process;

[0093] Is a user The private key of Calculated;

[0094] yes The random element in the group is part of the final certificateless ring signature;

[0095] is part of the final certificateless ring signature. and Common composition , and can finally satisfy the verification equation 8;

[0096] V It is part of the final certificateless ring signature. The private key of , ) can be calculated and can satisfy the verification equation 8;

[0097] Finally, the parameters , , ,and d This forms the final certificateless ring signature.

[0098] After the calculation is completed, the data provider generates a certificateless ring signature , then , c , ) is packaged and sent to the data requester, where: Is the unique identifier of the message;

[0099] Blockchain is a distributed ledger technology. Each node has a complete copy of the ledger, and there is no centralized institution or organization in control. Each block of the blockchain contains data and the hash value of the previous block, and the data is linked together in the form of blocks. This design makes the blockchain decentralized, transparent, secure, and tamper-proof. The data on the blockchain is not controlled by a single entity, and multiple participants can jointly manage and verify the data, which enhances the credibility and transparency of the data.

[0100] A blockchain smart contract is a self-executing contract code based on blockchain technology. It is a special computer program that can be automatically executed when certain conditions are met without the intervention or trust of a third party. Smart contracts are stored on the blockchain and are jointly verified and executed by all nodes on the blockchain network, ensuring the security and immutability of the contract.

[0101] Certificateless ring signature integrates certificateless features on the basis of traditional ring signature. Traditional ring signature is used to create anonymous signatures between a group of possible signers, thereby hiding the identity of the actual signer and achieving the effect of anonymous authentication. However, traditional ring signature requires an authoritative certificate authority (CA) to generate a public key certificate for each user. Public key certificates will bring additional computing and storage costs, and as the number of users increases, it will become increasingly difficult for CA to manage certificates and keys. Certificateless ring signature eliminates the need for public key certificates in traditional ring signatures, and solves the key escrow problem in identity-based signatures, which not only improves the flexibility of signatures, but also reduces the complexity of certificate management.

[0102] S4: Validation and data acquisition;

[0103] After receiving the message from the data provider, the data requester first sends the signature Unpack as ; then calculate = , and verify whether the following equation holds;

[0104] (8);

[0105] The mathematical theory of the equation is as follows:

[0106] ;

[0107] Verification is successful, and the data requester uses his own private key to decrypt the ciphertext c , obtain private data; after the data requester receives enough and satisfactory data, it will publish an announcement on the blockchain about the end of the data sharing request task. Subsequently, the participants participating in the data sharing will be scored by the data requester, and the scoring results will be uploaded to the blockchain;

[0108] S5: Get rewarded anonymously;

[0109] When a data provider retrieves his or her own rating results on the blockchain, he or she first runs the zk-SNARK KeyGen Algorithm to generate proof key and verification key , then run Proof Algorithm, Input = , and d Generate a proof according to the following constraints ;

[0110] (9);

[0111] The data provider will ( , ) is submitted to the smart contract, which runs zk-SNARK Verify Algorithm Verification If the verification is successful, funds will be transferred to the account prepared in advance by the provider in proportion to the data score. If the verification fails, the smart contract will terminate its execution.

[0112] Zero-knowledge proofs allow verifiers to believe that certain assertions are true without requiring the prover to provide them. zk-SNARK is a variant of zero-knowledge proofs that enables the prover to succinctly convince any verifier of the validity of a given assertion without requiring interaction between them. zk-SNARK is generally composed of KenGen, Proof, Veifiy It consists of three algorithms, which are as follows:

[0113] { }: C represents a constraint circuit, which can be one or more function expressions. The algorithm generates a proof key based on the constraint circuit C and verification key .

[0114] Proof ( w, , ) : This algorithm is used to output a zero-knowledge proof where w represents a private input and a represents a public input.

[0115] Verify or : The algorithm is based on the input To check the validity of the zero-knowledge proof and verify the successful output , verification failed output .

[0116] In addition, zk-SNARK has the following features:

[0117] Completeness: If an assertion is true, an honest prover can convince an honest verifier by proving to them that they possess knowledge of the correct input.

[0118] Zero-knowledge: If an assertion is true, an honest prover can convince them by proving to an honest verifier that they possess knowledge about the correct input.

[0119] Brief: The proofs are short and easy to verify. This is in contrast to regular zero-knowledge proofs, which can be very long and complex. Typically, zk-SNARK proofs can be verified in milliseconds.

[0120] Non-interactive: Non-interactive zk-SNARKs proofs do not require any interaction between the prover and the verifier. This means that only one result message is sent from the prover to the verifier. This is in contrast to interactive proofs, where the prover and the verifier must interact back and forth with each other to complete the proof.

[0121] There are four entities in the shared system, including data providers, data requesters, key generation centers, and blockchains.

[0122] The key generation center is responsible for initializing the system and generating keys for users, helping users register, ensuring the security and effectiveness of the cryptographic system, and does not participate in the data sharing process.

[0123] As a distributed ledger, blockchain brings trust to distributed systems. Data sharing requests recorded on the blockchain cannot be tampered with and can be used for auditing and supervision.

[0124] The workflow of the key generation center is as follows:

[0125] The key generation center first initializes the system and assists users in registering;

[0126] After user registration, data requesters publish data requirements on the blockchain and transfer assets to smart contracts to incentivize data providers;

[0127] When a data provider receives a data sharing request, if he believes that his data meets the requirements, he will use the public key of the data requester to encrypt his private data into ciphertext, and then send the ciphertext to the data requester through the certificateless ring signature algorithm. The data requester verifies the validity of the signature and decrypts the ciphertext to obtain the plaintext data and scores it according to the data quality. After the scoring is completed, the scoring results are uploaded to the blockchain;

[0128] The data requester retrieves the scoring results on the blockchain, generates a zero-knowledge proof and submits it to the smart contract. The smart contract verifies the validity of the zero-knowledge proof and imposes rewards on the data provider who passes the verification.

[0129] The above disclosure is only a specific embodiment of the present invention, but the present invention is not limited thereto, and any changes that can be conceived by those skilled in the art should fall within the protection scope of the present invention.

Claims

1. A method for sharing IoT data based on blockchain and ring signature, characterized in that: The following steps are involved: S1: initialization of the shared system; The key generation center first randomly selects As the system master key, is a finite field of integers, and then the security parameters are used to generate the system public parameters ,in is an additive cyclic group, P yes The generator of the group, is a multiplicative cyclic group, q is a large prime number, , e is a bilinear pairing: , , and There are three collision-resistant hash functions, specifically: (1); (2); (3); The key generation center will As your own public key, the system public parameters Public and make the master key Keep it secret; S2: User registration; Defining Users The identity is ,user Will Provided to the key generation center, the key generation center first checks whether the identity information is registered. If it is registered, the request is rejected; otherwise, the key generation center calculates , After the calculation is completed, Package and send to users , then the user Random Selection , do the following calculation: (4); (5); (6); in: and Is a user The partial private key of the user is calculated by the user himself, and the two together constitute the user The private key of It is the hash value of the user's identity information and is unique; It is the intermediate value of the key pair, which is generated by the key generation center based on the master key and It is calculated that the user according to Calculate partial private key ; and Together they form the user's public key, which is held by the user Calculated by itself; After the calculation is completed, the user Will As your public key, As your own private key; S3: Data request and sharing; The data requester first publishes a data sharing request on the blockchain , and transfer the cryptocurrency to the smart contract to reward data providers, where seq Is the unique identifier of the task. M It is a brief description of the required data; When a data provider finds a new data sharing request on the blockchain that matches the data they own, they use the requester's public key to encrypt the private data. The encrypted ciphertext is c ;Then the data provider selects a set of public keys and , and randomly select , , perform the following calculation: (7); T exist The groups are randomly selected, so T Evenly distributed in In the group, T and The other elements in the group are computationally indistinguishable, T The signer keeps it in secret and uses it as a private input to prove the identity of the subsequent zero-knowledge proof. Similarly, some private keys Random distribution over the finite field of integers middle, is through and It is obtained by elliptic curve multiplication, so Randomly distributed in In the group; d is a hash value; and It is a hash value, which is used as the intermediate value for generating and verifying ring signatures and can be efficiently calculated by the signer and the verifier. and Is a user The public key component of has been calculated during the user registration process; Is a user The private key of Calculated; yes The random element in the group is part of the final certificateless ring signature; is part of the final certificateless ring signature. and Common composition , and can finally satisfy the verification equation 8; V It is part of the final certificateless ring signature. The private key of , ) can be calculated to ensure the unforgeability of the signature and satisfy the verification equation 8; Finally, the parameters , , and d Composing the final certificateless ring signature; After the calculation is completed, the data provider generates a certificateless ring signature , then , c , ) is packaged and sent to the data requester, where: Is the unique identifier of the message; S4: Validation and data acquisition; After receiving the message from the data provider, the data requester first sends the signature Unpack as ; then calculate = , and verify whether the following equation holds; (8); Verification is successful, and the data requester uses his own private key to decrypt the ciphertext c , obtain private data; after receiving the required data, the data requester will publish an announcement on the blockchain about the end of the data sharing request task. Subsequently, the participants participating in the data sharing will be scored by the data requester, and the scoring results will be uploaded to the blockchain; S5: Get rewarded anonymously; When a data provider retrieves his or her own rating results on the blockchain, he or she first runs the zk-SNARK KeyGen Algorithm to generate proof key and verification key , then run Proof Algorithm, Input 、 and d , generate a proof according to the following constraints ; (9); The data provider will ( , ) is submitted to the smart contract, which runs zk-SNARK Verify Algorithm Verification If the verification is successful, funds will be transferred to the account prepared in advance by the provider in proportion to the data score; if the verification fails, the smart contract will terminate its execution.

2. The IoT data sharing method based on blockchain and ring signature according to claim 1 is characterized in that: There are four entities in the shared system, including data providers, data requesters, key generation centers, and blockchains.

3. The IoT data sharing method based on blockchain and ring signature according to claim 2 is characterized in that: The workflow of the key generation center is as follows: The key generation center first initializes the system and assists users in registering; After user registration, data requesters publish data requirements on the blockchain and transfer assets to smart contracts to incentivize data providers; When a data provider receives a data sharing request and believes that his data meets the requirements, he will use the public key of the data requester to encrypt his private data into ciphertext, and then send the ciphertext to the data requester through the certificateless ring signature algorithm. The data requester verifies the validity of the signature, decrypts the ciphertext to obtain the plaintext data and scores the data according to its quality. After the scoring is completed, the scoring results are uploaded to the blockchain. The data requester retrieves the scoring results on the blockchain, generates a zero-knowledge proof and submits it to the smart contract. The smart contract verifies the validity of the zero-knowledge proof and imposes rewards on the data provider who passes the verification.

Citation Information

Patent Citations

  • SM9 ring signature method and system based on constant-level signature size

    CN116405217A

  • Cloud edge collaborative Internet of Things data sharing method based on block chain

    CN118174875A