4 去中心化Oracle网络支持的去中心化服务
为了说明DON的多功能性以及它们如何支持大量新服务,我们在本节中展示了基于DON的应用程序的五个示例,并描述了实现它们的混合合约:(1)证明Reserves,一种跨链服务形式;(2) 与企业/遗留系统接口,即创建一个基于中间件的抽象层,以最少的区块链特定代码或专业知识促进区块链应用程序的开发; (3) 去中心化身份,使用户能够获取和管理自己的身份证件和凭证的工具; (4) 优先通道,一种确保及时将关键基础设施交易(例如预言机报告)包含在区块链上的服务;(5)保密DeFi,即隐藏参与方敏感数据的金融智能合约。 在这里,我们使用SC来表示混合合约的 MAINCHAIN 部分,并单独或根据可执行文件描述 DON组件。
4.1 储备证明
对于许多应用程序,在区块链之间或之间中继状态很有用。 此类服务的一个流行应用是加密货币包装。WBTC [15]等包裹代币正在成为去中心化金融 (DeFi) 中的流行资产。它们涉及将“打包”的支持资产存放在其源区块链MAINCHAIN上,并在不同的目标区块链MAINCHAIN上创建相应的代币。例如,WBTC是以太坊区块链上的ERC20代币,对应比特币区块链上的BTC。
由于MAINCHAIN上的合约对 MAINCHAIN没有直接可见性,因此它们必须明确或隐含地依赖预言机来报告智能合约中包装资产的存款,从而产生有时称为储备证明的东西。例如,在WBTC[15]中,托管人BitGo持有BTC并发行WBTC,Chainlink网络提供储备证明[76]。
DON本身可以提供储备证明。然而,有了DON,就有可能走得更远。DON可以管理秘密,并通过使用适当的适配器,可以在任何所需的区块链上进行交易。因此,DON有可能成为众多托管人中的一员,甚至可以作为唯一的去中心化托管人来管理被包裹的资产。因此,DON可以作为一个平台来增强使用储备证明的现有服务的安全性。
例如,假设MAINCHAIN(1)^{\left(1\right)}是比特币,而MAINCHAIN(2)^{\left(2\right)}是以太坊。在MAINCHAIN(2)^{\left(2\right)}上,合约SC发行代表打包BTC的代币。DON控制一个BTC地址addr(1)DONaddr{{\left(1\right)\atop DON}}。然后,为了包装BTC,用户UU将XX BTC 从addr(1)uaddr{{\left(1\right)\atop u}}发送到addr(1)DONaddr{{\left(1\right)\atop DON}}以及 MAINCHAIN(2)^{\left(2\right)}-address addr(2)uaddr{{\left(2\right)\atop u}} 。DON通过MAINCHAIN(1)^{\left(1\right)}的适配器监控addr(1)DONaddr{\left(1\right)\atop DON}。在观察到UU的存款后,通过足够高概率的确认,它通过MAINCHAIN(2)^{\left(2\right)}的适配器向SC发送消息。此消息指示SC为addr(2)uaddr{\left(2\right)\atop u}铸造XX令牌。
对于UU释放XX令牌,会发生相反的情况。然而,在MAINCHAIN(1)^{\left(1\right)}上,addr(1)DONaddr{\left(1\right)\atop DON}将XX BTC 发送到addr(1)uaddr{\left(1\right)\atop u}(或发送到另一个地址,如果用户要求)。当然,可以调整这些协议以与交易所合作,而不是直接与用户合作。
4.2 与企业/遗留系统的接口
DON可以作为区块链之间的桥梁,例如储备证明,但另一个目标是让它们充当区块链和遗留系统[176]或类似区块链的系统之间的双向桥梁,例如中央银行数字货币[30]。
企业在将现有系统和流程连接到分散系统时面临许多挑战,包括:
- 区块链敏捷性:区块链系统变化迅速。企业可能会面临交易对手希望在其上进行交易但企业在其现有基础设施中没有支持的区块链的快速新出现或流行度的上升。总的来说,区块链的活力使得单个企业很难跟上整个生态系统的步伐。
- 特定于区块链的开发资源:对于许多组织而言,招聘或培养尖端的区块链专业知识很困难,特别是考虑到敏捷性的挑战。
- 私钥管理:管理区块链或加密货币的私钥需要不同于传统网络安全实践的运营专业知识,并且许多企业无法获得。
- 机密性:企业对在链上公开其敏感和专有数据持谨慎态度。
为了解决前三个困难,开发人员可以简单地使用DON作为安全中间件层,使企业系统能够读取或写入区块链。DON可以为开发人员和用户抽象出详细的技术考虑,例如气体动力学、链重组等。通过向企业系统提供简化的区块链接口,DON可以大大简化区块链感知企业应用程序的开发,减轻企业获取或孵化特定于区块链的开发资源的负担。
DON的这种使用特别有吸引力,因为它使企业开发人员能够创建很大程度上与区块链无关的智能合约应用程序。因此,DON用作中间件的区块链集合越大,企业用户可以轻松访问的区块链集合就越大。开发人员可以将应用程序从现有的区块链移植到新的区块链上,只需对其内部开发的应用程序进行最少的修改。
为了解决额外的机密性问题,开发人员可以求助于我们在本文中介绍的工具,并期望部署以支持DON应用程序。其中包括第3.6.2节中的DECO和Town Crier以及第7.1.2节中讨论的保密API修改以及本节其余部分中涵盖的一些特定于应用程序的方法。这些DON系统可以提供关于企业系统状态的高完整性、链上证明,而不会泄露链上敏感的企业源数据。
4.3 去中心化身份
去中心化身份是用户应该能够获取和管理自己的凭证而不是依赖第三方来这样做的概念的总称。去中心化凭证是对持有者属性或断言的证明,这通常被称为索赔。凭证由实体(通常称为颁发者)进行数字签名,这些实体可以权威地将声明与用户相关联。在大多数提议的方案中,声明与分散标识符(DID)相关联,DID是给定用户的通用标识符。凭证绑定到用户持有其私钥的公钥。
因此,用户可以使用她的私钥证明拥有索赔。作为去中心化身份的远见卓识,现有和提议的方案,例如[14, 92, 129, 216],具有三个严重的限制:
- 缺乏遗留兼容性:现有的去中心化身份系统依赖于一个称为发行者的权威社区来生成DID凭证。由于现有的Web服务通常不会对数据进行数字签名,因此发行者必须作为专用系统启动。因为没有去中心化的身份生态系统就没有动力去做这件事,所以会产生鸡与蛋的问题。换句话说,目前尚不清楚如何引导发行人生态系统。
- 不可行的密钥管理:去中心化身份系统要求用户管理私钥,使用加密货币的经验表明这是不可行的责任。据估计,由于密钥管理故障[194],大约有4,000,000比特币永远丢失了,许多用户将他们的加密资产存储在交易所[193],从而破坏了去中心化。
- 缺乏保护隐私的Sybil抵抗:应用程序的基本安全要求,例如投票、代币销售期间代币的公平分配等,是用户无法断言多个身份。现有的去中心化身份提案要求用户透露他们的真实身份,以实现这种Sybil抵抗,从而破坏重要的隐私保证。
可以结合使用在DON中执行分布式计算的节点委员会和使用DECO或Town Crier等工具来解决这些问题,如CanDID [160]中所示的系统。
DECO或Town Crier可以通过设计将现有的Web服务转变成保密的证书颁发者,而无需修改。它们使DON能够为此目的将相关数据导出到凭证中,同时隐藏不应出现在凭证中的敏感数据。
此外,为了方便用户恢复密钥,从而解决密钥管理问题,DON 可以允许用户以秘密共享的形式存储私钥。用户可以通过向DON中的节点证明(类似地,使用 Town Crier 或 DECO)来恢复他们的密钥,以使用一组预定的网络提供商(例如Twitter、谷歌、Facebook)登录帐户。与OAUTH相比,使用Town Crier或DECO的好处是用户隐私。这两个工具使用户能够避免向DON透露网络提供商标识符——通常可以从中获得真实世界的身份。
最后,为了提供Sybil抵抗力,如[160]所示,DON可以将用户的唯一真实世界标识符(例如,社会安全号码 (SSN))执行隐私保护转换为用户注册时链上标识符。
因此,该系统可以检测重复注册,而不会向单个DON节点透露SSN等敏感数据。
DON可以代表外部分散身份系统在无许可或许可的区块链上提供任何这些服务,例如Hyperledger Indy[129]。
示例应用:KYC:去中心化身份有望成为简化区块链金融应用要求同时改善用户隐私的一种手段。它可以帮助解决的两个挑战是反洗钱/了解您的客户 (AML/KYC) 法规下的认证和合规义务。
许多国家的反洗钱法规要求金融机构(和其他企业)建立和验证与其进行交易的个人和企业的身份。KYC构成了金融机构更广泛的AML政策的一个组成部分,该政策通常还涉及监控用户行为和观察资金流动等。
KYC通常涉及用户以某种形式展示身份凭证(例如,进入在线Web表单、在视频会话中将身份证件放在用户面前等)。原则上,去中心化凭证的安全创建和呈现在几个方面可能是一种有益的选择,即:(1) 使KYC流程对用户和金融机构更有效,因为一旦获得凭证,它就可以无缝呈现给 任何金融机构;(2) 通过在视频验证期间通过泄露个人身份信息 (PII) 和欺骗来减少身份盗用的机会,从而减少欺诈;(3)降低金融机构中 PII 泄露的风险,因为用户保留对自己数据的控制权。
鉴于金融机构因AML合规失败而支付的数十亿美元的罚款,以及许多金融机构每年在KYC上花费数百万美元,改进可以为金融机构以及进而为消费者带来可观的节省[196]。虽然传统金融部门在采用新的合规工具方面进展缓慢,但DeFi系统正越来越多地接受它[43]。
示例应用程序:抵押不足的贷款:当今支持贷款的大多数DeFi应用程序仅源自完全抵押贷款。这些是向存放价值超过贷款价值的加密货币资产的借款人提供的贷款。最近,人们对DeFi社区通常所说的抵押贷款不足产生了兴趣。相比之下,这些是相应抵押品的价值低于贷款本金的贷款。抵押不足的贷款类似于传统金融机构经常提供的贷款。他们不是依靠存放的抵押品作为偿还贷款的保证,而是根据借款人的信用记录做出贷款决定。
抵押不足的贷款构成了DeFi借贷市场中新兴但不断增长的部分。它们依赖于传统金融机构所采用的机制,例如法律合同[91]。其增长的一个基本要求是能够以提供强大完整性的方式向DeFi系统提供用户信用数据(传统贷款决策中的一个关键因素),即确保数据正确。
启用DON的去中心化身份系统将使潜在借款人能够生成高保证凭证,以证明其信誉,同时保护敏感信息的机密性。具体来说,借款人可以根据来自权威在线资源的记录生成这些凭证,同时仅公开由DON证明的数据,而不会公开其他潜在的敏感数据。例如,借款人可以生成一个凭证,表明她在一组信用局的信用评分超过了特定阈值(例如,750),而无需透露她的精确评分或她的记录中的任何其他数据。此外,如果需要,可以匿名生成此类凭据,即,用户的姓名可以被视为敏感数据,并且其本身不会暴露给预言机节点或她的去中心化凭据。凭据本身可以在链上或链下使用,具体取决于应用程序。
总之,借款人可以向贷方提供有关其信用记录的重要信息,并且具有很强的完整性,并且不会有暴露不必要的敏感数据的风险。
借款人还可以提供各种其他有助于做出贷款决策的保密凭证。例如,凭证可以证明借款人拥有(链下)资产,正如我们在下一个示例中展示的那样。
应用示例:认证:许多司法管辖区限制了可以向其出售未注册证券的投资者类别。例如,在美国,SEC条例D规定,要获得此类投资机会的认可,个人必须拥有100万美元的净资产、满足某些最低收入要求或具有某些专业资格[209, 210]。当前的认证流程繁琐且效率低下,通常需要会计师出具的证明信或类似证据。
去中心化身份系统将使用户能够从现有的在线金融服务账户中生成证明符合认证法规的凭证,从而促进更有效和保护隐私的KYC流程。此外,DECO和Town Crier的隐私保护特性将允许在生成这些凭证时具有很强的完整性保证,而无需直接透露用户财务状况的详细信息。例如,用户可以生成一个凭证,证明她的净资产至少为100万美元,而无需透露有关其财务状况的任何其他信息。
4.4 优先频道
优先频道是一种有用的新服务,使用DON很容易构建。他们的目标是在网络拥塞期间在MAINCHAIN上及时交付精选的高优先级交易。优先通道可以被视为区块空间期货合约的一种形式,因此可以被视为一种加密商品,这个术语是芝加哥项目[61, 136] 的一部分。
优先通道专门用于矿工以启用基础设施服务,例如预言机、合约治理功能等,而不是用于金融交易等普通用户级别的活动。事实上,正如这里所设计的那样,由网络中不到100%的算力实现的优先通道只能提供对交付时间的宽松限制,从而阻止其用于高度依赖速度的目标,例如抢先交易。

