ビットコイン取引とは、ある一定量のビットコインを あるアドレスから別のアドレスへ それは ブロックチェーンに記録.
しかし、この "移籍 "プロセスは実際にどのように機能しているのだろうか?
このレッスンでは、ビットコイン取引が最初から最後までどのように行われるかをお見せします。
まず、ビットコインの取引がどのように行われるかを、以下の観点から見てみよう。 ユーザーの 遠近法.そしてその後、ビットコインの取引がどのように行われるのかを 鳥目 ビュー.
そうすることで、前のレッスンで学んだ新しいコンセプトをすべて覚えることができる。
準備はいいか?
アイアンマンがバットマンに送りたい1ビットコインを持っているとしよう。
アイアンマンの視点から
アイアンマンが最初にすることは、ビットコインの財布を開くことだ。
これはどんなタイプのウォレットでも可能だが、この例ではラップトップにインストールしたソフトウェア・ウォレットを使っている。
次に彼がしたことは、バットマンを尋ねることだった。 ビットコインアドレス.
バットマンの狙いはここだ ビットコインを受け取る.バットマンは彼にビットコインのアドレスをメールし、アイアンマンはそれをコピー&ペーストする。
そして、アイアンマンは ビットコイン量 彼はバットマンを送り込もうとしている。
金とチタン合金の巨大な指はタイプミスをしやすいので、彼は正しい数字を入力したかどうかダブルチェックする。
そしてヒット 送信.
その後、ウォレットソフトウェアは取引を確認するためにパスワードの入力を求める。
ビットコインを送るには、アイアンマンはビットコイン・ネットワークに対して、それが実際に以下のようなものであることを証明する必要がある。 彼 ビットコインの所有権は彼にある。
そこで彼の 秘密鍵 が入ってくる(これはウォレットに保存される)。
バットマンが正しいパスワードを入力すると、ウォレットソフトウェアは"兆候「バットマンの秘密鍵を使ってトランザクションを"デジタル署名".(これはすべて舞台裏で行われる)。
ビットコイン取引の舞台裏
これ以降、バットマンの関与は終わった。
ウォレットソフトウェアはビットコインノードに接続し、ビットコインを送信します。 取引メッセージ、 とともに、"デジタル署名「そして 公開鍵.
ノードはトランザクションが 妥当:
- 送信者はそのアドレスに取引を行うのに十分なBTCを紐付けていますか?
- 送信者はBTCを送信する権限がありますか?
例えば、バットマンは実際に送信する1BTCを持っているかどうかをチェックする。トランザクションがすべてのチェックをパスすると、ノードは他のノードにトランザクションを渡す。
デフォルトでは、ノードはお互いを信用していないので、トランザクションを検証する。 また 自分たちのために。
そして、トランザクションが有効であると判断された場合のみ、接続されているノードにトランザクションを共有する。
トランザクションが有効であると判断された場合、そのトランザクションは "メモリープール "または"メモプール".
この時点で、取引は「未確認」または「未確認」とみなされる。保留".
と呼ばれる特別なノードがある。鉱民" は、このトランザクションを、その mempool から他の有効なトランザクションと一緒に " パッケージ化する。ブロック".
マイナーは、そのブロックを最初に「採掘」することを競う。これには、特定の数のゼロで始まる数字を見つけることが含まれる。
この数字を見つける唯一の方法は 試行錯誤.言い換えれば、"作る "ということだ。 可能な限り多くの推測。
最初に正しい数字を当てたマイナーは、そのブロックを最初に「採掘」したことになる。
採掘者が正しく推測した瞬間に、そのブロックを「当選番号」とともにビットコインネットワークの他のノードに共有する。
ビットコインネットワーク上のノードは、採掘者が正しい数字を推測したかどうかを検証し、それが正しければ、勝利した採掘者の数字を追加する。 ブロック をブロックチェーンのコピーに追加する。そして、このブロックを他のノードにも送信する。
トランザクションを保持する)ブロックがブロックチェーンの "公式 "バージョンに追加されたので、そのトランザクションは"確定"
そのブロックが作成され、新しい取引が検証され、そのブロックに含まれると、その取引は"一回確認".
バットマンの視点から
バットマンはトランザクションが完了したことを確認する。 確定 そして、ビットコインが送金されたかどうかを確認するためにビットコイン・ウォレットをチェックする。
アイアンマンの取引が行われたブロックの上に構築されたブロックが多ければ多いほど、その取引はブロックチェーン上で「確認済み」となる。
基本的に、追加された各ブロックは"追加確認".6回の確認を待つことが、ほとんどの取引が安全であるとみなされる現在の基準である。
そして3つ目!
アイアンマンが所有するアドレスからバットマンが所有する新しいアドレスに1ビットコインが送金された。
そして、アイアンマンやバットマンがビットコインのウォレットアドレスを公開しない限り、2人の有名なスーパーヒーローがビットコイン取引に関与していたことを知る者はいない。
誰が見ても、あるアドレスから別のアドレスに1BTCが送金されているだけで、そのアドレスの背後に誰がいるのかはわからない。
ご覧のように、ビットコイン取引の多くのステップは舞台裏で行われていた。
バットマンが自分のアドレスをアイアンマンと共有し、アイアンマンがビットコイン・ウォレットを使って取引を開始すれば、あとはコンピュータとソフトウェア・コードによって処理される。
ビットコイン取引の鳥瞰図
では、ビットコイン取引の仕組みを俯瞰してみよう。
アイアンマンはすでにバットマンのアドレスとビットコインの送金額を入力しているとしよう。
アイアンマンのウォレットは、最新のデータベース(「ビットコインのブロックチェーン」)のコピーを実行するすべてのコンピュータ(「ビットコインネットワーク」)にメッセージをブロードキャストするノードに接続する。バットマンに1ビットコインを送りたい."
アイアンマンには "アイアンマン "と呼ばれるユニークな文字列がある。秘密鍵".この秘密鍵を使って、バットマンのウォレットソフトウェアは"デジタル署名「このメッセージは、他の誰からのものでもなく、彼からのものであることを保証する。
コンピューター("フルノード")と呼ばれる、アイアンマンが提供する異なる文字列と数字を使用することで、アイアンマンが実際にメッセージを送信した人物であるかどうかを簡単に確認することができる。公開鍵"でこの「デジタル署名」を検証する。
また、全員が現在のデータベースのコピーを持っているため、アイアンマンが1ビットコインを送っていることを簡単に確認することができる。
すべてのノードは常に最新の情報を更新し合っている("取引")がビットコインネットワークに追加される。
取引は、あるアドレスから別のアドレスへのビットコインの転送記録として存在する。取引はブロックチェーン上に個別に記録されるのではなく、まずブロックにグループ化される。
重要なのは、現時点では、この取引はまだ を提案した。 どのコンピューターも元帳のコピーを更新していない("ブロックチェーン")はまだだ。
取引は最初、待合室("ウェイティング・ルーム")に置かれる。メモプール")に座って確認を待っている。
mempool(メモリプール)とは、未確認(保留)トランザクションの小さなデータベースのことで、各ノードが保持している。mempool内のトランザクションはすべて保留中であり、ブロックに含まれるまで信用してはならない。
なぜなら、トランザクションは 提案されたが未決定この場合、システムは参加者全員にメッセージが確実に伝わるよう、迅速に中継することができる。
下の図では、アイアンマンとバットマンを次のように表している。 パープル 財布
について 灰色 円は、ピアツーピア(P2P)ビットコインネットワークの一部であるコンピュータ(「フルノード」)を表しています。
について ブラック 正方形は「ブロックチェーン」を表し、アイアンマンが自分の取引をネットワークに提案した時点で、順次更新される台帳のコピーである。
ご覧のように、ブロックチェーンの同一のコピーが世界中のコンピューターに保存されている("フルノード")がビットコインのソフトウェアを実行する。この設計により、単一のエンティティが台帳を管理することはなく、ビットコインは政府や中央当局によって管理(またはシャットダウン)されにくくなる。
ブロックチェーンの完全なコピーを保持するすべてのノードは、"フルノード"は、元帳を消去するために破棄する必要がある。台帳全体が 少なくとも1つのフル・ノードビットコインの取引履歴が記録される。
もちろん、取引を行うのはアイアンマンだけではない。アベンジャーズの他のメンバーも他の受取人にビットコインを送っている。例えば、キャプテン・アメリカがウィンター・ソルジャーにビットコインを送ることもできる。
ここで、ネットワークの特別参加者が登場する:"鉱民."
マイナーは世界中に散らばるコンピューターで、ビットコインネットワークの重要な部分を形成している。彼らの仕事は、アイアンマンのような新しい有効なトランザクションをバンドルまたはグループ化し、決済のためにそれらを提案することである。
これらのトランザクションのグループは"ブロックブロックチェーン」の「ブロック」はここから来ている。
A ブロック のコレクションである。 取引.ブロックは 年代順に連結 ブロックの連鎖」あるいは ブロックチェーン.
常に何千台ものコンピュータが、次のブロックを作る権利を巡って競い合っている。この競争には「パズル」を解くことが含まれ、マイナーは現在のパズルを解いた場合にのみ新しいブロックを提案することができる。
この "パズル "は基本的に正しい数字を当てることに集約される。正しい数字を当てる確率は約6兆分の1である。
つまり、「勝ち」の数字を最初に見つけるコツは、できるだけ多くの数字を当てることなのだ。そのためには、膨大なエネルギーを使う計算能力が必要になる。
最初に解答を見つけた者には、"賞金 "と呼ばれる報酬が与えられる。ブロック報酬".
ブロック報酬は、ノードがマイニングに参加するインセンティブを与えるように設計されている。そうでなければ、コンピュータの高いコストとそれを動かすための電気代を回収できないため、マイナーは存在しない。
について ブロック報酬 は2つのコンポーネントで構成されている:
- 新規鋳造ビットコイン
- 取引手数料(アイアンマンのように取引を開始した人が支払う)
マイナーによって新たに「獲得」されたビットコインは、"ビットコイン "と呼ばれる。ブロック補助金"であり、報酬の最大の部分を占める。現在、新しいブロックにはそれぞれ 6.25新規鋳造ビットコイン.
各ブロックには複数のトランザクションが含まれ、すべてのトランザクションには手数料が含まれ、マイナーはこれを徴収する。
要約すると
ブロック報酬=ブロック補助金+取引手数料
ブロック報酬とは マイナーがトランザクションを検証し、データベースを維持するために必要な作業を行うインセンティブを与える。.
21万ブロックごと、つまりおよそ4年ごとに、ブロック補助金は半減する。二分".このプロセスはブロック補助金がゼロになるまで続く。その時点で、マイナーは取引手数料のみを徴収する。
新しいブロックはビットコインネットワーク上でおよそ10分ごとに決済されるが、正確な時間は「パズル」がどれだけ早く解けるかによる。
今日、ほとんどの採掘は「マイニング・プール」によって行われている。「マイニング・プール」とは、処理能力を結集し、ブロック報酬を各自で分け合うマイナーのグループである。
このプロセスを下図に示す。
鉱山労働者は次のように表される。 オレンジ サークルだ。
について 青 正方形は更新された元帳を示し、アイアンマンの取引を含む多くの新しい取引が含まれている。
今のところ ネットワーク参加者の一人(新しいトランザクションのブロックを提案したマイナー) は完全に更新された元帳を見ることができる。
他の参加者はまだ 年上 ブロックが描かれている。 ブラック.
報酬が大きいため、多くのマイナーが競って各ブロックのトランザクションを決済する。
設計上、"パズル "を解くには膨大なコンピューティングパワーと大量の電力が必要となるため、高価な努力となる。また、何千人ものマイナーの誰が最初に「パズル」を解くかを知ることは不可能である。
マイナーが「パズル」(正しい数字を当てること)を解くと、その解答を投稿し、ネットワークにトランザクションのブロックを提案することができる。
このアプローチの優れている点は、パズルを解くのは難しくコストがかかるが、結果をチェックするのは非常に簡単だということだ。そして、採掘者が解決策とそのトランザクションのブロックを投稿すると、ネットワークの他のメンバーがその作業をチェックする。
取引が有効で、「パズル」の解答が正しい場合、 ネットワーク参加者がデータベースのコピーを更新し、新しいトランザクションを反映させる。.
その時点で、アイアンマンの取引は次のように見なされる。 解決済み または"確定".1ビットコインはアイアンマンのアドレスからバットマンのアドレスに移動し、正式にブロックチェーンに記録された。
この"コンセンサス・メカニズム「どの取引が永続的に記録され「確認」されるかを決定することが、ビットコインのブロックチェーン設計の核心である。
このプロセスを以下に示す。
現在、すべてのネットワーク参加者は、提案された新しい取引ブロック(青 正方形)。その結果、両者の元帳は更新され、同期する。
重要なのは、次のブロックの取引を決済するための競争は、前のブロックの情報を含むかどうかに依存していることである。これにより、マイナーはデータベースのコピーを迅速に更新し、決済されたブロックを改ざんすることが非常に困難になる。
この "ブロックの連鎖 "が、このデータベース・アーキテクチャが"ブロックチェーン."
ビットコインのブロックチェーンには、ビットコインが誕生して以来、すべてのブロックが含まれている。 インセプションと呼ばれる最初のブロックまで遡る。ジェネシス・ブロック."
ブロックを提出した未知のビットコインマイナーが悪質な行為者であり、何らかの利益を得るために無効なトランザクションブロックを提案したとしたら?
あるいは、アイアンマンが悪意を持っていて、誰にも気づかれずにスパイダーマンとワンダーウーマンの2人に同時に同じ1ビットコインを送ろうとしていたら?
ネットワーク参加者は、提案された各ブロックの各取引を検証し、無効な取引があるブロックを拒否します。現在、10万を超えるノードが、ビットコイン取引の一つ一つを独立して検証している!
なぜなら 検証中 トランザクションを決済し、有効なトランザクションのみが決済されるようにすることは、ネットワーク参加者にとっては些細なことである。 沈降 取引にはコストがかかるため、システムを詐取しようとするインセンティブは最小限に抑えられる。
概要
ビットコインネットワーク上のすべてのやりとりをまとめてみよう:
- ビットコインを他の人に送りたい場合、受取人のビットコインアドレスを提供すると、ウォレットがノードに接続して取引を開始する。
- ノードはトランザクションを検証し、有効性を確認した後、有効なトランザクションを他のノードやマイナーにブロードキャストして中継する。トランザクションがビットコインのルールのいずれかに違反する場合、ノードは自動的にそれを拒否する。
- マイナーはこれらのトランザクションを「候補ブロック」(一時的なブロック)にまとめ、数学の「パズル」の解を最初に正しく推測して、ブロックチェーン上にブロックを公開する権利を競う。
- 勝利した」採掘者は、この一時的なブロックを永続的なブロックとしてブロックチェーンに公開し、取引(およびバッチ内の他の取引)を確認する。
- ノードはこのブロックを受け取り、採掘者がネットワークのルールに従っていることを確認する。(ブロックがビットコインのルールのいずれかに違反している場合、ノードは自動的にそれを拒否する)。
- あるノードが新しいブロックを受信し、それが有効と判断されると、他のノードにそれを中継することで、すべてのノード(マイナーを含む)が同期を保ち、同一のブロックチェーンを維持することができる。
- 他のすべての採掘者は、自分が作業していた一時的なブロックを削除し、新しい数学「パズル」を持つ新しい「候補ブロック」に取りかかる。
- 受信者のウォレットが接続するノードが新しいブロックを受信すると、受信者のウォレットは新しく受信したビットコインで更新された残高を表示します。