ベテランマイナーによるブロックチェーンの究極5,000語ガイド

ベテランマイナーによるブロックチェーンの究極5,000語ガイド

ビッグデータ概要

編纂者:Xiaoyu、Jiang Baoshang

「ベテランマイナー」が 5,000 語を使ってブロックチェーンの動作原理を説明します。分散化、分散ストレージ、ハッシュ関数暗号化、これらは何でしょうか?

田舎に住んでいなければ、ビットコインとブロックチェーンについて聞いたことがあるでしょう。結局のところ、これらは現時点で最もホットな話題の 1 つであり、今年の流行語にも選ばれています。デジタル通貨に触れたことがなく、その仕組みを知らない人々でさえ、ブロックチェーンについて議論しています。

これらの新しいテクノロジーを理解するとなると、技術的なバックグラウンドを持たない友人たちは「混乱」し、ブロックチェーンとは何かを何週間も私に説明し続けました。

ベテランのビットコインマイナーとして、私は最も人気のあるトレンドを誰もが理解できるように、最もシンプルでわかりやすい言葉でこの記事を書きました。

ブロックチェーン: なぜこれほど複雑なものが必要なのでしょうか?

「どんな複雑な問題にも、単純で明白に思えるが、実は間違っている答えが存在します。」

—— HL メンケン

最初にブロックチェーンを定義しようとする他の記事とは異なり、私はまずブロックチェーンが解決する問題について説明します。

あなたの親友ジョーが海外旅行中に突然電話をかけてきて、「お金が全然ないんだ。お金を貸してくれないか?」と言ったと想像してください。

あなたは心優しい人なので、「すぐに電話します」と言います。

次に、銀行口座のマネージャーに電話して、「私の口座からジョーの口座に 1,000 ドルを振り込んでください」と言います。

アカウントマネージャーはこう答えます。「はい、承知しました。」

彼はあなたのアカウントにログインし、1,000 ドルを送金するのに十分な残高があるかどうかを確認します。あなたは裕福で、送金するのに十分なお金を持っているので、彼はフォームに次のように記入します。

その後、ジョーに電話して、「1,000 ドル送金しました。銀行に行ってお金をおろしてください」と伝えます。

このプロセス全体を通じて、あなたとジョーは銀行に資金の管理を任せています。上記の取引プロセスには実際のお金は関係なく、フォームの変更のみが必要です。もっと正確に言うと、このテーブルは、あなたとジョーが所有したり、直接制御したりするものではありません。

これが現在のシステムの問題点です。私たちの間で相互信頼を築くためには、独立した第三者に頼る必要があります。

長年にわたり、私たちはお互いを信頼するために「仲介者」に頼ってきました。 「この仲介システムはどんな問題を引き起こすのか?」と疑問に思うかもしれません。

問題は、「仲介業者」の数が限られていることです。一人の人間または一つの組織が意図的であろうとなかろうと腐敗している限り、社会全体が混乱に陥るでしょう。

  1. テーブル内の取引記録が火災で破壊されたらどうなるでしょうか?

  2. アカウントマネージャーが 1,000 ドルではなく 1,500 ドルと記入していたらどうでしょうか?

  3. もし彼がわざとそれをやったとしたらどうなるでしょうか?

何年もの間、私たちは他人のせいにしてばかりいました。

第三者(銀行)を介さずに送金できるシステムは可能でしょうか?

この質問に答えるには、転送が何を意味するのかを考えてみましょう。テーブルに登録されたエントリのみです。

では、第三者に頼らずに私たちの間の取引記録を維持する方法はあるのでしょうか?

答えはもうお分かりでしょう。それはブロックチェーンです。

ブロックチェーン:第三者に頼らずに取引する方法

ブロックチェーンはどのようにして取引記録の独自の登録を実現するのでしょうか?これには分散会計技術の使用が必要です。

このアプローチでは、十分な数の人々が第三者に依存しないことを選択する必要があります。この方法でのみ、人々はこの分散型システムを独自に運用することができます。

「将来ビットコインの価値が上がった場合に備えて、いくらかビットコインを貯めておくことができます。もっと多くの人がこのように考えれば、このアイデアは現実のものになるでしょう。」

——サトシ・ナカモト