图10:优先通道是矿工MM(或更一般地说,一组矿工MM)向用户UU保证交易ττ将在包含在内存池中的DD个块内被开采。合约SC可以使用DON监控来强制执行通道的服务条款。
优先通道采用提供通道的矿工或一组矿工(或矿池)MM与支付访问费用的用户UU之间的协议形式。MM同意,当UU向内存池提交交易ττ时(任何gas价格,但预先商定的gas限制),MM将把它放在链上的下一个D块中。这个想法在图1中示意性地描述了。
优先通道合约描述:优先通道可以大致实现为混合智能合约,如下所示。 我们让SC表示MAINCHAIN上的逻辑,并由exec表示DON上的逻辑。
SC接受来自MM的存款/股权$d和来自UU的预付款$p.DON 可执行执行程序监视内存池,触发UU放置交易。如果UU提交MM的交易,它会向SC发送成功消息 在服务失败的情况下及时挖掘和失败消息。
SC在收到成功消息后向MM发送付款$p,如果收到失败消息,则将包括$d在内的所有剩余资金发送给UU。成功终止后,它将存款$d释放给MM。
矿工MM当然可以同时为多个用户提供优先通道,并且可以为预先约定数量 消息打开与UU的优先通道。
4.5 保密DeFi/Mixicles
如今,DeFi应用程序[1]几乎没有为用户提供保密性:所有交易在链上都是可见的。各种基于零知识的方法,例如[149, 217],可以提供交易隐私,并且TEF足够通用以支持它们。 但这些方法并不全面,例如,通常不会隐藏交易所基于的资产。
我们最终打算在DON中支持的广泛的计算工具集将以多种不同的方式实现隐私,这些方式可以填补这些空白,帮助补充其他系统的隐私保证。例如,Chainlink Labs研究人员[135]提出的一种保密DeFi工具Mixicles可以隐藏支持金融工具的资产类型,并且非常自然地适合DON框架。
Mixicles在实现简单二元期权的用途方面最容易解释。二元期权是一种金融工具,其中两个用户(为了与[135]一致)作为玩家,我们将在此引用具有两种可能结果的事件,例如,资产是否超过目标价格、预定时间。下面的例子说明了这个想法。
示例 2:Alice和Bob是基于称为Carol 的 Bubble Token(CBT)资产价值的二元期权的各方。Alice押注CBT在时间T = 2025年6月21日中午时的市场价格至少为250美元;Bob下注相反。每个玩家在预先指定的截止日期前存入100ETH。获胜位置的玩家获得200ETH(即获得100ETH)。
给定现有的Chainlink预言机网络OO,很容易实现实现例2中协议的智能合约 SC。两个玩家各在SC中存入100 ETH。在TT之后的某个时间,向OO发送查询qq,请求在时间TT的CBT价格rr。OO向SC发送该价格的报告rr。 然后,如果r ≥ 250,SC会向Alice汇款,否则会向 Bob 汇款。 然而,这种方法揭示了链上的rr——让观察者很容易推断出二元期权的基础资产。
在Mixicles的术语中,从概念上考虑SC的结果是有帮助的,它根据一个Switch传输计算为谓词switch(r) 的二进制值。在我们的示例中,如果r ≥ 250,则switch(r) = 0;鉴于此结果,Alice获胜。否则switch(r) = 1并且Bob获胜。
DON可以通过运行计算switch(r)并将其在链上报告给SC的可执行exec将基本的Mixicle实现为混合合约。我们在图11中展示了这种结构。

