由于Pts钱包是基于btc钱包修改而来,而btc的找零机制下每次发款后几乎都需要重新备份,除非使用sendmany. 因为零钱会被放到一个新建的地址下。
BTC钱包会自动生成100个地址(在wallet.dat中,上文所说的备份是指直接备份wallet.dat文件),每次交易找零时使用一个新的,全部用完之后会新建地址(lib的理解是每次新建时地址池的地址会保持为100个 参考:https://en.bitcoin.it/wiki/Securing_your_wallet “A brand new address is generated to fill the pool back to 100”)。所以每100次进行一次备份是合适的。
lib认为,sendmany的作用是把所有的余额集中到一个地址,如果不明确指定把零钱找回到哪个地址的话,wallet.dat对应的多个地址里头可能会有数量不同的零钱。
那是不是可以理解为,如果只备份一次,大数目是不会丢的,区别只是零钱地址里的那点而已? 毕竟频繁备份钱包很难做到。
不一定,假如100个已经用完,你现在要从钱包发送5BTC到另一个地址,而你的钱包里头有个地址上有10BTC,那么找零的5BTC会发回到新地址(第101个)上。