banner
leaf

leaf

It is better to manage the army than to manage the people. And the enemy.
follow
substack
tg_channel

ビットコイン:ピアツーピアの電子現金システム

ビットコイン:ピアツーピアの電子現金システム 8btc.com | 仮想経済に注目

独占スポンサー:Bitcoinblogger.com 著者のメール:【[email protected]要約】:本稿では、完全に P2P 技術を用いて実現された電子現金システムを提案します。このシステムは、オンライン決済を一方から直接開始し、他方に支払うことができ、金融機関を必要としません。中本聡は、タイムスタンプ、プルーフ・オブ・ワークメカニズム、非対称暗号、UTXO などの技術を集大成し、ビットコインブロックチェーンを創造しました。

私たちはまた、ビットコイン技術における 3 つの主要な問題を学びました。それは次の通りです:

  1. スクリプト言語が複雑すぎて、開発が難しい;
  2. エコシステムの基盤が弱く、十分な参加者が不足している;
  3. スクリプト言語が「チューリング完全」基準に合致しておらず、さらなる用途が制限されている。

最後に、私たちは新しい仮想通貨の生成について学びました。ビットコインアルゴリズムの効率の問題から、ライトコインブロックチェーンが誕生しました。また、ビットコインブロックチェーンの拡張性不足などの問題を特定的に解決するために、市場はイーサリアムブロックチェーン技術を生み出しました。

image

デジタル署名(デジタル署名)部分はこの問題を部分的に解決しましたが、もしあなたが依然として重複支払い(ダブルスペンド)を防ぐために第三者のサポートを必要とするなら、そのようなシステムは価値を失います。私たち(we)は、現金システムがピア環境で操作でき、ダブルスペンド問題を防ぐための解決策を提案します。(ハッシュ)はすべてのトランザクションにタイムスタンプ(タイムスタンプ)を追加し、それらを拡張されたランダムハッシュベースのプルーフ・オブ・ワークに統合します。プルーフ・オブ・ワークチェーンはトランザクション記録として機能し、すべてのプルーフ・オブ・ワークを再実行しない限り、最長のチェーンは変更できません。最長のチェーンは観測されたイベントのシーケンスとして機能し、最大の CPU 計算能力プールからのものであると見なされます。大多数の CPU 計算能力がネットワーク全体への攻撃で協力する意図がない限り、誠実なノードは攻撃者を超える最長のチェーンを生成します。システム自体はほとんどインフラを必要とせず、情報は可能な限りネットワーク全体に広がり、ネットワークに再参加し、ノードがオフラインの間に発生したトランザクションの証明として最長のプルーフ・オブ・ワークチェーンを採用します。

  1. ほぼすべてのオンライン取引は、信頼できる第三者として金融機関に依存しています。これらのシステムはほとんどの場合うまく機能しますが、依然として信用に基づくモデル(信頼モデル)に固有の制約を受けています。人々は完全に不可逆的な取引を実現することはできません。なぜなら、金融機関は避けられずに紛争を調整するために介入するからです。金融仲介の存在は取引コストを増加させ、実際の最低取引規模と日常の小額決済取引を制限し、潜在的な損失は多くの商品やサービスが返品できないことに起因します。不可逆的な支払い手段がない場合、返金の可能性により、インターネット商取引は大きな制約を受けます。

取引の両者の信頼が必要であり、さらに、商人も顧客に対して慎重でなければならず、顧客に完全に不必要な個人情報を要求します。実際の商業実務において、一定の割合の詐欺顧客も避けられないと見なされ、関連する損失は販売費用として処理されます。実物の現金の場合、現在のところ第三者信用仲介機関が存在しないため、信用に基づくのではなく、暗号に基づく電子決済システムが非常に必要です。これにより、任意の 2 者が第三者仲介の参加なしに直接支払いに同意することができます。購入者を保護したい人々にとって、このような環境で通常の第三者保証メカニズムを構築することは容易で楽しいです。本稿では、ダブルスペンド問題を解決するために、電子取引証明書を時系列で生成および記録するためのピア分散型タイムスタンプサーバーを提案します。誠実なノードが制御する計算能力の合計が、協力的な攻撃者の計算能力の合計を超える限り、システムの安全性は確保されます。2. 取引私たちは電子コインを次のようなデジタル署名の列として定義します:各所有者は、前の取引と次の所有者の公開鍵に対してランダムハッシュデジタル署名を署名し、この署名を電子通貨の末尾に追加して、電子通貨を次の所有者に送信します。受取人は署名を検証することでチェーンの所有者を確認できます。