システム内には何人いれば十分でしょうか?少なくとも3つ。しかしここでは、取引を管理する銀行やその他の第三者を介さずに済ませたい人が 10 人いると仮定しましょう。相互の同意により、彼らは常に互いのアカウントの詳細を把握していたが、お互いの身元については知らなかった。

1. 空のフォルダを作成する

誰もが自分の空のフォルダーを作成することから始めます。このプロセスが進むにつれて、これらの 10 人は空のフォルダーにページを追加し続けます。このページのコレクションは、トランザクションを追跡するテーブルです。

2. 取引を開始する

次に、ネットワーク内の全員がペンを手に持ち、空白のページに記入します。誰もがシステム内で発生するあらゆるトランザクションを書き込む準備ができています。

ここで、2番が9番に10ドルを送金したいとします。

取引を完了するために、2番は「9番に10ドルを送金したい」という声明文を投稿しました。メッセージを受け取った人は、その取引を白紙のページに記録しました。

各人は、2 番が 9 番に 10 ドルを送金するのに十分なお金を持っているかどうかを確認します。十分な残高がある場合は、各自の空白ページに取引を記録します。

3. 取引を継続する

時間が経つにつれて、より多くの人々がネットワークを利用して送金するようになるだろう。取引をしたいときはいつでも、他の人に通知します。通知を聞いた人が一人いれば、その人は自分のページに取引記録を書き込みます。

全員が現在のページのスペースを使い切るまで、ログ記録は続行されます。 1 ページに記録できるトランザクションは 10 件だけだと仮定します。 10 番目のトランザクションが完了すると、全員のスペースが使い果たされます。

ページがいっぱいになったら、そのページをフォルダーに配置して新しいページを作成し、上記の手順 2 のプロセスを繰り返します。

4. ページを閉じる

ファイルをフォルダーに入れる前に、ネットワーク上の全員が同意する一意の番号で暗号化する必要があります。パスワードを暗号化することで、各人のフォルダにコピーが保存され、暗号化された番号を誰も変更できず、時間が経っても変更されないことが保証されます。パスワードのコピーがフォルダーに保存されると、今日でも、明日でも、さらには 1 年後でも、暗号化された状態でそこに保存されます。そして、誰もが暗号化を信頼すれば、ページのコンテンツも信頼できるようになります。ページの暗号化方式はオンライン取引の鍵となります。

ページが変更されないように保護する作業を「マイニング」と呼びます。しかし、簡単にするために、これを「暗号化」と呼ぶことにします。

ブロックチェーンが登場する前は、私たちは第三者や仲介業者を信頼し、彼らがテーブルに登録したすべての取引は変更されないと信じていました。そして、先ほど説明した分散型非中央集権型システムでは、人々はこの暗号化方式も信頼するでしょう。

暗号化のための魔法のマシン:ハッシュ関数

ページを暗号化する方法を学ぶ前に、暗号化の仕組みを理解する必要があります。私はそれを「魔法の機械」と呼んでいます。

厚い壁に囲まれた機械を想像してみてください。マシンに左から空でない箱を送ると、マシンは何か他のものが入った箱を「吐き出します」。

このマシンは「ハッシュ関数」と呼ばれますが、理解しやすいように「マジックマシン」と呼びましょう。

たとえば、左から数字の 4 を送信すると、右側に「dcbea」という単語が出力されます。

数字の 4 をどのようにして「dcbea」という単語に変換するのでしょうか?誰も知らない。さらに、変換プロセスは元に戻せません。

マシンが「dcbea」を出力することを知っていても、対応する入力を知る方法はありません。しかし、機械に数字の 4 を入力するたびに、常に同じ単語「dcbea」が出力されます。

図: ハッシュ (4) == dcbea

26という数字を送信するとどうなりますか?

図: ハッシュ(26) == 94c8e

今回は「94c8e」を取得しました。面白い!したがって、マシンによって出力される結果にも数字が含まれます。

さて、私があなたに次の質問をしたとします。

「マシンの左から何を入力すれば、右から 3 つのゼロで始まる単語が生成されますか? たとえば、000ab、00098、000fa、または 000XX などです。」

前述のように、マシンには、右側の結果から左側の入力を推測できないという特性があります。

このような機械に直面して、先ほど提起した問題をどのように解決すればよいのでしょうか?

