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