image

このプロセスの問題は、受取人が以前の所有者が電子通貨をダブルスペンドしたかどうかを確認するのが難しいことです。通常の解決策は、ダブルスペンドを防ぐために、各取引を検証するために信頼できる第三者機関や造幣局のような機関を導入することです。各取引の終了時に、電子通貨は造幣局によって回収され、その会社は新しい電子通貨を発行します。しかし、この解決策の問題は、全体の通貨システムの運命が造幣局を運営する会社に完全に依存していることです。なぜなら、各取引は造幣局によって確認されなければならず、受取人が以前の所有者が以前の取引に署名していないことを確認する方法が必要だからです。これを実現するために、私たちが本当に注目すべきは、この取引の前に発生した取引であり、この取引の後にダブルスペンドの試みがあるかどうかではありません。取引が存在しないことを確認する唯一の方法は、すべての以前の取引を知ることです。Mint モデルでは、造幣局はすべての取引を知っており、取引が完了する順序を決定します。もしあなたが第三者仲介を電子システムから排除したいのであれば、取引情報は公に発表されるべきです。1. 私たちはシステム内のすべての参加者を必要とします。唯一の識別可能な歴史的取引シーケンスが存在します。受取人は、取引中に大多数のノードが取引が初めて発生したことに同意していることを確認する必要があります。3. タイムスタンプサーバー解決策は「タイムスタンプサーバー」から始まります。タイムスタンプサーバーは、ランダムハッシュを実行することによってデータのセットをブロック形式でタイムスタンプし、そのランダムハッシュを放送します。ニュースや Usenet2345 に投稿するように。明らかに、タイムスタンプは特定のデータが特定の時間に存在しなければならないことを証明できます。なぜなら、対応するランダムハッシュ値は、その時間に存在する場合にのみ取得できるからです。各タイムスタンプは、そのランダムハッシュ値に以前のタイムスタンプを含めるべきであり、各後続のタイムスタンプは前のタイムスタンプを強化します。これにより、チェーンが形成されます。

1 W Dai、外部の助けなしにお金を互いに支払い、契約を実行するための一連の追跡不可能なデジタルペイメントの提案、「B 貨幣」、http://www.weidai.com/bmoney.txt2 H. Massias、X. S. アビラ、J.-J. クイスクアテール、「最小の信頼要件を持つ安全なタイムスタンプサービスの設計」、比荷盧情報理論第 20 回シンポジウム、1999 年 5 月。3 S. Haber、W. S. Stornetta、「デジタル文書にタイムスタンプを付ける方法」、暗号学雑誌、第 3 巻、第 2 号、第 99-111 ページ。1991 年 4 月、D. Bayer、S. Haber、W. S. Stornetta、「デジタルタイムスタンプの効率と信頼性を向上させる」、および信頼性)通信、安全、コンピュータ科学における方法の第 II 巻:329-334 ページ、1993 年。5 S. Haber、W.S. Stornetta、「ビット列の安全な名前」、第 4 回 ACM コンピュータおよび通信セキュリティ会議論文集、第 28 - 35 ページ、1997 年 4 月。

