Bitroo小课堂26:UTXO是什么?

时间:2024-09-21 编辑: 浏览:(532)

UTXO 的英文是 Unspent Transaction Output ,翻译过来叫 “未消费的交易输出”。应该这么说,比特币的核心概念交易,交易的核心知识点就是 UTXO。

交易的组成要素

比特币中是没有账户这个概念的,所谓一个地址的余额,其实就是统计这个地址相关的所有交易,然后运算出来的。所以我们把显微镜调调焦距,先看看一个交易中都包含哪些要素。

第一个要素是输入,也就是 Input。首先,并不是所有的交易都有这一项。比如每个区块里面都有一个矿工自治的特殊交易,也就是所谓的 coinbase 交易,它就是一个没有 Input 的交易。这个交易中直接把一定数量的比特币转出给制作这个区块的矿工。除了这个特例之外,其他的交易都是有输入的。比如小明想给小刚转账1个比特币,这个交易的 Input 应该是啥呢?是和小明的地址相关的一些交易,更准确的说,就是这些交易中包含的属于小明地址的未消费的交易输出,也就是 UTXO 。

于是我们就很自然的进入了第二个要素,也就是交易中应该包含输出。“输出”是个术语,英文叫 Output。在小明给小刚转账一个比特币的交易中,交易的 Output 就是指向小张的地址的这一个比特币。这样,UTXO 中的后三个字母 TXO ,其中 TX 代表交易,O 代表 Output,我们就理解了。

最后一个 U 指的是 Unspent,也就是未消费。小张如果从来没有用这个 Output 做过其他交易的输入,那么这个 Output 就是没有被消费过的,就是 UTXO。

最后一个要素就是手续费,一个非 coinbase 交易中输入要等于输出加上手续费,手续费是要转账给矿工的。讨论中为了简便,我们忽略手续费这一项。

理解的比特币交易的基本组成其实也就理解了 UTXO。到任何一个比特币浏览器中点开一个具体的交易,详情中可以看到咱们刚刚说的这几个要素。

凑输入和找零

UTXO 有个特点,就是跟硬币一样,不能掰开用,那么交易过程中如何凑够输入金额,又如何找零的呢?

小明给小刚转账 1 比特币。整个过程是这样的,小明要收集足够的输入,比如小明的地址对应的以往交易中,找到了一个面值为 0.9 的 UTXO,不够 1 比特币,好在交易中是允许有多个输入的,所以小明又找到了一个面值 0.2 的 UTXO,这样在这次转账的交易中,就会有两个输入。同时输出也会有两个,一个是指向小刚地址,面值是 1 比特币。另一个指向小明的地址,面值是 0.1 比特币,这个输出就是找零了。

梳理一下,整个流程是这样的:小明首先要凑够足够面额的 Input,这里他找到了两个 Input,而这两个 Input 本身都是以往交易的 Output。这两个 Output 在未消费之前,就是 UTXO,但是当前交易一旦生效,它们两个就会被消耗掉,而本交易中又会生成两个新的 UTXO,一个指向小明,一个指向小刚。相当于小明和小刚各种领到手一个硬币,未来可以在其他交易中去消费。而小明和小刚各自地址的余额,其实就是各自对应的所有 UTXO 的总和。

这样,交易中如何去凑够输入,如何生成输出,并进行找零,我们就清楚了。

为何使用 UTXO 模型?

到这里我们就有一个疑问了,比特币不就是个大账本吗?为何不采用账户模型,而要采用 UTXO 模型呢?

账户模型是传统银行或者类似于支付宝这种服务的基本模型,这个模型下,我有一个自己对应的账户,上面记录我有 13 块钱,那么 13 这个数字是明明白白记录到系统中的。账户模型的确是非常简单,也非常灵活,以太坊以及一些其他区块链项目中采用的就是账户模型。

再看看比特币,小明有 13 个币,其实区块链上是根本没有 13 这个数字的,因为区块链上只有交易。但是我们打开比特币的区块链浏览器,是可以看到一个地址对应的余额的,这是区块链浏览器自己运算出来的,不是区块链上本来就有的。

UTXO 是理解比特币交易的枢纽性概念,想要理解比特币底层原理的同学,这是一个绕不过去的坑。每个交易中,可以包含多个输入,并且通常包含两个输出,输出总额加上手续费正好等于输入总额。每个输出都跟硬币一样,有自己的一个面值,而且属于某个特定地址。还没有被当做其他交易的输入使用的输出,就是 “未消费交易输出”,就是 UTXO。

UTXO 模型中没有账户的概念,所以对比账户模型显得稍微绕一些,但是它本身其实也是有巨大优点的,例如非常有利于在分布式系统中进行并行计算处理。

