CN114826684B - Decentralized crowdsourcing method, system and terminal supporting efficient privacy protection - Google Patents

Decentralized crowdsourcing method, system and terminal supporting efficient privacy protection Download PDF

Info

Publication number
CN114826684B
CN114826684B CN202210330544.9A CN202210330544A CN114826684B CN 114826684 B CN114826684 B CN 114826684B CN 202210330544 A CN202210330544 A CN 202210330544A CN 114826684 B CN114826684 B CN 114826684B
Authority
CN
China
Prior art keywords
task
worker
verification
crowdsourcing
classification
Prior art date
Legal status (The legal status is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the status listed.)
Active
Application number
CN202210330544.9A
Other languages
Chinese (zh)
Other versions
CN114826684A (en
Inventor
李想
闫峥
Current Assignee (The listed assignees may be inaccurate. Google has not performed a legal analysis and makes no representation or warranty as to the accuracy of the list.)
Xidian University
Original Assignee
Xidian University
Priority date (The priority date is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the date listed.)
Filing date
Publication date
Application filed by Xidian University filed Critical Xidian University
Priority to CN202210330544.9A priority Critical patent/CN114826684B/en
Publication of CN114826684A publication Critical patent/CN114826684A/en
Application granted granted Critical
Publication of CN114826684B publication Critical patent/CN114826684B/en
Active legal-status Critical Current
Anticipated expiration legal-status Critical

Links

Images

Classifications

    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L63/00Network architectures or network communication protocols for network security
    • H04L63/10Network architectures or network communication protocols for network security for controlling access to devices or network resources
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L63/00Network architectures or network communication protocols for network security
    • H04L63/20Network architectures or network communication protocols for network security for managing network security; network security policies in general
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L9/00Cryptographic mechanisms or cryptographic arrangements for secret or secure communications; Network security protocols
    • H04L9/32Cryptographic mechanisms or cryptographic arrangements for secret or secure communications; Network security protocols including means for verifying the identity or authority of a user of the system or for message authentication, e.g. authorization, entity authentication, data integrity or data verification, non-repudiation, key authentication or verification of credentials
    • H04L9/3247Cryptographic mechanisms or cryptographic arrangements for secret or secure communications; Network security protocols including means for verifying the identity or authority of a user of the system or for message authentication, e.g. authorization, entity authentication, data integrity or data verification, non-repudiation, key authentication or verification of credentials involving digital signatures

Abstract

The invention belongs to the technical field of privacy protection, and discloses a decentralization crowdsourcing method, a decentralization crowdsourcing system and a decentralization crowdsourcing terminal for supporting efficient privacy protection, wherein a system model is established to describe the interaction process among three entities, namely a requester, a worker and a crowdsourcing blockchain based on SGX; the protocol flow is constructed, which comprises four stages of system initialization, task release, solution submission and rewarding distribution; a batch verification method is adopted for the digital signature on the crowdsourcing blockchain; and carrying out comprehensive systematic task management on the tasks, including task classification, task matching and task verification. The invention realizes efficient node attribute privacy protection based on SGX technology, and improves the efficiency of block verification by adopting a batch verification signature algorithm; a task classification mechanism is provided to efficiently manage and match crowdsourcing tasks, and a task verification mechanism is added to resist malicious node attacks. Compared with other schemes, the decentralized crowdsourcing system supports fair and safe crowdsourcing operation and has higher efficiency.

Description

Decentralized crowdsourcing method, system and terminal supporting efficient privacy protection
Technical Field
The invention belongs to the technical field of privacy protection, and particularly relates to a decentralization crowdsourcing method, system and terminal supporting efficient privacy protection.
Background
Currently, crowdsourcing systems (Crowdsourcing System) are widely studied and applied in the field of internet of things. The method is based on Internet of things equipment, an intelligent terminal of a user is used as a basic unit for data collection, the collected data is processed by means of a high-performance cloud computing server in the Internet, or more users are matched to finish data processing cooperatively, and finally the processed data is returned to a task publisher. Due to the convenience and flexibility of the crowdsourcing system, more users are attracted to select the mode to solve the task processing problem, so that services born by the crowdsourcing are more and more diversified, task content is more and more abundant, and the related fields are more and more extensive.
However, there is an accompanying problem of data privacy disclosure for crowdsourcing platforms. This includes, but is not limited to, attacks by external malicious nodes on the crowdsourcing platform, leakage problems by participating crowdsourcing users on the data, and data leakage problems by the platform itself. Conventional crowdsourcing platforms are typically based on a centralized cloud server for managing staff with consistent tasks and matching interests. Such centralized architectures are often prone to single point failure and lack operational transparency. Once a server is attacked, the entire crowdsourcing platform crashes. For example, in 2021, the drip company was declared to suspend its marketing due to the exposure to data privacy, and the application was also put down for modification, which undoubtedly caused neither minor trust crisis nor property loss to society nor users. Therefore, the traditional centralized crowdsourcing system (Centralized Crowdsourcing System) is limited in that it provides services on a single crowdsourcing platform, with several security, privacy and trust challenges.
In this regard, some students build a decentralized crowdsourcing system (DecentralizedCrowdsourcing System) based on blockchain, which guarantees security and trust of the crowdsourcing system by virtue of the consistency, credibility and non-tamperability of the blockchain. One common approach is to deploy a crowdsourcing task management platform with a blockchain-based intelligent contract instead of a centralized crowdsourcing service provider, the related work being as follows:
a block chain based decentralized crowdsourcing framework is proposed in journal paper, "CrowdBC: A Blockchain-Based Decentralized Framework for Crowdsourcing," in IEEE Transactions on Parallel and Distributed Systems, vol.30, no.6, pp.1251-1266,1June 2019,doi:10.1109/TPDS.2018.2881735", wherein a task of one requester can be solved by a group of workers without relying on any third party trusted authority, and transaction cost is very low, while user privacy can be guaranteed. However, the scheme does not consider the task information and the privacy protection problem of the solution, so that the attribute privacy of the user node is easy to reveal.
A private anonymous decentralized crowdsourcing system is designed by adopting a concise non-interactive zero knowledge proof technology in meeting papers 'Zebra Lancer: private and Anonymous Crowdsourcing System atop Open Blockchain', '2018 IEEE 38th International Conference on Distributed Computing Systems (ICDCS), 2018, pp.853-865, doi: 10.1109/ICDCS.2018.00087', and two basic challenges of data leakage and identity leakage of the decentralized crowdsourcing system are overcome. The main idea of the scheme is to use a new cryptographic concept-public prefix linkable anonymous authentication to achieve a subtle linkable nature: if a worker submits two times to a task, anyone can link the submissions, otherwise he will remain anonymous and cannot link across tasks. Allowing anonymous requesters and workers to overcome the following problems: since the transparency of blockchains allows people to infer private information about workers and requesters from their participation history, allowing a latent name will enable malicious workers to submit multiple rewards. The scheme is designed to solve the problems of data leakage and identity leakage in the decentralization crowdsourcing system from the perspective of cryptography, but is designed properly, and the efficiency is low because the encryption and decryption processes are used too much and the blocks are generated by adopting the traditional block chain architecture of the Ethernet.
A blockchain-based general crowd-sourced platform was designed in conference paper "FLUID: A blockchain based framework for crowdsourcing," in Proc.ACM SIGMOD,2019, pp.1921-1924 ". The characteristics of transparent data models and smart contracts in the blockchain are used to address both the limitations of incentive mechanism opacity and worker profile isolation. In addition, the scheme also provides a transparent incentive mechanism and files supporting the sharing of trusted workers in a cross-platform mode. "SecBCS: a secure and privacy-preserving blockchain-based crowdsourcing system [ J ]. Science China Information Sciences,2020,63 (3): 1-14." proposes a crowdsourcing blockchain system with an incentive mechanism implemented based on the JuICE prototype. "TFCrowd: ablockchain-based crowdsourcing framework with enhanced trustworthiness and fairness [ J ]. EURASIP Journal on Wireless Communications andNetworking,2021 (1): 1-20." use blockchain smart contracts as trusted authorities to fairly evaluate contributions and distribute rewards; the scheme designs a credit-based evaluation mechanism to punish requesters with 'false reports' behaviors, and designs a method based on Shapley value to fairly distribute rewards; through the design, the scheme can prevent malicious requesters from making unfair evaluation and rewards according to contribution of honest workers. The above solution considers fair transaction problems on crowd-sourced blockchains, but none considers node attribute privacy issues for requesters and workers.
Sun et al in journal paper, "A two-stage privacy protection mechanism based on blockchain in mobile crowdsourcing [ J ]. International Journal of Intelligent Systems,2021,36 (5): 2058-2080." propose a two-level privacy preserving mechanism based on blockchain to solve the transparent mechanism of blockchain. Firstly, a double interference local differential privacy (DDLDP) algorithm is proposed to interfere with the position information of workers; and secondly, all the perceived data are uploaded to the blockchain through the edge nodes, processed by the edge cloud and fed back to the requester. The scheme relies on the blockchain to ensure the integrity and privacy of the sensed data; however, the protection of the attribute privacy (trust value and user identity information) of other nodes is not comprehensive, and meanwhile, the scheme does not consider the problem of fair transaction in crowdsourcing operation and cannot be deployed in practical application.
A new Blockchain-based user authentication and key protocol crowdsourcing scheme is proposed in BUAKA-CS: blockchain-enabled user authentication and key agreement scheme for crowdsourcing system [ J ]. Journal of Systems Architecture,2022,123:102370 ], and is implemented by lightweight encryption technology. Attacks that the scheme may suffer are described through formalized methods, and the security of the scheme is proved. Furthermore, the solution also proves the robustness of BUAKA-CS against possible attacks using automated software verification tools. The scheme uses a lightweight encryption technology, the efficiency is improved compared with the prior scheme, but the influence of the encryption and decryption scheme on the efficiency still cannot be eliminated, and in addition, the scheme does not consider fair transaction of crowdsourcing operation and cannot be applied to an actual crowdsourcing scene.
The common mechanism of the block Chain is improved and innovated in the 'MCS-Chain: decentralized and trustworthy mobile crowdsourcing based on blockchain [ J ]. Future Generation Computer Systems,2019, 95:649-666', the generation efficiency of the block is improved, the problem of bifurcation of the block Chain is solved, and meanwhile, the trust evaluation algorithm of the nodes of the crowdsourcing system is designed, so that the efficient and fair operation of the crowdsourcing system is guaranteed. But the scheme does not have the feature of supporting privacy protection, especially node attribute privacy of the decentralized crowdsourcing system.
Through the above analysis, the problems and defects existing in the prior art are as follows:
(1) The prior art also lacks comprehensive and deep researches on node attribute privacy in a crowdsourcing system, and few related work researches are also based on traditional cryptography for scheme design, so that the efficiency is low and the practicability is poor.
(2) The prior art lacks complete analysis and research on fair transaction problems of crowdsourcing operation, and cannot be deployed in an actual crowdsourcing scene.
(3) The prior art is designed based on the traditional block chain architecture, and the efficiency problem in the block chain is not considered.
Disclosure of Invention
Aiming at the problems in the prior art, the invention provides a decentralization crowdsourcing method, a decentralization crowdsourcing system, a decentralization crowdsourcing medium, decentralization crowdsourcing equipment and a decentralization crowdsourcing terminal for supporting efficient privacy protection, and aims to solve the problems of inefficiency and unfairness in the prior art, which are caused by the fact that node attribute privacy protection and crowdsourcing operation are not supported.
The invention designs a decentralization crowdsourcing method supporting efficient privacy protection; secondly, constructing a decentralization crowdsourcing system according to the method, and aiming at protecting node attribute privacy and realizing fair and efficient crowdsourcing operation; finally, depending on the system design, a decentralization crowdsourcing terminal supporting efficient privacy protection is developed by using related media and equipment, and the terminal is tested and verified for the effectiveness of the decentralization crowdsourcing method and system.
The invention is realized in such a way that the decentralized crowdsourcing method supporting efficient privacy protection comprises the following steps: establishing a system model, and describing interaction processes among three entities, namely a Requester (Requester), a Worker (workbench) and an SGX-based crowdsourcing block chain (SGX-based Crowdsourcing Blockchain, SCB); the protocol flow is constructed, which comprises four stages of system initialization, task release, solution submission and rewarding distribution; a batch verification method is adopted for the digital signature on the crowdsourcing blockchain; and carrying out comprehensive systematic task management on the tasks, including task classification, task matching and task verification.
Further, the system initialization includes:
requester (E)R and worker W i (i is more than or equal to 1 and less than or equal to t), and registering with a trusted authority to obtain a unique identity identifier ID R And
Figure BDA0003575149190000048
the method comprises the steps of carrying out a first treatment on the surface of the Calling a key generation algorithm KGen (), and respectively generating public and private key pairs pk of a requester R 、sk R Public and private key pair of worker
Figure BDA0003575149190000049
Public-private key pair pk of enclase 1 and enclase 2 E1 、sk E1 、pk E2 、sk E2 The method comprises the steps of carrying out a first treatment on the surface of the The SCB acquires a root seal key RootSealKey of SGX in the system; at the same time, the requester R obtains an address Addr of Enclave E1 For obtaining the read-only mode of Enclave 1.
Further, the task publishing includes:
performing relevance verification on a requester R or a task classification TCate issued before or a task to be issued by Encalve 1; uploading the signed task information T to Enclave1 by the requester R, and confusing the address Addr by Enclave1 * E1 And task classification TCate is embedded in a new transaction; the transaction is broadcast by enclase 1 and issued to the crowd-sourced blockchain platform SCB after the legitimacy of the transaction is verified by the endorsement node.
The detailed steps of the task release stage are as follows:
(1) The requester R uploads its own set of attributes to Enclave1
Figure BDA0003575149190000041
And task classification TCate or task description
Figure BDA0003575149190000042
Correlation verification policy negotiated by enclase 1 with multiple requesters at the same time +.>
Figure BDA0003575149190000043
Follow-up attribute set->
Figure BDA0003575149190000044
Together with task class TCate or task description TaskInfo, to enclasbe 1.
(2) Enclave1 receives the Attribute set
Figure BDA0003575149190000045
After task description of the TaskInfo and the correlation verification strategy RelVerpol, executing a correlation verification function RelVer (), and returning a verification value RelVerVal; if the verification value RelVerVal is True, the Enclave1 corresponding sealing key SealKey is sent E1 Giving the requester R; if the verification value RelVerVal is False, then access denied information is sent to the requester R.
(3) The requestor R receives the seal Key SealKey of Enclave1 E1 After that, the writing authority of Enclave1 is obtained and the signed task information is written
Figure BDA0003575149190000046
Generating an Enclave memory confusion address Addr according to an Enclave confusion address generation algorithm Confuse () * E1
(4) Enclave1 receives the task information
Figure BDA0003575149190000047
And then, verifying the signature and calling a task classification algorithm TCategory (), and generating a task classification TCate of the task information.
(5) Enclave1 obfuscates its memory address Addr * E1 And task classification TCate embedded into new Transaction transactions E1 In the process, the private key sk of the user is used at the same time E1 Generating signature for transaction E1 ←Ed25519(sk E1 ,Hash(Transaction E1.pre ||Addr * E1 ||pk E1.next ) A) is provided; wherein pk is E1.next Public key representing the generation of enclaspe for the next Transaction, transaction E1.pre Representing the last transaction output.
(6) Enclave1 broadcast Transaction E1 The method comprises the steps of carrying out a first treatment on the surface of the Blockchain endorsement node verifies Transaction transactions E1 If it passes verification, it is added to the new block and added to A chain.
Further, the solution submission includes:
attribute by Encalve2 pair
Figure BDA0003575149190000051
Or worker classification->
Figure BDA0003575149190000052
Performing correlation verification, and after verification is passed, performing correlation verification on the worker W i Authorization of Enclave2 access rights and through transactions E1 Addr on (a) * E1 Reading task information of Enclave 1; solution by enclase 2 +.>
Figure BDA0003575149190000053
Performing correctness verification, and after passing the verification, performing the verification by the worker W i Write solution->
Figure BDA0003575149190000054
To Encalve2; the address Addr will be confused by enclase 2 * E2 And worker classification->
Figure BDA0003575149190000055
Embedding into a new transaction; the transaction is broadcast by enclase 2 and issued to the crowd-sourced blockchain platform SCB after the legitimacy of the transaction is verified by the endorsement node.
The detailed steps of the solution commit phase are as follows:
(1) Worker W i Uploading own set of attributes to enclaspe 2
Figure BDA0003575149190000056
Or worker classification->
Figure BDA0003575149190000057
Correlation verification policy negotiated by Enclave2 with multiple workers at the same time>
Figure BDA0003575149190000058
With attributesCollect->
Figure BDA0003575149190000059
Or worker classification->
Figure BDA00035751491900000510
Together with the upload to Enclave 2.
(2) Enclave2 receives the attribute set of the worker
Figure BDA00035751491900000513
Or after the worker classifies WCate and the correlation verification policy RelVerpol, executing a correlation verification function RelVer (), and returning a correlation verification result RelVerVal; if the verification value RelVerVal is True, authorizing an access right of Enclave, and sending the physical memory address Addr of Enclave2 E2 For workers W i The method comprises the steps of carrying out a first treatment on the surface of the If the verification value RelVerVal is False, then the worker W is presented with i And sending access refusal information.
(3) Worker W i On receipt of the physical memory address Addr of enclaspe 2 E2 After that, the Transaction is read by Enclave2 E1 Memory confusion address Addr of Enclave1 on * E1 Obtaining the actual memory address Addr of Enclave1 after confusion calculation E1 Reading task information of Enclave 1; the worker is according to the Transaction E1 The task classification parameter TCate is used for selecting tasks suitable for being completed by the user.
(4) Worker W i After finding a task that is suitable for self-completion, the solution is uploaded in time period (time 1, time 2)
Figure BDA00035751491900000511
On Enclave2, executing a correctness verification algorithm CorVer () by Enclave2 in combination with a correctness verification policy CorVerpol provided by a requester R, and returning a correctness verification result CorVerVal; if the verification value CorVerVal is True, authorizing the write permission of an Enclave, and transmitting the sealing key SealKey of the Enclave2 E2 For workers W i The method comprises the steps of carrying out a first treatment on the surface of the If the verification value RelVerVal is False, then the worker W is presented with i And sending the write-refusing information.
(5) Worker W i Seal key SealKey on receipt of Enclave2 E2 After writing a signed solution
Figure BDA00035751491900000512
Generating an Enclave memory confusion address Addr according to an Enclave confusion address generation algorithm Confuse () * E2
(6) Enclave2 receives the solution information
Figure BDA0003575149190000061
Then, the signature is verified to call a worker classification algorithm WCatetry (), and a worker classification parameter of the worker is generated>
Figure BDA0003575149190000062
(7) Enclave2 obfuscates its memory address Addr * E2 And worker classification parameters
Figure BDA0003575149190000063
Embedding into new Transaction transactions E2 In the process, the private key sk of the user is used at the same time E2 Generating signature for transaction E2 ←Ed25519(sk E2 ,Hash(Transaction E2.pre ||Addr * E2 ||pk E2.next ))。
(8) Enclave2 broadcast Transaction E2 The method comprises the steps of carrying out a first treatment on the surface of the Blockchain endorsement node verifies Transaction transactions E2 If validated, it is added to the new block and is uplinked.
Further, the reward distribution phase consists of a requestor R evaluating solution, an uploading reward distribution mechanism and a crowd-sourced blockchain SCB distributing reward, and the detailed steps of the reward distribution phase are as follows:
(1) Requestor R evaluates solution: the requestor R receives and decompresses the validated Transaction transactions E2 Performing solution evaluation; obtaining the confusion memory address Addr of Enclave2 where the solution is located after decompression * E2 And pass through Enclaccessing the Enclave2 by the memory address sequence on the ave1 so as to obtain the read-only authority of the Enclave 2; wherein pseudo random number r in confusing address generation algorithm confusing () E Valid only for the valid period (time 3, time 4) of the requester solution evaluation, obfuscating the address Addr after the time point time4 has passed * E2 Will be updated to the new alias address Addr * E2 ' the requester will not be able to obtain the actual physical memory address Addr of Enclave E
(2) Requestor R uploads prize allocation mechanism: after the requestor R obtains the read-only rights of its solutions by decompressing all transactions, it decompresses all solutions Sol stored on Enclave W Performing subjective evaluation once to obtain an evaluation value REval meeting the sum of scores of 100, generating an evaluation matrix REval according to the following formula, and storing the evaluation matrix REval in an Enclave1;
Figure BDA0003575149190000064
(3) The crowd-sourced blockchain SCB allocates rewards according to a rewards incentive policy RewPol: generating Transaction transactions from Enclave1 reward The SCB brings the evaluation matrix REval into a bonus incentive strategy, rewPol, which is given by the following formula:
Figure BDA0003575149190000065
further, the design of the batch verification signature algorithm for Ed25519 is performed by adopting an omega-NAF pseudo random number perturbation method.
When the endorsement node verifies that t Ed25519 signatures (m 1 ,R 1 ,S 1 ),(m 2 ,R 2 ,S 2 ),…,(m t ,R t ,S t ) The adopted elliptic curve parameter is params= { p, a, b, G, n }, and the key pair corresponding to the signer is (d, H), wherein H is a public key and d is a private key.
The verification equation for each of the t Ed25519 signatures is:
Figure BDA0003575149190000071
if all signatures are from the same signer, the validation equation expression is reduced to:
Figure BDA0003575149190000072
Further, the tasks are subjected to comprehensive systematic task management, including task classification, task matching and task verification. The method specifically comprises six steps: crowd-sourced task classification, worker classification, matching of crowd-sourced tasks and worker solutions, trust value generation, relevance verification policy generation, and correctness verification policy generation. The detailed steps are described as follows:
(1) And classifying crowdsourcing tasks. And (3) a task classification function TCategory (), generating a Rule tree task tree by the Enclave1 according to task description task info, and storing by a special Enclave_rule. The following algorithm flow is formulated for the classification method of the system: first, in the system initialization stage, the crowd-sourced blockchain SCB reads the enclave_rule, if there is a Rule tree TaskTree of the last crowd-sourced operation pre Reading the rule tree TaskTree pre As a rule tree TaskTree of the crowdsourcing operation; if the reading result is empty, randomly generating an initial rule tree TaskTree according to the keyword library 0 . And secondly, after the crowdsourcing operation is finished, adding a rule tree task tree into the generated new task classification TCate for real-time updating.
(2) And (5) classifying workers. Invoking a worker classification algorithm WCatetry () and an evaluation algorithm Eval (), enclave2 based on the number of times the correct solution was uploaded
Figure BDA0003575149190000073
And evaluating REval, the final generated classification parameter WCate comprising a task classification column vector TCate and a worker evaluation column vector +.>
Figure BDA0003575149190000074
And the special enclaspe_WTRee is used for storing and recording the situation of the worker's honest completion of tasks. The following algorithm flow is formulated for the classification method of the system: firstly, in the system initialization stage, the crowd-sourced blockchain SCB reads enclave_WTRee, if empty, the worker is proved to execute the crowd-sourced operation for the first time, and the WCate is classified for the worker 0 Initializing, i.e.)>
Figure BDA0003575149190000075
If there is an existing worker classification->
Figure BDA0003575149190000076
The adoption continues. Second, after each crowdsourcing operation is finished, a new task classification is generated
Figure BDA0003575149190000077
Will be added to the worker classification matrix->
Figure BDA0003575149190000078
And carrying out real-time updating.
(3) Matching crowd-sourced tasks and worker solutions. The endorsement node is in the process of Transaction E2 After verification and uplink, firstly, the endorsement node classifies TCate to Transaction according to tasks E2 The matching algorithm is shown in the formula. Second, if the match is successful, the endorsement node will transmit the Transaction through the crowd-sourced blockchain SCB E2 Recommended to the requestor R who issues the corresponding task class TCate. Then, the requester R takes the successful Transaction E2 The public key pk of the public Enclave2 will then be used E2 Signature verification is carried out, and after verification is passed, a requester considers that the Transaction is not tampered E2 . Finally, decompress the Transaction E2 So that the next solution evaluation is performed.
Notably, the endorsement node quantifies the ability of the worker to complete a particular task class TCate during the matching process and gives the worker four evaluations SEval: expert (Expert), proficiency (Skilled), novice (Freshman), and mismatching (Mismatch), see the following formula for specific details:
Figure BDA0003575149190000081
notably, the evaluation SEval will generate an evaluation vector SEval as an identifier according to the different task classifications TCate, and the evaluation vector SEval is recorded in enclaspe_wtre honest by the crowd-sourced blockchain system SCB after merging with WCate.
(4) Worker trust value beta W Is generated. Generating trust value beta for worker by WCate W The following formula:
Figure BDA0003575149190000082
wherein τ TCate The weight of TCate on the task Tree is specified by a requester when issuing a task and is nested on the task Tree;
Figure BDA0003575149190000083
for the evaluation value of the worker, an evaluation algorithm is used +.>
Figure BDA0003575149190000084
And (5) generating.
(5) Generation of correlation verification strategy RelVerPol:
the relevance verification algorithm RelVer () includes verification of task descriptions and verification of worker identities. The system specifies a dependency verification policy that must be negotiated by enclaspe with multiple requesters or workers
Figure BDA0003575149190000085
The generation of the correlation strategy RelVerpol is described as follows:
1) Enclove 1 performs relevance verification on the requester R task description. If the requester R issues a task request for the first time, after uploading a task, executing a task classification algorithm TCategory (), outputting a task classification parameter TCate, recording a new TCate in a mode that Enclave1 accesses Enclave_rule, and matching an existing Rule tree task Tree by the TCate, wherein a correlation verification strategy RelVerPol is as follows. If the requestor R previously participated in the crowdsourcing operation, owning TCate, the following formula is directly executed.
Figure BDA0003575149190000086
2) Enclave2 is to worker W i And (5) identity verification. If it is worker W i The first time the crowd-sourced operation is participated in, its attribute is verified
Figure BDA0003575149190000087
Whether or not the output is within the set range, thereby outputting RelVerVal. If there was a previous participation in the crowdsourcing operation, then use
Figure BDA0003575149190000088
The TCate in the rule tree is matched with the rule tree TaskTree, and the generation formula of the correlation verification strategy RelVerpol is as follows:
Figure BDA0003575149190000089
(6) Generating a correctness verification policy CorVerpol, wherein a correctness verification algorithm CorVer () is suitable for workers W i Submitting a solution
Figure BDA0003575149190000091
Afterwards, enclave2 vs. solution->
Figure BDA0003575149190000092
Verification process of correctness. The correctness verification strategy CorVerpol is described as follows: for solution- >
Figure BDA0003575149190000093
By using the task classification algorithm TCategory (), through previously publishedTask description TaskInfo pre Rule tree in (3) TaskTree pre For solution->
Figure BDA0003575149190000094
Is refined to generate a solution class SCate, where SCate is analogous to TCate in the task class. Finally, matching SCate with the rule tree task tree of the task, wherein the correctness verification strategy CorVerPol has the following formula:
Figure BDA0003575149190000095
another object of the present invention is to provide a decentralized crowdsourcing system supporting efficient privacy protection, which includes three entities, namely a requester, a worker and a SGX-based crowdsourcing blockchain SCB, using the decentralized crowdsourcing method supporting efficient privacy protection.
The requester is used for issuing a crowdsourcing request task to the SCB, evaluating the solution submitted by the worker on the chain, and giving corresponding rewards to the worker submitting the correct solution according to a task strategy when issuing the crowdsourcing request task;
the worker is used for solving the task requirement of the requester in the task submission period and submitting a correct solution to the SCB, and expects to obtain task rewards;
The crowd-sourced blockchain SCB based on SGX is used for initializing and authenticating user identity, managing crowd-sourced tasks and issuing rewards.
It is a further object of the present invention to provide a computer device comprising a memory and a processor, the memory storing a computer program which, when executed by the processor, causes the processor to perform the steps of:
establishing a system model, and describing the interaction process among a requester, a worker and an SGX-based crowdsourcing blockchain SCB; the protocol flow is constructed, which comprises four stages of system initialization, task release, solution submission and rewarding distribution; a batch verification method is adopted for the digital signature on the crowdsourcing blockchain; and carrying out comprehensive systematic task management on the tasks, including task classification and task verification.
Another object of the present invention is to provide a computer readable storage medium storing a computer program which, when executed by a processor, causes the processor to perform the steps of:
establishing a system model, and describing the interaction process among a requester, a worker and an SGX-based crowdsourcing blockchain SCB; the protocol flow is constructed, which comprises four stages of system initialization, task release, solution submission and rewarding distribution; a batch verification method is adopted for the digital signature on the crowdsourcing blockchain; and carrying out comprehensive systematic task management on the tasks, including task classification and task verification.
Another object of the present invention is to provide an information data processing terminal, where the information data processing terminal is configured to implement the decentralized crowdsourcing system supporting efficient privacy protection.
The basic algorithm used in the invention is described as follows:
correlation verification algorithm RelVer ():
Figure BDA0003575149190000101
input attribute set
Figure BDA0003575149190000102
Correlation verification policy RelVerpol; outputting a correlation verification result RelVerVal. Wherein the value of the correlation verification result RelVerVal is True or False. Notably, the correlation verification applies both before the requestor uploads the task to Enclave1 and before the worker uploads the solution.
Correctness verification algorithm CorVer ():
Figure BDA0003575149190000103
input deviceAttribute set
Figure BDA0003575149190000104
Worker W i Solution of submission->
Figure BDA0003575149190000105
A correctness verification strategy CorVerpol; and outputting a correctness verification result CorVerVal. Wherein the CorVerVal has a True or False value. Notably, correctness verification applies to the solution by Enclave after the worker submits the solution +.>
Figure BDA0003575149190000106
Verification process of correctness.
Enclave confusing address generation algorithm Confuse (): confuse (Addr) E ,r E )→Addr * E
Inputting Enclave physical memory address Addr E Pseudo random number r E The method comprises the steps of carrying out a first treatment on the surface of the Outputting Enclave memory confusion address Addr * E . Wherein, the liquid crystal display device comprises a liquid crystal display device,
Figure BDA0003575149190000107
i.e. r generated by a pseudo-random number generator E Through one-time hash function and memory address Addr E The addition is confusing. Notably, pseudo random numbers r E Valid only for the validity time (time 1, time 2) of the commit solution, updated in real time at time 2.
Task classification algorithm TCategory ():
Figure BDA0003575149190000108
inputting task descriptions TaskInfo and requestor Attribute sets
Figure BDA0003575149190000109
And outputting a task classification parameter TCate. The algorithm uses a rule-based classification technique, which is described in detail below:
1) According to attribute set of user node
Figure BDA00035751491900001010
Selecting related keywords from task description TaskInfo;
2) And setting a Rule tree TaskTree according to the relation among different keywords, storing by a proprietary enclaspe, and defining the Rule tree TaskTree as enclaspe_rule. Meanwhile, updating in real time according to accumulation of task release;
3) And (3) classifying task description TaskInfo by calling enclave_rule by Enclave participating in crowdsourcing operation, and finally outputting task classification TCate.
Worker classification algorithm wcategorism ():
Figure BDA00035751491900001011
number of times the input worker uploaded the correct solution
Figure BDA00035751491900001012
And the corresponding task classification TCate, requester evaluation rev and worker attribute set +.>
Figure BDA00035751491900001013
The worker classification parameter WCate is output. Wherein the classification parameter WCate is a binary matrix composed of task classification column vector TCate and worker evaluation column vector +. >
Figure BDA00035751491900001014
Composition is prepared.
Worker evaluation algorithm Eval ():
Figure BDA00035751491900001015
input worker W i Number of times of uploading correct solution
Figure BDA0003575149190000111
And evaluating REval; outputting worker evaluation value +.>
Figure BDA0003575149190000112
The specific algorithm is as follows:
Figure BDA0003575149190000113
wherein λ and μ are respectively
Figure BDA0003575149190000114
And the weight of REval, which is personalized by the system according to the different task classifications TCate. Notably, the->
Figure BDA0003575149190000115
Is a specific evaluation value under a task class TCate for a certain task. And along with worker W i After completing more tasks, worker W i There will be multiple evaluation values under multiple task categories TCate +.>
Figure BDA0003575149190000116
Firstly we get the trust value under the same task class TCate arithmetically averaged +.>
Figure BDA0003575149190000117
Subsequently, according to the different task classifications TCate, a task classification TCate column vector and a corresponding evaluation column vector are generated>
Figure BDA0003575149190000118
In combination with the above technical solution and the technical problems to be solved, please analyze the following aspects to provide the following advantages and positive effects:
first, aiming at the technical problems in the prior art and the difficulty in solving the problems, the technical problems solved by the technical proposal of the invention are analyzed in detail and deeply by tightly combining the technical proposal to be protected, the results and data in the research and development process, and the like, and some technical effects brought after the problems are solved have creative technical effects. The specific description is as follows:
The decentralization crowdsourcing supporting the efficient privacy protection realizes the efficient node attribute privacy protection based on the SGX technology, and the batch verification signature algorithm of Ed25519 is adopted to improve the block verification efficiency; meanwhile, the invention also provides a task classification mechanism which is used for efficiently managing and matching crowdsourcing tasks and adding a task verification mechanism to resist malicious node attacks.
The invention realizes efficient node attribute privacy protection based on SGX technology, and improves the efficiency of block verification by adopting a batch verification signature algorithm; meanwhile, the invention also provides a task classification mechanism to efficiently manage and match crowdsourcing tasks, and a task verification mechanism is added to resist malicious node attacks. Compared with other schemes, the decentralized crowdsourcing system not only supports fair and safe crowdsourcing operation, but also has higher efficiency.
Aiming at the problem of low signature verification efficiency of the existing blockchain system, the invention innovatively adopts an Ed25519 elliptic curve signature algorithm based on a twisted Edwardship curve, and designs a batch verification signature algorithm aiming at the algorithm. The algorithm has higher stability and less computational effort than the verification signature algorithms in other blockchain systems. The batch verification signature algorithm is more robust and efficient, particularly when applied to a multi-tasking de-centralized crowdsourcing system.
Aiming at the problem that the existing decentralized crowdsourcing system lacks practicability, the invention provides an omnibearing systematic task management algorithm, which comprises a task classification mechanism, is used for efficiently managing and matching crowdsourcing tasks; and a task verification mechanism to defend against malicious node attacks. The algorithm is suitable for the construction of the decentralized crowdsourcing system in the large cluster heterogeneous network, and has strong practicability.
Secondly, the technical scheme is regarded as a whole or from the perspective of products, and the technical scheme to be protected has the following technical effects and advantages:
the decentralized crowdsourcing system supporting efficient privacy protection can be used for protecting node attribute privacy in the decentralized crowdsourcing system, defending attack behaviors from malicious user nodes, and supporting efficient, flexible and fair crowdsourcing operation. The invention is realized by adopting the system, the privacy of the node attribute is protected, the fairness of crowdsourcing operation is realized, and the efficiency of the crowdsourcing operation is effectively improved. Meanwhile, the invention also has fairness verifiability, data confidentiality, data integrity, robustness and high efficiency.
Fairness verifiability: the invention should enable fair trading between requesters and workers, i.e., equivalent exchange between crowdsourcing task rewards and correct solutions; meanwhile, the invention should realize the verification of crowdsourcing task and solution, including correctness verification and relativity verification, so as to resist the attack of the pick-up car (Free Riding Attack) and realize fair transaction.
Data confidentiality: the invention should ensure that crowdsourcing tasks and solutions cannot be accessed unauthorized, i.e. all unauthorized users, including three malicious user nodes, cannot access data in the crowdsourcing system, thus resisting impersonation attacks (Impersonation Attack) and Sybil attacks (Sybil attach).
Data integrity: the integrity of the present invention refers to that the data on the crowd-sourced blockchain system SCB is identical (e.g., no tampering, insertion, deletion, or replay) to the data uploaded by the requester and worker, i.e., malicious user nodes cannot tamper, insert, delete, or replay the data of the crowd-sourced system, thereby resisting a Poisoning Attack (poisonning Attack).
Robustness: the robustness of the present invention refers to the robustness of the crowdsourcing blockchain system, i.e., the tolerance and processing power of SCBs to attack. For example, the crowdsourcing blockchain system may still provide efficient, safe, and reliable crowdsourcing services in different crowdsourcing scenarios, or in the event of malicious nodes.
High efficiency: in addition to the requirements of fairness verifiable, data confidentiality, data integrity, and robustness, efficiency is also an important indicator of the implementation of the crowdsourcing process by the decentralized crowdsourcing system, particularly for the actual deployment of privacy preserving technologies. The scheme provided by the chapter supports efficient task matching and batch signature verification in a crowdsourcing process, and meanwhile, the SGX technology is used for avoiding the performance consumption caused by a large number of encryption and decryption algorithms.
Thirdly, as inventive supplementary evidence of the claims of the present invention, the following important aspects are also presented:
(1) The expected benefits and commercial values after the technical scheme of the invention is converted are as follows: the invention is used as a decentralization crowdsourcing method, a decentralization crowdsourcing system and a decentralization crowdsourcing terminal for supporting efficient privacy protection, and the converted commercial value mainly shows the following two aspects:
1) Privacy protection solutions for crowdsourcing systems. The technical scheme provided by the invention can improve the existing crowdsourcing system in the industry and provide a privacy protection solution for the crowdsourcing system. For example, the network about vehicle crowdsourcing platform is improved, so that the network about vehicle crowdsourcing platform has an efficient privacy protection function, more users trust the platform more, and more crowdsourcing users are expanded.
2) A ubiquitous de-centralized crowd-sourced prototype system. The system provided by the invention can be used as a prototype system of the innovation entrepreneur project, a corresponding innovation entrepreneur team picks up the project and incubates the project, so that a fair, safe and reliable general public Bao Ping is developed, and finally the system is used as an entrepreneur project supporting the innovation entrepreneur company.
(2) The technical scheme of the invention fills the technical blank in the domestic and foreign industries: the technical scheme of the invention provides the node attribute privacy protection in the decentralized crowdsourcing system based on the SGX technology, and fills the technical blank that the node attribute privacy protection is not supported in the decentralized crowdsourcing system.
Meanwhile, the technical scheme of the invention adds a task management mechanism, so that the system not only supports fair and safe crowdsourcing operation, but also has higher efficiency, and fills the gap in the function of systematic classification and verification of tasks in the crowdsourcing system.
(3) The technical scheme of the invention solves the technical problems that people are always desirous of solving but are not successful all the time: aiming at the technical problem of low signature verification efficiency of the existing blockchain system, the technical scheme of the invention innovatively adopts an Ed25519 elliptic curve signature algorithm based on a twisted Edwardsier curve, and designs a batch verification signature algorithm aiming at the algorithm. The algorithm has higher stability and less computational effort than the verification signature algorithms in other blockchain systems. Particularly, when the method is applied to a multi-task quantity decentralization crowdsourcing system, the batch verification signature algorithm has stronger robustness and higher efficiency, and the technical problem that the signature verification efficiency of the block chain system is low, which is always desired to be solved but is not obtained successfully all the time, is solved.
(4) The technical scheme of the invention overcomes the technical bias:
in the technical field of the decentralized crowdsourcing system, the technical schemes of related work are designed by adopting a traditional block chain architecture, and the technical prejudice that the efficiency problem of the block chain itself is not considered exists.
Aiming at the problem of low signature verification efficiency of a blockchain, the technical scheme of the invention creatively adopts an Ed25519 elliptic curve signature algorithm based on a twisted Edwardsier curve, and designs a batch verification signature algorithm aiming at the algorithm. The algorithm has higher stability and less computational effort than the verification signature algorithms in other blockchain systems. The batch verification signature algorithm is more robust and efficient, particularly when applied to a multi-tasking de-centralized crowdsourcing system. Therefore, the invention overcomes the technical prejudice that the efficiency problem of the blockchain is not considered in the technical field of the decentralization crowdsourcing system.
Drawings
In order to more clearly illustrate the technical solutions of the embodiments of the present invention, the drawings that are needed in the embodiments of the present invention will be briefly described below, and it is obvious that the drawings described below are only some embodiments of the present invention, and other drawings may be obtained according to these drawings without inventive effort for a person skilled in the art.
FIG. 1 is a flow chart of a decentralized crowdsourcing method supporting efficient privacy protection provided by an embodiment of the present invention;
FIG. 2 is a schematic diagram of a decentralized crowdsourcing method supporting efficient privacy protection provided by an embodiment of the present invention;
FIG. 3 is a diagram of a decentralized crowdsourcing system model supporting efficient privacy protection provided by an embodiment of the present invention;
FIG. 4 is a block chain transaction data structure diagram according to an embodiment of the present invention;
FIG. 5 is a graph comparing efficiency with related work provided by an embodiment of the present invention.
Detailed Description
The present invention will be described in further detail with reference to the following examples in order to make the objects, technical solutions and advantages of the present invention more apparent. It should be understood that the specific embodiments described herein are for purposes of illustration only and are not intended to limit the scope of the invention.
Aiming at the problems in the prior art, the invention provides a decentralization crowdsourcing method, a decentralization crowdsourcing system and a decentralization crowdsourcing terminal for supporting efficient privacy protection, and the invention is described in detail below with reference to the accompanying drawings.
1. The embodiments are explained. In order to fully understand how the invention may be embodied by those skilled in the art, this section is an illustrative embodiment in which the claims are presented for purposes of illustration.
As shown in fig. 1, the decentralized crowdsourcing method supporting efficient privacy protection provided by the embodiment of the present invention includes the following steps:
S101, a system model is built, and the interaction process among three entities of a requester, a worker and a SGX-based crowdsourcing block chain is described;
s102, constructing a protocol flow, wherein the protocol flow comprises four stages of system initialization, task release, solution submission and rewarding distribution;
s103, adopting a batch verification method for digital signatures on the crowdsourcing blockchain;
s104, performing comprehensive systematic task management on the tasks, including task classification and task verification.
The schematic diagram of the decentralized crowdsourcing method supporting efficient privacy protection provided by the embodiment of the invention is shown in fig. 2.
As shown in fig. 3, the system model provided in the embodiment of the present invention includes three entities in total: requesters (requesters), workers (workers), and SGX-based crowdsourcing blockchains (SGX-based Crowdsourcing Blockchain, SCB). A detailed description of the participation of each entity in crowd-sourcing operations is as follows:
requestor (Requester): and the solution submitted by the worker (Workers) is evaluated on the chain and finally the worker submitting the correct solution is given a corresponding reward according to the task strategy when the crowd-sourced request task is issued. The specific content of the crowdsourcing request task comprises task description, task strategy, task booking and task submission deadline. The task description is a specific task description submitted to the crowdsourcing system by a requester according to own requirements, namely, the details of the problem to be solved by a worker; the task policies include correlation verification policies, correctness verification policies, and rewards incentive policies for the solution, i.e., how the SCB will verify correctness and relevance of the solution and how the worker gets rewards; the task reservation includes a task reward and deposit, i.e., a reward source for the worker to submit the correct solution and a deposit to prevent the requester from acting on his or her job. After the crowdsourcing request task is published, the requester gathers all submitted solutions on the SCB, and any solution of the crowdsourcing request task should be submitted within the task submission deadline, and overdue is considered invalid. After the task submitting deadline, the requester acquires the confusing address of Enclave where the solution is located by verifying the signature of the transaction, thereby acquiring the access right of the requester; and finally the solutions are evaluated, resulting in an evaluation of the different solutions. Finally, rewards are allocated to workers who submitted the correct solution according to a given rewards incentive policy.
Worker (Worker): is responsible for solving the task demands of the requesters within the task submission deadlines and submitting the correct solutions to the SCB, and finally expects to obtain the task rewards. At the same time, to ensure fair trading of worker solutions and requester task rewards, all users in the system model can obtain the requester's evaluation of the solutions through the SCB while supervising the task rewards issue.
SGX-based crowdsourcing blockchain (SCB): is responsible for initializing authenticated user identities and crowd-sourced task management, wherein task management comprises task classification and task verification. After receiving the crowdsourcing request task, firstly carrying out correlation verification on the crowdsourcing request task, matching one or more workers to solve the crowdsourcing request task issued by the requester singly or cooperatively according to the characteristic value of the workers after the verification is passed, receiving a request scheme of the workers in a submitting period, storing the solution to a random enclaspe in a public key signature mode, and finally obtaining an evaluation result of the solution of the requester and issuing task rewards. In order to prevent the worker from being wrought, enclave performs correlation verification on the worker once before receiving the solution uploaded by the worker, and returns a correlation result Ture and False so as to prevent the worker from maliciously submitting an irrelevant solution and causing system congestion; this correlation verification is equally applicable to the task of the requester's publication. Wherein the blockchain SCB uses a federated chain Fabric as an embodiment.
In fig. 2, the node responsible for endorsing an Enclave submission proposal in the federation chain is called an endorsement node, and both Enclave1 and Enclave2 are set in the endorsement node, but in this embodiment, the endorsement is not necessarily performed for the same endorsement node. Therefore, the endorsement node is represented in an abstract form in fig. 2, but does not represent the same endorsement node, and is described in detail.
As shown in fig. 2, the protocol flow provided in the embodiment of the present invention is described in detail as follows:
the protocol flow of the invention comprises four stages of system initialization, task release, solution submission and rewarding distribution. The following describes the specific flow of the four stages in detail.
And initializing a system. At this stage, requestor R and worker W i (i is more than or equal to 1 and less than or equal to t), and registering with a trusted authority to obtain a unique identity identifier ID R And
Figure BDA0003575149190000151
calling a key generation algorithm KGen (), and respectively generating public and private of the requesterKey pair pk R 、sk R Public and private key pair of worker->
Figure BDA0003575149190000152
Public-private key pair pk of enclase 1 and enclase 2 E1 、sk E1 、pk E2 、sk E2 The method comprises the steps of carrying out a first treatment on the surface of the The SCB acquires a root seal key RootSealKey of SGX in the system; at the same time, the requester R obtains an address Addr of Enclave E1 A read-only mode for obtaining Enclave 1; the trusted authority comprises a CA node in a alliance chain Fabric.
And (5) task release. At this stage, the dependency verification is first performed by Encalve1 on the requester R and its previously issued task class TCate or the task to be issued; secondly, uploading the signed task information by the requester R
Figure BDA0003575149190000153
To enclaspe 1, it is obfuscated by enclaspe 1 to address Addr * E1 And task classification TCate is embedded in a new transaction; finally, the Enclave1 broadcasts the transaction and the nodes verify the validity of the transaction and then issue the transaction to the crowd-sourced blockchain platform SCB. The detailed steps of the task release phase are as follows:
1) The requester R uploads its own set of attributes to Enclave1
Figure BDA0003575149190000154
And task classification TCate or task description
Figure BDA0003575149190000155
Correlation verification policy negotiated by enclase 1 with multiple requesters at the same time +.>
Figure BDA0003575149190000156
Also along with attribute set->
Figure BDA0003575149190000157
Together with task class TCate or task description TaskInfo, to enclasbe 1.
2)Enclave1At the time of receiving the attribute set
Figure BDA0003575149190000158
After the task describes the TaskInfo and the correlation verification policy RelVerpol, a correlation verification function RelVer () is executed, and a verification value RelVerVal is returned. If the verification value RelVerVal is True, the Enclave1 corresponding sealing key SealKey is sent E1 Giving the requester R; if the verification value RelVerVal is False, then access denied information is sent to the requester R.
3) The requestor R receives the seal Key SealKey of Enclave1 E1 After that, the writing authority of Enclave1 is obtained and the signed task information is written
Figure BDA0003575149190000161
Then generating an Enclave memory confusion address Addr according to an Enclave confusion address generation algorithm Confuse () * E1
4) Enclave1 receives the task information
Figure BDA0003575149190000162
And then, verifying the signature and calling a task classification algorithm TCategory (), and generating a task classification TCate of the task information.
5) Enclave1 obfuscates its memory address Addr * E1 And task classification TCate embedded into new Transaction transactions E1 In the process, the private key sk of the user is used at the same time E1 Generating signature for transaction E1 ←Ed25519(sk E1 ,Hash(Transaction E1.pre ||Addr * E1 ||pk E1.next ) And), wherein pk E1.next Public key representing the generation of enclaspe for the next Transaction, transaction E1.pre Representing the last transaction output. The transaction data structure on the crowd-sourced blockchain SCB is shown in fig. 3.
6) Enclave1 broadcast Transaction E1 . Blockchain endorsement node verifies Transaction transactions E1 If validated, it is added to the new block and is uplinked.
Solution submission. At this stage, the attributes are first paired by Encalve2
Figure BDA0003575149190000163
Or worker classification->
Figure BDA0003575149190000164
Performing correlation verification, and after verification is passed, performing correlation verification on the worker W i Authorization of Enclave2 access rights and through transactions E1 Addr on (a) * E1 Reading task information of Enclave 1; second the solution by enclase 2 +. >
Figure BDA0003575149190000165
Performing correctness verification, and after passing the verification, performing the verification by the worker W i Write solution->
Figure BDA0003575149190000166
To Encalve2; then the address Addr is obfuscated by enclase 2 * E2 And worker classification->
Figure BDA0003575149190000167
Embedding into a new transaction; finally, the Enclave2 broadcasts the transaction and the endorsement node verifies the validity of the transaction and then issues the transaction to the crowd-sourced blockchain platform SCB. The detailed steps of the solution commit phase are as follows:
1) Worker W i Uploading own set of attributes to enclaspe 2
Figure BDA0003575149190000168
Or worker classification->
Figure BDA0003575149190000169
Correlation verification policy negotiated by Enclave2 with multiple workers at the same time>
Figure BDA00035751491900001610
Also along with attribute set->
Figure BDA00035751491900001611
Or worker classification->
Figure BDA00035751491900001612
Together with the upload to Enclave 2.
2) Enclave2 receives the attribute set of the worker
Figure BDA00035751491900001613
Or after the worker classifies WCate and the correlation verification policy RelVerpol, executing a correlation verification function RelVer (), and returning a correlation verification result RelVerVal. If the verification value RelVerVal is True, then one Enclave is authorized to access, i.e. the physical memory address Addr of Enclave2 is sent E2 For workers W i The method comprises the steps of carrying out a first treatment on the surface of the If the verification value RelVerVal is False, then the worker W is presented with i And sending access refusal information.
3) Worker W i On receipt of the physical memory address Addr of enclaspe 2 E2 The Transaction can then be read by enclase 2 E1 Memory confusion address Addr of Enclave1 on * E1 Obtaining the actual memory address Addr of Enclave1 after confusion calculation E1 Task information of Enclave1 is read. Notably, the worker can be based on transactions E1 The task classification parameter TCate is used for selecting tasks suitable for being completed by the user.
4) Worker W i After finding a task that is suitable for self-completion, the solution is uploaded in time period (time 1, time 2)
Figure BDA0003575149190000171
On Enclave2, in combination with the correctness verification policy CorVerPol proposed by the requester R, the correctness verification algorithm CorVer () is executed by Enclave2, and a correctness verification result CorVerVal is returned. If the verification value CorVerVal is True, then one Enclave's write authority is granted, i.e. the Enclave 2's sealing key SealKey is sent E2 For workers W i The method comprises the steps of carrying out a first treatment on the surface of the If the verification value RelVerVal is False, then the worker W is presented with i And sending the write-refusing information.
5) Worker W i Seal key SealKey on receipt of Enclave2 E2 After that, write-in labelPost name solution
Figure BDA0003575149190000172
Then generating an Enclave memory confusion address Addr according to an Enclave confusion address generation algorithm Confuse () * E2
6) Enclave2 receives the solution information
Figure BDA0003575149190000173
Then, the signature is verified to call a worker classification algorithm WCatetry (), and a worker classification parameter of the worker is generated >
Figure BDA0003575149190000174
7) Enclave2 obfuscates its memory address Addr * E2 And worker classification parameters
Figure BDA0003575149190000175
Embedding into new Transaction transactions E2 In the process, the private key sk of the user is used at the same time E2 Generating signature for transaction E2 ←Ed25519(sk E2 ,Hash(Transaction E2.pre ||Addr * E2 ||pk E2.next )). The transaction data structure on the SCB is shown in fig. 4.
8) Enclave2 broadcast Transaction E2 . Blockchain endorsement node verifies Transaction transactions E2 If validated, it is added to the new block and is uplinked.
And (5) rewarding distribution. This phase mainly consists of the three parts of the requestor R evaluating solution, uploading the reward distribution mechanism and crowd-sourced blockchain SCB distributing the reward, the detailed steps of the reward distribution phase are as follows:
1) Requestor R evaluates solution: the requestor R receives and decompresses the validated Transaction transactions E2 Solution evaluation was performed. Obtaining the confusion memory address Addr of Enclave2 where the solution is located after decompression * E2 And accessing the Enclave2 through the memory address sequence on the Enclave1, thereby obtaining the read-only authority of the Enclave 2.Note that at this time the pseudo random number r in the confusing address generation algorithm confusing () E Valid only for the valid period (time 3, time 4) of the requester solution evaluation, i.e. the obfuscated address Addr after the time point time4 has elapsed * E2 Will be updated to the new alias address Addr * E2 ' the requester will not be able to obtain the actual physical memory address Addr of Enclave E
2) Requestor R uploads prize allocation mechanism: after the requestor R obtains the read-only rights of its solutions by decompressing all transactions, it decompresses all solutions Sol stored on Enclave W And carrying out subjective evaluation once to obtain an evaluation value REval meeting the condition, generating an evaluation matrix REval and storing the evaluation matrix REval on Enclave 1.
Figure BDA0003575149190000181
3) The crowd-sourced blockchain SCB allocates rewards according to a rewards incentive policy RewPol: generating Transaction transactions from Enclave1 reward (the specific generation details are the same as the task release phase), the SCB brings the evaluation matrix REval into a rewards incentive policy, rewPol, which is shown in the formula. Notably, this stage simply allocates rewards, in fact rewards review and rewards incentive policies RewPol have been issued for the first time with the task information of the requester
Figure BDA0003575149190000182
Packaged in Enclave1 and issued Transaction by endorsement node E1 Can not be tampered with at will.
Figure BDA0003575149190000183
The embodiment of the invention also provides a systematic task management method which comprises task classification, task matching and task verification. The method specifically comprises six steps: crowd-sourced task classification, worker classification, matching of crowd-sourced tasks and worker solutions, trust value generation, relevance verification policy generation, and correctness verification policy generation. The detailed steps are described as follows:
(1) And classifying crowdsourcing tasks.
And (3) a task classification function TCategory (), generating a Rule tree task tree by the Enclave1 according to task description task info, and storing by a special Enclave_rule. The following algorithm flow is formulated for the classification method of the system: first, in the system initialization stage, the crowd-sourced blockchain SCB reads the enclave_rule, if there is a Rule tree TaskTree of the last crowd-sourced operation pre Reading the rule tree TaskTree pre As a rule tree TaskTree of the crowdsourcing operation; if the reading result is empty, randomly generating an initial rule tree TaskTree according to the keyword library 0 . And secondly, after the crowdsourcing operation is finished, adding a rule tree task tree into the generated new task classification TCate for real-time updating.
(2) And (5) classifying workers.
Enclave2 is based on the number of times the correct solution is uploaded, as described by the worker classification algorithm WCatetry () and the evaluation algorithm Eval)
Figure BDA0003575149190000184
And evaluating REval, the final generated classification parameter WCate comprising a task classification column vector TCate and a worker evaluation column vector +.>
Figure BDA0003575149190000185
And the special enclaspe_WTRee is used for storing and recording the situation of the worker's honest completion of tasks. The following algorithm flow is formulated for the classification method of the system: firstly, in the system initialization stage, the crowd-sourced blockchain SCB reads enclave_WTRee, if empty, the worker is proved to execute the crowd-sourced operation for the first time, and the WCate is classified for the worker 0 Initializing, and referring to formula (3); if there is an existing worker classification->
Figure BDA0003575149190000191
The adoption continues. Second, after each crowdsourcing operation is completed, a new task class is generated>
Figure BDA0003575149190000192
Will be added to the worker classification matrix
Figure BDA0003575149190000193
And carrying out real-time updating. />
Figure BDA0003575149190000194
(3) Matching crowd-sourced tasks and worker solutions.
The endorsement node is in the process of Transaction E2 After verification and uplink, firstly, the endorsement node classifies TCate to Transaction according to tasks E2 The matching algorithm is shown in formula (4). Second, if the match is successful, the endorsement node will transmit the Transaction through the crowd-sourced blockchain SCB E2 Recommended to the requestor R who issues the corresponding task class TCate. Then, the requester R takes the successful Transaction E2 The public key pk of the public Enclave2 will then be used E2 Signature verification is carried out, and after verification is passed, a requester considers that the Transaction is not tampered E2 . Finally, decompress the Transaction E2 So that the next solution evaluation is performed.
Notably, the endorsement node quantifies the ability of the worker to complete a particular task class TCate during the matching process and gives the worker four evaluations SEval: expert (Expert), proficiency (Skilled), novice (Freshman), and mismatching (Mismatch), see equation (4).
Figure BDA0003575149190000195
Notably, the evaluation SEval serves as an evaluation index for the worker, which is beneficial to the system for better and accurate matching. For example, in crowd-sourced medical scenarios, highly difficult disease handling tasks often match solutions with Expert (Expert) assessment doctors. SEval generates an evaluation vector SEval as an identifier according to different task classifications TCate, and is recorded in enclave_wtre honest by the crowd-sourced blockchain system SCB after being combined with WCate.
Taking an open source development environment crowdsourcing platform as an example, a developer (a worker in crowdsourcing operation) accesses a system before and completes a corresponding development task, and after the solution is submitted, an enclaspe_wtree in the matching stage stores a data structure as shown in formula (5).
Figure BDA0003575149190000196
(4) Worker trust value beta W Is generated.
Generating trust value beta for worker by WCate W See formula (6).
Figure BDA0003575149190000197
Wherein τ TCate The weight of TCate on the task Tree is specified by a requester when issuing a task and is nested on the task Tree;
Figure BDA0003575149190000201
for the evaluation value of the worker, an evaluation algorithm is used +.>
Figure BDA0003575149190000202
And (5) generating.
(5) And (3) generating a correlation verification strategy RelVerpol.
The relevance verification algorithm RelVer () includes verification of task descriptions and verification of worker identities. The system specifies a dependency verification policy that must be negotiated by enclaspe with multiple requesters or workers
Figure BDA0003575149190000203
The generation of the correlation strategy RelVerpol is described as follows:
1) Enclove 1 performs relevance verification on the requester R task description. If the requester R issues a task request for the first time, after uploading a task, executing a task classification algorithm TCategory (), outputting a task classification parameter TCate, recording a new TCate by accessing an Enclave_rule by Enclave1, and matching an existing Rule tree task tree by the TCate, wherein a relevance verification strategy RelVerpol is shown as a formula (7). If requestor R previously participated in the crowdsourcing operation, owning TCate, then equation (7) is directly executed.
Figure BDA0003575149190000204
2) Enclave2 is to worker W i And (5) identity verification. If it is worker W i The first time the crowd-sourced operation is participated in, its attribute is verified
Figure BDA0003575149190000205
Whether or not the output is within the set range, thereby outputting RelVerVal. If there was a previous participation in the crowdsourcing operation, then use
Figure BDA0003575149190000206
Matching TCate in the rule tree with the rule tree TaskTree, and a correlation verification strategy RelVerPol is shown in a formula (8).
Figure BDA0003575149190000207
(6) And (5) generating a correctness verification strategy CorVerpol.
CorVer () correctness verification algorithm for worker W i Submitting a solution
Figure BDA0003575149190000208
Afterwards, enclave2 vs. solution->
Figure BDA0003575149190000209
Verification process of correctness. The correctness verification strategy CorVerpol is described as follows: for solution- >
Figure BDA00035751491900002010
Task Info is described by previously published tasks using the task classification algorithm TCategory () pre Rule tree in (3) TaskTree pre For solution->
Figure BDA00035751491900002011
Is refined to generate a solution class SCate, where SCate is analogous to TCate in the task class. Finally, the SCate is matched with the rule tree task tree of the task, and the correctness verification strategy CorVerPol is shown as a formula (9).
Figure BDA00035751491900002012
The embodiment of the invention also provides a batch verification signature algorithm of Ed25519, which improves the efficiency of block verification. The specific description is as follows:
the technical scheme of the invention adopts the design of batch verification signature algorithm for Ed25519 by adopting omega-NAF pseudo random number disturbance method.
Assume that an endorsement node verifies t Ed25519 signatures (m 1 ,R 1 ,S 1 ),(m 2 ,R 2 ,S 2 ),…,(m t ,R t ,S t ) The adopted elliptic curve parameter is params= { p, a, b, G, n }, and the key pair corresponding to the signer is (d, H), wherein H is a public key and d is a private key. A simple idea is to combine the verification equations one by one for t Ed25519 signatures into:
Figure BDA0003575149190000211
if all signatures come from the same signer, that is to say H 1 =H 2 =…=H t =h, then equation (10) reduces to:
Figure BDA0003575149190000212
the above is a simple method for verifying the signature in batch, but the efficiency is not greatly improved in practice, and the design of the batch verification signature algorithm for Ed25519 by adopting the omega-NAF pseudo random number perturbation method is described below.
According to the signature size, the invention adopts the scene of 3-NAF to generate a digital set D= { + -1, + -3 }, and then generates random omega-NAFs= { c 1 ,...,c N It is noted that this pseudo-random number generator meets the two-point condition: the method is random and mostly relevant, namely, the method has the relevance while ensuring the randomness, and is beneficial to batch calculation.
At this time, the verification equation by verification of t Ed25519 signatures is converted into:
Figure BDA0003575149190000213
if all signatures are from the same signer, then equation (12) reduces to:
Figure BDA0003575149190000214
the scheme is suitable for endorsement node batch verification of Transaction transactions generated by enclasps on a crowd-sourced blockchain (SCB), and particularly for transactions generated by the same enclasps, so that the efficiency is greatly improved. Likewise, the scheme is also applicable to three scenarios in the protocol flow:
1) Task information signed for requestor R in task classification algorithm TCategory ()
Figure BDA0003575149190000215
Performing batch verification;
2) Solution information signed for worker in the worker classification algorithm WCategorism ()
Figure BDA0003575149190000216
Performing batch verification;
3) Requestor R versus Transaction at solution evaluation E2 Is a batch verification of (c).
2. Application example. In order to prove the inventive and technical value of the technical solution of the present invention, this section is an application example on specific products or related technologies of the claim technical solution.
The decentralized crowdsourcing system supporting efficient privacy protection is built by a Hyperledger Fabric alliance chain platform, runs on a host with a memory size of 16GB, CPU of Intel Core i7-8700 and an operating system of Ubuntu Linux 18.04.6. At the same time, use is made of a CPU
Figure BDA0003575149190000221
The SGX SDK implements the relevant operations on SGX. The technical scheme of the invention utilizes the public data set CIFAR-10 to test, randomly selects 500, 1000, 2000 and 3000 tasks in the simulation data set as input, randomly selects 1 requester and 10 workers as participating entities of the crowdsourcing platform, and prescribes that each requester issues 10 tasks and each worker requests to upload 10 solutions for each task.
3. Evidence of the effect of the examples. The embodiment of the invention has a great advantage in the research and development or use process, and has the following description in combination with data, charts and the like of the test process.
Functionally, the technical scheme of the invention has fairness and verifiability, data confidentiality, data integrity and robustness and supports batch verification signature. Analysis and comparison with the related work demonstrated the functional superiority of the present invention over the existing work, see table 1.
Table 1 functional comparison of the invention with other solutions
Figure BDA0003575149190000222
/>
Efficiency of the inventionAccording to the technical scheme, the anti-centralized crowdsourcing system supporting efficient privacy protection is built on a host with 16GB memory size, intel Core i7-8700 CPU and Ubuntu Linux 18.04.6 operating system by applying a Hyperledger Fabric alliance chain platform, and the anti-centralized crowdsourcing system supporting efficient privacy protection is utilized in the CPU
Figure BDA0003575149190000223
The SGX SDK implements the relevant operations on SGX. Testing by using a public data set CIFAR-10, randomly selecting 500, 1000, 2000 and 3000 tasks in a simulation data set as input, randomly selecting 1 requester and 10 workers as participating entities of a crowdsourcing platform, and prescribing that each requester issues 10 tasks and each worker requests uploading 10 solutions for each task. Finally, compared with the prior scheme CrowdBC, the experimental result is shown in figure 5.
Experiments show that:
1) After the number of tasks reaches about 1600, the performance consumption of the technical scheme of the invention is lower than that of a CrowdBC scheme;
2) The technical proposal of the invention shows the trend of convex curve, namely the increasing rate of the block generation time is reduced along with the increase of the task number
In summary, the above experiments demonstrate the superiority of the present invention over existing work in efficiency.
The foregoing is merely illustrative of specific embodiments of the present invention, and the scope of the invention is not limited thereto, but any modifications, equivalents, improvements and alternatives falling within the spirit and principles of the present invention will be apparent to those skilled in the art within the scope of the present invention.

