激励机制一种去中心化和中心化的reputation的博弈论自洽激励

Posted 白速龙王的回眸

tags:

篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了激励机制一种去中心化和中心化的reputation的博弈论自洽激励相关的知识,希望对你有一定的参考价值。


先上一幅Swarm Learning 的架构图镇楼

引文114 An Incentive Compatible Reputation Mechanism(worker直接博弈)

我们想干什么?

我们希望实现激励的可协调,也就是让每个节点可以可信地分享reputation的信息
我们引进可转移支付方案,让节点可信地共享reputation信息
我们还通过密码学的方法整合reputation信息

目前的一些问题

1.如果节点报告reputation信息,别人就会掌握有利的信息,从而对自己不利
2.如果反馈真实的正反馈reputation,节点会由于其余节点的average降低自己的reputation,同时也造成了对稀缺资源的更多需求(我的理解是:reputation比较高的话,别人会认为这个节点可靠,从而向其进行交易需求等)
3.如果反馈虚假的负反馈,节点可以增加自己的reputation,同时减少对稀有资源的需求,所以大家倾向提供虚假信息

我们的目标

我们希望设计一个博弈论模型来让一个理性的节点愿意去分享真实的reputation信息

模型设计

祭上一个囚徒困境的图

我们希望让每一个节点觉得报告真实的信息是有利益的

在我们的机制中,我们引入一个R-agents,负责购买和销售reputation 信息
在博弈游戏中,两个节点要么选择合作要么选择欺骗
游戏双方开始游戏前可以协商合同,但合同不具备强制性

一个节点的行为预测怎么量化?

1.先验类型(固定的概率) =》 innate
2.这个节点的前k次动作 =》 mood

DEF 1


这里的意思是在时间t某个节点何合作的可能性公式

关于R-agent

每个节点可以从R-agent处以F的价格买reputation信息,也可以以F‘的价格卖reputation信息
节点只能够卖出一些它们买入的其他节点的reputation信息

当两个节点要开始游戏前,它们需要支付给R-agent钱来询问对方的reputation
注意,买reputation的钱和游戏中获得的钱不通用
如果一个node用完了它买reputation的钱,就不能再买

完整的流程

1.两个节点随机组合
2.通过R-agent询问reputation
3.决定是否玩游戏
4.若同意玩,进入协商合约阶段
5.若同意合约,开始玩游戏
6.游戏中,可以记录对方的信用,从而生成报告给R-agent

为什么说是激励可协调的呢?

因为我们的支付函数可以诱使节点公布诚实的reputation信息
由于我们不能保证从R-agent那里获取的reputation的正确性,我们的支付函数依赖于未来的情况

payment function的定义


小s是A对B的report
大S是后续其他节点的B的reports
他可以证明,如果A说真话(真实的s)可以使得它的收益最大化

TH1

若节点的gamma函数不依赖于之前的actions,那么没有支付函数可以有效诱使诚实的行为

由于A的诚实概率(reputation)不受之前行为的影响,所以是恒定的
所以它的大S(未来的reports)可以认为和目前是完全一致的S = Sc = Sd


因此说真话肯定不可能总是有好处
这个要看pi(C,S) and pi(D,S)的大小决定~

这个结果令人震惊,因为很多reputation系统都是只关注先验类型对行为的影响

我们的一个想法

R-agent只有当下一次关于B的report:S和之前A的report:s相同的时候,才会支付给A报酬F’

TH2

如果满足Def1和Eq2,那么报告真实的reputation信息就是一个纳什均衡
which means, 如果下一个节点讲真话, ‘我’也最好讲真话

概率证明:B在连续两次动作中采用相同的概率大于等于0.5
这个Eq2只能保证系统前期交互的安全的

还有一些问题:Eq2中的支付函数需要引入一些节点行为参数才可以保证长期稳定~~

Th3



两个概率指的是假设连续在t时间干了X行为的条件下t+1时间还是保持X行为的概率是大于5成的话
Eq2总会诱使它们交出真实的reputation报告

