今ではウォレットなどに使われている、ビットコイン軽量クライアントについて語るサトシ

小宮自由

ビットコイン軽量クライアントについて語るサトシ

ビットコインを発明し、未だその正体が分かっていないサトシ・ナカモト。そんなサトシが残した約2年間の文章を、小宮自由氏の解説と共に紹介する連載「サトシ・ナカモトが残した言葉〜ビットコインの歴史をたどる旅」の第44回。

まずサトシのメールの前に、本連載の元になっている書籍『ビットコイン バイブル:サトシナカモトとは何者か?』の著者フィル・シャンパーニュ氏の解説も掲載する。

フィル・シャンパーニュ氏の解説

時間の経過とともに、ブロックチェーンは2009年1月以降の全ての取引記録を含みながら絶えず拡大を続けている。ビットコインウォレットには複数のビットコインアドレスが対応の秘密鍵とビットコイン収支とともに格納されているが、ビットコインのネットワークでは取引時にどのアドレスを使えば良い か、一つか複数か、を把握する必要がある。

例えば、アドレスAに0.1 BTC、アドレスBに0.2 BTC、アドレスCに0.3 BTC残っていて、これから0.5 BTCの支払を実行するとしよう。いずれのアドレスも単独では不足し、支払総額の0.5 BTCを満たせないため、ビットコインウォレットでは二つか三つのアドレスを組み合わせて0.5 BTCをカバーする必要が出てくる。ビットコイン・クライアントにフルのブロックチェーン*1 がなく、各アドレス内の現在の収支が分からなければ、フルのブロックチェーンを格納するサーバーと通信しなければならない。

簡易支払検証(Simplified Payment Verification、SPV)に初めて言及したのはサトシのビットコイン論文*2 だったが、SPVにより、クライアントは、フルのブロックチェーンを持ちながら採掘過程への参加の有無は問われないビットコインネットワーク内のサーバーに依存できるようになる。これは後に実装され、軽量クライアントに利点をもたらした。

【訳注】
*1 いわゆるフルノードのこと。
*2 ビットコインホワイトペーパーの「8. トランザクションの簡易検証」を参照。

サトシ・ナカモトの投稿

それではサトシの投稿をみていこう。

========================

Re:スケーラビリティ

サトシ・ナカモト 2010年07月14日 午後09時10分52秒

(注:斜体部分は、サトシ以外の者の質問を指す)

引用:jib 2010年07月12日 午前11時36分17秒

全てのノードが全ての取引情報を受けとるという理解で合っていますか?これだと、ビットコインを通貨として大規模に利用するには全く非実用的ではありませんか?

設計では、フルのブロックチェーンを必要としない軽量クライアントの概略を提示しています。PDFファイルでは「簡易支払検証」と呼んでいます。軽量クライアントは送金も受取もできますが、ブロックの生成には加われません。支払を検証するノードを信用する必要はなく、クライアント自身で検証できます。

軽量クライアントはまだ実装していませんが、必要なときが来れば実装する予定です。現在は全員がフルのネットワークノードを稼働しています。

私の予想ではノードの数は十万*1 を越えることはなく、それ以下になると見ています。いつか、これ以上ノードが参加してもメリットにならない均衡点に達するでしょう。残りは軽量クライアントになり、その数は百万単位になるはずです。

均衡点のサイズになると、多数のノードがサーバーファームとなり、一つか二つのネットワークノードがLANを介してファーム内のその他のコンピューターに情報を流す形になります。

========================

【訳注】
*1 8年間の推移を確認したところによると、2024年2月13日現在でこれまでの最高値は約 17,500 であり、10万を大きく下回っている。

解説

今日において SPV は主にビットコインウォレットで広く用いられています。スマートフォンアプリのウォレットであれば容量を考慮すると100%がSPVでしょう。SPV は必要に応じてフルノードに通信してデータを取得しています。つまり、フルノードを信用することがSPVを使うにあたって必須となります。通信しているフルノードが悪意をもって運用されたり、ハッキングされたりすると、間違ったデータを取得する可能性が出てきます。このため、別人が管理する複数のフルノードに通信して内容を照らし合わせているSPVもあります。

“Don’t Trust. Verify.” いわゆるトラストレスを強く望む人は、SPV を使わずにフルノードが入ったウォレットで自己の資産を管理しています。

小宮自由

→この連載の他の記事を読む

関連するキーワード

この記事の著者・インタビューイ

小宮自由

東京工業大学でコンピュータサイエンスを学び、東京大学ロースクールで法律を学ぶ。幾つかの職を経た後に渡欧し、オランダのIT企業でエンジニアとして従事する。その後東京に戻り、リクルートホールディングスでAI(自然言語処理)のソフトウェア作成業務に携わり、シリコンバレーと東京を行き来しながら働く。この時共著者として提出した論文『A Lightweight Front-end Tool for Interactive Entity Population』と『Koko: a system for scalable semantic querying of text』はそれぞれICML(International Conference on Machine Learning)とACM(Association for Computing Machinery)という世界トップの国際会議会議に採択される。その後、ブロックチェーン業界に参入。数年間ブロックチェーンに関する知見を深める。現在は BlendAI という企業の代表としてAIキャラクター「デルタもん」を発表するなど、AIに関係した事業を行っている。
https://blendai.jp/
https://twitter.com/blendaijp
https://twitter.com/BorderlessJpn
https://twitter.com/BorderlessDAO

東京工業大学でコンピュータサイエンスを学び、東京大学ロースクールで法律を学ぶ。幾つかの職を経た後に渡欧し、オランダのIT企業でエンジニアとして従事する。その後東京に戻り、リクルートホールディングスでAI(自然言語処理)のソフトウェア作成業務に携わり、シリコンバレーと東京を行き来しながら働く。この時共著者として提出した論文『A Lightweight Front-end Tool for Interactive Entity Population』と『Koko: a system for scalable semantic querying of text』はそれぞれICML(International Conference on Machine Learning)とACM(Association for Computing Machinery)という世界トップの国際会議会議に採択される。その後、ブロックチェーン業界に参入。数年間ブロックチェーンに関する知見を深める。現在は BlendAI という企業の代表としてAIキャラクター「デルタもん」を発表するなど、AIに関係した事業を行っている。
https://blendai.jp/
https://twitter.com/blendaijp
https://twitter.com/BorderlessJpn
https://twitter.com/BorderlessDAO

この特集のその他の記事

経済的ディスインセンティブが、ビットコイン51%攻撃を防ぐ

ビットコインネットワークに対する著名な攻撃(取引履歴を不正に改ざんすること)に、51%攻撃というものがあります。ビットコインは世界中のコンピュータがその計算能力を使い、取引履歴をブロックとして保存しています。この計算能力・処理能力の51%、つまり過半数を占めてしまえば、不正な取引履歴を正当とみなせるようになります。この問題は理論上取り除くことはできず、サトシもそれを認めています(ビットコイン以外の多くのブロックチェーンも、同じ問題を有しています)。