【技术实现步骤摘要】
基于区块链的群智感知MCS的参与者的隐私保护方法
[0001]本专利技术创造属于网络
,具体是一种基于区块链的群智感知参与者隐私保护方法。
技术介绍
[0002]一个典型的MCS系统由数据请求者、服务器(MCS平台)以及移动用户组成。服务器将数据请求者的任务分配给MCS系统中的移动用户,移动用户使用移动智能设备完成数据采集发送回服务器并获取一定的报酬。
[0003]随着智能时代的到来,群智感知
[1,2](Mobile Crowd Sensing,简称MCS)利用带有传感器的移动设备来收集和共享数据,参与者将MCS作为一种新的感知环境平台并在其中注册参与感知任务,服务器选择合适的参与者(移动设备)来完成数据收集任务,参与者上传符合条件的数据以获得奖励。
[0004]为完成群智感知任务,参与者需要亲自前往服务器指定的位置来收集所需要的数据。在此期间,参与者的身份及位置信息可能会泄露给不受信任的服务器,体现在:1)参与者需要向服务器提交他们的位置,以便更有效地分配任务,攻击者会恶意获取到他们的位置信息;2)当参与者接受分配的任务时,服务器知道该参与者的最终目的地,不受信任的服务器也会泄露参与者的位置信息;3)完成任务后服务器处理支付时,将支付金额与报酬相联系可以推断出参与者的身份信息甚至工作地点。这样,大大减少了参与者的积极性,降低了感知任务完成率。由此可知,如何保护参与者隐私对群智感知系统至关重要。
[0005]为了解决上述挑战,同时满足参与者位置隐私和身份信息保护的需求,可以引入 ...
【技术保护点】
【技术特征摘要】
1.一种基于区块链的群智感知MCS的参与者的隐私保护方法,所述群智感知MCS的角色包括参与者、请求者、数据服务商和代理,其特征是参与者在群智感知MCS的执行过程中:1)参与者身份认证:参与者在申请任务前,向身份认证服务申请认证,生成身份标识符和密钥;经过身份认证的授权内容存储在数据服务商本地数据库;2)请求者发布任务:任务请求者使用参与者的签名和公钥,将包含任务信息和参与者执行要求的感知合同以交易的形式发布到公共区块链;代理从公共区块链下载与任务相关的所有信息,并发布到代理的私有区块链网络上;3)参与者申请任务:在接收到广播任务信息后,想要执行任务的参与者根据需要发起包含工作信息和押金来签订相应任务的合同;押金是用来防止欺诈的,如果参与者没有成功进行身份认证,押金退回;4)参与者任务分配:选择参与者进行任务分配;被选中分配任务的参与者进入步骤5);没被选中的参与者的押金被返还;选择参与者是采用基于贪婪算法的空间位置保护和优化方法,选择最优的参与者-任务;5)参与者上传感知数据:参与者将收集的数据上传到区块链;代理验证上传数据的质量;6)支付:若上传的数据是合格的,请求者在区块链中定义智能合约自动执行付款流程。2.根据权利要求1所述基于区块链的群智感知MCS的参与者的隐私保护方法,其特征是所述步骤1)中,使用SM9公钥加密算法对参与者身份信息进行加密,步骤包括:首先,将参与者的账户和其多个身份特征信息使用SM9算法分别生成数字摘要,用井号组合连接为字符串,生成参与者数字摘要;同理,使用数据服务商的公钥,对数据服务商字符串组合进行公钥加密,形成数据服务商公钥加密密文;然后,将参与者的数字摘要和数据服务商数字摘要井号组合,得到参与者公钥加密密文,并将组合后的密文写入区块链。3.根据权利要求3所述基于区块链的群智感知MCS的参与者的隐私保护方法,其特征是所述步骤2~4)中:把任务区域划分为多个子区域;假设参与者w
i
的工作区域为圆形,则任务区域的划分空间为参与者w
i
工作区域半径的整数倍,从而将目标区域的全覆盖近似转化为子区域内子目标的全覆盖;目标区域是执行任务对应的任务执行位置所在区域。4.根据权利要求3所述基于区块链的群智感知MCS的参与者的隐私保护方法,其特征是所述步骤3)中:对参与者进行预控制方法为:如果任务区域内选择执行任务的参与者数超过了任务请求者所需的最大参与者数,则较晚选择任务的参与者就不能顺利签订合同。5.根据权利要求3所述基于区块链的群智感知MCS的参与者的隐私保护方法,其特征是所设任务T分为j个子任务t
j
;所述步骤2)中,请求者将任务t
j
发布到区块链;所述步骤3)中,参与者w
i
在申请任务t
j
时上传自己首选的工作区域;参与者w
i
在申请任
务时仅上传自己首选的工作区域r
i
,并使用隐身区域a
i
对参与者的位置匿名;r
i
是以o为中心,r为半径的区域;在r
i
中有含有参与者的隐身区域a
i
,a
i
是基于参与者真实位置的空间匿名区域;所述步骤4)中,任务对参与者进行判断,并最终选中执行任务t
j
的参与者w
i
,表示为参与者-任务{w
i
,t
j
};定义:参与者集合W={w1,w2,...,w
i
},任务集合T={t1,t2,...,t
j
},参与者-任务覆盖集合S={w1,w2,...,w
i
,t1,t2,...,t
j
};集合C={{w
i
,t
j
}w
i
∈S,t
j
∈S}是S的子集;选择最优的参与者-任务即为找到S的最小子集合A∈C来覆盖S;任务t
j
是否选中参与者w
i
描述为w
i
到子区域j的映射,用选择参与者矩阵X表示;如果x
i,j
=1,则表示子区域j选择参与者w
i
;j...
还没有人留言评论。发表了对其他浏览者有用的留言会获得科技券。