条件:A观察到B是正常的合作
如果它诚实报告1的收益期望就是E[pi(1,S)]
然后根据B下一次可能的行为展开条件概率求和就可以得到一头一尾

注意:我们假设下一个汇报B者是诚实的

小结:让节点都倾向说真话

我们这里采用两阶段假设和证明,表明了在模型的前期和后期都会让各个节点倾向于说真话

引文114的一些问题

R-agent变成blockchain node可行吗?(负责买卖?不能以明文记录reputation)

分开game 的money 和reputation的money有什么好处?

引文74 结合reputation和契约理论的中心化激励(reputation由task publisher整合)

主要工作

1.worker selection based on reputation可防止不可靠的模型更新
2.使用多权重主观逻辑模型计算reputation然后用联盟链存reputation
3.基于契约理论的激励机制促进高reputation的worker拥有高quality数据来参与训练防止攻击
4.实验表明这个方案很好很精确。。。

基于联盟链的可信联邦学习模型图


worker:本地数据集、本地模型训练、生成本地模型、计算资源Fn
task publisher:分配task、计算每个worker提供的模型质量、生成reputation、reputation上链
reputation是评估worker可靠性的重要因素:综合direct reputation和在链上记录的最近几次的indirect reputation计算

step1: task publishers发布FL的任务和合约条款,有相关的数据类型、大小和精确度、时间和CPUT的要求。如果workers觉得可以满足就加入任务,然后给予回应给task publisher

step2:基于direct的reputation和存在链上的indirect的reputation得到综合的reputation;reputation的计算是某种加权平均(交互的效果、交互的新鲜度 =》 direct)(跟其他recommender的worker相似度 =》 indirect)

step3:选出reputation大于某个阈值的作为worker,worker根据他们的条件选择一个最优的合同项进行签署

step4:开始进行FL,然后评估各个worker更新的本地模型

通过两个攻击检测算法评估模型

1.Reject on Negative Influence(RONI)投毒检测方案(IID),通过比较包含剔除某个本地模型,如果加入这个本地模型后,总体表现下降超过一定阈值,则拒绝这个本地模型

2.FoolsGold方案(non IID)通过某个本地模型的梯度更新差异来识别不可靠的worker,由于non-IID 的梯度变化遵循一定的分布函数,如果worker重复上传相似度高的梯度就会被检测出来

基于上述两个方案,task publishers可以移除不可靠节点,然后用联邦平均更新模型
训练完成后,每个可靠的worker根据之前签订合约中的内容,获取与资源贡献模型训练行为对等的奖励

恶意节点的交互会被task publishers记录下来

step5:更新联盟链中的reputation,task publishers更新direct的reputation,这些reputation会被workers数字签名从而不可抵赖(应该是合约中签订的),然后这些reputation提供给以后的task publishers作为indirect参考

对可靠的FL的激励机制

原则:鼓励high-reputation high-quality data的worker加入模型训练

task publisher 发放 reward 的困难

1.task publisher 由于缺乏先验知识并不知道哪些worker希望加入到训练中
2.对于task publisher而言,worker的reputation和data quality是未知的
3.task publisher也不知道worker的可用计算资源和数据量

1、2、3 =》 task publisher在给worker激励的时候会有太多的消耗
因此,本文设计了基于契约理论激励机制

A:worker在一次迭代中的CPU消耗
B:worker在一次迭代中的通信消耗
C:worker按照数据质量进行分级
D:task publisher对type-n worker一次迭代花费时间的满意度函数

因此,由于有了契约理论,恶意节点是不会签署比他等级要高的合约的(否则拿不到奖励)
从而也可以激励高质量的节点加入FL中

引文74的一些问题

reward min?max?sum?(worker应该怎么选择合同签署,具体奖励如何分配?)

pre-set reward 放到 smart contract可行吗?(pre-set reward指的是契约中约定的奖励)

合约里面包括digital signature?(让reputation绑定具体的worker)

每个等级的合同的钱怎么设计?(不同数据质量的奖励梯度如何划分?)

一开始的reputation不确定,worker selection都是基于一定的reputation基础的(初始阶段怎么判断?)

Filecoin:一种去中心化的存储网络

