比特币网络不是分类帐/余额模型,而是UTXO模型。 UTXO是比特币交易生成和验证的核心概念。交易形成一个链状结构。所有合法的比特币交易都可以追溯到一项或多项远期交易的输出。这些链条的来源是采矿奖励,最后是当前未花费的交易输出。所有未使用(使用)的输出是整个比特币网络的UTXO。什么是UTXO? TX是Transaction的缩写,TXO是TX输出:包含一个值和一个脚本,该脚本指定谁有权使用该事务(例如,需要私钥签名)。 UTXO是未使用的TXO(未使用的事务输出)。比特币网络规定,只有“未使用”的产品才可以使用。交易签名可以是有效的签名。每个交易都有许多交易输入,即资金来源,也有许多交易输出,即资金目的地。一般而言,每个交易都花一个输入并产生一个输出,并且产生的输出是“未使用的交易输出”,即UTXO。比特币交易遵守以下规则:1.所有资金来源必须来自上一笔交易中的一个或多个UTXO。历史交易是无休止的,交易之间存在资金流动。 2.任何交易的总交易输入量必须等于总交易输出量,并且等式两边都必须平衡。数字货币不能仅通过诸如金属货币(例如黄金)之类的实物转移来转移所有权,也就是说,当A向B提供一块黄金时,A不再必须拥有该黄金。在A将一种数字货币转移(签名)到B之后,A仍然可以将相同的交易转移到C,这是因为A具有私钥,并且两个签名都是有效签名,这构成了“双花”。过去的加密货币无法有效解决双重支出问题,因此无法摆脱对第三方集中机构认证(第三方信任)的依赖。因此,必须存在一种机制,以确保每个事务只能使用一次,即,仅“未使用的”交易可以被使用一次。交易签名可以是有效的签名。比特币规定每笔新交易的输入必须是某笔交易的未使用输出,并且每笔输入还需要与之前的输出相对应的私钥进行签名,并且每个比特币节点将当前的UTXO存储在整个区块链上,整个网络上的所有节点都使用UTXO和签名算法来验证新交易的合法性。这样,该节点无需跟踪历史记录就可以验证新交易的合法性。 UTXO模型的优点是:可扩展性-由于可以同时处理多个UTXO,因此可以实现并行事务,并可以鼓励可扩展性创新。隐私-甚至比特币也不是一个完全匿名的系统,但是只要用户为每次交易使用一个新地址,UTXO便可以提供更高级别的隐私。如果需要增强隐私性,可以考虑使用更复杂的方案,例如环签名。与使用账户/余额模型的以太坊相比,该模型比后者更复杂,效率更低,但更能抵抗双重支出攻击。目前,除比特币外,出于与上述相同的原因,其他一些区块链也已开始推广此模型,例如Hyperledger,允许在保护隐私的同时并行处理多个交易。但是,那些反对使用UTXO模型的人认为,UTXO在实际操作中会比理论上产生更大的复杂性,这可能是不必要的,并且由于其无状态性,因此它不适用于智能合约。