ビットコイン・インスティテュート

えーっと...私のビットコインはどこに行ったの?

Unknown 2010年5月3日00:33 UTC

adgadg

いいや。

つまり、最新の200程度のブロックのみをダウンロードし、その後は新しいブロックが来るたびにダウンロードして、ブロックの検証はネットワークに任せるということだ。非常に軽量なBitCoinの使い方になるだろう。ブロックチェーン全体をダウンロードしている「フルネットワークノード」にとっても便利だろう。

100投稿おめでとう! 😊

The Madhatter 2010年5月6日10:09 UTC

Bitcoinソフトウェアの各リリースにブロックチェーンのスナップショットを同梱して、新規インストール時にチェーン全体をダウンロードする必要をなくすべきだ。

信頼の面では:ユーザーはすでにbitcoin.orgからのダウンロードが正当であると信頼している。zip/exeインストーラーにブロックチェーンのスナップショットを組み合わせることは、私の意見では大したことではない。ファイルの整合性を確保するためにハッシュと署名を公開できる。

最悪のシナリオでブロックチェーンのスナップショットが侵害されたとしても、悪いことは起きない。最長のブロックチェーンが常に勝つ。クライアントはP2Pネットワークから新しいコピーをダウンロードするだろう。(そもそも、ブロックチェーンが侵害されたなら、ソフトウェア自体がトロイの木馬化されているなど、もっと大きな問題があるが、それは別の話だ。)

++good!

[削除済み] Quote from: davidonpda on May 03, 2010, 02:40:35 PM

34 MB…高速DSLプランなら数分で済むはずだ。3時間ではない…

純粋主義者の立場からすれば、人々はコードを監査して自分でビルドすべきだ。

でも、それだと私たちみたいなオタク以外はほとんど締め出されちゃう。だから信頼できるソースから入手したことを信じるしかない。私はMac OS Xのバイナリバージョンを配布しているが、私を信頼できないなら使うべきではない。同様に、パスワードマネージャーツールやPayPalアシスタントツールを作って、パスワードやお金を私に送るようにすることもできる。自分でコードを監査する気がない限り、誰かを信頼するしかないんだろうね。ネットワーク自体は非協力的なノードに対する保護を持っているが、ユーザーは明らかに詐欺のターゲットだ。ATMに取り付けられるスキマーのこともちょっと思い出すよ……信頼できる機械を使ってるつもりなのに、実際は情報を抜き取るように改造されてるっていう。

時間がかかるのはダウンロード自体というより、ダウンロード時にすべてのブロック内のすべての署名を検証することだ。

初期ブロックダウンロードには、たいていどのくらいかかっている? 途中で遅くなる? それとも最後まで同じ速さ?

最後の数千ブロックまでのチェーンの大部分をより簡略的にチェックする方法を考えてきた。可能だが、作業量が多く、他にもっと優先度の高い作業がたくさんある。

簡易支払い検証(SPV)は、トランザクションのみを行い、生成やノードネットワークへの参加を行わない軽量クライアント専用ユーザー向けだ。ブロックをダウンロードする必要はなく、ハッシュチェーンだけで済む。現在約2MBで、検証は非常に高速だ(チェーン全体の検証に1秒未満)。ネットワークが非常に大きくなり、例えば100,000ノードを超えた場合、一般ユーザーがフル装備のノードにならずにトランザクションを行えるようにするために、これを使用する。その段階では、ほとんどのユーザーはクライアント専用ソフトウェアを実行し始め、専門のサーバーファームだけがフルネットワークノードを実行し続けるべきだ。Usenetネットワークが統合されたのと同じようなものだ。

SPVはまだ実装されておらず、将来まで実装されないが、現在の実装はすべてSPVをサポートするように設計されている。

それまでの間、vekja.netやwww.mybitcoin.comなどのサイトがアカウントベースのサイトを実験している。ウェブサイトでアカウントを作成し、そこにビットコインを保管して入出金を行う。ウェブサイトでのアカウント作成は、ソフトウェアをインストールして使い方を覚えるよりもはるかに簡単で、ほとんどの人にとってより馴染みのある方法だ。唯一の欠点はサイトを信頼する必要があることだが、マイクロペイメントやその他の少額支出のためのお小遣い程度の金額なら問題ない。始めるのが簡単な方法で、大きな金額になれば実際のビットコインソフトウェアにアップグレードできる。

Xunie 2010年5月18日20:15 UTC
サトシ・ナカモトの投稿(2010年5月18日20:06 UTC)

直近の数千ブロックまでのチェーンの大半を、もっと簡略にチェックする方法を考えてきた。

良い考えに思えるが、ブロックのチェックをスキップするということだろう? それは高額なトランザクションには安全とは思えない。 だから実装はすべきだが、ユーザーがオンにできるオプションとして提供し、当面はデフォルトでオフにしておくことを提案する。