一种基于密文信息的众测工人推荐方法技术

技术编号:37603190 阅读:18 留言:0更新日期:2023-05-18 11:54
本发明专利技术涉及一种基于密文信息的众测工人推荐方法。首先,计算出众测工人集合中每个众测工人擅长领域和众测任务的相似度,与众测任务相似度越高的众测工人越适合该众测任务;在此基础上,我们选取相似度较高的众测工人的数组;其次,我们从该数组中寻找高的工人ID,信誉值较高表明该众测工人在历史任务中表现良好,采用堆排序算法在匹配众测任务要求的工人中选取信誉值较高的工人作为最终推荐结果,可以在不泄露隐私的情况下帮助任务请求者可信可靠找到合适的众测工人。靠找到合适的众测工人。靠找到合适的众测工人。

【技术实现步骤摘要】
一种基于密文信息的众测工人推荐方法


[0001]本专利技术属于众包软件测试领域,尤其适用于众包软件测试中的众测工人推荐领域,其目的在于解决区块链隐私保护环境下现有众包软件测试工人推荐方法无法直接使用的问题,是一种帮助任务请求者寻找合适的众测工人,保证众测任务高质量完成的方法。

技术介绍

[0002]众包任务是指一个公司或机构把过去由员工执行的工作任务,以开放自愿的形式外包给大众网络的做法。术语“众包软件测试”表示“支持软件测试的所有众包活动”,也就是说,所有支持软件测试的众包方法、技术、工具和平台都属于众包软件测试(以下简称众测)领域。众测活动中主要参与者包括任务请求者、众测工人和众测平台。其中,任务请求者发起测试请求,将待测软件和测试任务提交至众测平台;众测工人在众测平台接收任务,测试完成后提交测试报告;众测平台根据众测工人提交的报告进行审查和奖励,最终形成交付报告提供给任务请求者。基于区块链的众测平台主要包含五个角色,分别是登记机关、任务请求者、众测工人、评估工人和区块链平台。与基于中心化众包平台的众包软件测试相比,基于区块链的众测平台增加本文档来自技高网...

【技术保护点】

【技术特征摘要】
1.一种基于密文信息的众测工人推荐方法,其特征在于,首先,计算出众测工人集合中每个众测工人擅长领域expertise和众测任务的相似度match_degree,match_degree越高的众测工人越适合该众测任务;在此基础上,我们选取相似度match_degree较高的众测工人的ID数组IdArray;其次,我们从IdArray数组中寻找信誉值reputation_value高的工人ID,信誉值reputation_value较高表明该众测工人在历史任务中表现良好,采用堆排序算法在匹配众测任务要求的工人中选取信誉值较高的工人作为最终推荐结果,可以在不泄露隐私的情况下帮助任务请求者可信可靠找到合适的众测工人;该方法包括下列步骤:1)登记机构初始化:登记机构首先启动初始化阶段,需要向登记机构传入四个参数m,n,t,λ;其中,m,n用于生成解密加密内积的矩阵,整数t∈Z
*
用于整数向量加密,λ用于生成系统主公钥mpk和系统主密钥msk;随后,登记机构选择一个矩阵T
s
∈Z
m
×
(n

m)
,然后解密矩阵S
s
=[I,T
s
]被传送到智能合约作为解密加密内积的密钥,其中I∈Z
m
×
m
是一个单位矩阵;2)众测用户注册:众测用户首先在生成公私钥密码对<pk,sk>,并把公私钥密码对上传至登记机构,登记机构使用主私钥对众测用户的pk进行签名并颁发证书Cert,注册用户凭借证书Cert加入区块链网络;加入到区块链网络后,登记机构为该注册用户计算相应的转换矩阵,该转换矩阵可以将相似度密文信息转换为基于密钥S
s
的密文;如果注册用户是众测工人,登记机构会计算其与所有任务请求者的转换矩阵,同理如果注册用户是任务请求者,登记机构会计算其与所有众测工人的转换矩阵;转换矩阵的计算公式如公式(1)所示,其中是工人的私密钥,是任务请求者的私密钥,T
s
为登记机构初始化阶段生成的初始矩阵,E为单位矩阵,A为一个随机矩阵:3)基于相似度的众测工人筛选:众测工人首先会进行擅长领域添加,将具体领域的关键字转化成一个向量Expertise
j
,然后使用私钥通过公式(2)得到加密向量Expertise

j
,最终众测用户会把Expertise

j
存储到智能合约中;使用到的公式(2)如下,其中是众测工人的私密钥,Expertise

j
为加密后的向量,t是登记机构初始化阶段输入的参数,e为噪声向量;请求者进行任务发布时,首先使用uni
...

【专利技术属性】
技术研发人员:赵志宏蒋东旗王兴亚顾鑫马彧
申请(专利权)人:南京工业大学
类型:发明
国别省市:

网友询问留言 已有0条评论
  • 还没有人留言评论。发表了对其他浏览者有用的留言会获得科技券。

1