方法を考えました。 3 つの連続したゼロで始まる単語が得られるまで、宇宙のすべての数字を 1 つずつ試してみてはどうでしょうか。

何千回も試行すると、最終的に正しい結果を生み出す数値にたどり着きます。

与えられた出力に対する入力を計算するのは非常に困難です。しかし同時に、入力と出力が対応していることを確認するのは非常に簡単です。覚えておいてください、与えられた数字に対して、機械は毎回同じ単語を吐き出します。

たとえば 72533 という数字を与えて、「この数字を機械に入力して、3 つのゼロで始まる単語が出力されるかどうかを確認してください」と尋ねた場合、このプロセスを完了するのはどれほど難しいと思いますか?

機械に数字を入れて、右側に何が出てくるか見るだけです。

このようなマシンの最も重要な特性は、出力が与えられた場合、入力を計算するのは非常に難しいが、入力と出力が与えられた場合、入力と出力が対応していることを確認するのは非常に簡単であるということです。

ページを暗号化するにはどうすればいいですか?

この魔法のマシンを使用してページを暗号化します。いつものように、仮説から始めましょう。

私があなたに 2 つの箱を与え、最初の箱に 20893 という数字が入っていると想像してください。そして私はあなたに尋ねます。「最初の箱の数字に足して機械に送ると、3 つのゼロで始まる単語になる数字を思いつきますか?」

これは私たちが以前に見たものと似ています。そのような数値を計算する唯一の方法は、宇宙全体で利用可能なすべての数値を試してみることだということが分かりました。

数千回の試行の後に、たとえば 21191 という数字に遭遇し、それを 20893 に加算して (つまり、21191 + 20893 = 42084) マシンに送信すると、要件を満たす単語が生成されます。

この場合、21191 という数字は 20893 のシールになります。20893 という内容のページがあるとします。このページを暗号化するには (つまり、誰かがその内容を変更できないようにするには)、このページに「21191」というシールを追加します。暗号化番号 (例: 21191) がページに印刷されると、ページは暗号化されます。

暗号番号は「作業証明」とも呼ばれ、その番号が計算に費やされた労力を証明することを意味します。

ページが変更されたかどうかを確認したい場合は、ページの内容にシール番号を追加して、それを魔法のマシンに送信するだけです。機械が 3 つのゼロで始まる単語を返す場合、ページの内容が変更されていないことが証明されます。結果が要件を満たさない場合、そのページの内容が損なわれて役に立たなくなるため、そのページを破棄することができます。

同様の暗号化メカニズムを使用して、すべてのページを暗号化し、独自のフォルダーに配置します。

Web トランザクションを含むページを暗号化するには、トランザクション リストに追加してマシンに入力すると、右側が 3 つのゼロで始まる単語になる数字を見つける必要があります。

注: ここでは「3 つのゼロで始まる単語」というフレーズのみを例として使用しています。ハッシュ関数がどのように機能するかを示しているからです。実際の計算原理はこれよりも複雑です。

その数字が計算されると、機械に時間と電気を費やした後、その数字がページに封印されます。誰かがページの内容を変更しようとした場合、誰でもシール番号を使用してページの整合性を検証できます。

ページを暗号化する方法がわかったので、ページ上の 10 番目のトランザクションの書き込みに戻ります。これら 10 件のトランザクションを書き込むと、スペースが多すぎます。

誰もがさらにトランザクションを書き込むためのページを使い果たすと、フォルダーに隠せるようにページを取得するために暗号化番号を計算し続けました。

ネットワーク内の全員が暗号化された数値を計算します。ネットワーク内で最初にそれを見つけた人が、それを他の全員に発表します。

暗号化された番号を受信すると、全員がそれが正当な出力を生成することを確認します。出力 合法であれば、全員が自分のページにこの番号のタグを付け、フォルダーに配置します。

しかし、公開された暗号化された数字によって生成された出力が合法ではないと誰かが言ったらどうなるでしょうか?このような状況は珍しいことではありません。次のような理由が考えられます。

  1. 彼はネットワークに投稿された取引を誤読した可能性がある

  2. 彼はネットワークに公開された取引を誤って書いた可能性がある

  3. 取引を行う際に欺いたり不正行為をしたり、ネットワーク内で自分や他人を優遇しようとしたりする可能性がある。

