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

ダスティン・トランメルから​サトシへ​:Re: いく​つか​思う​ところ — アドレス検証と​ウォレットバックアップ (2009-01-16)

サトシ・ナカモトのメール(2009年1月15日19:46 UTC)

IPによる送金は新しい公開鍵を要求するから、そう、タイプ1の中間者攻撃に 対しては脆弱だ。それが気がかりなら、ビットコインアドレスへの送金には その脆弱性はない。ただし、プライバシーで小さなトレードオフがある。 たぶん人々はビットコインアドレスをSSLでないウェブサイトや署名なしの 平文メールから入手することが多くなるだろうし、そういうのはすでにDNS汚染を通じてタイプ1とタイプ2の両方に対して脆弱だ。

確かにそうだが、ビットコインアドレスを使う利点は、2人の人間が 複数の異なるチャネルでアドレスを照合できる、という点だ。 友人が私のウェブサイトからアドレスを取って、何か怪しいと思った場合は、 私に電話することも、IMで連絡を取ることも、メールすることもできて、 アドレスを照合できる。攻撃者は、私のアドレスを悪意あるものに 置き換えるためには、音声を含むあらゆる通信チャネルすべてで置換を 行わなければならず、これはかなり難しい。ネットワーク アドレスによる直接通信を中間者攻撃する場合には、攻撃者がアドレスを 偽装するか傍受しているので、この利点はない。友人が私の アドレスを同じ方法で確認することはできるが、アドレスを確認しても 状況は実質改善されないわけだ。

サトシ・ナカモト

一つの解は、送金時にIPとビットコインアドレスの両方を使うこと (たとえば1.2.3.4-1Kn8iojk… のように)。受信側がビットコイン アドレスの公開鍵で新しい公開鍵に署名して、送金先が本人で間違いないことを 証明する。このシステムが本格的な業務用途で使われ始めたら、必ず実装する。 別の解はSSLを使うことだ。

それは良い解だ。定期的に取引する相手なら、おそらく相手の ビットコインアドレスはすでにアドレス帳に入っているはずだ。

サトシ・ナカモト

後回しにしている機能の1つに、ウォレットを暗号化するオプションがある。

この話題で思いついたことが1つある。システム障害が起きた場合の ビットコイン消失の可能性についてだ。アプリケーションは実行 ディレクトリ内には何もデータを保存していないようなので、おそらく レジストリやその他の場所に保存しているのだろう(まだProcessExplorerを 取り出して自分で確認していない)。なので、復旧に必要なすべてを システム外にバックアップできるファイルにエクスポートする機能を入れて おくのは、良いアイデアかもしれない。

サトシ・ナカモト

ビットコインアドレスだけで済んで、IPは裏で解決される、というのが できれば嬉しい。プライバシーやサービス拒否(DoS)の問題があるかも しれない。新しい送金方式を実装する前に、設計をじっくり考えて ベストな方式かを確認する時間は十分にある。

これは常に任意機能にできる。たとえば「自分のビットコインアドレスを ネットワークに広告する」のオン/オフを切り替えるトグルをユーザーに 持たせるのだ。ビットコインアドレスで検索してもネットワーク上で 見つからない場合は、これまでどおりトランザクションをブロック チェーンに挿入する。見つかった場合は、トランザクションのメタデータを そのネットワークアドレスに通信できる、という形だ。

今日もう1つ気づいたのだが、アプリケーションを閉じても ネットワークソケットをきれいに閉じていないようだ(TCP RSTが 飛び始める)。優先度の低いtodoに入れる項目かもしれない (:

ではまた。

— Dustin D. Trammell dtrammell@dustintrammell.com http://www.dustintrammell.com

原典の外部ソース

https://en.bitcoin.it/wiki/Source:Trammell/Nakamoto_emails
2013年11月にダスティン・トランメルが原文ママで公開。完全なmboxアーカイブはトランメルのブログ (https://blog.dustintrammell.com/i-am-not-satoshi/) からSatoshi_Nakamoto.zipとして配布された。時刻は、メールのDateヘッダー(米国中部時間、UTC−6)をUTCに直したもの