开始初步了解学习Filecoin,如下是看白皮书的内容整理。

参考:

白皮书中文版 http://chainx.org/paper/index/index/id/13.html

白皮书英文版 https://filecoin.io/filecoin.pdf

 ---------------------------------------------------

5 Filecoin的存储和检索市场

Filecoin有两个市场:存储市场和检索市场。网络保证矿工在提供服务时可以得到客户的奖励。

5.1 验证市场(Verifiable Markets)

交易市场(Exchange Markets)是促进特定商品和服务交换的协议。它们使得买家和买家促成交易。对于我们而言,我们要求交易是可验证的:去中心化网络的参与者必须能够在买家和卖家间验证交易。

我们提出验证市场的概念。它没有单一的实体来管理交易,交易是透明的,任何人都可以匿名参与。可验证市场协议使得服务的交易去中心化:订单簿和订单结算settlement的一致性,和服务的正确执行是可以由参与者独立验证的-在Filecoin里面的矿工和全节点。我们简化可验证市场来进行以下构建:

定义5.1

可验证市场是一个有两个阶段的协议:订单匹配和结算。订单是购买意图或者出售商品或服务安全性的表述,订单簿就是所有可用订单的列表。

5.2 存储市场

存储市场是可验证的市场,它允许客户(即买家)请求他们的存储数据和存储矿工(即卖家)提供他们的存储空间。

5.2.1 需求

我们根据以下需求来设计存储市场协议:

  • 链式订单簿(In-chain orderbook) 重要的是(1)存储矿工的订单是公开的,所以最低价格的订单总是网络可知的,客户可以对订单做出明智的决定(2)客户订单必须始终提交给订单簿orderbook,即使当他们接受了最低的价格,这样市场就可以对新的报价做出反应。因此我们要求订单添加到Filecoin区块链,为的是能被加入订单簿

  • 参与者投入资源(Participants committing their resources):我们要求参与双方承诺他们的资源作为避免损害的一种方式。为了避免存储矿工不提供服务和避免客户没有可用的资金。为了参与存储市场,存储矿工必须保证在DSN中存入与其存储量成比例的抵押品pledge(更多详细信息请参看第4.3.3节)。通过这种方式,网络可以惩罚那些承诺存储数据但又不提供存储证明的存储矿工。同样的,客户必须向订单充入特定数量的资金,以这种方式保证在结算期间的资金可用性。

  • 故障自处理(Self-organization to handle faults) 只有在存储矿工反复证明他们已经在约定的时间内存储了数据的情况下,订单才会结算给矿工。网络必须能够验证这些证明的存在性和正确性并且它们是按照规则来处理的。在4.3.4节有修复部分的概述。

5.2.2 数据结构

Put订单 有三种类型的订单:出价订单,询价订单和交易订单(bid orders, ask orders and deal orders.)。存储矿工创建询价ask订单添加存储,客户创建出价bid订单请求存储,当双方对价格达成一致时,他们共同创建处理deal订单。订单的数据结构和订单参数的明确定义如图10所示。

Put订单簿 存储市场的订单簿是目前有效和开放的询价,出价和 交易订单的集合。用户可以通过Put协议中定义的方法与订单簿进行交互:AddOrders,MatchOrders如图7所示。

订单簿是公开的,并且每个诚实的用户都有同样的订单簿视图。在每个周期,如果新的订单交易(txorder)出现在新的区块中那它将被添加到订单簿中。如果订单被取消,失效或者结算,则会被删除。订单将被添加到区块链中,因此在订单簿中如果是有效的:

定义5.2 我们定义出价,询价,交易订单的有效性:

 

如果作恶客户端从存储矿工处收到了签名的交易,但从来没有将其添加到订单簿,那么存储矿工就无法重新使用订单中提交的存储。这个字段ts就可以防止这种攻击,因为,在超过ts之后,订单变得无效,将无法在订单簿中提交。

5.2.3 存储市场协议