Claims (9)

1. The decentralized crowdsourcing method supporting efficient privacy protection is characterized by comprising the following steps of:
establishing a system model, and describing the interaction process among a requester, a worker and an SGX-based crowdsourcing blockchain SCB; the protocol flow is constructed, which comprises four stages of system initialization, task release, solution submission and rewarding distribution; a batch verification method is adopted for the digital signature on the crowdsourcing blockchain; carrying out comprehensive systematic task management on tasks, including task classification, task matching and task verification;
the task release includes:
performing relevance verification on a requester R or a task classification TCate issued before or a task to be issued by Enclave 1; uploading signed task information by requestor R
Figure QLYQS_1
To enclaspe 1, it is obfuscated by enclaspe 1 to address Addr * E1 And task classification TCate is embedded in a new transaction; broadcasting the transaction by Enclave1, verifying the validity of the transaction by an endorsement node, and then issuing the transaction to a crowdsourcing blockchain platform SCB;
the detailed steps of the task release stage are as follows:
(3a) The requester R uploads its own set of attributes to Enclave1
Figure QLYQS_2
And task classification TCate or task description
Figure QLYQS_3
Correlation verification policy negotiated by enclase 1 with multiple requesters at the same time +.>
Figure QLYQS_4
Follow-up attribute set->
Figure QLYQS_5
Uploading the task classification TCate or task description taskInfo to Enclave1 together;
(3b) Enclave1 receives the Attribute set
Figure QLYQS_6
After task description TaskInfo and correlation verification policy RelVerpol, executing correlation verification function RelVer () and returning verification valueRelVerVal; if the verification value RelVerVal is True, the Enclave1 corresponding sealing key SealKey is sent E1 Giving the requester R; if the verification value RelVerVal is False, sending access refusal information to the requester R;
(3c) The requestor R receives the seal Key SealKey of Enclave1 E1 After that, the writing authority of Enclave1 is obtained and the signed task information is written
Figure QLYQS_7
Generating an Enclave memory confusion address Addr according to an Enclave confusion address generation algorithm Confuse () * E1
(3d) Enclave1 receives the task information
Figure QLYQS_8
Then, verifying the signature and calling a task classification algorithm TCategory (), and generating a task classification TCate of the task information;
(3e) Enclave1 obfuscates its memory address Addr * E1 And task classification TCate embedded into new Transaction transactions E1 In the process, the private key sk of the user is used at the same time E1 Generating a signature for a transaction
Figure QLYQS_9
Wherein pk is E1.next Public key representing the generation of enclaspe for the next Transaction, transaction E1.pre Representing a last transaction output;
(3f) Enclave1 broadcast Transaction E1 The method comprises the steps of carrying out a first treatment on the surface of the Blockchain endorsement node verifies Transaction transactions E1 If validated, it is added to the new block and is uplinked.
2. The decentralized crowdsourcing method supporting efficient privacy protection of claim 1, wherein the system initialization comprises:
requestor R and worker W i (i is more than or equal to 1 and less than or equal to t), and registering with a trusted authority to obtain a unique identity identifier ID R And
Figure QLYQS_10
calling a key generation algorithm KGen (), and respectively generating public and private key pairs pk of a requester R 、sk R Public and private key pair of worker
Figure QLYQS_11
Public-private key pair pk of enclase 1 and enclase 2 E1 、sk E1 、pk E2 、sk E2 The method comprises the steps of carrying out a first treatment on the surface of the The SCB acquires a root seal key RootSealKey of SGX in the system; at the same time, the requester R obtains an address Addr of Enclave E1 A read-only mode for obtaining Enclave 1; the trusted authority comprises a CA node in a alliance chain Fabric.
3. The decentralised crowdsourcing method supporting efficient privacy protection as recited in claim 1, wherein the solution submission comprises:
attribute by enclase 2 pair
Figure QLYQS_12
Or worker classification->
Figure QLYQS_13
Performing correlation verification, and after verification is passed, performing correlation verification on the worker W i Authorization of Enclave2 access rights and through transactions E1 Addr on (a) * E1 Reading task information of Enclave 1; solution by enclase 2 +.>
Figure QLYQS_14
Performing correctness verification, and after passing the verification, performing the verification by the worker W i Write solution->
Figure QLYQS_15
To Enclave2; the address Addr will be confused by enclase 2 * E2 And worker classification->
Figure QLYQS_16
Embedding into a new transaction; from the following componentsEnclave2 broadcasts the transaction and issues the transaction to a crowd-sourced blockchain platform SCB after the endorsement node verifies the validity of the transaction;
the detailed steps of the solution commit phase are as follows:
(4a) Worker W i Uploading own set of attributes to enclaspe 2
Figure QLYQS_17
Or worker categorizing WCates Wi Correlation verification policy negotiated by Enclave2 with multiple workers at the same time ∈2>
Figure QLYQS_18
With property set->
Figure QLYQS_19
Or worker classification
Figure QLYQS_20
Uploading the same to Enclave2;
(4b) Enclave2 receives the attribute set of the worker
Figure QLYQS_21
Or after the worker classifies WCate and the correlation verification policy RelVerpol, executing a correlation verification function RelVer (), and returning a correlation verification result RelVerVal; if the verification value RelVerVal is True, authorizing an access right of Enclave, and sending the physical memory address Addr of Enclave2 E2 For workers W i The method comprises the steps of carrying out a first treatment on the surface of the If the verification value RelVerVal is False, then the worker W is presented with i Sending access refusal information;
(4c) Worker W i On receipt of the physical memory address Addr of enclaspe 2 E2 After that, the Transaction is read by Enclave2 E1 Memory confusion address Addr of Enclave1 on * E1 Obtaining the actual memory address Addr of Enclave1 after confusion calculation E1 Reading task information of Enclave 1; the worker is according to the Transaction E1 The task classification parameter TCate is used for selecting tasks suitable for being completed by the user;
(4d) Worker W i After finding a task that is suitable for self-completion, the solution is uploaded in time period (time 1, time 2)
Figure QLYQS_22
On Enclave2, executing a correctness verification algorithm CorVer () by Enclave2 in combination with a correctness verification policy CorVerpol provided by a requester R, and returning a correctness verification result CorVerVal; if the verification value CorVerVal is True, authorizing the write permission of an Enclave, and transmitting the sealing key SealKey of the Enclave2 E2 For workers W i The method comprises the steps of carrying out a first treatment on the surface of the If the verification value RelVerVal is False, then the worker W is presented with i Sending write refusal information;
(4e) Worker W i Seal key SealKey on receipt of Enclave2 E2 After writing a signed solution
Figure QLYQS_23
Generating an Enclave memory confusion address Addr according to an Enclave confusion address generation algorithm Confuse () * E2
(4f) Enclave2 receives the solution information
Figure QLYQS_24
Then, the signature is verified to call a worker classification algorithm WCatetry (), and a worker classification parameter of the worker is generated>
Figure QLYQS_25
(4g) Enclave2 obfuscates its memory address Addr * E2 And worker classification parameters
Figure QLYQS_26
Embedding into new Transaction transactions E2 In the process, the private key sk of the user is used at the same time E2 Generating signature for transaction E2 ←Ed25519(sk E2 ,Hash(Transaction E2.pre ||Addr * E2 ||pk E2.next ));
(4h) Enclave2 broadcast trafficEasy Transaction E2 The method comprises the steps of carrying out a first treatment on the surface of the Blockchain endorsement node verifies Transaction transactions E2 If validated, it is added to the new block and is uplinked.
4. The decentralized crowdsourcing method supporting efficient privacy protection of claim 1, wherein the rewards distribution consists of a requestor R assessment solution, an upload rewards distribution mechanism, and a crowdsourcing blockchain SCB distribution rewards three parts, the rewards distribution phase detailed steps are as follows:
(5a) Requestor R evaluates solution: the requestor R receives and decompresses the validated Transaction transactions E2 Performing solution evaluation; obtaining the confusion memory address Addr of Enclave2 where the solution is located after decompression * E2 Accessing the Enclave2 through a memory address sequence on the Enclave1, thereby obtaining the read-only authority of the Enclave 2; wherein pseudo random number r in confusing address generation algorithm confusing () E Valid only for the valid period (time 3, time 4) of the requester solution evaluation, obfuscating the address Addr after the time point time4 has passed * E2 Will be updated to the new alias address Addr * E2 ' the requester will not be able to obtain the actual physical memory address Addr of Enclave E
(5b) Requestor R uploads prize allocation mechanism: after the requestor R obtains the read-only rights of its solutions by decompressing all transactions, it decompresses all solutions Sol stored on Enclave W Performing subjective evaluation once to obtain an evaluation value REval meeting the sum of conditional evaluation as 100, generating an evaluation matrix REval according to the following formula, and storing the evaluation matrix REval in an Enclave1;
Figure QLYQS_27
(5c) The crowd-sourced blockchain SCB allocates rewards according to a rewards incentive policy RewPol: generating Transaction transactions from Enclave1 reward The SCB brings the evaluation matrix REval into a bonus incentive strategy, rewPol, which is given by the following formula:
Figure QLYQS_28
5. the decentralised crowdsourcing method supporting efficient privacy protection as claimed in claim 1, wherein the design of the batch verification signature algorithm for Ed25519 is performed using ω -NAF pseudo random number perturbation method;
When the endorsement node verifies that t Ed25519 signatures (m 1 ,R 1 ,S 1 ),(m 2 ,R 2 ,S 2 ),…,(m t ,R t ,S t ) The adopted elliptic curve parameters are params= { p, a, b, G, n }, and the key pair corresponding to the signer is (d, H), wherein H is a public key and d is a private key;
the verification equation for each of the t Ed25519 signatures is:
Figure QLYQS_29
if all signatures are from the same signer, the validation equation expression is reduced to:
Figure QLYQS_30
6. the decentralized crowdsourcing method supporting efficient privacy protection of claim 1, wherein the task is subject to comprehensive systematic task management including task classification, task matching and task verification; the method specifically comprises six steps: crowd-sourced task classification, worker classification, matching of crowd-sourced tasks and worker solutions, trust value generation, correlation verification policy generation and correctness verification policy generation;
(7a) Crowd-sourced task classification, calling a task classification function TCategory (), and generating a rule tree Ta by Enclave1 according to task description TaskInfoskTree, and is stored by exclusive Enclave_rule; the crowdsourcing task classification flow: first, in the system initialization stage, the crowd-sourced blockchain SCB reads the enclave_rule, if there is a Rule tree TaskTree of the last crowd-sourced operation pre Reading the rule tree TaskTree pre As a rule tree TaskTree of the crowdsourcing operation; if the reading result is empty, randomly generating an initial rule tree TaskTree according to the keyword library 0 The method comprises the steps of carrying out a first treatment on the surface of the Secondly, after each crowdsourcing operation is finished, adding a rule tree task tree into the generated new task classification TCate for real-time updating;
(7b) Worker classification, enclase 2 based on the number of times the correct solution was uploaded, by the worker classification algorithm WCategory () and the evaluation algorithm Eval)
Figure QLYQS_31
And evaluating REval, the final generated classification parameter WCate comprising a task classification column vector TCate and a worker evaluation column vector +.>
Figure QLYQS_32
The special enclaspe_WTRee is used for storing and recording the situation of the worker's honest completion of tasks; worker classification flow: firstly, in the system initialization stage, the crowd-sourced blockchain SCB reads enclave_WTRee, if empty, the worker is proved to execute the crowd-sourced operation for the first time, and the WCate is classified for the worker 0 Initializing, i.e.)>
Figure QLYQS_33
If there is an existing worker classification->
Figure QLYQS_34
Then continue to use; second, after each crowdsourcing operation is completed, a new task class is generated>
Figure QLYQS_35
Will be added to the worker classification matrix->
Figure QLYQS_36
Updating in real time;
(7c) Matching crowd-sourced tasks and worker solutions, endorsement nodes are in the process of Transaction E2 After verification and uplink, firstly, the endorsement node classifies TCate to Transaction according to tasks E2 Matching the above steps; second, if the match is successful, the endorsement node will transmit the Transaction through the crowd-sourced blockchain SCB E2 Recommending to a requester R who issues a corresponding task class TCate; then, the requester R takes the successful Transaction E2 The public key pk of the public Enclave2 will then be used E2 Signature verification is carried out, and after verification is passed, a requester considers that the Transaction is not tampered E2 The method comprises the steps of carrying out a first treatment on the surface of the Finally, decompress the Transaction E2 Thereby performing the next solution evaluation;
in the process of matching, the endorsement node quantifies the capability of the worker to finish the specific task classification TCate, and gives the worker four kinds of evaluation SEval:
Figure QLYQS_37
of these, four were evaluated SEval: expert, skilled, novice Freshman, and mismatching micmatch; the evaluation SEval takes an evaluation vector SEval generated according to different task classifications TCate as an identifier, and is recorded in an enclave_WTRee in honest by a crowd-sourced blockchain system SCB after being combined with WCate;
(7d) Worker trust value beta W Is generated by WCate to generate trust value beta of worker W The formula:
Figure QLYQS_38
wherein τ TCate The weight of TCate on the task Tree is specified by a requester when issuing a task and is nested on the task Tree;
Figure QLYQS_39
For the evaluation value of the worker, an evaluation algorithm is used +.>
Figure QLYQS_40
Generating;
(7e) The generation of a correlation verification policy RelVerpol, wherein a correlation verification algorithm RelVer () comprises verification of task descriptions and verification of worker identities; correlation verification policy negotiated by enclaspe with multiple requesters or workers
Figure QLYQS_41
The generation step of the correlation strategy RelVerpol comprises the following steps:
(7f.1) Enclave1 performing correlation verification on the requester R task description; if the requester R issues a task request for the first time, after uploading a task, executing a task classification algorithm TCategory (), outputting a task classification parameter TCate, recording a new TCate in a mode that Enclave1 accesses Enclave_rule, and matching the TCate with the existing Rule tree task tree; if requestor R previously participated in the crowdsourcing operation, owning TCate, then the dependency verification policy RelVerPol is directly executed:
Figure QLYQS_42
(7f.2) Enclave2 for worker W i Identity verification; if it is worker W i The first time the crowd-sourced operation is participated in, its attribute is verified
Figure QLYQS_43
Outputting RelVerVal according to whether the output is within a set range; if there was a previous participation in the crowdsourcing operation, then use
Figure QLYQS_44
Matching TCate in the rule tree with the rule tree TaskTree, and generating a correlation verification strategy RelVerpol:
Figure QLYQS_45
(7g) Generating a correctness verification policy CorVerpol, wherein a correctness verification algorithm CorVer () is suitable for workers W i Submitting a solution
Figure QLYQS_46
Afterwards, enclave2 vs. solution->
Figure QLYQS_47
A verification process of correctness; its correctness verification strategy CorVerPol: for solution Sol Wi Task Info is described by previously published tasks using the task classification algorithm TCategory () pre Rule tree in (3) TaskTree pre For solution->
Figure QLYQS_48
Is refined to generate a solution class SCate, where SCate is analogous to TCate in the task class; finally, matching SCate with the rule tree task tree of the task, and verifying the correctness of the strategy CorVerPol:
Figure QLYQS_49
7. a decentralized crowdsourcing system supporting efficient privacy protection applying the decentralized crowdsourcing method supporting efficient privacy protection of any one of claims 1-6, wherein the decentralized crowdsourcing system supporting efficient privacy protection comprises three entities, namely a requester, a worker and an SGX-based crowdsourcing blockchain SCB;
the requester is used for issuing a crowdsourcing request task to the SCB, evaluating the solution submitted by the worker on the chain, and giving corresponding rewards to the worker submitting the correct solution according to a task strategy when issuing the crowdsourcing request task;
The worker is used for solving the task requirement of the requester in the task submission period and submitting a correct solution to the SCB, and expects to obtain task rewards;
the crowd-sourced blockchain SCB based on SGX is used for initializing and authenticating user identity, managing crowd-sourced tasks and issuing rewards.
8. A computer device comprising a memory and a processor, the memory storing a computer program which, when executed by the processor, causes the processor to perform the steps of:
establishing a system model, and describing the interaction process among a requester, a worker and an SGX-based crowdsourcing blockchain SCB; the protocol flow is constructed, which comprises four stages of system initialization, task release, solution submission and rewarding distribution; a batch verification method is adopted for the digital signature on the crowdsourcing blockchain; and carrying out comprehensive systematic task management on the tasks, including task classification, task matching and task verification.
9. A computer readable storage medium storing a computer program which, when executed by a processor, causes the processor to perform the steps of:
Establishing a system model, and describing the interaction process among a requester, a worker and an SGX-based crowdsourcing blockchain SCB; the protocol flow is constructed, which comprises four stages of system initialization, task release, solution submission and rewarding distribution; a batch verification method is adopted for the digital signature on the crowdsourcing blockchain; and carrying out comprehensive systematic task management on the tasks, including task classification, task matching and task verification.
CN202210330544.9A 2022-03-31 2022-03-31 Decentralized crowdsourcing method, system and terminal supporting efficient privacy protection Active CN114826684B (en)

