Lightweight and Reliable Decentralized Reward System using Blockchain

摘要

近年来,通过利用无处不在的物联网(IoT)和移动设备的感知能力,众感知变得越来越流行。实现有效众感知的一个关键组成部分——是一个可靠的奖励系统以激励众筹的参与。在传统的众感知应用中,数据质量评估和每个参与者的奖励评估由中央服务器执行。因此,它们的公平性和可靠性基于服务器将正确运行的假设,一旦服务器出现软件或硬件故障,甚至故意作弊,参与者的利润就无法保证。

在本文中,我们通过利用区块链技术,提出了一个可靠的分散式众感知奖励系统。与现有的基于区块链的众感知解决方案不同,这些解决方案在计算或财务成本方面利用了昂贵的共识机制,我们探索了大多数众感知应用程序中存在的信誉的力量,并将其安全地集成到区块链中,以设计信誉证明共识机制。此外,还进一步设计了一个使用区块链的高效可靠的奖励系统,我们使用数值分析和模拟评估了我们提出的奖励系统的性能。

引言

本文研究了如何安全地利用声誉作为赌注来构建声誉证明(PoR)共识机制,在此基础上,进一步设计了一个使用区块链的高效可靠的奖励系统,用于众感知。在我们的系统中,所有实体都可以使用区块链,有效地为其应得的奖励建立共识,并在必要时验证其贡献。要将声誉作为建立共识机制的关键,需要解决的关键挑战是如何平衡安全与公平

一方面,我们将限制信誉低的实体参与区块链的执行,即区块创建和投票,这确保了奖励系统的可靠性。另一方面,声誉相对较低的实体,尤其是新加入的实体,也应有公平的机会参与并提高其声誉。

为了解决这一挑战,我们探索了一种基于彩票的策略,该策略可以提供灵活的实体选择,以包括低信誉的实体,同时保证参与投票过程的大多数实体(>51%)将诚实地执行。声誉奖励制度的另一个重要因素是声誉管理,除了使用预定义的度量来评估声誉外,本文还采用了基于周期的声誉评估,这不仅为新实体提供了更多的机会来建立其声誉,而且还防止了现有的声誉实体滥用其声誉,同时提供了深入的数值分析和广泛的模拟结果,以证明我们的设计性能。

本文的其余部分组织如下:
在第二节中,我们阐述了本文的问题;第三节介绍了详细结构;在第四节中,我们评估了我们提议的奖励制度;我们在第五节中回顾和讨论了相关工作,并在第六节中总结了本文。

问题描述

在这里插入图片描述
如图1所示,我们的众感知系统中有四个主要实体:任务分发者、参与者、区块链和任务验证者。
任务分发者发布众感知任务及其奖励,这些任务将通过智能合约提交给区块链。来自任务分发者的相应奖励金额在预定义任务期间锁定在任务的区块链上,接受任务的参与者将提交数据以完成任务。每个参与者都会根据其任务完成历史的准时性和质量获得声誉。我们系统中的验证者的任务是执行和验证在区块链上创建的智能合约,通过该合约评估参与者提交的数据的质量。由于区块链的链上存储能力有限,我们的系统将区块链和数据存储分开。提交的所有数据都存储在存储服务器中,只有链接到数据的相应签名和指针才会提交到区块链。

我们的奖励系统旨在基于现实世界中的财务激励,同时实现公平性和可靠性,即,激励所涉及的每个实体正确完成任务,如果偏离了定义的协议,则不会获得任何奖励甚至惩罚。只要任务分发者为参与者和验证者支付费用,他/她应按照预期收到正确的数据或结果。同时,只要参与者和验证者诚实地完成其声称的任务,他们将获得奖励。该系统应能够识别和抵制所有实体的不当行为,并反映其声誉和奖励的相应调整。

详细结构

我们的众感奖励系统有四个阶段,如图1所示:发布、选择、提交和验证

第一阶段:发布。为了发布一个众感知任务,任务分发者首先起草智能合约,定义任务规则,包括数据要求、所需参与者和验证者的数量、奖励信息、参与任务所需的信誉和押金以及支付规则。特别是,将创建三个智能合同,即,用于雇用和选择验证员的SC-VE、用于雇用和挑选参与者的SC-PE和用于参与者提交数据质量评估的SC-DQE。然后,智能合约被提交并发布在区块链上。在我们的设计中中,任务分销商需要提前支付合同中描述的报酬,并将付款存入区块链。我们还要求每个参与者和验证者在查看合同后,如果他们声称自己有兴趣接受任务,则需要支付押金,这旨在确保任务的质量。如果未在第2阶段中选择,将退还其押金。