image

  1. プルーフ・オブ・ワークプルーフ・オブ・ワークは、ピアベースで分散型のタイムスタンプサーバーのセットを構築するために、単に新聞やワールドワイドウェブのように機能するだけでは不十分です。(アダム・バック)によって提案されたハッシュキャッシュ(Hashcash)6. プルーフ・オブ・ワークメカニズムは、ランダムハッシュ操作を実行する際に特定の値をスキャンすることを含みます。例えば、SHA-256 では、ランダムハッシュ値は 1 つ以上のゼロで始まります。ゼロの数が増えるにつれて、解を見つけるために必要な作業量は指数的に増加しますが、結果を検証するためには 1 回のランダムハッシュ操作だけが必要です。私たちはブロックにランダム数(Nonce)を追加し、このランダム数は与えられたブロックのランダムハッシュ値が必要なゼロの数を出現させる必要があります。私たちはそのランダム数を見つけるまで繰り返し試行します。こうして、私たちはプルーフ・オブ・ワークメカニズムを構築しました。CPU が消費する作業量がプルーフ・オブ・ワークメカニズムを満たす限り、等価の作業が再度実行されない限り、そのブロック内の情報は変更できず、後続のブロックがそのブロックにリンクされているため、そのブロック内の情報を変更するには、すべての後続のブロックを再実行する必要があります。

image

同時に、プルーフ・オブ・ワークメカニズムは、集団投票において誰が多数であるかの問題も解決します。もし多数決の方法が IP アドレスに基づいている場合、1 つの IP アドレスが 1 票となります。したがって、大量の IP アドレスを割り当てる権限を持つ者がいる場合、マシンのプルーフ・オブ・ワークメカニズムは実質的に 1CPU1 票となります。「多数」の決定は最長のチェーンとして表されます。なぜなら、最長のチェーンは最も多くの作業を含んでいるからです。もし大多数の CPU が誠実なノードによって制御されているなら、誠実なチェーンはできるだけ早く拡張され、他の競合チェーンを超えます。もし攻撃者が既存のブロックを変更したい場合、そのブロックの作業負荷とそのブロック以降のすべてのブロックの作業負荷を再実行しなければならず、最終的には誠実なノードを追い越さなければなりません。後で示しますが、速度の遅い攻撃者が後続のブロックを追い越そうとすると、成功の確率は指数的に低下します。もう一つの問題は、ハードウェアの計算速度が急速に増加していることと、ノードがネットワークに参加する程度が変動していることです。この問題を解決するために、プルーフ・オブ・ワークの難易度は移動平均目標を使用して決定されます。つまり、難易度ポイントは、毎時予定された平均速度でブロックを生成することです。もしブロックがあまりにも早く生成されると、難易度が増加します。5. ネットワークの運用ネットワーク:

  1. 新しいトランザクションがネットワーク全体に放送されます;

  2. 各ノードは受信したトランザクション情報をブロックに分割します;

  3. 各ノードは自分のブロック内で十分な難易度のプルーフ・オブ・ワークを見つけようとします;

  4. ノードがプルーフ・オブ・ワークを発見した場合、それをネットワーク全体に放送します。

  5. ブロック内のすべてのトランザクションが有効であり、ブロックが有効である前に存在しない場合にのみ、他のノードは同意します;

  6. 他のノードはブロックを受け入れることを示し、受け入れを示す方法はブロックの終わりに続き、新しいブロックが追加されてチェーンを拡張し、受け入れられたブロックのランダムハッシュ値は新しいブロックのランダムハッシュ値の前にあると見なされます。ノードは常に最長のチェーンを正しいチェーンと見なし、それを作業し続けて延長します。もし 2 つのノードが同時に異なるバージョンの新しいブロックを放送すると、他のノードは異なる時間にブロックを受信します。この場合、彼らは最初に受信したブロックで作業しますが、最長のチェーンになる可能性がある別のチェーンも保持します。引き分けは次のプルーフ・オブ・ワークが見つかるまで解消され、どちらかのチェーンが長いことが判明します。次に、チェーンの他のブランチで作業しているノードは側を切り替え、長いチェーンで作業を開始します。新しいトランザクションはすべてのノードに到達する必要はなく、十分なノードに到達すればよいです。ブロックの放送は、破棄されたメッセージに対して耐障害性があります。

