我创建了一个开源合同和Web前端, 甲骨文交换,因为我希望看到加密技术回到其离网的根源。 我无法管理它,因为我的指纹太多,无法直接受益。 OracleSwap是一个模板,程序员可以轻松管理参照客观结果的合同:流动资产或体育博彩。 用户创建一个多头或空头掉期(aka CFD)头寸,这些头寸参考一个唯一的Oracle合同来存储价格(原型参考ETH / USD,BTC / USD和S&P500)。 该合同的唯一用户是流动性提供者,投资者和甲骨文。 单一的攻击面是通过一个阴谋的神谕发布欺诈性价格。 它包含多项创新,包括开盘价(如收盘价),为流动性提供者提供的净敞口,以及被骗方将其作弊者清零的能力和动机。
白皮书和技术附录对此进行了更全面的描述,但是我想解释一下,对于智能合约而言,为什么集中式,笔名的oracle优于分散式的oracle。 许多体贴的加密货币领导人认为,去中心化是区块链上任何dapp的前提,他们将其定义为暗示着许多代理和共识机制。 这完全是不正确的,这是类别错误,它假定零件必须具有整体的所有特征。 最重要的是,分散式预言机效率低下,并且分散了使任何预言机“不信任”的基本机制。
在第一次十字军东征(1099)之后,圣殿骑士团保护朝圣者前往新征服的耶路撒冷,并迅速建立了一家早期的国际银行。 朝圣者可以在圣殿骑士的据点内存放金钱或贵重物品,并收到描述他们所拥有物品的正式信件。 然后,朝圣者可以沿着这条路线提取现金,以照顾他们的需求。 到12世纪,储户可以自由地将其财富从一种财产转移到另一种财产。
圣殿骑士不受任何君主控制,更糟糕的是,许多人欠他们钱。 最终,法国国王菲利普四世于1307年当天在整个欧洲逮捕了数百名顶级圣殿骑士,包括大师在内,夺取了进攻面。他们被控以异端,这是系统性风险的中世纪版本,对所有的一切都是美好而崇高的。 几年后,许多圣殿骑士被处决,圣殿骑士的银行系统消失了(未知的圣殿骑士以某种方式逃离了自己的巨额财富,那时那还不是数字的,这是一个谜)。
政府,交易所和传统金融机构一直在进行任何可能削弱其市场力量的斗争。 去中心化对于抵抗他们不可避免的攻击至关重要,因为如果有人接管了现有的区块链,它可以通过硬分叉重新出现。 如果中国或克雷格·赖特(Craig Wright)决定从现有的以太坊矿工中选出51%,旧链的现值将创建一支愿意且有能力的替代矿工大军。
Vitalik Buterin在他对有限能力的令人钦佩的评估中很好地描述了这种弹性:
开发人员的问题是我们是可替代的人。 一个开发人员失败了,其他人可以继续开发。 如果有人将枪对准我的头并告诉我写一个硬分叉补丁,我一定会写硬分叉补丁。 我将编写GitHub问题,将编写代码,将其发布,并按照他们说的做。 如果我这样做并发布硬分叉补丁以删除大量帐户,那么会有多少人愿意下载此更新,安装并切换到该更新? 这称为权力下放。
Vitalik Buterin。 TechCrunch:Sessions区块链2018。
遭受攻击时使用硬叉的潜力是防范外人的主要保护措施。 这取决于该协议具有深层的用户和开发人员集合,这些用户和开发人员优先考虑基本的比特币原则(透明性,不变性,假名,防没收和无许可访问),以及为什么分权对于长期的加密安全至关重要。
外部攻击已经摧毁甚至摧毁了一些曾经有用的金融创新。 E-gold,Etherdelta,Intrade和ShapeShift都具有明显的集中点,允许当局起诉,关闭或强迫他们服从传统的财务协议。 在全球的远程服务器上以虚拟方式运行脚本的假名oracle不会受到这种干扰。 这种继承是使以太坊如此有价值的原因,因为dapp不需要自己的分散式共识机制来避免此类攻击。
任何促进衍生产品交易或体育博彩的预言在大多数发达国家都受到监管。 Dapp公司是明显的攻击面。 在一定程度上,Augur和0x不能与传统机构竞争,当局明智的做法是将它们简单地视为无足轻重的好奇心。 如果这些协议能够与传统金融机构竞争,例如通过提供以太坊价格的期货头寸,则所有传统的法定法规都将以维护公众为借口强加于他们。 制造者 和 链环 已经在调情 KYC,因为他们知道自己无法在不屈服于市场的情况下将最终能产生利润的市场货币化。 博格集体.
中本聪需要在比特币的早期阶段保持匿名,以避免在比特币没有他工作之前一些地方政府起诉他。 最初模拟的点对点系统比特币Tor是由不在传统平台上做广告,没有机构投资者或在会议上讲话的人组成的。 可行的dapps应该遵循这个例子,而不是将重点放在公司化上,而应着重于发展其在当前加密爱好者中的声誉。
对于涉及少量资金的案件,分散系统中的随机个体很难以其他参与者为代价进行串通。 合谋的成本太高,这消除了巨魔和麻烦制造者的影响。 但这会产生一种危险的自满情绪,因为任何强大的机制都必须激励良好的行为 即使 有共谋。 如果我们希望区块链有朝一日能够处理真实的,重要的交易,则意味着存在足够的以太坊以至于有人最终会合谋入侵系统的情况。
中本聪知道,通过工作量证明进行恶意合谋是可行的,只是没有问题,因为这会自欺欺人。 在里面 比特币白皮书Satoshi强调了工作量证明如何消除了对可信第三方的需求,为什么“不可信”一词通常归因于分散的网络。 使用工作量证明,不可能花双倍的钱,这恰恰与自私自利的理性背道而驰。 具体来说,他写道,任何有能力将“应该发现,遵守规则更有利可图……而不是破坏制度和自己财富的有效性“。
对于像以太坊和比特币这样的大型区块链,人们需要专门的采矿设备,这些设备只有在矿工遵守法律条文和精神的情况下才有价值。 操纵区块所破坏的资本比这种攻击所产生的直接散列功率成本大一千倍。 尽管少数比特币或以太坊矿业集团可以有效地勾结和控制51%的网络控制,但这并不令人担忧,因为考虑到损失未来收入的成本,设计双倍支出并不符合他们的自身利益。 例如,在2019年春季,Binance负责人Zhao Changpeng Zhao建议进行区块链回滚以消除近期的盗窃行为。 比特币社区嘲笑他,他迅速退出,因为这与比特币矿工或交易所的长期利益无关。 节省40万美元将减少100亿美元的区块链,这是一个容易的决定。
人们经常提到 防串扰 作为主要的权力下放美德。 一个更好的词是 阴谋抵抗。 即使存在合谋,去中心化系统也必须产生适当的激励机制,因为合谋总是可能发生的,因为在实践中,大型去中心化区块链由少数团队控制(Michels's 寡头铁律)。 良性区块链冲突的例子有好几种,当明智地应用它并谨慎地提高其弹性时(例如,比特币中的漏洞于2018年2016月在幕后被修补,臭名昭著的以太坊XNUMX回滚以应对DAO黑客攻击)。 法学教授安吉拉·沃尔什(Angela Walsh) 突出 良性勾结事件证明比特币和以太坊并未分散,因此应由标准机构进行更多监管。
律师热衷于技术定义,但是关键是传统的监管机构如果尝试,就无法监管比特币或以太坊,这突显了这些协议的本质分散性。 如果美国的SEC或英国的FCA试图积极地监管以太坊,他们将很快发现决策者不在他们的管辖范围之内,同样,如果Joe Lubin和Vitalik Buterin同意将以太坊归并到Facebook矿工中,将分崩离析链和现有的以太币将在这条新链上更具价值。 在可能的情况下,该协议是分散的,不受任何出于任何原因不喜欢其愿景的局外人的保护。
抵制阴谋归结为动机,确保运行系统的人发现运行系统比作弊更有价值。 同样的利润最大化激励措施不仅使矿工保持诚实,而且还保护了矿工免受自身伤害。 尽管区块链有许多共同点,但它们的优先级却大不相同。 优先考虑速度的用户更喜欢EOS。 那些优先考虑匿名的人,门罗; 机构认可,瑞波。 一群希望从根本上改变其区块链传统优先级的矿工将通过疏远他们的基础而贬值其资产,而那些拥有新优先级的矿工不会切换,而是强调他们最喜欢的区块链一直以来都是正确的。 加密货币之间的竞争可防止暴躁的内部人员造成太大的损失。
快速直接的监控对于创建激励兼容机制至关重要。 对于分散式预言机,代理的各种子集都在处理任何结果。 很难找到一组简明的数据,例如宣布无效的Augur市场的百分比和类型,或Chainlink过去的业绩报告清单。 尽管所有的oracle报告都存在(不可变!),但对于普通用户而言,将它们放在一起根本是不切实际的。 此外,过去的错误和作弊被视为异常,因此降低了作弊的成本。
2017年的ICO泡沫鼓励加密领域的每个人都可以发行令牌,而无需考虑; 代币如何提高dapp的效率是渴望投资下一个比特币的投资者的第二个关注点。 即使将一小部分ICO资金用于研发,这也意味着数亿美元的人才和时间专注于创建去中心化的dapp,以证明其对代币的需求是合理的。 所有人都会意识到一个可靠的分散式预言机的价值,但他们却无法交付一个明显的失败。 当今最流行的预言机已经有效地进行了集中管理,因为ChainLink和MakerDAO都受到内部人员的严格控制,因此具有明显的攻击面。 它们将继续被有效地集中化,因为替代方案将是类似于Augur的系统,效率极低(缓慢,可破解,la脚的合同)。
依赖于其代币的市场价值来激励良好行为的分散式预言家在用户必须支付预言家的多少和保持诚实的先知之间有很大的差距。 例如,假设有一个游戏,需要向报告者支付1 ETH,以使诚实报告的净收益大于报告者可以实施的骗局。 如果只有2%的代币持有者报告结果,这意味着我们必须向甲骨文集体支付50 ETH(1 / 0.02),因为我们无法将代币的现值集中在代币持有者报告的子集上。 可以迫使记者发布不诚实举报的债券,但如果这样做,它将使报告者的报酬上限限制在琐碎的水平上,这无效率地忽略了甲骨文的现值,也意味着冗长的甲骨文。付款延迟。
分散式预言机的另一个问题是它们通常服务于多种游戏。 尽管这有助于使人联想到类似亚马逊的通用性,但它会使特定合同与甲骨文激励措施的协调性差。 收益的频率和大小在各个应用程序中会有所不同,因此对于大多数应用程序而言,在任何时候都始终会产生甲骨文费用以激励诚实。 高效的解决方案可最大程度地减少上下文参数,这意味着对于任何特定用途,最佳的通用解决方案都是次优的。
尽管神谕中的权力下放有明显的成本,但如果满足基本的审查/攻击抵抗要求则没有任何好处。 人群的智慧与比特币或S&P500等流动资产的合约无关。 信誉评分算法没有意义,因为最明显的风险是退出诈骗,它依赖诚实行为直到最终交易(Bitconnect).
为了以一种加密经济学上最佳的方式调整oracle的收益空间,需要创建oracle收益,以使真实报告的收益始终大于错误报告的成本。 通过让甲骨文完全控制,从真实报告中获得的收益将最大化。 通过明确负责,易于审计和惩罚,甲骨文完全承担了因误报而造成的损失; 通过玩特定的重复游戏,每周的成本/收益计算是一致的; 通过给予被欺骗的用户惩罚欺骗的先知的能力和动机,欺骗收益得到了最小化。 这些都导致了单代理Oracle的效率。
意外错误可能来自损坏的源,也可能是汇总这些价格并将单个价格过帐到合同中的算法。 我们经常会犯无意的错误,并依靠与我们有业务往来的人的善意和常识来“撤消”我们可能在付款中添加了额外零的情况。 信用卡可以退款,如果银行不小心将$ 1MM存入您的帐户,则您有责任偿还。 不利之处在于,此过程涉及第三方,第三方强制执行以下规则:重大意外错误是可逆的,这意味着它们拥有用户帐户余额的权利。
在OracleSwap中,oracle合同本身在坚固性代码内有两个错误检查。 首先,价格是否比之前的价格高出50%,其次,如果价格与之前的价格完全相同。 这些约束捕获最常见的错误。 但是,通常在区块链之外通常可以更有效地解决错误过滤问题,最终应将其制成一种算法,因为否则,将通过人员来验证最终报告,从而引入攻击面。 因此,使用很多人减少错误只会增加不良价格中更为微妙和危险的来源。 OracleSwap在几分钟内使用几个独立来源的自动价格拉动,并取中位数。 由于该合同针对的是长期投资者,因此来自多家交易所的中位数价格将具有可容忍的标准差; 由于未指定确切的供稿和交易,因此无法进行审查; 由于价格是在1小时内排除交易的窗口内发布的,因此很容易收集和验证准确的价格。
分散神谕解决了他们没有的问题:攻击和审查抵抗。 更新Oracle合同的代理仅需要访问Internet和匿名即可避免审查。 鉴于此,创建适当的预言激励的最佳方法是创建一个游戏,其中诚实和作弊的收益得到了很好的参数化,并且局外人可以轻松地验证代理商是否表现出诚实。 对于任何强大的游戏而言,简单性都是必不可少的,这意味着消除了各方和程序。
市场是最终的权力下放机制。 市场由集中的代理人组成并不是一个悖论,因为财产存在于较低层次而不是较高层次通常是事物的本质。 去中心化市场只需要消费者拥有选择权和信息权,企业就可以自由进入。 市场一直依赖信誉良好的个人和公司,因为质量始终难以评估,因此,消费者更喜欢信誉良好的卖家,以避免鸡蛋不佳或线路不良的汽车回家。 区块链是历史上最好的问责制设备,它使合同能够为其管理员创造宝贵的声誉,同时保持匿名,因此不可审查。
一组竞争性合同比为未指定合同设计的通用预案或为未指定合同的设计的通用交易协议更有效。 与“全能”的甲骨文捆绑在一起的简单合同可产生清晰明确的责任感,从而为诚实举报提供了最大的动力