
随着Ergo生态系统的增长,我们的社区现在可以享受我们几个关键dApp的功能。Ergo拥有一个稳定币协议,用户可以铸造SigUSD和SigRSV代币。Ergo拍卖行提供铸造NFT的能力,而ErgoDEX(Beta)允许您交换代币并提供流动性。这些是基于UTXO模型的首个独特且复杂的DeFi dApp——这一模型是比特币首创的。关于UTXO模型是否能够表达丰富的智能合约,类似于账户模型,常常存在争论。这就是为什么Ergo平台从零开始构建ErgoScript语言,以推动比特币的遗产。
有关UTXO和账户模型的深入比较,请阅读我们之前的博客文章: Ergo: Advancing on Bitcoin
作为一名Ergonaut,如果您查看区块浏览器以查看您的交易详情,您可能会感到困惑。UTXO模型与账户模型本质上不同,使用“盒子”来存储数据。在账户模型中,您有一个单一的账户来接收您的币。然而,在UTXO模型中,每个交易(tx)都会创建一个新的盒子,您的余额是与您的地址关联的所有盒子的总和。
为了明确,您的Yoroi私钥可以由一个地址中的多个盒子组成,以持有您的币。
当您生成一个新地址时,您将创建一个次级盒子来存储您的币。创建后,您可以将资金发送到这个新地址,您的资金将与您的私钥视为一体。您可以创建无限数量的新盒子来存储您的币。因此,每个接收和支出操作也将创建一个额外的唯一盒子。
这个特性在初次接触时可能会让用户产生误解。当您进行交易时,网络会扫描您的“盒子”以验证您是否拥有代币,然后启动交易。
在这一点之后事情变得复杂,因为您无法猜测哪些盒子将被支出。想象一下,您有三个不同的接收地址。您在每个地址中收到了几枚币,您想支出一些币。在Yoroi钱包中,您可以持有任何Ergo原生币,例如SigRSV或SigUSD。当您发起一个访问这些币的盒子的交易时,您会看到它们被取走然后重新存入。最近,一位Ergonaut提出了以下问题:
“我刚创建了一个Yoroi Nightly钱包。我将31 Erg从我的主Yoroi钱包转移到Yoroi Nightly钱包。交易显示31 Erg加上小额费用0.0011。但它还显示+92,000 SigRSV。我的余额在SigRSV上没有变化。交易中的+92,000 SigRSV是什么意思?”
让我们看看这个特定交易的细节:
为了进行31 ERG的交易,钱包选择了三个包含ERG的盒子:
- 一个包含0.029595 ERG的盒子,收到时间为07/19/21
- 第二个包含19.76 ERG的盒子,收到时间为07/19/21
- 第三个包含208.26 ERG的盒子,收到时间为06/09/21
在上图的左侧,您将看到大约228 ERG被取走,而在右侧,您将看到31 ERG被发送,197 ERG被重新存入您的钱包。
因此,您的钱包使用了三个盒子来支出所需的金额。此操作将该盒子中的所有资产包含在交易中。
在支出所需金额后,您的资金将简单地以新创建的UTXO盒子或盒子的形式退还到您的地址。因此,在一个盒子中支出任何币意味着支出整个盒子并创建一个新的UTXO盒子,这就是为什么您看到您的代币被取走然后重新存入。
选择支出哪些盒子是钱包随机选择策略的秘密。无论选定盒子中包含什么币,无论是SigRSV、SigUSD还是NFT,都会如示例中所示。
总结:
账户模型包含一个单一的盒子,而这个盒子并未被支出。它保持不变,因此无关的币将保持不受影响。
而UTXO模型则包含一组盒子,代表用户余额的总额,未支出的交易输出必须在每次支出交易中发生变化。
当仅交换5 SigRSV时,您可能会看到一长串代币,如下所示:
这就是UTXO模型交易的工作方式——其存储方式与账户模型不同。在UTXO模型中,币将存储在一次性UTXO盒子中,而不是在长期存在的账户中。
Share post




















