ビットコインとトランザクション。カリフォルニア大学バークレー校 ビットコインと仮想通貨の無料講義超訳|Week1-3

前回までの記事はこちら。

ーーーーーーーーーー

こんにちは!クレメア(@cremea_tw)です。

前回に引き続き、カリフォルニア大学バークレー校の無料講義、
「ビットコインと仮想通貨のオンライン講座」で学んだ内容をシェアしていきます。

講義そのものにおいて、

読者対象:ビットコインや仮想通貨について詳しく知りたい全ての人
前提知識:不要

という感じなので、
講義内容を読むだけでもかなり理解が深まるのではないかと思います。

 

文章のスタイルとしては、
翻訳ではなく、個人的解釈バリバリの超訳をしてきます。

荒削りですがスピード重視で、
クレメア的な解釈も交えてお伝えするので、
間違いや意見などあればコメントいただければと思います。

 

また、太字や文字色などの文章の装飾は極力していません。

学びの本質はそこではない、時間がもったいない、あとでできる、
ということで、今回は泣く泣くカットしました。

見辛いかもしれませんが、予めご了承ください。

 

ということで、
講義の内容に沿って進めます。

今回の記事は、
ビットコインとトランザクションについてお伝えします。

それでは、本題に入っていきましょう。

イントロ: トランザクション (ステージ 2)

前回の講義で、
ビットコインでのアイデンティティの構造を目的を、
はっきりと理解することができました。

では、ビットコインで互いに取引する方法は、
実際にどのように行うのでしょうか?

 

結局のところ、
ビットコインネットワークの主な目標は、
ネットワーク内の2人のユーザー間で安全な取引を可能にすることです。

 

トランザクション (ステージ 2)

アイデンティティの概念を前回の講義でしたように、
トランザクションのアイデアを分析してみます。

「トランザクションを有効にするものは何でしょうか?」

 

有効性とは

トランザクションが有効であるためには、
次の3つの要素を満たす必要があります。

  1. 所有権の証明(署名)
  2. 利用可能かつ十分な資金(残高)
  3. 同じ資金が他の取引で使用されていない保証

 

小切手と銀行との関係で、
これらの基準を理解していきましょう。

小切手を使って取引を行う場合、
小切手に署名して小切手を確認する必要があります。

小切手は所有権の証明です。

銀行はあなたの口座に、
十分な資金があることを確認しなければいけません。

また、同じ金額を複数回使用しないようにする必要があります。

つまり100ドルしか残高がないときに、
2回以上100ドルを支払うことはできないということです。

 

これらを実行するためにビットコインは、
UTXOまたはUnspent Transaction Output モデルと呼ばれるものを使用します。

 

UTXOモデル

伝統的に、私たちは銀行について考えるとき、
全ての資金が1つに集客される単一のアカウントを考えます。

例えば、10ドル相当のハンバーガーとフライドポテトを購入した後、
アカウントの残高は20ドルから10ドルになります。

 

ビットコインの場合は、
そのようにはいきません。

分散型ネットワークの話となると、
アカウントは、ユーザーにとっては理解しやすいものの、
コンピューターにとっては驚くほど難しいのです。

私のアカウントで行われている全てのトランザクションを追跡するための中央機関は存在しませんし、
トランザクションの実行時に追跡する中心的な存在もありません。

 

私が合計で10ビットコインあるアカウントから、
5ビットコインを3つの異なるトランザクションで実行しようとした場合、
どの2つのトランザクションを実行する必要があるでしょうか?

3つの取引すべてが誤って実行されないためには、
どのようにするのが良いでしょうか?

 

トランザクション処理をはるかに簡単かつ安全にするため、
ユーザーはアカウントを使用しません。

その代わりに、
ユーザーはトランザクションから直接支払います。

この直感的でないモデルを理解するために、
UTXOを貯金箱として考えてみましょう。

 

取引が行われるたびに、
その金額の全てをUTXO、貯金箱の中に入れます。

私たちはお金を使いたいときに、
貯金箱を壊して中身を取り出します。

私たちは好きな分だけお金を使い、
残ったお金は別の貯金箱に入れます。

 

