Page 442 - 《软件学报》2025年第4期
P. 442

1848                                                       软件学报  2025  年第  36  卷第  4  期



                 钥及其秘密值     S u  , 结合策略相关的属性权威公钥       PK j  , 追踪组公钥   TPK  和  GP , 为   M  生成匿名认证  η .
                                        |Ω|
                    (7)   Verify(M,η,(A,ρ),{PK j } ,TPK,GP) → 1/0. 验证匿名认证, 验证通过输出  1  否则为  0.
                                         j=1
                               ′
                                   ′
                    (8)   Link(M, M ,η,η ) → 1/0. 对两个匿名认证进行链接, 如结果为   1  则代表同一个用户对前缀相同的两个消息
                 生成了认证, 否则为      0.
                                             t
                    (9)   Trace(η,{TSK i }) → GID. 通过   个追踪组的部分私钥可以由认证获得生成该认证用户的身份.

                 3   基于区块链和去中心化可问责属性认证的众包方案
                    本文将所提出的去中心化可问责属性认证方案与区块链技术结合, 设计了众包场景下请求者和工作者交互的
                 流程, 实现了一种新型众包系统. 本文提出的基于区块链和去中心化可问责属性认证的众包方案包含                                4  类角色, 分
                 别是属性权威、请求者、工作者和追踪者, 所有角色均加入区块链, 成为系统的用户. 其中属性权威是分布式的且
                 每个权威可以由多个用户组成, 任意属性权威可以声明自己的属性, 并将属性私钥授权给有该属性的用户. 请求者
                 制定访问策略并将加密后的任务通过平台发布, 只有属性满足访问策略的工作者可以执行任务并获得奖励. 追踪
                 组由多个用户组成, 可以协作获得工作者的身份. 图                1  中的步骤为本方案的整体流程, 以医学图像标注的任务为
                                                      1.1 系统初始化
                 例, 首先进行初始化与属性申请, 属性权威是去中心化的, 且属性权威和追踪组都可以由多个成员组成. 请求者发
                 布一个医学图像标注的任务到基于区块链的众包平台, 请求者可以设置访问策略如要求工作者要有医学相关领域
                 的属性, 从而提高标注结果的质量. 请求者将任务描述、访问策略、通过属性加密后的标注数据集、提交的截止
                 时间和奖励信息等发布到众包平台, 同时传入押金. 有医学相关领域属性的工作者才能解密获取任务的完整数据
                                                                                                    Tag =
                 进行标注并生成有效认证. 当标注完成后, 工作者将用密钥                   S 2  对标注结果进行加密得到密文         S 1  , 并计算
                 H(S 1 )⊕ H(S 2 ) , 记  m = H(S 1 ) , 然后生成匿名认证, 将  Tag 、m、匿名认证和押金一起提交到众包平台. 请求者通过
                 智能合约验证工作者的匿名认证, 同时检查该认证是否能与之前收到的认证链接, 如果工作者重复提交则能被链
                 接到. 验证通过后将提交的内容放入工作结果集合中, 否则不放入且不退还押金. 超过提交截止时间后, 将停止接
                                                                                                    S 1  计
                 收工作结果, 通过验证的工作者要在规定时间内通过链下安全通道发送                        S 1  . 请求者通过智能合约对收到的
                 算   H(S 1 ) , 并与链上的  m 进行比较, 一致则确认该工作者的提交, 同时请求者的奖励也会放入合约. 被确认的工作
                                                  Tag 进行验证, 验证不通过的工作者不能得到奖励和押金, 同时会被追
                 者要在规定时间内发布        S 2  , 合约重新计算
                 踪组追踪. 最后请求者可以用         S 2  解密  S 1  得到标注结果, 并分配奖励给工作者.

                                                       6.1 发送 S 1
                                           1.2 用户初始化            1.2 用户初始化
                                            3 发布任务              4 提交 η, m, Tag
                                           5 验证与链接               6.3 提交 S 2
                                           6.2 确认 H(S 1 )          7 奖励
                                   请求者                                        工作者
                                                   基于区块链的众包平台
                                          1.4 追踪组初始化             1.3 属性权威初始化
                                                                        2 属性申请
                                              8 追踪


                                   追踪组
                                                                          去中心化属性权威
                                                     图 1 众包方案流程

                    具体算法可分为以下几个阶段.

                 3.1   初始设置阶段
                                                                                                  G , 生成
                    (1)   GlobalSetup(λ) → GP . 在系统初始化阶段, 输入安全参数   λ , 随机选择一个阶为素数       p 的双线性群
                 元为  g. 哈希函数:   H : {0,1} → {0,1} ,H : {0,1} → G,H 1 : {0,1} ×{0,1} → G,H 2 : {0,1} ×{0,1} → G,F : {0,1} → G ,
                                                                                       *
                                *
                                                                                                  *
                                                                                 *
                                                               *
                                                    *
                                                                     *
                                     *
                                            *
   437   438   439   440   441   442   443   444   445   446   447