主页 > imtoken dapp > 区块链100讲:UTXO——你的比特币钱包里永远不会有钱

区块链100讲:UTXO——你的比特币钱包里永远不会有钱

imtoken dapp 2023-01-17 14:04:09

整理:辛西娅

火币转账到比特币钱包要多久_比特币的钱包有哪些_比特币 脑钱包

比特币交易是比特币系统中最重要的部分。 在比特币交易过程中,有一个词“UTXO”是经常被提及的。 有句话说:你的比特币钱包里永远不会有钱,但你可以拥有控制钱的力量。

如果有人告诉你,比特币世界既没有所谓的“账户”,也没有所谓的“余额”,你一定觉得很奇怪。 你肯定会问“明明我的钱包应用告诉我我的钱包里有 XX 个比特币?”

本期《区块链百讲》,我们就来聊一聊UTXO。

火币转账到比特币钱包要多久_比特币 脑钱包_比特币的钱包有哪些

1个

过去的知识

比特币交易是比特币系统中最重要的部分。 它的生命周期如下:

火币转账到比特币钱包要多久_比特币的钱包有哪些_比特币 脑钱包

它的生命周期从它被创造的那一刻开始,也就是出生。

然后用一个或多个签名加密比特币交易,这些签名表示允许使用交易指向的比特币资金。

接下来,比特币交易被广播到比特币网络。 在比特币网络中,每个节点(比特币交易参与者)在网络中验证并广播交易,直到交易被网络中的大多数人接受。 节点接收。

每个比特币节点都连接到一些其他节点,形成一个巨大的网络结构。 每个节点收到交易后,会相互验证,如果有效则传播给其他节点,如果无效则拒绝并返回。 有效的交易会在几秒钟内传播到整个网络。

最终,比特币交易由挖矿节点验证,并以记录许多比特币交易的区块的形式添加到区块链中。

一旦一笔比特币交易被记录在区块链上并被足够多的后续区块确认,它就成为比特币账本的一部分,并被所有比特币交易参与者认可为有效交易。

这笔交易分配给新所有者的比特币资金可以用于新的交易——这延长了所有权链并再次开始新的比特币交易生命周期。

2个

未交易输出

一笔比特币交易是一种具有输入值和输出值的数据结构。

比特币交易的基本单位是一笔未使用的交易输出,简称UTXO,全称是“Unspent Transaction Output”。

在比特币的世界里,既没有账户也没有余额,只有分散在区块链中的 UTXO。

UTXO是一定数量的比特币货币,不能被分割,不能被所有者锁定,也不能记录在区块链中,被全网认可为一个货币单位。

比特币网络以数百万计监控所有可用(未花费)的 UTXO。 当用户收到比特币时,金额将作为 UTXO 记录在区块链中。 这样,用户的比特币将作为 UTXO 分散到数百个交易和数百个区块中。

事实上,没有地方可以存储比特币地址或账户余额,只有被其所有者锁定的去中心化 UTXO。

“用户的比特币余额”的概念是通过比特币钱包应用程序创建的衍生产品。 比特币钱包通过扫描区块链并汇总属于该用户的所有 UTXO 来计算用户的余额。

- “掌握比特币”

为了理解UTXO,我们假设这样一个场景:张三挖出了12.5个比特币,几天后,他把其中的2.5个支付给了李四。 几天后,他和李四各贡献了2.5个比特币,凑成了5个比特币给王五。

如果设计是基于传统的账户模型,张、李、王在数据库中各有一个账户,三人的账户变化如下图所示:

比特币 脑钱包_比特币的钱包有哪些_火币转账到比特币钱包要多久

但是在比特币中,这个过程是通过UTXO实现的,如下图:

火币转账到比特币钱包要多久_比特币 脑钱包_比特币的钱包有哪些

从图中我们可以看出,上一笔交易的输出是下一笔交易的输入,形成一条交易链。 比特币世界的每一笔转账都可以追溯到上一笔交易,可以追溯到它诞生时矿工挖出的区块。 在一笔交易中,交易消耗的UTXO称为交易输入,交易创建的UTXO称为交易输出。

比特币钱包通过扫描区块链并汇总属于该用户的所有 UTXO 来计算用户的余额。 当用户进行支付时,他的钱包通过选择可用的 UTXO 来构建交易。 一旦选择了UTXO,钱包会生成包含签名的解锁脚本,相当于打开钱箱取钱付款。

UTXO 的优势

在物理世界中,货币的价值转移很容易,通过金属货币/纸币可以很好地实现价值转移; 在数字世界中,比特币会用上一笔交易的公钥和下一个拥有者签名签署一个数字,将这个签名附加到比特币的末尾,发送给下一个拥有者。 通过UTXO的设计机制比特币的钱包有哪些,很好的保证了每笔交易只能使用一次比特币的钱包有哪些,解决了数字世界的双重支付问题,从而实现价值传递。

另外,由于全网只记录UTXO,历史旧数据可以在未来被切割,不像中心化的账户数据库系统需要记录所有的交易记录(增删改查),旧数据不能被丢弃,从而减缓整个网络数据快速增长的问题。

火币转账到比特币钱包要多久_比特币的钱包有哪些_比特币 脑钱包