科普 | 想深入了解BRC-20,先学习UTXO

在当前的区块链项目中,主要有两种记录保存方式,一种是账户/余额模型,一种是UTXO模型。

作者 | 晏文春

出品|白话区块链

封面设计|LDNews DAO

最近大热的BRC-20 Token是基于比特币,但比特币区块链无法对其进行规则约束。制造BRC-20 Token的成本在于将文件添加到区块链中,以及未来与Token关联的UTXO的移动。

既然UTXO这么重要,今天我们就来简单介绍一下UTXO。

 01 
什么是UTXO

在当前的区块链项目中,主要有两种记录保存方式,一种是账户/余额模型,一种是UTXO模型。比特币采用就是UTXO模型,以太坊等则采用的是账户/余额模型。

科普 | 想深入了解BRC-20,先学习UTXO

UTXO是 Unspent Transaction Output的缩写,意思是未花费的输出,可以简单理解为还没有用掉的收款。比如韩梅梅收到一笔比特币,她没有用掉,这笔比特币对她来说就是一个UTXO。

 02 
账户/余额模型和UTXO模型

账户/余额模型生活中很常见,比如我们的银行账户、微信账户,都是基于账户/余额模型。

账户内的余额是作为一个整体存在的。李雷账户上有多少钱,看一下余额便知道,在发生交易时,变动的是余额。比如,情人节当天,李雷通过微信给韩梅梅转520元,李雷微信账户余额会减掉520元,而韩梅梅账户余额会增加520元。

UTXO模型则不同于账户模型。李雷有多少比特币,要对他比特币地址所有UTXO求和才知道。简单来说,UTXO模型就像我们用的钱包,而钱包里的每张纸币或每枚硬币都是一个单独的UTXO,因此钱包里有多少钱,并不一目了然,需要把所有纸币和硬币面额相加才能得出。

而每一次收付款,是以UTXO为单位消耗或者接收的。比如我们用10元钱买5元早餐时,这个10元作为一个UTXO先整体付给卖家,卖家再找零给你。

我们通过一个例子来说明。

情人节当天,李雷给韩梅梅买花,价格520元。用现金支付,他掏出6张百元大钞(相当于6个100元的UTXO)给卖家,卖家需要给李雷找零80元(50元、20元和10元纸币各一张)。这个过程中显而易见,李雷花600元买花,得到80元找零,卖家卖出花,得到520元。

从UTXO的角度看,李雷花掉了6个UTXO(6张100元),得到3个UTXO(3张找零);卖家得到6UTXO,找零时花掉了3个UTXO。

如果用比特币完成这笔交易,过程就会稍有不同,假设李雷用6个均为1BTC的UTXO付给卖家5.2BTC,最后卖家得到一个价值5.2BTC的UTXO,找零给李雷是一个价值0.8BTC的UTXO,换句话说6个UTXO被“销毁”,变成了两个新的UTXO。(两者不同的原因在于,纸币面额的种类有限,而比特币不受这个限制)。

如果李雷和韩梅梅秀恩爱的过程发生在比特币网络上,转账过程是怎样的?

此内容仅对以下用户分组的用户可见:
LDNews DAO
已有权限?立即刷新

 03 
总结

UTXO 核心设计思路是:它记录交易事件,而不记录最终状态。要计算某个用户有多少比特币,就要对其钱包里所有的UTXO求和,得到结果就是他的持币数量。UTXO模型在转账交易时,是以UTXO为单位的,也就是说在支付时,调用的是整数倍UTXO,比如1个UTXO,3个UTXO,没有0.5个UTXO的说法。

比特币的一般性交易:调用一个UTXO给其他人付款,以及集合型交易:调用多个UTXO给其他人付款。

你还能举出其他的交易类型吗?

来源:白话区块链
本文观点不代表LDNews立场,不承担法律责任,文章及观点也不构成任何投资意见。

胡文鑫的头像胡文鑫链都号

相关推荐

发表回复

登录后才能评论

联系我们

在线咨询: QQ交谈

微信:CryptoMetac

邮件:liandufin@163.com

工作时间:周一至周五,9:30-18:30,节假日休息

微信
LDNews 让你轻松读懂Web3趋势 举报