ビットコインの基礎知識が詰まった、初期ユーザーの質問へのサトシの回答

特集 サトシ・ナカモトが残した言葉〜ビットコインの歴史をたどる旅

小宮自由

ビットコインの基礎知識が詰まった、初期ユーザーの質問へのサトシの回答

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

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

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

ここでは、サトシが、ビットコインの匿名性、バックアップの必要性、コイン喪失時に何が起きるかなど、多彩な質問に答えている。オープンソースのビットコインに安全性の問題がないか、例えば、採掘者によるコードの改竄の可能性に関する質問もあった。サトシの答えは、そういうケースは、他の採掘者にビットコインプロトコルからの逸脱と判定され、承認されないというものだった。

Re:ビットコインに関する質問 サトシ・ナカモト 2009年12月10日 午後08時49分02秒

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

SmokeTooMuchは書きました:

こんにちは、昨日この素晴らしい支払方法を偶然知りました。多くのサイトを自分なりに読みましたが、答えの分からない疑問点が出てきています。

1.ビットコインは本当に匿名ですか? 完全に、完璧に? 私のインターネット接続業者は、私がビットコインを送金したり受領したりしたことを検知できますか? ひょっとして、いまこの瞬間にビットコインを稼動していることもインターネット接続業者には分かりますか?

2.私が正しく理解できているとすれば、私の送金の相手先では、私が誰かを知ることはできません。これはつまり、私の実際のIPアドレスが知られない、ということですか? 知られるのはビットコインアドレスだけですか? 相手方がネットワーク接続を監視していても、ですか?

3.もし、私がビットコインを稼動していることをインターネット接続業者が検知したり、支払先が私のIPを検知できるのであれば、ネットワーク・トラフィックをVPN(バーチャル・プライベート・ネットワーク)でトンネルする方が安全ではないですか(例えば、ペイセーフカード*1 で支払う)?これだと、VPNプロバイダーに私の支払を捕捉されて危険ですか?

4.自分の「お金(money)」を失わないようにするには、どのファイルをバックアップすれば良いですか? wallet.datだけですか?それとも、BitcoinのAppDataディレクトリー全部ですか?

5.ウォレットを倍に増やして別の端末で使えませんか? こうすると何もしなくてもお金を倍にできます。こういうケースに備えた安全対策はありますか?

6.ウォレットをなくしたら喪失分を再度産出できますか? それが可能だと、上限数の2100万は正しくないことになります。

(私が言いたいのは、喪失分を取り戻すのではありません。2100万コイン全額の産出が終わってから、100万コインのウォレットをなくしたら、他の誰かがこの100万コインを産出できるのかどうか、あるいは、ビットコインネットワークから完全に失われるのか、どちらですか?)

7.最近読んだところでは、現在、13万ブロックあるそうです。私のパソコンの表示では24,000しかありません。エラーがあるのか、これで正常なのか、どちらですか?

8.すみません、私はビットコイン産出の全ては理解できていません。一台の機器で、24時間で平均、いくつのコインが産出されますか?

9.ポート8333をビットコイン稼働用の機器にフォワードする必要があるのは知っていますが、これがTCPとUDPのどちらを選ぶのか、分かりません。このポートが必要なのはコインの生成時ですか? 支払取引のときだけですか?

10.ビットコインがオープンのソースコードなのは知っています。これは実際、危険ではないですか? コードを操作すれば、他人より多くのコインを産出できますね? これでは大規模なセキュリティ漏洩です。

11.所定の時間内に産出されるコイン数の計算式を見ました。これは、CPUの最大速度と実速度に関連する、とのことです。この説明が後から見つからなかったので、コイン産出の仕組みを説明して下さい。遅いマシンでも速いマシンと同じ量のコインを産出できますか?

12. new liberty standard*2 以外に交換システムや潜在的な支払パートナーはいますか?

13.システムがクラッシュしたらどうなりますか? ウォレットの保存は自動で実行されますか? ビットコインを手動で閉じる必要がありますか?(コイン産出や支払実行の最中でもリアルタイムに保存されますか?)

14.今までにいくつのコインが産出されたか、知る方法はありますか? ビットコインが始まってからどのくらいになりますか?

質問が多いのは分かっていますが、このサービスに本当に関心があって、頻繁に利用する前に全てを知りたいのです。

(ひどい英語ですみません・・・)

1-3:そのレベルの匿名性を求めるなら、Tor接続を使う必要があります。これは、数週間後にリリース予定のバージョン0.2以降に可能になります。そのときになったら、Torの利用法を投稿します。