このようにすることで、
トランザクションの妥当性をチェックする複雑さが減ります。

より難しい質問をする代わりに、
このアカウントは、現時点では、複数の取引において、
所有するよりも多くのお金を使うのですか?
と尋ねるだけ。

私たちが尋ねるのは、
この貯金箱には十分な資金があるのか?ということだけです。

 

一方で、これらの貯金箱のそれぞれが個別に追跡され、
確保されなければならないので、自分の資金を追跡する複雑さが増します。

所有しているビットコインの額は、
それぞれの貯金箱、すなわちUTXOの価値を合計したものとして計算されます。

 

Quick Check 1

「UTXO」は一度しか使用できません。

  • True
  • False

 

Quick Check 2

UTXOは何を表したものですか?

  • Unused Transaction Output
  • Unspent Transaction Output
  • Unique Transaction Output
  • Unusual Texas Xylophone Orchestra

 

デモ: UTXO

ビットコインのトランザクションがどのように機能するか、
例を交えて具体的に考えてみましょう。

 

グロリアには過去の取引から100ビットコインの価値があるUTXOと、
50ビットコインの価値のあるUTXOの2つがあるとしましょう。

彼女は信じられないほど裕福で寛大で、
私に101ビットコインを送ろうとしています。

 

最初に彼女は1つ目の100ビットコインのUTXOを開き、
そのトランザクションのインプットを私に対してします。

しかし、彼女はまだ入力が不十分であると認識しているので、
2つ目の50ビットコインのUTXOを開き、2回目のインプットを私にします。

現在、取引には100の価値と50の価値の2つのインプットがあり、
1つのアウトプットは101の価値を持っています。

 

もともとグロリアのものである、
残りの49ビットコインはどうなったのでしょうか?

どこかへいってしまったのでしょうか?

 

グロリアがあとでこれらのビットコインを使うことができるように、
残りの全ての未使用ビットコインを含む、
新たなUTXOを2番目のアウトプットとして作成します。

このようにして、合計101以上のビットコインがあるUTXOを持っていなくとも、
彼女は自分の150ビットコインを101枚使い、残りの49枚を保持することができます。

 

ここから、もし私が同じくらい寛大で、
残っている101ビットコインをデリックに与えたいのであれば、
私はあたらしいUTXOを別のトランザクションにインプットするだけです。

これでデリックの新しいUTXOができます。

 

これが、ビットコインがここのトランザクションを効果的に追跡し、
誰かが間違った量のビットコインを費やすのを防ぐ方法になります。

 

あとがき

ということで、
いかがでしたでしょうか?

ビットコインで送金したことがある人であれば、
「未使用のトランザクションの出力」という言葉を、
目にしたことがあるかもしれません。

あれが、
今回の講義で説明されている、
UTXOモデルのことです。

 

アカウントという概念なしに運用するために、
このようなモデルが使われていたんですね。

知っているようで知らなかった、
ビットコインの仕組みをまた1つ知ることができました。

 

本編の講義には解説図もあったので、
動画化するときは追加しようと思います。

 

ということで、

今回はこの辺で失礼します。

このブログを書く僕の目的は、
「ファンを作ること・仲間を増やすこと」です。

趣味が合う、気が合う、考え方が合う。
なんかええなーと思ったら、気軽にメッセージください。喜びます。

終わり。

 

次の記事
ビットコインとブロックチェーン。カリフォルニア大学バークレー校 ビットコインと仮想通貨の無料講義超訳|Week1-4

コメントを残す

メールアドレスが公開されることはありません。 * が付いている欄は必須項目です

このサイトはスパムを低減するために Akismet を使っています。コメントデータの処理方法の詳細はこちらをご覧ください

ABOUTこの記事をかいた人

物語の引き金を引く男 / 「てめえの人生に火をつける」 / プロ火付け役 / 腐れニートからの再始動 / 見知らぬ人にMacBook Proを買った人 / 32日で100記事達成 / ただの足跡を伝説に変えていく男 / Youtubeで #クレメアラジオ 不定期配信 / サロン「裏世界」オーナー 参加希望者はDMまで