第2阶段:选择。我们系统中参与者的选择遵循第V-2节中讨论的现有众感知解决方案,其中与任务要求相关的声誉和能力是需要考虑的主要因素。验证者的选择取决于他们在第III-A节中讨论的PoR机制中的声誉。第III-B节讨论了验证员声誉的评估。选定的参与者和验证者通过使用其密钥签署合同,分别加入合同SC-PE和SC-VE。为此,达成了第一个共识,即选定的验证者将执行智能合约作为交易SC-DQE,并在第4阶段为区块链上的参与者创建区块。

第3阶段:提交。在此阶段,参与者收集、预处理数据并将其提交到数据服务器;同时,参与者需要使用数字签名对数据进行签名,并将签名提交给区块链。对于任何未在截止日期前提交数据或未提交数据而未提交签名的参与者,他们将被视为未完成任务,并将根据智能合约中的声明对其存款和声誉进行处罚。第III-B节讨论了惩罚机制的细节。

第4阶段:验证。在我们的设计中,将有两种类型的验证者,即领先验证者和常规验证者。主要验证者首先根据所有参与者提交的数据生成数据质量评估公式。如果复杂性是可接受的(例如,使用平均值或标准偏差作为度量),则该过程将嵌入智能合约SC-DQE中执行,以确保正确性。当这一过程过于复杂而无法完全集成时,我们建议在SC-DQE中包括几个关键步骤,这些步骤可以在稍后需要验证主要验证者的操作时用作检查点(例如,参与者提出投诉)。然后,领先的验证者通过执行SC-DQE来评估每个参与者的数据,其中评估操作被视为交易,并在区块链上为其创建新的区块。这些新的区块将由常规核查人员投票。这一概念与第III-A节中讨论的PoR共识机制一致。一旦区块被确认,SC-PE和SC-VE也将被执行,以公布参与者和验证者的奖励(或惩罚)。第二项共识现已确立。此外,还将根据所有三个智能合约的执行结果更新参与方和验证方的声誉。第III-B节讨论了详细的更新过程。

为此,通过集成基于区块链的奖励系统,可以以分散的方式执行众感知任务的整个过程。我们现在关注我们系统设计中两个关键问题的细节:
1)如何在我们的系统中达成区块链共识?
2)如何管理和评估声誉?

A 声誉证明共识机制

在我们的PoR共识机制中,我们需要确保所有实体都有一个商定的声誉分类账,并记录每个实体的声誉。为了记录每个实体的声誉,我们的设计在生成新块后将其存储到存储服务器中。这是因为新块的生成通常会导致这些相关实体的信誉更新。同时,我们将信誉Merkle哈希树嵌入到块结构中,该结构是基于生成块时所有实体的当前信誉构建的。通过这种方式,所有实体的声誉都可以在区块链上安全记录和追踪。

关于区块的生成,我们的PoR机制建议让信誉较高的实体发布区块。特别是,选择一个主要实体作为区块创建者,并选择一组实体根据其信誉投票区块。在现有的PoR机制[11]中,总是选择信誉最高的实体作为创建区块的领导者,排名前20%的实体(就信誉而言)将投票支持该区块。我们认为,这样一种机制会引发一些担忧。首先,外部对手只需要专注于损害一小群实体来攻击区块链。第二,对于大量实体具有类似声誉的情况,这种确定性机制不够公平。例如,当前20%和前50%之间的声誉差异非常小(<5%)时,这些实体应有类似的机会被选中。

在我们的设计中,我们提出了一种基于信誉的彩票分组策略,用于选择实体来创建和投票区块。具体来说,我们的设计将所有实体根据其声誉分为不同的组。例如,如果信誉系统的最大信誉分数为100,那么我们可以创建10组Gi,1≤ i≤ 10,其中G1=[1− 10] ,G2=[11− 20] ,···,G10=[91-00]。对于Gi中的任何实体,它们被分配了一个概率pi,以表示它们诚实的概率。对于特定的应用场景,可以根据分配的实体数量调整组的规模,以避免每个组的拥塞。调整是基于周期的,在创建一定数量的区块后,将重新平衡组规模。因此,同一组中的实体被认为有相同的机会被选中。在选择区块创建者和投票实体时,我们机制的关键思想是根据实体的声誉选择一个子集的彩票,这可以保证所选实体的大多数(>51%)是诚实的

对于创建区块的领先实体的选择,我们的PoR机制将从声誉最高的组中随机选择一个实体。投票实体可以使用来自不同群体的实体组合,并优先选择声誉较高的实体。我们使用n表示投票所需的实体总数,pj,1≤ j≤ n是实体j是诚实的概率。那么(n/2+1)个实体在投票期间诚实的概率Phonest为
在这里插入图片描述
其中Phonest,k表示n个所选实体中的k个是诚实的概率。Phonest,k的计算复杂性取决于选择实体所涉及的组数。方程1可以递归的方式实现,其中递归的深度由所涉及的组的数量决定。因此,我们的设计建议,大多数投票实体应从声誉较高的同一群体中选出。例如,75%从声誉最高的组中选择,20%从声誉第二高的组中,5%从声誉第三高的组选择。同时,选择还应保证Phonest具有极高的概率,例如,Phonest>99.999%。

