比特币交易体系是一套依托点对点P2P网络、UTXO账本模型与工作量证明共识共同搭建的去中心化价值转移系统,它没有传统银行的账户体系,依靠密码学签名、全网节点验证、矿工打包上链完成比特币所有权的转移,所有交易数据公开存储在区块链当中,依靠分布式规则杜绝双重支付,实现无需第三方中介的链上转账。

这套体系的底层核心是UTXO未花费交易输出模型,和我们熟悉的账户余额模式完全不同,比特币链上并不直接记录某个地址存有多少币,余额是钱包软件遍历全部历史交易后计算得出的结果。每一笔比特币交易由输入与输出两部分组成,输入指向过去交易产生、还没有被消耗的UTXO,需要用户使用私钥生成数字签名解锁,以此证明拥有这笔资金的处置权限;输出则生成新的UTXO,一部分锁定到接收方地址,一部分作为找零返回发送者地址,输入金额总和减去输出金额总和,差额就作为交易手续费给到矿工。一笔交易可以拥有多个输入与多个输出,支持一次性向多个不同地址转账,钱包会自动匹配合适的UTXO组合完成转账逻辑。

当用户发起转账签名完成之后,交易数据会被广播至比特币P2P网络,连接的节点收到信息之后,会独立校验交易合法性,核查签名有效性、UTXO是否已经被花费、交易格式是否符合协议规则,校验通过之后,交易进入节点本地的内存池,同时继续向相邻节点转发扩散,校验失败的交易会直接被节点丢弃,不会继续传播。内存池只是各个节点本地维护的临时存储区域,并非全网统一队列,不同节点内存池里面的未确认交易存在差异,手续费率更高的交易更容易被矿工优先选中,手续费过低的交易会长时间停留在内存池,甚至面临被丢弃的情况。
矿工从内存池筛选交易组装候选区块,通过工作量证明算力竞赛争夺记账权,算出符合难度条件哈希值的矿工,把新区块向全网广播,其他全节点验证区块全部规则无误之后,就将区块追加到本地区块链末尾,区块内部所有交易获得第一次确认。比特币网络平均每十分钟产出一个新区块,随着后续不断生成新的区块叠加在这条链上,交易确认次数持续增加,行业普遍认为6次确认之后,交易发生链重组、被篡改回滚的概率已经极低,基本可以视为交易彻底落定。全节点还会同步更新UTXO集合,这笔交易消耗掉的旧UTXO会被移除,新生成的输出加入集合,为后续的转账交易提供校验依据。

整个比特币交易体系依靠多方角色互相制衡保障运转,普通用户通过钱包生成密钥构建交易,全节点承担独立验证、转发交易、维护完整账本的职责,矿工负责打包交易、完成共识出块,三者相互配合,不需要中心化机构审批管控。但这套体系也存在客观限制,区块容量存在上限,网络拥堵的时候手续费会抬升、确认时间拉长,同时交易虽然地址公开可查,但并不直接绑定真实身份,私钥一旦泄露或者丢失,对应的UTXO就会被窃取或者永久冻结,没有机构可以干预、撤销已经上链确认完成的交易。