もしノードが特定のブロックを受信しなかった場合、そのノードはブロックが欠落していることに気づき、自分でブロックをダウンロードするリクエストを行うことができます。6. 刺激合意は、各ブロックの最初のトランザクションが専門的であり、そのトランザクションはブロックの作成者によって生成されるトランザクションを生成します。これにより、ノードがネットワークをサポートし、中央集権的な権限なしでお金を発行するインセンティブが増加します。この発明は、一定量の新しいお金が継続的に追加される条件の下で、電子マネーを流通分野に分配する方法を提供します。これは、資源が金を採掘し、流通に注入するのとほぼ同じ方法です。CPU 時間と電力消費が消費されるリソースです。もう一つのインセンティブの源は、トランザクション手数料であり、トランザクションの出力が入力よりも少ない場合です。その差額がトランザクション手数料であり、そのブロックのインセンティブに追加されます。流通に入ると、インセンティブメカニズムは徐々にトランザクションコストに完全に依存するように変換でき、通貨システムはインフレから解放されることができます。インセンティブシステムは、ノードが誠実であり続けることを奨励するのにも役立ちます。もし貪欲な攻撃者がすべての誠実なノードを動員できる場合、より多くの CPU 計算能力を加算することができますが、彼は選択に直面します:誠実な作業に使用するか、新しい電子マネーを生成するか、彼はそのルールに従って誠実に働く方がより利益を得ることができると見つけるでしょう。なぜなら、そのルールは彼により多くの電子マネーを持つことを許可するからです。システムを破壊して自分の富を危険にさらすのではなく。7. ハードディスクスペースの回収最近のトランザクションが十分なブロックに含まれている場合、そのトランザクションの前のデータは破棄してハードディスクスペースを回収できます。また、ブロックのランダムハッシュ値が破損しないことを保証するために、トランザクション情報がランダムにハッシュされるとき、それはメルクルツリー 7 として構築され、ルートのみがブロックのランダムハッシュ値に含まれます。古いブロックは、ツリーの枝をスタブすることによって圧縮できます。内部のランダムハッシュ値は保存する必要はありません。

7 R.C. メルクル、「公開鍵暗号システムのプロトコル」、1980 年セキュリティおよびプライバシーシンポジウムの議事録、IEEE コンピュータソサエティ、122-133 ページ、1980 年 4 月。S. ハーバー、W.S. ストルネッタ、「ビット列の安全な名前」、第 4 回 ACM コンピュータおよび通信セキュリティ会議の議事録、28-35 ページ、1997 年 4 月。H. マシアス、X.S. アビラ、J.-J. クイスクアテール、「最小の信頼要件を持つ安全なタイムスタンプサービスの設計」、比荷盧情報理論第 20 回シンポジウム、1999 年 5 月。7 R.C. メルクル、「公開鍵暗号システムのプロトコル」、1980 年セキュリティおよびプライバシーシンポジウムの議事録、IEEE コンピュータソサエティ、122-133 ページ、1980 年 4 月。S. ハーバー、W.S. ストルネッタ、「ビット列の安全な名前」、第 4 回 ACM コンピュータおよび通信セキュリティ会議の議事録、28-35 ページ、1997 年 4 月。H. マシアス、X.S. アビラ、J.-J. クイスクアテール、「最小の信頼要件を持つ安全なタイムスタンプサービスの設計」、比荷盧情報理論第 20 回シンポジウム、1999 年 5 月。

image