简而言之,存储市场协议分为两个阶段:订单匹配和结算:

  • 订单匹配:客户端和存储矿工通过提交交易到区块链来将订单提交到订单簿(步骤1)。当订单匹配时,客户端发送数据碎片给存储矿工,双方签署交易并提交到订单簿(步骤2)。

  • 结算: 存储矿工密封扇区(步骤3a),生成扇区所包含的碎片的存储证明,并将其定期提交到区块链(步骤3b);同时,其余的网络必须验证矿工生成的证明并修复可能的故障(步骤3c)。

存储市场协议在图11中详细描述。

5.3 检索市场

检索市场允许客户端请求检索特定的数据,由检索矿工提供这个服务。与存储矿工不同,检索矿工不要求在特定时间周期内存储数据或者生成存储证明。在网络中的任何用户都可以成为检索矿工,通过提供提供检索服务来赚取Filecoin令牌。检索矿工可以直接从客户端或者检索接收数据碎片,也可以存储它们成为存储矿工。

5.3.1 需求

我们根据以下的需求来设计检索市场协议:

  • 链下订单簿 客户端必须能够找到提供所需要数据碎片的检索矿工,并且在定价之后直接交换。这意味着订单簿不能通过区块链来运行-因为这将成为快速检索请求的瓶颈。相反的,参与者只能看到订单簿的部分视图。我们要求双方传播自己的订单。

  • 无信任方检索 公平交换的不可能性[10]提醒我们双方不可能没有信任方的进行交流。在存储市场中,区块链网络作为去中心化信任方来验证存储矿工提供的存储。在检索市场,检索矿工和客户端在没有网络见证所交换文件的情况下来交换数据。我们通过要求检查矿工将数据分割成多个部分并将每个部分发送给客户端来达到这个目的,矿工们将收到付款。在这种方式中,如果客户端停止付款,或者矿工停止发送数据,任何一方都可以终止这个交易。注意的是,我们必须总是假设总是有一个诚实的检索矿工。

  • 支付通道 客户端当提交付款的时候可以立即进行检索感兴趣的碎片。检索矿工只有在确认收到付款的时候才会提供数据碎片。通过公共账本来确认交易可能会成为检索请求的瓶颈,所以,我们必须依靠有效的链下支付。Filecoin区块链必须支持快速的支付通道,只有乐观交易和仅在出现纠纷的情况下才使用区块链。通过这种方式,检索矿工和客户端可以快速发送Filecoin协议所要求的小额支付。未来的工作里包含了创建一个如[11,12]所述的支付通道网络。

5.3.2 数据结构

获取订单 检索市场中包含有三种类型的订单:客户端创建的出价单 Obid,检索矿工创建的询价单Oask,和存储矿工和客户端达成的交易订单Odeal。订单的数据结构如图10所示。

获取订单簿 检索市场的订单簿是有效的和公开出价订单,询价订单和交易订单的集合。与存储市场不同,每个用户有不同的订单簿视图,因为订单是在网络中传播的,每个矿工和客户端只会跟踪他们所感兴趣的订单。

5.3.3 检索市场协议

简而言之,检索市场协议分为两个阶段:订单匹配和结算:

订单匹配 客户端和检索矿工通过广播将订单提交给订单簿(步骤1)。当订单匹配的时候,客户端和检索矿工建立小额支付通道(步骤2)。

结算 检索矿工发送小部分的碎片给到客户端,然后对每个碎片客户端会向矿工发送收妥的收据receipt(步骤3)。检索矿工向区块链出示收据从而获得奖励(步骤4)。

该协议在图12中详细解释。

 

---------------------------------------------------------------------------------------------------

6 有用工作共识

有用 如果计算的输出对网络来说是有价值的,而不仅仅是为了保证区块链的安全。我们认为矿工在共识协议中所作的工作是有用的.

6.1 动机

确保区块链的安全是至关重要的。POW的证明方案往往要求不能重复使用的或者需要大量的浪费计算才能找到难题的解决方案。

不可重复利用的工作 大多数无许可型的区块链要求矿工解决硬计算难题,譬如反转哈希函数。通常情况下这些解决方案都是无用的,除了保护网络安全之外,没有其他任何价值。我们可以重新设计让这件事有用吗?