B 声誉管理和评估

在我们的设计中,我们专注于验证者的声誉评估和管理,因为如第V-2节所述,基于声誉的众感知参与者选择已被广泛调查。

在我们的信誉管理中,Rj是验证者j的信誉,Rinit是验证器注册并加入系统时的初始信誉,RMax和RMin表示验证者可以获得的最大和最小信誉,Rb是完成任务(例如创建区块和投票)所获得的基本信誉。一旦验证者的信誉低于RMin,它将从我们的系统中删除。当验证者参与区块链的众感知任务时,其信誉将根据其当前信誉状态、当前任务周期的表现以及过去周期的表现进行调整(增加/减少)。我们的系统的任务周期(例如,1000个任务)可以根据任务频率来设置。在每个周期之后,所有参与的验证者的声誉都将被重置,因此最近加入的验证者有公平的机会在声誉方面与旧验证者竞争。具体而言,Rj的调整按以下方式计算:
在这里插入图片描述
其中w1、w2、w3、w4是权重,Sc(j)是验证者j在当前任务周期中的成功率,Sh(j)是验证者j在过去两个周期中的历史成功率。Sc(j)被计算为Sc(j)=N umcorrect/N umtotal,其中N umtotal是所涉及的任务验证器j的数量,N umcorrect是其正确验证的任务的数量。术语1− Rj RMax用于增加高信誉验证者获得额外信誉的难度,因为他们已经有更多机会被选中执行任务。同时,在当前和历史周期中表现更好的验证者将获得更高的声誉。与历史绩效相比,应更加强调验证者在当前周期的绩效。这可以通过设置w1>w3和w2>w4来实现。

如果验证者发现了不当行为,将受到处罚。我们惩罚设计的总体思路是,信誉较高的验证者将因其不当行为受到更高的惩罚。同时,验证者的不当行为将累积用于其处罚计算。具体来说,我们将验证者声誉的惩罚计算为
在这里插入图片描述
其中,β1、β2、β3是用于优化的参数,应针对不同的场景进行调整,NumErr,c(j)和NumEr,h(j)分别是当前周期和最后一个周期中验证者j的不当行为数量。在我们的设计中,惩罚量以指数形式增加到N umErr,c(j)的值,并线性增加到实体的当前信誉Rj和N umEr,h(j)。

关于每个周期后的信誉重置,我们的设计允许每个验证者在过去两个周期中继承其信誉,如:
在这里插入图片描述
其中Rj(x)表示在周期x开始时验证者j的信誉。对于没有Rj(x)的任何验证者− 1) 或Rj(x− 1) ,这些值将替换为Rinit。

评估提出的奖励制度

为了评估我们提出的奖励系统的有效性和效率,我们现在对我们的PoR共识机制和声誉管理进行数值分析和模拟。所有模拟和实验都在配备2.3GHz四核I5处理器和8GB内存的Macbook Pro笔记本电脑上进行。

A PoR共识机制

在我们的PoR共识机制中,基于信誉的彩票用于选择区块创建者和选民。选择n个实体的效率取决于所涉及的信誉组的数量,其中至少一半实体将以保证的概率(>99.999%)诚实地执行。为了从m个信誉组中选择n个实体,相应的计算复杂度为O( n m n^m nm)。为了评估实际绩效,我们通过设置n=50并将m从1更改为11来进行实验评估,即最多涉及11个声誉组。对于每个涉及的组,将至少选择一个实体。我们认为,11个声誉小组有足够的粒度来支持我们的声誉管理。例如,从[50,100]开始的声誉等级可以为11个组划分为5。
如图2所示,选择50个实体的计算成本从0.043秒呈指数增长到37.78秒。在实际选择中,大多数实体应从声誉较高的群体中选择,以确保大多数实体诚实地履行职责。因此,我们建议在5到6组,可包含3到4个高信誉的组和1到2个声誉相对较低的组。
在这里插入图片描述

B 信誉管理

