1.一种基于区块链的群智感知双重隐私保护方法,其特征在于:所述的基于区块链的群智感知双重隐私保护方法包括按顺序进行的下列步骤:
1):任务发布中心发布感知任务,并向区块链网络发送该任务相关的消息;
2):区块链网络接收到上述消息后通过智能合约生成感知任务通知并广播给所有工人;
3):工人接收到上述感知任务通知后执行感知任务,并将感知数据上传给区块链网络;
4):区块链网络中的节点利用共识算法来竞争记账权,获得记账权的矿工验证感知数据的质量,并根据贡献度量化奖励,然后生成最终区块;
5):当最终区块被记录到区块链上时,奖励也会被分配给相应的工人和矿工。
2.根据权利要求1所述的基于区块链的群智感知双重隐私保护方法,其特征在于:在步骤1)中,所述的任务发布中心发布感知任务,并向区块链网络发送该任务相关的消息的方法包括以下步骤:
101):根据质量评级表QGTtask给出的具体质量评估和奖励标准,任务发布中心计算出某一感知任务的预计总薪酬并作为支付押金M;
102):任务发布中心根据上述质量评级表QGTtask和支付押金M生成感知任务Task;
103):任务发布中心根据公式 并结合上述感知任务生成与该任务相关的信息并发送给区块链网络,其中h(Task)表示该感知任务的单向散列值, 表示对散列之后的感知任务使用任务发布中心的私钥SKTRC进行的数据签名。
3.根据权利要求1所述的基于区块链的群智感知双重隐私保护方法,其特征在于:在步骤2)中,所述的区块链网络接收到上述消息后通过智能合约生成感知任务通知并广播给所有工人的方法包括下列步骤:
201):当区块链网络收到任务发布中心发送消息后,首先验证数据签名是否正确;
202):验证感知任务的单向散列值h(Task)是否正确;
203):判断时间窗口是否在已设置的时间范围内;
204):如果判断结果为时间窗口在已设置的时间范围内,将当前感知任务生成感知任务通知,并将此感知任务通知广播给所有工人。
4.根据权利要求1所述的基于区块链的群智感知双重隐私保护方法,其特征在于:在步骤3)中,所述的工人接收到上述感知任务通知后执行感知任务,并将感知数据上传给区块链网络的方法包括以下步骤:
301):在收到广播的感知任务通知后,所有工人都将依据自己的能力和兴趣判断感知任务的内容和要求,并进行成本评估,从而获得成本评估值CE;
302):根据上述成本评估值CE初步筛选出γ个任务参与者;
303):每个任务参与者根据感知任务通知中的感知任务要求分别采集感知数据每个采集的感知数据中都包含一个时间参数 该时间参数通过下式获得:
其中,tend表示感知任务结束时间,tstart表示感知任务开始时间,ttrans表示感知数据传输时间,α是一个常量,可根据当前网络条件进行动态调整;
304):任务参与者分别对采集到的感知数据进行加密而获得加密感知数据 并生成签名
305):当γ≤21时,区块链网络利用首席工人选择算法选择出首席工人 否则区块链网络先利用核心工人选择算法再用首席工人算法选择出首席工人
306):首席工人 将上述所有任务参与者的加密感知数据进行汇总而获得加密感知汇总数据 并对所有任务参与者的签名进行聚合生成聚合签名ε;
307):首席工人 将由上述加密感知汇总数据和聚合签名构成的信息(C,ε)发送到区块链网络。
5.根据权利要求4所述的基于区块链的群智感知双重隐私保护方法,其特征在于:在步骤305)中,所述的区块链网络利用首席工人选择算法选择出首席工人 的方法包括下列步骤:A.参数初始化:fellow←wi, Nv=0,其中(i∈1,2,...,γ|γ>3f+1),f表示不可信工人的数量, 表示工人wi的任期编号,Nv表示初始数值;
B.设定随机结束时间Tout,并开启计数器;
C.当时间窗口在随机结束时间Tout范围内时,重复执行以下所有步骤;
D.将该工人标记为候选者,令TN+1;
E.重新开启计数器,令Nv+1;
F.将投票请求发送到所有其他节点并等待回复投票;
G.当收到回复投票时,重新计算初始数值Nv,如果 则将该候选者选为首席工人 当收到首席工人 确认时,将候选者标记为工人,否则循环执行步骤F、G而进入下一轮选择。
6.根据权利要求4所述的基于区块链的群智感知双重隐私保护方法,其特征在于:在步骤305)中,所述的区块链网络先利用核心工人选择算法再用首席工人算法选择出首席工人的方法包括下列步骤:A1.工人wi将SV发送给若干其他工人,不包括自己,其中SV表示每个工人wi的初始投票额度;
B1.每个工人各自计算所收到的票数Ni;
C1.将所有工人的票数进行排序,选择前21名,并生成核心工人列表L;
D1.对核心工人列表L执行乱序排序;
E1.从剩下的γ-21个工人中选择b个工人作为预备核心工人bli,其中10<b<γ-21;
F1.如果出现失效的工人,则从预备核心工人bli中随机选择新的工人并加入到核心工人列表L中,并对核心工人列表L再次执行乱序排序;
G1.核心工人列表L中的核心工人再继续按照首席工人选择算法选出首席工人
7.根据权利要求1所述的基于区块链的群智感知双重隐私保护方法,其特征在于:在步骤4)中,所述的区块链网络中的节点利用共识算法来竞争记账权,获得记账权的矿工验证感知数据的质量的方法包括下列步骤:
401):区块链网络中的矿工使用PoW共识算法来竞争此次感知任务通知的记账权,矿工通过不断执行哈希运算来寻找符合系统设定的一组目标数值,具体表示如下:SHA256(SHA256(block+nonce))<traget
402):获得记账权的矿工mφ对聚合签名ε进行验证;
403):聚合签名验证通过后,获得记账权的矿工mφ生成非对称密钥对 并将其中的公钥l发送给γ个任务参与者;
404):γ个任务参与者用公钥l加密数据 并将加密后的密文发送给获得记账权的矿工mφ;
405):获得记账权的矿工mφ收到密文后,用下式进行解密:接着,获得记账权的矿工mφ解密加密感知汇总数据 并利用数据 计算感知加密数据 从而获得记账权的矿工mφ得到感知数据集:
406):获得记账权的矿工mφ对上述感知数据集中感知数据的质量进行初步评估,并筛选出不符合要求的感知数据;
407):获得记账权的矿工mφ对筛选后的感知数据集Dac进一步进行评估,首先计算工人wj的数据时间参数 的数学期望值 其中s表示筛选后的感知数据个数;
408):获得记账权的矿工mφ依据感知数据的质量,按每个工人的数据时间参数 的数学期望值 对筛选后的感知数据集Dac进行分类。
8.根据权利要求1所述的基于区块链的群智感知双重隐私保护方法,其特征在于:在步骤4)中,所述的根据贡献度量化奖励的方法包括以下步骤:
4001):对筛选后的感知数据集Dac中的每个感知数据都设定一个奖励评估值,并计算s个工人的总奖励收入f(Dac);
4002):计算工人wj的奖励值
4003):按下式计算获得记账权的矿工mφ的奖励值:其中Δsystem表示区块生成的系统奖励。
9.根据权利要求1所述的基于区块链的群智感知双重隐私保护方法,其特征在于:在步骤5)中,所述的当最终区块被记录到区块链上时,奖励也会被分配给相应的工人和矿工的方法是:所有矿工都将被大多数工人共识过的最终区块记录在最长的那条区块链上,同时也会将在步骤4)中计算好的奖励值分配给工人和自己。