理由が何であれ、その人には 1 つの選択肢しかありません。自分のページを放棄し、他の人のページをコピーしてフォルダーに入れることです。ページをフォルダに配置しないと、それ以上のトランザクションを書き込むことができなくなり、ネットワークに参加できなくなります。

多数決で決定された暗号番号が真の暗号番号となります。

ブロックチェーンの仕組み

では、他の誰かが暗号の数字を計算して発表するとわかっていても、なぜ皆が暗号の数字を計算するのに一生懸命になるのでしょうか?ゆっくり座って通知を待ってみませんか?

ここでインセンティブが役立ちます。ブロックチェーンに参加しているすべての人が報酬を受け取る資格があります。暗号化された数字を最初に計算した人は、その努力に対してボーナス(つまり、消費された CPU パワーと電力)を受け取ります。

5 番がページの暗号化された番号を計算すれば、1 ドルなどのお金がどこからともなく現れると想像してみてください。つまり、5番の口座の残高は1ドル増加しますが、他の人の口座の残高は減少しません。

これがビットコインが存在する理由です。ブロックチェーン(分散型台帳)上で取引される最初の通貨です。人々がネットワーク上で作業を続ける意欲を維持するために、報酬としてビットコインが与えられます。

十分な数の人々がビットコインを所有すると、ビットコインの価値が上昇し、他の人々もビットコインを購入したいと思うようになります。これによりビットコインの価格がさらに上昇し、ビットコインを購入したい人が増え、ビットコインの価格が再び上昇します。

報酬は、ネットワーク上で作業を継続する動機を全員に与えます。

そして、全員がページを自分のフォルダーに受け取ったら、新しい空白のページを取り出し、このプロセスを繰り返します。

ページはトランザクションのブロック (ブロック) と考えることができ、フォルダーはページのチェーン (ブロックチェーン) と考えることができます。

これがブロックチェーンの仕組みです。

これ以外にも、小さなことが一つあります。

このフォルダーにはすでに 5 つのページがあり、すべてが暗号化番号で暗号化されていると想像してください。 2 ページ目に戻って、自分の利益のために取引を変更したらどうなるでしょうか?暗号化された番号を使用すれば、誰でも取引の不一致を検出できるようになりますよね?変更されたトランザクションの新しい暗号化番号を計算し、その番号をページに追加したらどうなるでしょうか?

誰かが戻ってページ (ブロック) と暗号化番号を変更するのを防ぐために、暗号化番号の計算方法に若干の変更が加えられています。

暗号化の改善

2 つのボックスを用意する目的を覚えておいてください。1 つのボックスには 20893 という数字が格納され、もう 1 つのボックスには計算用のスペースが確保されます。実際には、ブロックチェーンで暗号化された数字を計算するには、2 つのボックスだけでは不十分で、実際には 3 つのボックスがあります。2 つのボックスは事前に入力されたボックスであり、1 つのボックスは計算用です。

これら 3 つのボックスの内容をすべてマシンに送信すると、右側に出てくる答えが要件を満たしている必要があります。

1 つのボックスは取引リストを保存するために使用され、もう 1 つのボックスは封印番号を保存するために使用されていることはすでにわかっています。 3 番目のボックスには、マジック マシンからの出力の前のページが含まれています。

このちょっとしたトリックを使えば、各ページが前のページに依存していることを保証できます。したがって、誰かが履歴ページを変更したい場合、ブロックチェーンの一貫性を維持するために、すべてのページのコンテンツと暗号化番号を変更する必要があります。

最初に想定した 10 人のうちの 1 人がブロックチェーン (取引記録を含むページのフォルダー) の内容を不正に改変しようとした場合、複数のページを調整し、新しい暗号化番号を計算してこれらのページを暗号化する必要があります。暗号の数字を計算するのがいかに難しいかはわかっています。したがって、ネットワーク上の 1 人の不正な人が 9 人の正直な人に勝つことはできません。

不正な人物がページ上で不正行為を行おうとすると、ネットワーク内に別のチェーンが作成されますが、不正行為のチェーンが正直なチェーンに追いつくことは決してありません。1 人の努力とスピードでは、9 人の累計の努力とスピードに勝つことはできないからです。したがって、このメカニズムにより、ネットワーク内の最長のチェーンが最も正直なチェーンであることが保証されます。