最新 更多 >
  • 1 EDAT币历史价格走势怎么样?

    EDAT币——从诞生到今天的历史价格走势EDAT币是一种基于区块链技术的加密货币,诞生于2018年,旨在为数字资产世界提供更加安全、高效、私密的支付方式。2018年EDAT币刚刚面世时,在上线的初期,价格一直处于非常低迷的状态,甚至在某些交易所上架之后,价格还有所下跌,创下了新币种的不利开端。但是在年末的时候,EDAT币开始迎来了一波价格上涨的行情,最高价在0.03美元左右。2019年2019年开

  • 2 ERTH币历史价格走势怎么样?

    ERTH币历史价格走势ERTH币是一种基于区块链技术的数字货币,于2019年正式上市。随着全球数字货币市场的不断发展,ERTH币也经历了多次价格波动,下面来看一下它的历史价格走势。2019年ERTH币于2019年Q3正式上市,初始价格为0.05美元,交易量不大。在上市初期,由于市场炒作的影响,其价格迅速上涨到0.10美元,但不久后就迅速回落至0.05美元。2020年2020年1月,ERTH币价格再

  • 3 eUSD币的创始人是谁

    对于近年来的加密货币话题,eUSD也是其中的一种,那么eUSD币的创始人又是谁呢?认识eUSD币eUSD币是一种基于以太坊智能合约技术的数字货币,其创立的初衷就是为了提供给人们更安全高效的数字货币交易服务。作为一种稳定性较高的数字货币,eUSD与美元等传统货币紧密挂钩,能够有效避免数字货币波动性大的缺点,减少数字货币投资的风险。eUSD币创始人eUSD币的创始人是来自中国互联网产业的知名人士王明,

  • 4 ELEF币最高的时候是多少钱?

    ELEF币最高价曾经飙升到多少?在数字货币市场中,风云变幻,行情难测,一些币种在某些时间点可能会涨得非常猛烈,甚至吸引大批投资者进入市场,也会出现价格暴跌的情况。ELEF币作为市场中的一只币种,其价格的波动也是非常大的。根据币市统计数据,ELEF币最高价格曾经出现在2018年5月初,当时ELEF币的单价达到了0.573美元,而且短时间内一度站稳了这个高位,引起了不少投资者的关注和追捧。当时,ELE

  • 5 ELD币历史价格走势怎么样?

    ELD币历史价格走势怎么样?ELD币是一种基于区块链技术的加密货币,自2018年初次上线后,其价格一直处于波动之中。在ELD币的价格走势中,我们可以看到明显的涨跌,但总体而言却呈现一个上涨的趋势。2018年:ELD币的诞生2018年2月,ELD币正式上线交易所,当时的价格约为每枚0.02美元。在这个初期阶段,ELD币的价格一度下跌,但很快又开始了反弹。2019年:ELD币价格的暴涨2019年3月,

  • 6 erowan币历史价格走势怎么样?

    什么是Erowan币?Erowan币(ERW)是一种去中心化数字货币,由Erowan基金会开发。它可以用于各种交易和购买活动,并且是基于区块链技术的加密货币。它于2017年在主流市场上启动。Erowan币价格历史走势Erowan币刚刚推出时,其价格很低,并且并没有太多交易所支持。在接下来的数月中,随着人们对区块链和加密货币的兴趣日益增长,Erowan币的价格经历了显著的波动。在 2017 年 9

  • 7 EGS币最高的时候是多少钱?

    EGS币最高的时候是多少钱?EGS币是一种基于区块链技术的数字货币,它的创立旨在为大众提供一种相对稳定和高效的交易方式。EGS币的历史中,其价格波动非常大,很多人都想知道EGS币最高价是多少钱,下面我们一起来了解一下。EGS币是在2017年诞生的,在最初的时候,EGS币的价格非常低,不到1元人民币。但是在当时,比特币等数字货币的价格也都在低位徘徊。到了2018年初,EGS币开始经历一轮暴涨,价格从

  • 8 DOGEGF币历史价格走势怎么样?

    DOGEGF币历史价格走势怎么样?DOGEGF币是一种虚拟货币,它的诞生可追溯到2013年底。在数年的时间里,DOGEGF币一度成为热门的加密货币之一。今天,我们来看看DOGEGF币历史价格走势是怎样的。2013年:新生币种在2013年的底部,程序员们将DOGE梗图(一只名为DOGE的日本快乐犬)用于新的虚拟货币,命名为DOGECoin。在该币发行的几周内,它的价格从0.00026美元一直上涨到0

  • 9 EUROC币历史价格走势怎么样?

    EUROC币历史价格走势怎么样?EUROC币于2017年12月25日上线,发行总量为10亿枚,旨在构建全球数字支付与价值存储生态系统。在发行初期,EUROC币的价格一度飙升,但随后又陷入一段时间的震荡期。接下来,让我们一起来了解EUROC币的历史价格走势。2017年12月至2018年1月2017年12月25日,EUROC币首次上线并开始交易,当时的价格为0.057美元/枚。随着其独特的技术和理念的

  • 10 ERA币最高的时候是多少钱?

    ERA币最高价探究ERA币是近几年比较热门的虚拟货币之一,随着人们对加密货币的认知度不断提高,很多投资者也开始了解和挖掘ERA币的价值。正所谓“有高就有低”,ERA币的价格也是波动不断,最高的时候曾创造出了令人瞩目的纪录。ERA币的起源ERA币是由一家技术型公司ERA.IO创立,致力于通过去中心化、安全和高效的技术手段帮助改善现代社会的问题。ERA.IO的创始人们开发出了一套名为Era平台的技术,