トランザクション情報のないブロックヘッダー ブロックヘッダーのサイズはわずか 80 バイトです。ブロック生成率を 10 分ごとに設定すると、年間で 4.2MB のデータビットが生成されます。(80 バイト * 6 * 24 * 365 = 4.2MB)。2008 年には、PC システムの典型的なメモリ容量は 2GB であり、ムーアの法則は、すべてのブロックヘッダーをメモリに保存することは問題ではないと予測しました。8. 簡略化された支払い確認 ユーザーは、最長のプルーフ・オブ・ワークチェーンのブロックヘッダーのコピーを保持する必要があり、ネットワークに確認されるまで要求し続けることができます。ノードがトランザクションの有効性を確認することは不可能でしたが、チェーンのどこかを遡ることで、ノードがそれを受け入れたことを確認でき、そのブロックがそれに追加されたことは、ネットワークがそれを受け入れたさらなる証拠となります。

image

この場合、誠実なノードがネットワークを制御している限り、検証メカニズムは信頼できますが、ネットワーク全体が計算能力の優位性を持つ攻撃者の攻撃を受けると、より脆弱になります。なぜなら、ネットワークノードは自分でトランザクションの有効性を確認できるからです。攻撃者が計算能力の優位性を維持できる限り、簡略化されたメカニズムは攻撃者によって偽造されたトランザクション詐欺に利用される可能性があります。一つの可能な戦略は、無効なブロックを発見したら警告を送信し、警告を受け取ったユーザーは直ちに問題のあるブロックまたはトランザクションの完全な情報をダウンロードし始めることです。これにより、不一致を判断できます。毎日大量の資金が出入りするビジネスでは、より大きな独立した完全性と検証の迅速性を維持するために、自分の完全なノードを運営することを望むかもしれません。

image

  1. 価値の統合と分割(マージとスプリット)電子通貨を個別に処理することは可能ですが、各電子通貨のために取引を開始するのは不便です。価値を簡単に統合および分割できるように、取引は複数の入力と出力を統合するように設計されています。一般的に、1 つの入力は前のトランザクションの大きな値から構成されるか、または並行入力は複数の小さな値の前のトランザクションから構成されます。しかし、出力は最大で 2 つです:1 つは支払い用、もう 1 つはお釣り用(あれば)。注意すべきは、1 つのトランザクションが複数の以前のトランザクションに依存している場合でも、各以前のトランザクションが複数のトランザクションに依存している場合でも、これは問題ではありません。なぜなら、このメカニズムはすべての以前のトランザクションの履歴を拡張する必要がないからです。

  2. プライバシー

image

従来の造幣局モデルは、取引参加者に一定のプライバシーを提供します。なぜなら、信頼できる第三者から取引情報を取得しようとする試みが厳しく制限されるからです。しかし、ネットワーク全体に取引情報を放送することは、この方法を無効にします。しかし、プライバシーは依然として保護できます:公開鍵の匿名性を保持することで、一般の人々は誰かが別の人に一定の金額を発行したことを知っていますが、特定の人と取引を結びつけるのは難しいのです。つまり、一般の人々はこれらの人々が誰であるかを特定するのが難しいのです。これは、証券取引所が公開する情報のように、各株式の売却時刻と数量が記録され、照会可能です。しかし、取引の両者の身元は公開されていません。追加の予防策として、ユーザーは各取引のために新しいアドレスを生成して、取引が共通の所有者に追跡されないようにすることができます。しかし、並行入力のため、ある程度の追跡可能性は避けられません。なぜなら、並行入力は通貨が同じ所有者に属することを意味するからです。リスクは、誰かの公開鍵が彼に属することが特定された場合、多くの他の取引がその人に追跡される可能性があることです。

  1. 計算仮定次の状況を考えます:攻撃者が誠実なノードがチェーンを作成するよりも速い速度で代替ブロックチェーンを作成しようとしています。たとえそうであっても、システムは攻撃者の意のままにはなりません。価値を無から創造したり、攻撃者に属さないお金を略奪したりすることはできません。なぜなら、ノードは無効なトランザクションを受け入れず、誠実なノードは無効な情報を含むブロックを決して受け入れないからです。攻撃者ができることは、せいぜい自分の取引情報を変更し、他の人に支払ったお金を取り戻そうとすることです。誠実なチェーンと攻撃者のチェーンの競争は、二項ランダムウォークとして説明できます。成功したイベントは、誠実なチェーンが 1 つのブロックを延長し、+1 をリードすることと定義され、失敗したイベントは攻撃者のチェーンが成功することです。