图11:示例2中的基本Mixicle示意图。为了为报告rr提供链上保密,从而为二元期权的基础资产提供,oracle仅通过Switch向合约SC发送二元值 switch(r)。
我们在附录C.3中指定了一个适配器ConfSwitch,它可以很容易地在DON中实现这个目标。ConfSwitch 背后的基本思想非常简单。ConfSwitch不报告值rr,而是仅报告二进制开关值 switch(r)。SC可以设计为仅基于switch(r)进行正确支付,而 switch(r) 本身不会透露有关基础资产的信息——在我们的示例中为CBT。此外,通过在使用审计员的公钥pkaud_{aud}加密的分类帐上的 (q,rq,r) 上放置密文,适配器ConfSwitch创建了一个保密的审计跟踪。
为简单起见,我们选择的基本Mixicle在我们的示例中仅隐藏了二元期权背后的资产和下注。成熟的Mixicle [135]可以提供两种形式的机密性。它向观察者隐藏:(1)玩家下注的事件(即qq和rr)以及(2)哪个玩家赢得了赌注。
由于Mixicle是在MAINCHAIN上执行的,要么一个玩家需要将switch(r)从DON中继到MAINCHAIN,或者可以创建一个可执行的exec,在ConfSwitch的输出上触发并调用另一个适配器将switch(r)发送到 主链。
第三种微妙的机密性也值得考虑。在ConfSwitch的基本实现中,OO在DON上运行适配器,从而了解资产(在我们的示例中为CBT)以及二元期权的性质。 然而,正如附录C.3中所讨论的,还可以使用DECO或Town Crier甚至向OO隐藏这些信息。在这种情况下,OO只了解SC的公共观察员的信息。
有关Mixicles的更多详细信息,我们请读者参考[135]。
原文链接:https://chain.link/whitepaper
---煤油灯科技victorlamp.com翻译整理---