尝试重复使用的工作:已经有几个尝试重复使用挖矿电路进行有用的计算。有些尝试是要求矿工与标准的POW同时进行一些特殊计算,其他一些尝试用有用问题替代POW的依然难以解决。例如,Primecoin重新使用矿工的计算能力来找到新的素数,以太坊要求矿工与工作证明一起执行小程序,同时证明某些数据正在归档。虽然这些尝试中的大多数都执行有用的工作,但在这些计算中浪费的工作量仍然很普遍的

浪费的工作 解决难题在机器成本和能力消耗方面是非常昂贵的,特别是如果这些难题完全依赖计算能力。当挖矿算法不能并发的时候,那解决难题的普通因素就是计算的功率。我们可以减少浪费的工作吗?

试图减少浪费:理想情况下,大部分网络资源应该花费在有用的工作上。一些尝试是要求矿工使用更节能的解决方案。例如,“空间挖矿”(?Spacemint)要求矿工致力于磁盘空间而不是计算;虽然更加节能,但磁盘空间依然”浪费“,因为它们被随时的数据填满了。其他的尝试是用基于权益证明的传统拜占庭协议来代替难题的解决,其中利益相关方在下一个块的投票与其在系统中所占有的货币份额成正比。

我们着手设计一个基于用户数据存储的有用工作的共识协议。

6.2 Filecoin 共识

功率容错 在我们的技术报告[13]中,我们提出了功率容错,这是对在参与者对协议结果的影响方面重新构建拜占庭故障的抽象。每个参与者控制了网络总功率n中的一部分功率,其中f是故障节点或作恶节点所控制的功率占比。

Filecoin功率 在Filecoin中,在时刻t,矿工Mi的功率Pt>i是Mi总和的存储任务。Mi的 Iti是网络中Mi总功率的影响因子。

在Filecoin中,功率有以下属性:

  • 公开:网络中当前正在使用的存储总量是公开的。通过读取区块链,任何人都可以计算每个矿工的存储任务-因此任何人都可以计算出在任意时间点的每个矿工的功率和总功率。

  • 可公开验证的:对于每个存储任务,矿工都需要生成”时空证明“,证明持续提供服务。通过读取区块链,任何人都可以验证矿工的功率声明是否是正确的。

  • 变量: 在任意时间点,矿工都可以通过增加新增扇区和扇区补充的抵押来增加新的存储。这样矿工就能变更他们能提供的功率。

6.2.2 功率会计与时空证明

每个∆proof 区块(∆proof 是系统参数),矿工们都必须向网络提交“时空证明”,只有网络中大多数功率认为它们是有效的,才会被城管添加到区块链。在每个区块中,每个全节点会更新分配表(AllocTable),添加新的存储分配、删除过期的和标记缺少证明的记录。可以通过对分配表的记录来对矿工Mi的功率进行计算和验证。这些可以通过两种方式来完成:

  • 全节点验证:如果节点拥有完整的区块链记录,则可以从创始块开始运行网络协议直到当前区块,这个过程中验证每一个分配给Mi的“时空证明”。

  • 简单存储验证:假设轻客户端可以访问广播最新区块的信任源。轻客户端可以从网络中的节点请求(1)Mi在当前分配表中的记录 (2)该记录被包含在最新区块的状态树中的Merkle路径(3)从创世块到当前区块的区块头。这样轻客户端就可以将“时空证明”的验证委托给网络。

功率计算的安全性来自于“时空证明”的安全性。在这个设置里面,Post保证了矿工无法对他们所分配的存储数量说谎。事实上,他们不能声称能够存储超过他们的存储空间的数据,因为这会花费时间来运行PoSt.Setup,另外PoSt.Prove是串行的计算,并不能并行化的快速生成证明。

6.2.3 使用功率达成共识

我们预计通过扩展现在(和未来)的权益证明共识协议来实现Filecoin共识的多种策略,其中权益被替换为分配的存储。我们预计了权益证明协议的改进,我们提出了一个基于我们前期工作,称为预期共识的构建[14]。我们的策略是在每一轮选举一个(或多个)矿工,使得赢得选举的概率与每个矿工分配的存储成比例。