4:バージョン0.1.5では%appdata%\Bitcoinディレクトリー全体。バージョン0.2ではwallet.datのみです。

5:使えません。システムではそういうケースを予防するように設計されています。

6:失ったコインは取り戻せません。全体の流通量は減ります。実際の流通量が減るので、残りの全コインの価値が少し上がります。この現象の対極が、政府が増札すると貨幣価値が下がるケースです。

7: 現在、29,296ブロックです。流通量は、ブロック数×50、なので、現在の流通量は1,464,800ビットコインです。24,000ブロックしかないのでしたら、まだ開始のブロック・ダウンロードを終えていないのでしょう。ビットコインを終了して再起動して下さい。開始のブロック・ダウンロードにはバージョン0.2が速度が速くて良いです。

8:現在はだいたい数百です。今は易しいですが、ネットワークの拡大とともに難しくなります。

9:良い質問です。TCPです。TCPにポート8333を告げるにはウェブサイトのアップグレードが必要です。ポートのフォワーディングの目的は他のノードがあなたに接続するためなので、多くのノードと接続できますから、接続状態の維持に役立ちます。IPアドレスでの送金の受領にも必要です。

10:いいえ、他のノードから承認されません。オープンソースというのは誰でもコードを見ることができるという意味です。閉じたソースだと、安全性を検証できる者がいません。この種のプログラムはオープンソースであることが大切だと思います。

11:遅いCPUではコインの生産量が少なくなります。CPU速度に比例します。

12:これからもっとたくさん出てきます。

13:バークレーDB*3 という取引データベースが使われています。システムのクラッシュが起きてもデータを失うことはありません。取引は受信されると同時にデータベースに記録されます。

14:現在のところ、ブロックの総数×50、で算出できます。ビットコインが始まってからおよそ一年になります。設計とコーディングは2007年に始まりました。

Re:ビットコインに関する質問

SmokeTooMuchは書きました:

わあ、詳しい回答、ありがとうございます。

今日は別の疑問が出てきました。

例えば、隣人がビットコインの利用者で、もうすぐ送金を受け取ることになっています(インターネットショップの経営者で、支払をビットコインで受け取ります)。

彼の無線LANネットワークは保護がなされてないか、脆弱です。ルーター設定も同じです。

さて、このルーター設定にログインし、ポート8333のフォワード先のIPアドレスを私たちのシステムのIPに変えることが可能です。いま、私たちのビットコインクライアントで支払を受け取れるようになりました。

これは本当に可能ですか?

これは大変な犯罪行為で、こんなシナリオは・・・、えっと、「普通ではない」のは分かっていますが、理論上はありえますね(私が人に損害を加えることに興味があるのではなく、犯罪者はお金を得るためにはあらゆることを試みます)。

ところで、自分のLAN側でルーター設定が保護なしのときも同じことになります。

編集:どのIPアドレスでポートを使っていても、支払が届く先はビットコインアドレスか、支払人が指定したIPアドレスになるから、こんなシナリオはありえませんか?

その通りです。IPへ送るオプションを使えば、そのIPに応答した人に届きます。ビットコインアドレスに送るときはその問題は生じません。

計画では、IPアドレスとビットコインアドレスの両方使えると、両者のメリットを生かせるので、そのオプションを実装する予定です。当面は取引ごとに異なるアドレスを使いますが、受取人は使い捨てのアドレスに所定のビットコインアドレスで署名し、その使い捨てアドレスが目的の受取人のものであることを証明します。

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

【訳注】
*1 プリペイドのオンライン決済サービス
*2 世界初のビットコインを売買サービス

*3 アプリケーション組み込み型のデータベースライブラリ

解説

ビットコインがリリースされて約1年経過し、new liberty standard のような売買サイトも出てきました。本格的にビットコインが高騰する(何百万円にもなる)のはまだまだ先です。そのような時期なので、本記事のような素朴な疑問がフォーラムに投稿されることも少なくありませんでした。

ここで回答されていることは、いずれも基礎知識レベルなので、不明点があればこれまでの投稿を適宜読み直してください。

小宮自由

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

毎日ニュースをポッドキャストで

あたらしい経済では暗号資産(仮想通貨)・ブロッックチェーンなどweb3領域のニュースを平日毎日ポッドキャストで配信しております。Apple PodcastSpotifyVoicyなどでぜひ登録ください。

 

関連するキーワード

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

小宮自由

東京工業大学でコンピュータサイエンスを学び、東京大学ロースクールで法律を学ぶ。幾つかの職を経た後に渡欧し、オランダの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

この特集のその他の記事

サトシも危惧していた、ビットコインのスケーラビリティ問題

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

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

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