Bitcoinの取引のしくみについてメモ

Bitcoinについて技術的に理解したいとおもって色々調べていたけど、
ブロックチェーンに関する詳細説明が多くて、
もう少し全体的な取引部分(トランザクション部分)の話が
まとまっているのがないかなと思って調べていたら
これがわかりやすかったです。

トランザクション部分のまとめ(解釈ふくむ)

  • まず、お金の送金についての登場人物を単純化すると、送る人(仮にAとする)と、もらう人(仮にBとする)の二人。

  • 銀行は、A・Bの財布を管理している、サーバ型。

  • Bitcoinは、集中管理サーバが無くて、それぞれが全部の取引記録をもっているP2P型。

  • 例、AからBへの1円の送金

  • 銀行:サーバでA-1、B+1すれば終わり。

  • Bitcoin:Aが、「A-1、B+1」したという情報を全ノード(ex: C.D.E....)に送信する。
    つまり、Aが送金したその時点では、財布からお金が減らない。Bに+1されたかどうかもわからない。
    これだと、Bに送金して、速攻、Cに送れるのではないかと思うが、
    AがCに送金をしようとしても、他のノードは、Bに送金したことを知っているので、不正とみなされる。

  • 「A-1、B+1」されたという情報をA自身が知るのは、
    10分ごとに送られてくる全ユーザの取引情報のアップデート(ブロックチェーン)を受け取ったとき。

流行るかどうか、など色々な考察はおいておいて、
仕組みだけ見ると、無駄な通信が大そうだとは感じる。

ひろゆき氏が言っていたように、P2Pは、
「ビール1杯目無料の居酒屋で、客がみんな1杯しか飲まずにみんな返ったら破綻するシステム。」
な気はする。基本的にスケールしづらいよね。
しようとすると、どんどん複雑な機能を足さないといけないし、足しても完璧ではない。