预期共识(Expected Consensus) 预期共识的基本直觉是确定性的,不可预测的。并在每个周期内秘密选举一个小的Leader集合。预期的期望是每个周期内当选的Leader是1,但一些周期内可能有0个或者许多的Leader。Leader们通过创建新区块并广播来扩展区块链网络。在每个周期,每个区块链被延伸一个或多个区块。在某个无Leader的周期内,空区块被添加到区块链中。虽然链中的区块可以线性排序,其数据结构是有向无环图。EC是一个概率共识,每个周期都使得比前面的区块更加确定,最终达到了足够的确定性,且出现不同的历史块链的可能性是足够小的。如果大多数的参与者都通过签署区块链来扩展区块链,加大这个区块所属链的权重,那么这个区块就被确认了。

选举矿工 在每个周期,每个矿工检查他们是否被选为Leader,这类似于完成前面的协议:CoA[15],Snow White[16],和Algorand[17]。

译者注:下面的公式表达式请参考英文原版为佳

 

在图13中,我们描述了矿工(ProveElect)和网络节点(VerifyElect)之间的协议。这种选举方案提供了三个属性:公平,保密和公开的可验证性。

  • 公平 每个参与者每次选举只有一次试验,因为签名是确定性的,而且t和rand(t)是固定的。假设H是安全的加密散列函数,则H(Mi)/2L必须是从(0,1)均匀选择的实数,因此,可能使得方程等式为true必须是Pti/Σjptj,这等于矿工在在网络中的部分功率。因为这个概率在功率上是线性的,这种可能性在分裂或者汇集功率情况下被保留。注意随机值rand(t)在时刻t之前是未知的。

  • 保密 由于有能力的攻击者不拥有Mi用来计算签名的秘钥,考虑到数字签名的假设,这个是可以忽略不计的。

  • 公开可验证: 当选Leader i ∈ Lt 可以通过给出t,rand(t),H(i)/2L,来说服一个有效的验证者。鉴于前面的观点,有能力的攻击者在不拥有获胜秘密秘钥的情况下不能生成证明。

 

 ----------------------------------------------------------------------------------------------------------------

 7 智能合约

Filecoin为最终用户提供了两个基本原语:Get和Put。 这些原语允许客户以优惠的价格存储数据并从市场中检索数据。 尽管原语涵盖了Filecoin的默认使用案例,但我们通过支持智能合约的部署,允许在Get和Put之上设计更复杂的操作。 用户可以对我们分类为文件合约以及通用智能合约的新的细粒度存储/检索请求进行编程。 我们整合了一个合约系统(基于[18])和一个Bridge系统,将Filecoin存储装入其他区块链,反之亦然,将其他区块链的功能带入Filecoin。

我们期望在Filecoin生态系统中存在大量的智能合约,我们期待着一个智能合约开发者社区。

7.1 Filecoin智能合约

智能合约使得Filecoin的用户可以编写有状态的程序,来花费令牌向市场请求存储J/检索数据和验证存储证明。用户可以通过将交易发送到账本触发合约中的功能函数来与智能合约交互。我们扩展了智能合约系统来支持Filecoin的特定操作(如市场操作,证明验证)。

  • 文件合约: 我们允许用户对他们提供的存储服务进行条件编程。有几个例子值得一提:(1)承包矿工:客户可以提前指定矿工提供服务而不参与市场 (2)付款策略:客户可以为矿工设计不同的奖励策略,例如合约可以给矿工支付随着时间的推移越来高的费用 ,另一个合约可以由值得信任的Oracle的通知来设置存储的价格。(3)票务服务:合约可以允许矿工存放令牌和用于代表用户的存储/检索的支付 (4)更复杂的操作:客户可以创建合约来运行数据更新。

  • 智能合约:用户可以将程序关联到其他系统(如以太坊[18])他们的交易上,他们不直接依赖存储的使用。我们预见了以下的应用程序:去中心化命名服务,资产跟踪和预售平台。

7.2 与其他系统的集成