Priority Applications (1)

Application Number Priority Date Filing Date Title
CN202210330544.9A CN114826684B (en) 2022-03-31 2022-03-31 Decentralized crowdsourcing method, system and terminal supporting efficient privacy protection

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
CN202210330544.9A CN114826684B (en) 2022-03-31 2022-03-31 Decentralized crowdsourcing method, system and terminal supporting efficient privacy protection

Publications (2)

Publication Number Publication Date
CN114826684A CN114826684A (en) 2022-07-29
CN114826684B true CN114826684B (en) 2023-06-16

Family

ID=82531950

Family Applications (1)

Application Number Title Priority Date Filing Date
CN202210330544.9A Active CN114826684B (en) 2022-03-31 2022-03-31 Decentralized crowdsourcing method, system and terminal supporting efficient privacy protection

Country Status (1)

Country Link
CN (1) CN114826684B (en)

Families Citing this family (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN115168872B (en) * 2022-09-07 2023-01-10 南方科技大学 Decentralized trust-based method for protecting TEE state continuity under public cloud

Citations (3)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN107248980A (en) * 2017-06-01 2017-10-13 西安电子科技大学 Mobile solution commending system and method with privacy protection function under cloud service
CN112257079A (en) * 2020-09-21 2021-01-22 西安电子科技大学 High-performance crowdsourcing system based on mixed block chain and task privacy protection method
CN114168913A (en) * 2021-12-06 2022-03-11 北京航空航天大学 Crowd-sourcing result evaluation and reward distribution method, system and medium based on intelligent contracts

Family Cites Families (7)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US20130197954A1 (en) * 2012-01-30 2013-08-01 Crowd Control Software, Inc. Managing crowdsourcing environments
CN107273492B (en) * 2017-06-15 2021-07-23 复旦大学 Interaction method for processing image annotation task based on crowdsourcing platform
CN111784272A (en) * 2019-04-03 2020-10-16 湖州师范学院 Decentralized online crowdsourcing mechanism based on intelligent contract
CN111769945B (en) * 2019-06-28 2023-09-26 北京沃东天骏信息技术有限公司 Auction processing method based on block chain and block chain link point
CN111478772B (en) * 2020-06-22 2020-10-16 杭州趣链科技有限公司 Assembly line friendly signature and signature verification method, device and storage medium
CN112187712B (en) * 2020-08-18 2021-10-22 西安电子科技大学 Anonymous authentication method and system for trust in de-center mobile crowdsourcing
CN113553613B (en) * 2021-06-29 2023-05-05 福建师范大学 Space crowdsourcing method based on deep reinforcement learning and blockchain

Patent Citations (3)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN107248980A (en) * 2017-06-01 2017-10-13 西安电子科技大学 Mobile solution commending system and method with privacy protection function under cloud service
CN112257079A (en) * 2020-09-21 2021-01-22 西安电子科技大学 High-performance crowdsourcing system based on mixed block chain and task privacy protection method
CN114168913A (en) * 2021-12-06 2022-03-11 北京航空航天大学 Crowd-sourcing result evaluation and reward distribution method, system and medium based on intelligent contracts

Also Published As

Publication number Publication date
CN114826684A (en) 2022-07-29

Similar Documents

Publication Publication Date Title
Uddin et al. A survey on the adoption of blockchain in iot: Challenges and solutions
De Oliveira et al. Towards a blockchain-based secure electronic medical record for healthcare applications
CN115769241A (en) Privacy preserving architecture for licensed blockchains
WO2022017413A1 (en) Sustainable tokens for supply chain with privacy preserving protocol
Bergquist Blockchain technology and smart contracts: privacy-preserving tools
Ahmed et al. Blockchain-based identity management system and self-sovereign identity ecosystem: A comprehensive survey
Rashid et al. RC-AAM: blockchain-enabled decentralized role-centric authentication and access management for distributed organizations
Babu et al. MediBlocks: secure exchanging of electronic health records (EHRs) using trust-based blockchain network with privacy concerns
CN114826684B (en) Decentralized crowdsourcing method, system and terminal supporting efficient privacy protection
De Oliveira et al. Smartaccess: Attribute-based access control system for medical records based on smart contracts
Rahmadika et al. Reliable collaborative learning with commensurate incentive schemes
Zainal et al. A decentralized autonomous personal data management system in banking sector
Baniata et al. Prifob: a privacy-aware fog-enhanced blockchain-based system for global accreditation and credential verification
Thilagavathy et al. A novel framework paradigm for EMR management cloud system authentication using blockchain security network
CN112350863B (en) Decentralized access control method and system based on transaction
Zhang et al. A traceable and revocable multi-authority attribute-based access control scheme for mineral industry data secure storage in blockchain
Erhan et al. A Conceptual Model for Blockchain-Based Software Project Information Sharing.
Devi et al. User authentication of industrial internet of things (IIoT) through Blockchain
Nguyen et al. Blockchain-empowered trustworthy data sharing: Fundamentals, applications, and challenges
Sujihelen An efficient chain code for access control in hyper ledger fabric healthcare system
KR102450412B1 (en) SLA-Based Sharing Economy Service with Smart Contract for Resource Integrity in the Internet of Things
CN114826572A (en) Decentralized crowdsourcing method and system supporting attribute privacy protection and terminal
Sonya et al. An effective blockchain‐based smart contract system for securing electronic medical data in smart healthcare application
An et al. Achieving Secure and Efficient P2P Data Trading based on Blockchain for Internet of Things
Jain et al. A security analysis of lightweight consensus algorithm for wearable kidney

Legal Events

Date Code Title Description
PB01 Publication
PB01 Publication
SE01 Entry into force of request for substantive examination
SE01 Entry into force of request for substantive examination
GR01 Patent grant
GR01 Patent grant