截止发稿时间为止,Ergo和Cardano均已在eUTXO模型上实现智能合约功能。Ergo于2019年7月1日主网上线之时已实现智能合约功能。Cardano于最近(即2021年9月12日)上线智能合约功能。另据国外媒体报道,许多区块链研究员认为eUTXO相当于计算机系统从8位突进到64位的重大飞跃。Ergo和Cardano两大公链均是这方面的先锋,已组成eUTXO联盟,将助力eUTXO模型释放无限潜能。
介绍
eUTXO模型为智能合约编写者提供了一个强大而灵活的智能合约构建基础。与账户模型不同,基于UTXO的智能合约没有在交易中调用函数以进行状态转换的概念(译注:截止发稿时间为止,Ergo和Cardano已在eUTXO模型上实现智能合约功能。Ergo于2019年7月1日主网上线之时已实现智能合约功能。Cardano于今年9月12日实现智能合约功能。)相反,UTXO使用一种功能性更强的方法,每次花费时,旧的UTXO都会被销毁并创建新的输出。
在这个花费UTXO的过程中,智能合约会执行以验证此交易是否有效。因此,与其将智能合约视为会行动的自治实体,将它们视为保障真实和准确执行的守卫,会有效得到多。
虽然有点违反直觉,但实际上这种区别非常有用。与其让一个试图实现“成为世界计算机”这一不可能目标的系统陷入不可扩展之混乱,我们还不如现实一点,优化智能合约的设计,使其尽可能可扩展且功能强大。
通过明确对智能合约能作什么的期望,我们还可以释放这一能力,即探索其未开发的潜能。这就是eUTXO(扩展未花费交易输出)模型带给我们的好处。
在这篇文章中,我们将涉及许多此类创新,这些创新只有基于UTXO系统上的数据输入概念才有可能实现。
Avalanche为Evergreen子网推出Spruce测试网:4月13日消息,据官方博客,Avalanche宣布启动Avalanche Evergreen子网的测试网Spruce,该测试网的初始机构合作伙伴包括T. Rowe Price Associates、WisdomTree、Wellington Management和Cumberland,参与机构将使用Spruce作为各种应用程序和资产的测试网,以衡量链上交易执行和结算的好处。
Spruce测试网旨在使交易双方机构能够以低风险、低进入门槛的方式参与公共区块链基础设施。使用无价值的代币可以让机构参与者体验Avalanche子网架构的全部功能,而不会将资金置于风险之中。
此前4月6日消息,Avalanche推出“Evergreen”子网以连接区块链上的机构。[2023/4/13 14:00:54]
UTXO合约的工作原理
在介绍部分,我们高屋建瓴地快速介绍了UTXO。如果您已经精通该领域固然很好,但是对于大多数读者来说,UTXO非常抽象,让他们费脑力理解它也非常困难。因此,让我们直击基础知识,并从那里逐步了解到新颖的创新。
UTXO指未花费交易输出。在非常高的层级上,eUTXO系统上的每个UTXO(也称为币盒)包括:
1.?里面的资产。
2.?锁定UTXO的智能合约(脚本)。(或P2SH合约的哈希)
3.?保存在币盒中与智能合约相关的链上数据。
取决于现有区块链,UTXO中可能还保存有其他类型的数据(例如元数据)。然而,这些差异通常不会影响该模型本身的表达性,因此本文不考虑这些差异。
FHLBank:Silvergate并未停止贷款:金色财经报道,旧金山联邦住房贷款银行(FHLBank)去年年底向 Silvergate 提供了 43 亿美元,并没有强迫 Silvergate 偿还预付款,据传这是这家对加密货币友好的银行进入自愿清算的原因。该银行的一位发言人表示,“FHLBank San Francisco 没有要求或强迫 Silvergate Bank 预付其未偿还的预付款,Silvergate 根据自己对自身状况的评估,决定预付未偿还的预付款。”
Silvergate Capital 在 3 月 1 日的一份证券备案文件中披露,它不得不加速证券销售以筹集资金以偿还旧金山联邦住房贷款银行的预付款。Silvergate Bank在本月初之前完全偿还了这些贷款。加密行业的一些人推测,这最终引发了 Silvergate 上的银行挤兑。Silvergate 的股价在披露后的第二天暴跌,并在几天后宣布将暂停运营并自愿清算。该发言人表示,如果 FHLBank 贷款的银行发生“重大不利变化”,FHLBank 可能会要求提前还款,但 Silvergate 并未发生这种情况。[2023/3/16 13:06:56]
在现有区块链(Ergo、Cardano)中,锁定UTXO的智能合约是由地址定义的。因此,如果UTXO?A被发送到智能合约地址Y,则UTXO?A被智能合约Y锁定。该地址通常是合约的哈希(如是P2SH地址)或合约的序列化形式(如是P2S地址)。
当智能合约地址Y的UTXO被用作交易的输入时,智能合约Y中的代码/逻辑将被执行以确定交易是否有效。在执行期间,智能合约通常会读取:
l?UTXO中保存的资产。
火必:已从Signature Bank和Silvergate Capital撤出所有资金:3月14日消息,火必已从 Signature Bank 和 Silvergate Capital 撤出所有资金,而该交易所客户的资金未受影响。
火必发言人表示“火必之前在 Silvergate 有一个银行账户,但所有资产都在一段时间前被转出,目前没有金融合作伙伴关系”,并补充说存放在 Signature Bank 的资金已取出,送往其他金融机构。孙宇晨表示他们的业务没有受到那些银行倒闭的影响。(金十)[2023/3/14 13:03:05]
l?UTXO中的附加数据。
l?交易中其他输入的资产/数据/合约。
l?当前交易的其他上下文。
智能合约读取上面列出的数据作为输入,如果它执行到True(真)的等值,则交易有效并通过。这是基于UTXO的智能合约使用的核心工作流程。
这意味着每次您希望更新dApp(在UTXO内部)保存的数据时,您须花费原始UTXO(从而销毁它)并在同一地址创建新的UTXO并保存相同资产。然而,这个新的UTXO在其数据方面有一个新值,从而导致从旧数据值到新数据值的状态转换。
每个UTXO在它所附加的数据方面保存自己的个体状态。当数据和资产从一个UTXO移动到另一个UTXO时,它们会经历状态转换,这可能导致它们分裂、累积、被删除或与来自其他UTXO的其他资产/数据一起使用。借助多个输入UTXO和多个输出UTXO的潜力,这些高阶动作允许对更复杂的逻辑进行编码。这最终成为开发dApp的关键基本构建块之一。
Ergo公布AgeUSD稳定币协议代码:据Ergo平台官方推特消息,2021年1月30日,Ergo与Emurgo公布AgeUSD算法稳定币协议说明书、智能合约以及链下代码,详情请参考https://github.com/Emurgo/age-usd。AgeUSD最近在Ergo公链2021全球线上峰会上首次亮相,它是第一个基于UTXO模型升级版EUTXO构建的完全去中心化算法稳定币,明显优于Maker DAO,它将入驻的第一个公链平台是Ergo平台,之后还将入驻也是基于EUTXO构建的公链平台Cardano。[2021/1/30 18:28:22]
基础跨合约互操作性
正如我们所见,花费UTXO是eUTXO智能合约模型的核心。所有执行都发生在UTXO被花费时。
精明的读者可能已经注意到,由于我们将状态(数据)单独附加到每个UTXO,所以每次发生状态转换时,结果都会反映在所述数据中。因此,数据通常被“预处理”,其中它已经存在并包含可被其他dApp/合约参考的信息,而无需任何进一步的执行。
作为示例,预言机数据是其他智能合约可使用的有用信息。以简单直接的方式使用UTXO中保存的此类数据将需要花费UTXO。通过使用UTXO(具有预言机数据)作为输入,您将花费它,从而为您的其他交易输入提供对其数据的访问。当您的dApp要访问锁定在其他智能合约下的UTXO中保存的数据时,就采用上述方法。
尽管如此,“须花费您希望从中读取数据的每个单一UTXO”也有一些大的问题:
l?包含数据的UTXO的智能合约须执行,从而增加计算复杂性/成本。
动态 | 前Blockstream高管加入Silvergate Bank担任数字货币主管:金色财经报道,Blockstream前业务发展和伙伴关系主管Benjamin Richman上个月底加入了加州加密货币友好的银行Silvergate Bank,担任数字货币主管。[2020/1/22]
l?UTXO须被花费,这意味着每个区块/时隙(Slot)只有一个交易可使用UTXO数据。
l?由于输出数据UTXO的非必要过度执行和重新创建,交易费用会增加。
l?每个希望通过花费允许读取访问的UTXO须在其智能合约中对逻辑进行直接编码。
l?容易遭到想破坏协议的作恶者的恶意攻击。
l?增加了交易创建和寻找最新UTXO的链下复杂性。
上述负面问题清楚地表明,需要采取新的方法来解决上述问题。在UTXO/dApp内读取数据是一种非常常见的设计模式,在实现非常复杂的协议时将需要这种模式。
数据输入是一种强大的解决方案
幸运的是,Ergo三位核心开发者Alexander?Slesarenko、Alex?Chepurnoy和Dmitry?Meshkov在构建第一个基于UTXO的智能合约区块链时发现了一项非常有用的创新。
不再像原有基于UTXO的区块链那样强制所有交易销毁/花费所有输入,如果引入“只读输入”的概念会怎样?这些将允许任何交易引用当前在UTXO集中的任何其他币盒(UTXO)并读取其中保存的数据,而不会再出现上一部分中列出的任何问题。
这正是数据输入(data-inputs)的意义。
当币盒没有被销毁/花费时,就不会发生智能合约执行。这意味着给定UTXO可以被区块/时隙中的每个单一交易并行读取,因为它们都不消耗数据,而是共享对它的引用。由于没有合约执行,且不需要创建额外输出,交易费用则会减少。这还解决了所有进一步的负面问题,使数据输入成为所有基于UTXO的区块链都应实现的明确设计选择。
从上图中可以看出,数据输入是DeFi等许多用例的主要机制。在此图中,我们DeFi?dApp的利率依赖于来自现实世界的外部预言机数据。DeFi?dApp使用预言机池来获取上述数据,在图中示例为12.93美元。
这是现实世界中资产的市场价格,DeFi?dApp通过数据输入访问它。预言机池的UTXO在交易的数据输入部分中被引用,因此,数据可供我们的DeFi?dApp智能合约使用。
在更新DeFi?dApp状态的状态转换(花费交易)期间,我们可以看到预言机数据用于执行利率计算。原利率为3.23%,但在读取预言机池数据后,利率更新为3.53%。
这是数据输入在实践中如何工作的基本过程。在上面的示例中,我们仅展示了一个引用预言机池UTXO作为数据输入的单个dApp。然而,潜在成千上万的DeFi?dApp可以在同一个区块/时隙内为自己做同样的事情(假设区块链吞吐量可以支持)。
释放数据输入的潜能
既然我们已经讨论了什么是数据输入以及它们在基础层面提供了什么样的好处,让我们浏览一下它们赋予基于UTXO的区块链的一些真正新颖的创新:
1、通过并行化链上计算来扩展dApp
UTXO系统上的数据输入提供的关键新工具之一是并发性和并行性。
与其在同一个合约/UTXO中按顺序执行dApp中的所有操作,不如让协议中的参与者完全在他们自己的UTXO中执行自己的协议部分。这意味着他们不直接依赖其他人的序列操作(如此可能会阻碍其他人操作),从而增加现有给定dApp的吞吐量。
一旦参与者完成了他们的协议部分,由此产生的UTXO就可以被花费或读取。前者允许多个复杂的协议并行执行(这些协议具有提供数据和资产的不同参与者),然后将他们的UTXO消耗回核心协议。例如,这对于众筹或链上锦标赛等情况很有用。对于锦标赛,多个用户并行进行比赛,他们的结果和质押资金在回合结束后被消耗/汇合在一起(这是一个简单但具有解释性的例子)。
另一方面,由于引入了数据输入,后者读取UTXO可以解锁更多的能力。通过读取并行生成的数据,这意味着这些数据的获取成本更低,可以被其他人重复使用,且大家可以同时访问。因此,我们释放了令人印象深刻的潜能,例如在dApp中运行多阶段智能合约子协议,这些子协议完全并行执行,但可以访问彼此的数据,以执行检查/保证一切正常。
此外,由于来自所有并行运行的UTXO的数据都可以通过数据输入访问,因此,我们可以给完全并行化的dApp状态拍“快照”。与其让这些并行化的UTXO被阻塞或在协议的核心状态中等待动作发生以便这些UTXO被进一步花费/使用,它们可以继续自己的协议部分而不会出现任何问题。之后,快照由区块链上的参与者生成,他们由dApp激励/支付以查找所有协议相关UTXO。一旦在区块链上的UTXO集中被找到,这些“累加器”将所有这些UTXO引用为数据输入,并将它们累加到代表协议当前状态的最终值中。
因此,我们在eUTXO区块链上有一个可行的并发模型,它由于数据输入而变得更加强大。
2、UTXO模型中的无缝dApp更新
通过使用代理币盒(Proxy box),数据输入还可以无缝更新多阶段基于UTXO的dApp协议。
代理币盒内保存有协议中给定阶段的计算逻辑,或者可以花费进入的下一阶段的地址,通过使用这种代理币盒,我们有了一个外包UTXO,它为我们提供了更新dApp的能力。
这个外包代理UTXO将实现一个治理方案,该方案允许更新锁定它的底层脚本,和/或其寄存器中包含后续阶段地址的数据。这可以使用多重签名方案、基于代币的投票方案或任何其他治理协议,以便向dApp发布更新。
这为拥有治理代币的dApp(通过治理协议的社区自我更新)打开了大门。如果绝大多数投票将阶段X从合约A更新为合约A',那么这将反映在代理币盒中,因此将影响dApp中所有未来的操作/状态转换。
通过代理币盒实现dApp更新的方式的灵活性要归功于数据输入为我们提供了一个外包UTXO,它包含核心dApp协议本身之外的所有逻辑。
3、高效且去信任的全局上下文声明
由于区块链上的任何人和每个人都可以访问作为数据输入的任何UTXO中存储的数据,因此我们可以去信任地对任何dApp之状态做出有效声明。
这意味着无需开发者通过编码额外逻辑(这会增加计算成本)或不必做任何额外工作来提供明确许可,区块链上的用户就可以在他们自己的合约中访问任何dApp的当前状态。
例如,我们可以声明dApp?X的流动性不超过1亿美元,并悬赏任何人来反驳这种说法。这意味着,虽然我们提出这一声明的UTXO存在,但我们可以将其视为所述主张为真的不变量。然后可以将其构建为更复杂协议中的构建块。
声明核验者将不断扫描UTXO集,以验证dApp?X的流动性不超过1亿美元。如果dApp?X最终达到了这一点(流动性超过1亿美元),那么所有声明核验者都会急于花费声明UTXO以赚取赏金。这将表明我们的声明/不变量被反驳,因此我们有一个交互机制来为我们的dApp提供高效的全局UTXO集声明。
这是一种极其强大的机制,以前在任何其他系统中都不可能实现。它为许多有趣的用例打开了大门,例如无需许可的dApp保险,或关于整个区块链上任何dApp状态的无需许可/去信任预测市场。这些只是具有重大影响的几个有趣的可能性,但毫无疑问,还有更多有待发现。
结论
可以看出,由于基于扩展UTXO(eUTXO)的区块链上数据输入的伟大创新,巨大的潜能已被释放。上文提到的知识点旨在让大家了解一下可能的情况,而无需深入研究技术细节。
Emurgo?Research的更多文章将在未来发布,其中将深入介绍所有这些创新,且可能会随着新的发现而增加更多内容。
作者:Robert Kornacki
价值捕获将在四个层面上进行整合考虑到所需的各种 dApp 功能以及将影响价值捕获的宏观趋势,让我们从长期角度来看,价值捕获是如何在四个主要层面上进行整合的.
1900/1/1 0:00:00投资者应密切关注互联网监管趋势,在元宇宙建设初期继续持有多元化投资的大型科技企业,且不要忽略在网络安全、隐私计算等领域提前部署。未来尚未到来,但投资无心等待.
1900/1/1 0:00:00想象一下在不久的将来,一个二月的阴雨天,您醒来,戴上智能眼镜,接收每日天气通知、会议、任务和其他日常待办事项,然后这个设备会询问您想在哪里喝每天早晨的咖啡.
1900/1/1 0:00:00虚拟数字货币交易所的作用是为用户交易虚拟数字货币提供服务,抛开一些头部大所,绝大多数小交易所的最大痛点就是缺乏客户,在这种情况下,代理就应运而生了.
1900/1/1 0:00:00周二,美国证券交易委员会(SEC)主席Gary Gensler接受《华盛顿邮报》专栏作家David Ignatius的采访,谈到了加密货币领域、区块链技术以及他对该领域进行监管的方法.
1900/1/1 0:00:00近日,英国央行副行长萨姆·伍兹(Sam Woods)表示,英国将率先采取银行和加密货币资产的全球规则,以避免英国的银行在没有充足的资本支持下,积累大量来自加密资产的风险敞口.
1900/1/1 0:00:00