ウォレットファイルのバックアップと復元でコインを失う方法を説明する:
ウォレットにピカピカの1,000ビットコインが1枚あるとする(実際にはウォレットに保存された公開鍵に支払われた1,000ビットコインのトランザクションだ)。
そのファイルをバックアップする。
次に1ビットコインを使う。ピカピカの1,000 BTCコインは1BTCとお釣りの999BTCに分割される。そのお釣りには新しい別の公開鍵が割り当てられる。
ウォレットファイルを復元すると、Bitcoinは1,000BTCコインが使われたことを認識する――1BTCはどこかに送られ、残りの999BTCはどこかに送られた。999BTCの鍵がないので、それらのコインがあなたのものだとわからない。
だから失われる。
TESTネットワークでお釣りの処理に関する代替ポリシーを試すのは良いアイデアだと思う。
お釣りのトランザクションには常に同じ公開鍵で署名すべきかもしれない。そうすればウォレットの復元時にコインを失わない……ただし、すべてのトランザクションが紐付けられるのでプライバシーが低下する。
ウォレットに最初から100の「お釣り」アドレスを用意し、必要に応じてランダムに選ぶのもいい。そして新しい100アドレスに置き換える超ギーク的な方法を用意する。
「ウォレットを復元したらBTCを失った」問題のさらに良い解決策があるかもしれない。アイデアは?