通过了解,我们知道每笔比特币交易都包括输入和输出两个部分,其中未花费的交易输出(UTXO)将可以作为下一笔交易的输入,而这笔输入可以由多个UTXO构成。

当你发起一次转账时,比特币钱包通常会在所有可供支付的UTXO中,寻找合适的金额来进行支付。

这就相当于在你的日常钱包中保存着不同面值的现金一样,你可以选择使用多张小额的零钱付款,也可以使用大于商品价格的大额钞票买单,然后等待商家找零。

在比特币系统中也存在这样的找零机制。

为了节约手续费,比特币客户端通常会优先选择使用大额的UTXO进行支付;这时,比特币钱包就会自动创建一个新的地址,用来接收除去转账金额和手续费之后的找零。

比特币在进行交易时,会把发起交易地址的余额清零,转账后的剩余金额会转到找零地址中去。

当然找零的接收地址也可以设置为发起交易的原地址。

通常情况下,比特币客户端在一开始会产生100个用户专属地址的私钥,创建找零地址时会优先使用这100个地址中的某一个,当这些地址全部被使用之后,将会继续创建新的找零地址。

因此,有不少比特币资深用户提醒大家,当比特币钱包交易100次以上之后,需要重新备份钱包。

否则当你恢复钱包时,很有可能丢失新的找零地址。