攻撃者がギャップを埋める確率は、ギャンブラーの破産問題として近似できます。無限のオーバードラフト信用を持つギャンブラーが、ギャップを埋めるために無限回の賭けを試みると仮定します。攻撃者が誠実なチェーンを追い越す確率を計算できます。次のように定義されます:=𝑝誠実なノードが次のノードを生成する確率𝑞= 攻撃者が次のノードを生成する確率𝑞𝑧= 攻撃者が z 個のブロックのギャップを最終的に埋める確率

image

もし支払者が迅速に成功するのに十分な運がなければ、彼の成功の機会は時間が経つにつれてますます小さくなります。受取人が支払者が取引を変更しにくくするためにどれだけ待たなければならないかを考えてみましょう。支払者が支払い攻撃者であり、受取人に彼がしばらくの間支払ったと信じさせたいと仮定します。次に、彼はすぐに支払いを自分に返します。受取人はその時点でこれを発見しますが、手遅れです。受取人は新しい鍵ペアを生成し、非常に短い時間内に公開鍵を支払者に送信します。これにより、次の状況を防ぎます:支払者が事前にブロックチェーンを準備し、そのブロックを実行し続け、運が彼のブロックチェーンを誠実なチェーンを超えさせるまで。そうすると、取引が発生した瞬間、攻撃者は取引の代替バージョンを含む平行チェーンを秘密裏に準備します。受取人はその後、取引が最初のブロックに現れるのを待ち、次に z 個のブロックが続くのを待ちます。この時点で、彼は攻撃者が何ブロック進んでいるかをまだ知らないが、誠実なブロックが 1 つのブロックを生成するのに平均的な期待時間がかかると仮定します。攻撃者の潜在的な進行はポアソン分布であり、期待値は

image

この場合、攻撃者が追いつく確率を計算するために、攻撃者がすでに進行したブロック数のポアソン分布の確率密度を、攻撃者がその数に追いつく確率で掛け算します。

image

無限級数の合計を避けるために、次の形式に簡略化します:

image

次の C コードを記述します:

#包括

ダブル攻撃者成功確率(ダブル q、int z)

image

sum -= ポアソン *(1 - 冪(q /p、z-k));} 戻り値合計;}

この基盤の上に、次の確率結果を得ることができ、確率は z の値に対して指数的に減少することがわかります。

image

image

  1. 結論

私たちはここで、信用仲介を必要としない電子決済システムを提案します。まず、従来の電子通貨の電子署名原理について議論します。このシステムは所有権に対する強力な制御を提供しますが、ダブルスペンドを防ぐには不十分です。この問題を解決するために、

本稿では、取引の公開情報を記録するプルーフ・オブ・ワークメカニズムを持つ P2P ネットワークを提案します。誠実なノードが大部分の CPU 計算能力を制御できる限り、攻撃者が取引記録を変更することは困難です。ネットワークの堅牢性は、その構造がシンプルであり、ノード間の大部分の作業が相互に独立しており、ほとんど協力を必要とせず、各ノードが自分自身を識別する必要がなく、取引情報の流れの経路に要求がなく、できるだけ広がるだけでよく、ノードはいつでもネットワークを離れることができ、離れている間にプルーフ・オブ・ワークチェーンを補充するだけでネットワークに再参加するのが非常に簡単です。ノードはその CPU 計算能力を通じて有効なブロックを確認するために投票し、彼らは確認を示すために有効なブロックチェーンを拡張し、無効なブロックの後のブロックを拡張することを拒否します。

このフレームワークは、P2P 電子通貨システムに必要なすべてのルールとインセンティブを含んでいます。

読み込み中...
文章は、創作者によって署名され、ブロックチェーンに安全に保存されています。