如第III-B节所述,在我们的设计中,实体的声誉增长和惩罚是根据其当前声誉和不同阶段的历史表现计算的。在我们的评估中,我们专注于探索等式2和等式3的权重(w1,w2,w3,w4和β1,β2,β3)的适当选择。
我们使用[40,100]信誉等级,并将加入时的初始信誉设置为60,即RMin=40,RMax=100,Rinit=60。奖励的基本信誉设置为Rb=1.5。信誉周期设置为1000个任务。选择w1、w2、w3、w4的目标是使实体的信誉在低时增长更快,并随着信誉的增加而减慢。同时,RMax只能通过在信誉周期内完成所有任务的很大百分比(例如50%)来实现。在评估每个权重的不同值后,我们将它们设置为w1=0.5、w2=20、w3=0.2和w4=10。
在这里插入图片描述
如图3所示,实体的声誉增长速度随着其声誉的增加而逐渐降低。例如,一个实体可以通过完成sc=1和sh=1的47项任务,将其声誉从50提高到70。然而,要达到90的声誉,再增加20项需要完成97项任务。此外,我们将sc和sh的值分别从1变为0.8,当sc和sh减少时,信誉增量会减慢。我们建议,当前周期中成功率较低(例如,<0.85)的实体不应被选择完成任务,必须等待下一个周期。它还清楚地表明,与历史周期的成功率相比,当前周期的成功对声誉的影响更大。

关于等式3中定义的声誉惩罚,我们根据评估结果将权重设置为β1=1.5、β2=1.5和β3=2。如图4所示,惩罚量与当前周期中的错误数量成指数关系,与历史周期中的误差数量成线性关系。这与设计目的一致,即当前周期内累积的不当行为将受到更多处罚。同时,我们将错误发生时的声誉从50变为90,以评估当前声誉对惩罚的影响。如图4所示,声誉越高,惩罚越高。
在这里插入图片描述
值得注意的是,我们评估中选择的这些权重不是最优的,可以根据实际应用场景进一步调整。

讨论和回顾

1) 基于区块链的众感知:在将区块链技术集成到众感知或众包应用程序中,以消除“可信”集中服务平台带来的安全威胁方面,已经进行了几次尝试[4]–[8]。[4]中,在区块链之上提出了一种众享服务,但它与激励机制不兼容,这是众感应用的基本组件。在[5]中,作者利用区块链作为众感知中的支付渠道,但它对恶意工作者和不诚实的请求者并不安全。在[6]中,CrowdBC是通过概念化基于区块链的去中心化众包框架而提出的。然而,CrowdBC中的评估机制并未呈现,这是参与积极性和机制公平性的决定性因素。此外,矿工验证的实施细节尚不清楚,这可能会导致冒充攻击。[7]通过利用多阶段智能合约,提出了一种基于区块链的数据质量评估模型用于众感知。[7]中验证者的选择基于他们的声誉,这取决于任务的历史质量和验证的成功率。然而,根据[7]中的声誉定义,当验证者已经具有较高声誉时,由于单个不当行为对整体声誉的影响有限,因此这种设计很容易受到恶意验证者的攻击。[8]中提出了使用区块链和智能合约进行众感知的类似概念。不幸的是,由于其信誉评估策略,这项工作还存在恶意验证者的漏洞。更重要的是,这些现有的研究采用PoW或基于加密货币的PoS作为其区块链的共识机制,这在执行区块链时引入了高计算成本或区块链中涉及的高财务成本。

2) 众感知中参与者的选择:在众感知应用中,预测是选择参与者的主要方法。在基于预测的方法中,基于参与者的属性(如声誉、位置和与众感知任务的相关性),偏好被给予更有可能提供高质量数据的参与者。[12]中提出了使用声誉来评估参与者绩效的概念,其中参与者的声誉被计算为历史服务质量的平均值。然而,该模型未考虑时间因素。在大多数情况下,应更重视参与者的近期表现。在[13]中,提出了一种计算效率高的信誉算法来识别和过滤这些敌对参与者。该算法结合基于标签不一致的惩罚,使用了最优半匹配的概念。在[14]中,评估了声誉管理的多个质量指标,包括完成任务的价值、数量和时间。在[15]中,提出了一种概率模型,以使用参与者历史评估的大数据来预测参与者的行为。该模型进一步结合了边际有效性的概念,提出了一种贪婪的参与者选择算法。在[16]中,作者利用贝叶斯模型预测参与者的行为,并通过将其与数据库中的标准进行比较来评估其数据质量。在[17]中,构建了一个半马尔可夫模型来评估参与者到达时间的概率分布,然后将其用于构建基于预测的参与者招募策略,以平衡感知数据的交付比率和招募人员数量。

总结

在本文中,我们提出了一个基于区块链的奖励系统,以实现公平和可靠的众感知分散管理。通过探索众感知中声誉系统的内置性质,我们使用基于彩票的想法设计了声誉证明共识机制。这样的共识机制通过信誉系统将众感知和区块链连接起来,从而同时实现效率和可靠性。我们还提出了一个考虑当前声誉状况、当前周期绩效和历史绩效的声誉管理系统。我们的声誉管理系统不仅提供了加入众感知的强大激励,还通过累积惩罚策略防止他们做出不当行为。我们使用数值分析和仿真评估了系统的效率和有效性。

猜你喜欢

转载自blog.csdn.net/qq_43331100/article/details/128208722