不正行為をする人が 1 人ではなく 6 人いたらどうなるでしょうか?

この場合、合意は混乱をきたします。これは「51%攻撃」と呼ばれます。ネットワークの大多数が不正行為を行い、ネットワークの残りの部分を欺くと、プロトコルの目的は達成されません。

ブロックチェーンがクラッシュした場合、これが唯一の考えられる理由です。このシナリオが起こる可能性は低いですが、ブロックチェーン システムの弱点を認識しておく必要があります。ブロックチェーン システムは、人口の大多数が常に正直であるという前提に基づいて構築されています。

以上が「Old Miner」によるブロックチェーンの完全紹介です。わかりますか?ぜひメッセージを残して、あなたの「マイナー」体験を共有してください。


<<:  マウントゴックスのCEOは、コインチェックがハッキングされ5億3400万ドルが流出したことについてコメントした。

>>:  韓国税関は暗号通貨犯罪の撲滅に注力し、約6億ドル相当の違法取引を捜査している。

推薦する

BitOasis、中東5カ国にクレジットカードによるビットコイン購入サービスを開始

クレイジーコメント: BitOasis は中東でのビットコイン購入事業をさらに拡大し、サービス対象国...

仮想通貨課税の厳格な執行:米財務省が世界的な仮想通貨データ共有ルールを推進

外国メディアのロールコールが匿名の政府関係者の話として伝えたところによると、バイデン政権は民主党に対...

ランド研究所の最新報告書:仮想通貨は国家主権を損なう可能性がある

ランド研究所は12月に仮想通貨に関する興味深い理論を詳述した調査報告書を発表した。 PDF形式のこの...

仮想通貨取引プラットフォームが行う永久契約事業はカジノ開設罪に該当するのでしょうか?

導入:邵弁護士が近年取り扱った事件や、日々の業務で受けた多数の問い合わせを踏まえると、国内警察(特に...

ビットコインの価格は5万ドルを突破する前にアルトコインにとって有利になるかもしれない

原題:「ビットコインの価格は5万ドルに近づいているが、アルトコインの価格は下落している。なぜか?」出...

日本政府は2016年初頭にビットコイン規制法案を起草する予定

最近、金融庁(銀行、証券、取引所の監督を担当する日本の政府機関)は、仮想通貨交換業者やビットコインの...

ETH2.0テストネットワークOnyxが立ち上げられました。 Ethereum は実際の 2.0 からどれくらい離れているのでしょうか?

昨日、世界第2位のブロックチェーンプロジェクトであるイーサリアムは、ETH2.0テストネットワークの...

CoinとBityardは契約データの完全なドッキングを実現するために深い戦略的協力関係を結んだ

Coinの公式ニュースによると、北京時間5月15日、CoinはBityard契約取引のリアルタイム市...

イーサリアムのベルリンハードフォークが完了しました。ガス料金にどのような影響があるでしょうか?

クイックファクトベルリン ハードフォークにより、一部のオペコードのガス コストが変更されます。ガス料...

銀行なし:規制当局はすべてのステーブルコインに宣戦布告するのか?

ステーブルコインに宣戦布告?最近、暗号通貨に関するニュースでは、規制の施行と取り締まりの騒ぎが目立っ...

Uniswap創設者:現在のレートでは、Uniswapは年間35万ETHを破壊する可能性があります

Uniswapの創設者ヘイデン・アダムス氏は、EIP-1559のアップグレードがリリースされてから2...

PwC、銀行がビットコインの位置付けを再構築できるようVulcanデジタル資産サービスを開始

暗号通貨はブロックチェーンに関する議論を引き起こしましたが、分散型台帳への関心が高まるにつれて、暗号...

海外鉱山の台頭:米国は工場を一括建設、マレーシアは電力窃盗の楽園となる

テキスト |ラチェット、ピザ2020年を迎え、ビットコイン採掘業界における中国の支配的地位は課題に直...

採掘の落とし穴を避けるガイド: 電気を見つける

「年間率は控えめに言っても30%です。」 2011年からビットコインのマイニングを行っている筋金入り...

ブロックチェーンと生体認証技術の組み合わせにより、HYPRは300万ドルを調達

ブロックチェーン技術と生体認証セキュリティを結びつけることを目指すスタートアップ企業HYPRは、RT...