UXTO比特币账户是什么?UXTO是UnspentTransactionOutput的缩写,是比特币发明人“中本聪”的天才设计, 比特币使用UXTO代替传统的账户,所以本质上,UXTO比特币的流水账记录法。
我们现在的会计系统绝大部分采用的是一种叫做“借贷记账法”的方法,账目分成借方和贷方,每发生一笔业务都要登记两个以上的科目。这种记账法在企业经营、企业审计中有无数的好处。但是这种记账法也有一个最大的缺点,就是容易产生记账错误和记账误差。一笔交易需要登记两条以上的账目,本质上记录的是“交易的结果”,而不是“交易本身”。
如果让一个程序员来设计基于“借贷记账法”的账本,数据库中记录的就是每一个账户的变动情况和余额。在数据库系统中,需要一系列额外的规则,来确保交易成功地进行。
“中本聪”没有采用这种复杂的记账方案,而是采用了一种追踪比特币的流水账记录法——UXTO。本质上,就是只记录交易本身,而不记录交易的结果。从金融系统设计角度来说,这种方式有点“交易清算分离”的意思。区块链系统只处理所有的交易,而需要清算、查看余额等信息,由区块链节点自行处理。
每一个根节点都是一个CoinBase(挖矿交易),也就是每一枚比特币的最初来源。继而随着交易的变动,这棵树不断的生长,每个叶子节点就是一个UXTO----UnspentTransactionOutput----未花费过的交易输出。严格来说,比特币系统并不是一个树结构,而是一个单向图。伴随着交易的复杂程度,中间树枝会有不断的交错,但是不妨碍我们利用树结构来理解它。
比特币的UXTO系统遵守两个规则:
1、除了CoinBase(挖矿交易)之外,所有的资金来源都必须来自前面某一个或者几个交易的UXTO;
2、任何一笔交易的输入总量必须等于输出总量,等式两边必须配平。(在比特币系统中,一般输出小于输入,差额则是转账手续费,归矿工所有。)
UXTO模式最大的好处就是,它忠实地记录了交易。我们的现实世界是随着时间流动的,交易一笔一笔地发生,比特币的区块链系统一笔一笔忠实地记录着这个世界发生的事情,不能回滚,不能删除。只要交易记录准确了、清楚了,那么每个人进行清算的结果就都不会出错。
因此,“交易”是比特币区块链系统的核心,“记录交易”是区块链系统的设计原则,也是区块链设计思想的核心之一。