一. 什么是 UTXO
(1)UTXO 是 Unspent Transaction Outputs 的缩写,即没有花掉的交易输出。中心化记账方式记录的是余额,btc 的记账算法里没有余额这个概念,只有一笔笔的交易。
(2)假设用户 A 余额是 100 元,给用户 B 转 10 元,这笔转账会被记录成:
① 交易 1:用户 A 给用户 B 转账 10 元。
② 交易 2:用户 A 给用户 A 自己转账 90 元 (UTXO)。
(3)UTXO 有什么好处呢? 如果没有这个 UTXO 的话,要计算余额需要把一个账户的所有交易的入账和出账全部累加一遍,这是个非常消耗时间和计算资源的事情。而 UTXO 的出现巧妙的避免了在计算余额时要回溯所有交易的痛点。
二. 因为 UTXO 机制,使用 BTC 钱包注意事项
(4)所以这里有两个点需要注意:
① 转账的时候,不管你转多少,相当于是先把你的钱全部划走,然后再把多余的给你转回来。万一链上拥堵卡住了,或者确认很慢,那你的资金就被占用了。 所以不建议大家转太多 btc 放在钱包里。
② 每次转账时,比特币钱包会自动创建一个新的地址,用来接收除去转账金额和手续费之后的找零。当然找零的接收地址也可以设置为发起交易的原地址。通常情况下,比特币客户端在一开始会产生 100 个用户专属地址,创建找零地址时会优先使用这 100 个地址中的某一个,当这些地址全部被使用之后,将会继续创建新的找零地址。因此,当比特币钱包交易 100 次以上之后,最好重新备份钱包。否则当你恢复钱包时,很有可能丢失新的找零地址。
三. UTXO 机制的优势和劣势
(5)当然,用新地址作为【找零地址】具有很多好处:这样可以更好的保护隐私和提高安全性。你的余额在不同的找零地址里显然比总额都在一个地址里私密性会更好。
(6)所以,理论上来说,同一地址,如果签名的次数越多,其安全性会越来越低。
(7)现在你明白为什么很多 HD 钱包中的地址每次交易后都在变了吧。但大家放心,新旧地址都可永久使用,你不需要去记录每个地址的私钥,一个助记词可以掌握所有地址、所有资产。
但我个人觉得,每次地址都变还是不方便,现在有些钱包也加入了可以设置找零地址为原地址的功能。
欢迎添加好友进行更多交流~
【免责声明】市场有风险,投资需谨慎。本文不构成投资建议,用户应考虑本文中的任何意见、观点或结论是否符合其特定状况。据此投资,责任自负。