【技术实现步骤摘要】
支持低成本隐私保护的可链接去中心化众包方法及系统
[0001]本专利技术属于区块链/隐私保护的
,具体涉及一种支持低成本隐私保护的可链接去中心化众包方法及系统。
技术介绍
[0002]众包模式是一种通过互联网平台向大众征集解决方案的新型技术,随着互联网技术的高速发展,众包概念自2006年被提出以来,被作为一种分布式解决问题的机制,逐渐成为主流的商业模式。然而传统的众包应用大多依赖于中心化的系统架构,因此不可避免地会产生单点故障、数据泄露等缺陷,同时也容易受到分布式拒绝服务攻击和女巫攻击。近年来,随着区块链的高速发展,其去中心化的特性使其为解决众包系统中心化问题提供了可能性,因此基于区块链的众包系统成为了当前的研究热点。然而区块链具有公开透明的特性,严重威胁着众包系统参与者的隐私数据;同时由于在区块链上进行操作需要一定的开销,当众包系统的参与者规模增大时,会产生系统总开销过大、系统性能降低等问题。如论文《CrowdBC:A Blockchain
‑
Based Decentralized Framework for Crowdsourcing》中,作者提出了一个基于区块链的去中心化众包系统的框架,实现了在没有可信第三方的情况下完成众包系统流程的具体方案,然而该方案并没有考虑到对任务内容、工人信息的隐私保护,特别是在如医疗、金融等场景下,任务内容本身也是一种需要保护的隐私数据。
[0003]在当前具有隐私保护的去中心化众包系统方案中,虽然实现了对隐私数据的保护,但其使用了复杂的密码算法,导致 ...
【技术保护点】
【技术特征摘要】
1.支持低成本隐私保护的可链接去中心化众包方法,其特征在于,包括下述步骤:建立众包系统,确定交互实体;所述交互实体包括授权中心、任务请求者、工人及任务收集者;众包系统各交互实体运行初始化及密钥生成算法,进行系统注册;任务请求者设置任务,通过智能合约发布到区块链上并指定任务收集者进行任务收集;工人接收任务,将完成任务得到的解决方案在区块链下发送给任务收集者;任务收集者对收集的解决方案进行身份验证及有效数据筛选,并将结果通过智能合约发布到区块链上公开;引入防作弊机制,各交互实体对发布在智能合约上的结果进行作弊揭示,若检查有作弊则将作弊结果通过智能合约发布到区块链上进行揭示;任务收集者收集最终结果提交给任务请求者,任务请求者分发任务奖励。2.根据权利要求1所述的支持低成本隐私保护的可链接去中心化众包方法,其特征在于,所述众包系统各实体运行初始化及密钥生成算法,具体为:令H(m)为安全的哈希函数,Λ为访问策略,S为属性集合,定义Λ(S)=1为S满足Λ;令CP=(CP.Setup,CP.KeyGen,CP.Encrypt,CP.Decrypt)为密文策略基于属性的加密处理,即CP处理;其中,CP.Setup(λ,U)为CP处理的设置算法,输入为安全参数λ和属性空间描述U,输出为公开参数mpk和主私钥msk,用于初始化CP处理;CP.KeyGen(msk,S
i
)是CP处理的秘钥生成算法,输入为主私钥msk和用户i的属性集合S
i
={id,s1,...,s
n
},输出属性秘钥用于生成属性秘钥;CP.Encrypt(mpk,M,Λ)是CP处理的加密算法,输入为公开参数mpk、需要加密的明文消息M和由任务请求者制定的访问策略Λ,输出为发布任务的密文ct,所述密文只有满足访问策略Λ的工人才能解密,用于加密任务内容;是CP处理的解密算法,输入为公开参数mpk、发布任务的密文ct和属性秘钥输出为发布任务的明文内容M或错误符号
⊥
,用于解密已加密的任务;令ZK=(ZK.Setup,ZK.Prover,ZK.Verifier)为zk
‑
SNARK零知识证明处理,即ZK处理,其中,为ZK处理的设置算法,输入安全参数λ和NP语言输出公共参考字符串crs,用于初始化ZK处理;ZK.Prover(x,w,crs)为ZK处理的证明算法,输入声明x、秘密w和公共参考字符串crs,输出证明π,用于生成证明;ZK.Verifier(x,π,crs)为ZK处理的验证算法,输入声明x、证明π和公共参考字符串crs,输出0或1,用于验证证明的有效性;所述授权中心运行CP.Setup(λ,U)设置算法,生成公开参数mpk和主私钥msk;运行设置算法,生成公共参考字符串crs;所述任务请求者及工人通过授权中心进行系统注册。3.根据权利要求2所述的支持低成本隐私保护的可链接去中心化众包方法,其特征在于,所述进行系统注册,具体为:授权中心运行CP.KeyGen(msk,S
i
)密钥生成算法,为工人W
i
生成与其自身属性集合S
i
={id,s1,...,s
n
}所对应的属性秘钥并分发给工人W
i
;授权中心运行密钥生成算法,为任务请求者R
i
生成与其自身属性集合对应的属性秘钥并分发给任务请求者R
i
;
所述任务收集者C
i
是工人,其注册方式与工人一致,仅用于进行任务收集。4.根据权利要求3所述的支持低成本隐私保护的可链接去中心化众包方法,其特征在于,所述任务请求者设置任务,通过智能合约发布到区块链上并指定任务收集者进行任务收集,具体为:任务请求者设置任务标识符为tid的任务明文Task和访问策略Λ,运行CP.Encrypt(mpk,Task,Λ)加密算法,获得任务Task的密文CT
Task
,将CT
Task
上传至星际文件系统IPFS获得内容地址CID
Task
;运行CP.Encrypt(mpk,CID
Task
,Λ)加密算法获得CID
Task
的密文CT
cid
,设置任务奖励reward、押金deposit、任务截止时间ddl、任务最大被接受数量max,并连同CT
cid
一起通过智能合约构建一笔交易发送到区块链上并指定任务收集者C
i
进行任务收集。5.根据权利要求4所述的支持低成本隐私保护的可链接去中心化众包方法,其特征在于,所述工人接收任务,将完成任务得到的解决方案在区块链下发送给任务收集者,具体为:工人W
i
捕获到任务请求者发布的任务信息后,首先判断访问策略Λ是否满足Λ(S)=1;若访问策略满足时,工人运行解密算法,获得密文CT
cid
对应的内容地址CID
Task
,从该地址下载获得任务密文CT
Task
,再次运行解密算法,获得任务明文Task;工人在任务截止时间ddl之前完成任务,运行CP.Encrypt(mpk,sln,Λ)加密算法,获得任务解决方案sln的密文CT
sln
,将CT
sln
上传至星际文件系统IPFS获得内容地址CID
还没有人留言评论。发表了对其他浏览者有用的留言会获得科技券。