Re: 大量の​ Bitcoin を​失った

人物: FreeMoney
grideconの投稿(2010年8月11日 20:46 UTC)
lachesisの投稿(2010年8月11日 17:57 UTC)
Ground Loopの投稿(2010年8月11日 17:31 UTC)

すべてのコインがリスクにさらされるとは初耳だ。トランザクションに関与するコインの塊(以前受け取ったトランザクション)だけだと思っていた。合計残高ではなく。おっと。

前の理解が正しかった。彼のすべてのコインが失われた理由は、最初に 9000 すべてを自分自身に送金し、単一の TxIn に統合したからだ。そのステップを省略して直接自分に 1 を送っていれば、1 を超える以前受け取った最小の支払いだけを失っていただろう。

クライアントは TxIn と TxOut をユーザーにもっとうまく伝える必要があると思う。混乱させずにそれをどうやるかはわからないが、クライアントがどのコインを送金するかの選択には、プライバシー、安全性、セキュリティに関する現実的な影響がある。

待ってくれ、また混乱してきた。この驚きの本質は、Bitcoin が各トランザクションで「ウォレットを空にする」ようにプログラムされているということだと思っていた。私が読んだ説明によると、ウォレットのアドレス A から外部のアドレス B にコインを送る場合、実際にはアドレス A から全てのコインが送出され、アドレス B に向かわない分は自分のアドレス C に送られる。つまり、9000枚の中から 1枚だけ支払う場合でも、1枚を相手に送り、8999枚を新しいアドレスの自分自身に送ることになる。

言い換えれば(私が混乱していなければ)、トランザクションを行うたびに、バックアップ済みの古いウォレットアドレスは空にされることになる。

私の理解では、送りたい枚数以上のコインを持つアドレスを見つけ(または複数のアドレスを組み合わせ)、おつりを新しいアドレスに送る。

つまり、もし彼が 1000、2000、2500、3500 のアドレスを持っていたとすると、そのうちの一つ(最小のもの?)を選び、1枚を送り、残りを新しい自分のアドレスに送り返す。この場合、全てを失うことはなく、その一つのアドレスにあった残りだけを失う。

どうやら彼はコインが入ったアドレスを 1 つしか持っていなかったようだ。おそらく取引所から一度にまとめて取得したからだろう。そうでなければ、なぜ全てを失うのか分からない。