桥(Bridges)是旨在连接不同区块链的工具;现在正在处理中的,我们计划支持跨链交互,以便能将Filecoin存储带入其他基于区块链的平台,同时也将其他平台的功能带入Filecoin。

  • Filecoin进入其他平台:其他的区块链系统,如比特币[19],Zcash [20],特别是Ethereum [18]和Tezos,允许开发人员写智能合约;然而,这些平台只提供很少的存储能力和非常高的成本。我们计划提供桥将存储和检索支持带入这些平台。我们注意到,IPFS已经被作为几个智能合约(和协议令牌)引用和分发内容的一种方式来使用。增加到Filecoin的支持将允许这些系统以交换Filecoin令牌的方式来保证IPFS存储内容。

  • 其他平台进入Filecoin:我们计划提供Filecoin连接其他区块链服务的桥。例如,与Zcash的集成将支持发送隐私数据的存储请求。

-----------------------------------------------------------------------------------------------------------------------

8 未来的工作

这项工作为Filecoin网络的建设提供了一个清晰和凝聚的道路;但是,我们也认为这项工作将成为今后研究去中心化存储系统的起点。在这个我们识别和填充三类未来 工作。这包括已经完成只是等待描述和发布的工作,提出改进当前协议的开放式问题,和协议的形式化。

8.1 正在进行的工作

以下主题代表正在进行的工作。

  • •每个块中的Filecoin状态树的规范。

  • Filecoin及其组件的详细绩效估计和基准。

  • 完全可实现的Filecoin协议规范。

  • 赞助检索票务模型,其中通过分配每个可持票花费的令牌,任何客户端C1可以赞助另一个客户端C2的下载。

  • 分层共识协议,其中Filecoin子网可以在临时或永久分区进行分区并继续处理事务。

  • 使用SNARK / STARK增量区块链快照。

  • FileCoin-Ethereum合约接口和协议。

  • 使用编织(Braid?)进行区块链归档和区块链间冲压。

  • 只有在区块链解决冲突的时候才发布"时空证明”。

  • 正式证明实现了Filecoin DSN和新型存储证明。

8.2 开放式问题

作为一个整体,有一些公开的问题,其答案有可能可以大大改善网络。尽管事实上,在正式启动之前并不是必须必须解决的问题。

  • 一个更好的原始的"复制证明“密封功能,理想情况下是O(n)解码(不是O(nm)),可公开验证,无需SNARK / STARK。

  • “复制证明”功能的一个更好的原语,可以公开验证和透明没有SNARK / STARK。

  • 一个透明,可公开验证的可检索证明或其他存储证明。

  • 在检索市场中进行检索的新策略(例如,基于概率支付,零知识条件支付)。

  • “预期共识”更好的秘密Leader选举,在每个周期,只有一位当选Leader。

  • 更好的可信赖的SNARK设置方案,允许增加扩展公共参数(可以运行MPC序列的方案,其中每个附加的MPC严格降低故障概率,并且每个MPC的输出可用于系统)。

8.3 证明和正式的验证

由于证明和正式验证的明确价值,我们计划证明Filecoin网络的许多属性,并在未来几个月和几年内开发正式验证的协议规范。几个证明正在进行中还有些正在思考中。但注意,要证明Filecoin的许多属性(如伸缩,离线)将是艰难的,长期的工作。

  • 期共识和变体的正确性证明

  • 功率故障容错正确性的证明,异步1/2不可能导致分叉。

  • 在通用组合框架中制定Filecoin DSN,描述Get,Put和Manage作为理想的功能,并证明我们的实现。

  • 自动自愈保证的正式模型和证明。

  • 正式验证协议描述(例如TLA +或Verdi)。

  • 正式验证实现(例如Verdi)。

  • Filecoin激励的游戏理论分析。

以上是关于激励机制一种去中心化和中心化的reputation的博弈论自洽激励的主要内容,如果未能解决你的问题,请参考以下文章

Filecoin:一种去中心化的存储网络

比特币是一种去中心化的加密数字货币

分析比特币网络:一种去中心化点对点的网络架构

区块链共识算法整理

区块链扫盲:区块链技术初探

区块链不仅是新技术 更是新的机制设计