BTC
ETH
HTX
SOL
BNB
View Market
简中
繁中
English
日本語
한국어
ภาษาไทย
Tiếng Việt

どうすればブロックチェーンのパブリックチェーンをより早く立ち上げることができるでしょうか?

Winkrypto
特邀专栏作者
2018-10-15 08:50
この記事は約6568文字で、全文を読むには約10分かかります
アルゴリズムに関係なく、ブロック サイズとブロック間隔の間には相容れない矛盾があります。
AI要約
展開
アルゴリズムに関係なく、ブロック サイズとブロック間隔の間には相容れない矛盾があります。

編集者注: この記事は以下から引用しましたチェーンニュース ChainNews編集者注: この記事は以下から引用しました

チェーンニュース ChainNews

(ID:chainnewscom)、著者:Sinovation Ventures エグゼクティブディレクター、Wang Jiaping、Odaily が許可を得て出版。

2008 年 11 月に出版されたサトシ ナカモトの論文「ビットコイン: ピアツーピア電子キャッシュ システム」から数えて、ビットコインはまもなく誕生 10 周年を迎えようとしています。過去 10 年間で、ビットコインとその背後にあるブロックチェーン技術は繁栄し、分散型技術の名のもとに、オンラインのデジタル世界全体を変えようとする大きな勢いと野心を持っています。

しかし、野心は野心に属し、特にパブリック チェーンの分野で隆盛を極めるブロックチェーン テクノロジーには、まだ打開されていないボトルネックがあります。今日のデジタル世界の規模と量では、オンライン システムが存在しない場合でも、どのようなオンライン システムであっても、それを克服することはできません。大容量、高スループットのインフラストラクチャでは、インターネット レベルのアプリケーションでさえも実行できません。

これは世界的な問題であり、世界で最も賢明な学者や開発者がこの問題を解決しようとしています。私はマイクロソフトに長年勤務し、マイクロソフト研究所の担当研究員として分散システムの研究に長らく注力し、退社後はイノベーションワークスにて常務取締役としてブロックチェーン・人工知能投資担当を務めました。 。分散システムにおける長年の研究経験と、ブロックチェーン投資の分野で複数のパブリックチェーンプロジェクトを評価した経験から、完全な分散システムで高性能の設計を達成することは非常に難しいことを深く理解しています。 。

業界では、ブロックチェーンのパブリック チェーンのパフォーマンスのボトルネックと解決策について多くの議論が行われているようですが、その中には洞察に満ちており、多くの利益をもたらすものもありましたが、多くの誤った意見や、目的のためにでっち上げられた不確かな意見も数多くありました。議論を誤解させる危険を冒して、自分自身のプロジェクトを宣伝すること。業界の多くの一流の学者、開発者、投資家との綿密な意見交換の後、彼ら全員が私に私の意見を共有するよう勧めてくれました。よく考えた結果、このトピックに関する私の謙虚な意見のいくつかを記録することにしました。そうすることで、私の考えの一部を定着させることができると同時に、このトピックに関心を持つより多くの同僚といくつかの議論ができればと思っています。

副題パフォーマンスのボトルネックだけに注目して容量のボトルネックを無視しないでください最初に私の結論の 1 つについて話させてください。金融のようなアプリケーションが主流のアプリケーション シナリオである現在の状況では、

ブロックチェーン システムの最も重要なパフォーマンスのボトルネックは、ブロック データのブロードキャスト遅延によって引き起こされます「Chain of Blocks」、本質的にはインターネットの帯域幅と通信遅延によって制限され、スループット TPS が直接制限されます。場合のみ

システムでどのようなコンセンサス アルゴリズムが使用されていても、それがプルーフ オブ ワーク PoW、プルーフ オブ ステーク PoS、ビザンチン フォールト トレラント BFT、または委任されたプルーフ オブ ステーク DPoS であっても、次のブロックが発行される前に、前のブロックがネットワーク全体に存在することを確認する必要があります。一定の同期率があり、各ブロックが大きくなりすぎたり、ブロック周波数が高すぎたりすることがないよう制限されます。この問題に対する解決策はありませんここで言及されるブロックチェーン システムは、特に「ブロックチェーン」システムを指すことに注意してください。「Graph of Blocks」システムが最終的に単一のリンク リスト構造に収束できることを確認する

、このチェーンより上のブロックのみが確認されます。反例は次のとおりです。DAG構造IOTAなどのシステムを採用。データセンターの高速リンクをベースとしたEOSなど、物理ネットワークの帯域や遅延が無視できると仮定すると、

システムの 2 番目のボトルネックは、本の容量が限られていることです。、基本的に単一のフルノードのメモリ容量によって制限され、チェーン上で保持できるユーザー アドレスの数と DApp の数が直接制限されます。どのようなコンセンサス アルゴリズムが使用されているかに関係なく、いつでもどのユーザーでもトランザクションの検証/実行プロセスに関与できる限り、単一のフル ノードはネットワーク全体の各ユーザーと各 DApp の状態を常にメモリ内に保持する必要があります。トランザクションの場合 リアルタイム アクセスを確認します。ビットコインブロックチェーン、イーサリアム、EOSなどを含む、現在の主流のすべての「ブロックチェーン」システムにはこの問題があり、同様に、

この問題も解けない。 RocksDB などのマルチレベル キャッシュ データベース テクノロジを使用すると、この制限をわずかに改善できるため、アクティブ ユーザーのみがメモリによって制限され、ユーザー ベース全体はハードディスクの容量によって制限されます。しかし、これでは問題が根本的に解決されるわけではありません。

「容量」の問題は、スループットに比べてはるかに注目されていませんが、その理由は簡単で、スループットの欠点が解決されていないために、容量の問題が隠蔽されてきたからです。スループットが大幅に向上すると、すぐに容量の問題が現れることに注意してください。高スループットのシステムでは、ユーザー数が増加しないと、高いパフォーマンスをまったく実行できなくなる可能性があります。 。代表的な例はEOSです。

EOS が分散化機能を失うという犠牲を払ってスループットの問題を解決すると、すぐに容量の問題が顕著になりました。次に、EOS は本の容量のボトルネックを希少なリソースにパッケージ化し、それを EOS RAM 仮想通貨にトークン化しました。もちろんメモリだけでなくフルノードCPU単体でも容量ボトルネックとなるため、これもトークン化してEOS CPU仮想通貨となります。ただし、金融のようなアプリケーション シナリオでは、計算の複雑さは通常非常に低いため、メモリが主なボトルネックになります。コンセンサス アルゴリズムでは実際にパフォーマンスと容量のボトルネックを解決することはできません。型破りなコンセンサス アルゴリズムに基づいて「ブロックチェーン」システムのパフォーマンスを向上させようとしても、基本的にシステム パフォーマンスは大幅には向上しません。

。つまり、上記の 2 つのボトルネックを解決するには、コンセンサス アルゴリズムと暗号に関連する分散システムの設計に工夫が必要ですが、本質的な出発点はコンセンサス アルゴリズムや暗号ではありません。

副題

  • パフォーマンスのボトルネック: ブロックプロデューサーの動作

  • まず、ブロック生成ノードもフルノードであり、ネットワーク全体の確認されたブロックと未確認のトランザクションを受け入れてチェーンを構築し、台帳の最新の状態を常に維持し、新しいブロックを追加しようとする機会を捉えます。チェーンの端にあるブロック。どのコンセンサス アルゴリズムが使用されるかに関係なく、次の手順が実行されます。

  • 最初のステップでは、帳簿の最新の状態に従って、未確認取引セットからいくつかの確認済み法的取引を選択し、新しいブロックを構築します。

2番目のステップは、この新しいブロックのブロック生成権の競争または候補者に参加することですが、この段階では、帳簿のステータスが更新される、つまり他のノードが正常に更新されるため、中断される可能性が高くなります。生成されたブロックを作成し、最初のステップに戻ります。3 番目のステップは、ブロックを生成する権利を取得した後、新しいブロックをネットワーク全体にブロードキャストし、帳簿のステータスを更新し、最初のステップに戻ります。さまざまなコンセンサス アルゴリズム間の主な違いは、ブロックを生成する権利の競合または候補の第 2 ステップを完了する方法にあります。しかし

この矛盾により、各ブロックが比較的大きく、より多くのトランザクションを含めることができる場合、次のブロックが生成される前にブロックがネットワーク全体に完全に分散されることを保証するために、比較的長いブロック間隔が必要になります。

伝播が十分でない場合、PoW および PoS システムでは、より高いフォーク率と無効なブロックとして現れますが、BFT システムでは、より高い失敗率のブロックが 2/3 のデータを取得できないという形で現れます。同意チケット。

副題

プルーフ・オブ・ワークとプルーフ・オブ・ステークPoW では、ハッシュ ターゲットを設定することで、ハッシュ値が特定の値未満である必要があります。たとえば、256 ビットのハッシュ値を大きな整数として扱う必要があります。ハッシュ値は、新しいブロック データとナンス データに基づいて計算する必要があります。 Nonce に対応するハッシュ ターゲットを満たすノードを見つけると、ブロックを生成する権利が得られます。 Nonce はランダムな網羅的方法でしか見つけられないため、この競争はハッシュの計算能力を計算する競争に変わります。 Peercoin などの PoS は PoW の変形であり、Coin Age を消費してハッシュターゲットを増加させる仕組みを導入しており、ブロック生成力の競争の一部をデジタル通貨の保有時間と量で置き換えることができます。PoW メカニズムの最大の利点は、単純なアルゴリズムを使用して、完全に非パーミッションレスなプレミッションレスのブロック生成権のランダムな割り当てを実現することであり、競合するノード間の調整や通信の必要がなく、簡単にブロック生成権限を割り当てることができることであることがわかります。任意の数のブロック生成ノードをサポートし、優れた分散化特性を備えた競争力を備えています。まさにこれだからこそ、

このアルゴリズムにより、ブロック ブロードキャスト遅延とブロック間隔の間に矛盾が生じます。ブロックの生成間隔が短い場合、新しいブロックがネットワーク全体に完全にブロードキャストされる前に、別のマイナーが同じ高さで別の新しいブロックを生成します。これがいわゆるフォークです。この場合、最終的にブロックの 1 つが ophaned によって破棄されます。これが起こる確率は高すぎてはなりません。そうでない場合、元の 51% の計算能力攻撃ベンチマークである Selfish Mining が大幅に低下し、極端な場合には、フォークが安定した収束に達しない可能性さえあります。

ブロック ブロードキャスト遅延は、主にブロック サイズとネットワーク全体のノード間の帯域幅によって決まります。現在のインターネット環境では、90% 以上のノードにブロードキャストするのに約 10 秒かかります。したがって、ビットコインネットワークでは、ブロック間隔が10分程度であるため、ブロックフォークの確率は非常に低くなります。 2018 年上半期を通じて、分岐点は 2 つだけでした。イーサリアム ネットワークでは、ブロックがビットコインよりもはるかに小さい場合でも、約 15 秒のブロック間隔により、ブロック フォークの確率が約 10% に保たれます。なお、PoW のブロック生成間隔は統計的なものであり、実際にはブロック生成間隔には大小があり、統計的な期待値は 10 分です。これはネットワーク全体の計算能力の変動によって引き起こされるのではなく、ナンスを検索するプロセスがランダムな調査プロセスであるため、多くのマイニング プールが独自の幸運値曲線を与えています。

ビットコインネットワークの場合、ブロック間隔10分というのは、実は今日のインターネット環境ではかなりの制約になっていますが、これは10年前に提案された提案であり、ブロックサイズの拡張が可能であることを知っておく必要があります。シンプルなスケーリングソリューションですが、ブロック ブロードキャスト遅延には根本的な矛盾があるため、この改善はある程度の効果しかありません。また、言及する価値がありますGHOSTプロトコル

。このプロトコルは、フォーク時にどのフォークが受け入れられるかを決定するための新しい基準を提供します。これは、サトシ・ナカモトによって最初に提案された最長連鎖原理を、最も多くの計算能力を含むサブツリーに変更します。フォークの確率が非常に低い場合、2 つの基準は完全に同等ですが、ETH の 10% フォークなど確率が比較的高い場合、GHOST プロトコルはセルフ マイニングを回避し、セキュリティを向上させることができます。しかしGHOST プロトコルが採用されるかどうかに関係なく、パブリック チェーンのパフォーマンスには実質的に役立ちません。PoW の計算能力はブロックチェーン システムのパフォーマンスとは何の関係もなく、ハッシュ アルゴリズムを高速化するソフトウェアやハードウェアはブロックチェーン システムの単位時間あたりのスループットを向上させません。

加えて、これが、ビットコイン ブロックチェーンのネットワーク全体のハッシュ計算能力が何兆倍も増加しているにもかかわらず、そのスループットが常に約 7 TPS である理由です。加えて、マイニングに投資されるエネルギーの総量は各鉱山の設立時に決定されるため、よりエネルギー効率の高いマイニング技術や機器が登場すると、コンピューティング能力をめぐる競争により、すべてのマイナーが新しい技術を適用することになり、最終的には世界の採掘コストが上昇します。マイニング業界: ネットワークのマイニングの難易度は、それ以外の何ものでもありません。

したがって、巨視的に見た実際の総エネルギー消費量は、通貨価格、電力価格、デジタル通貨への投資信頼感のみに関係しており、マイニング効率とは何の関係もありません。

副題

ビザンチンフォールトトレラントBFTビザンチン フォールト トレラント コンセンサス アルゴリズムは、IP アドレスではなく台帳上のデジタル通貨アドレスに基づいて、ランダム アルゴリズムを使用して各ブロックのノードを決定します。ブロック候補に参加しているすべてのノードが競合する必要はありません。新しいブロックは、委員会のメンバー全員、検証者グループによって検証および署名され、投票された後、ネットワーク全体にブロードキャストされ、次のブロック生成プロセスが開始されます。

PoW とは異なり、BFT ブロック候補は協調的なプロセスであり、少なくとも O(n^2) の通信複雑さが伴いますが、PoW ではブロック競合のプロセスに通信コストがかかりません。 BFT ベースのコラボレーション プロセスではフォークが発生せず、希少なリソースのコンピューティング パワーやコイン エイジを消費する必要はありませんが、このコラボレーション プロセスには大量のデータ通信が含まれるため、このプロセスを候補、検証、署名することはできません。ネットワーク全体で処理を行うことはできません。これが、BFT のようなアルゴリズムには必ず委員会の構築プロセスが含まれ、検証署名は狭い範囲でのみ発生し、残りの人々はそれを信頼するだけである理由です。

Algorand などの最近の BFT ベースのパブリック チェーン プロジェクトの多くは、この委員会を安全かつ公平に選択する方法について多くの作業を行ってきましたが、これらの作業はシステム パフォーマンスの向上には直接関係していません。BFT アルゴリズムの投票は通常、シビル攻撃を回避するために重み付けされます。そして、この重みは主に参加者の権利と利益に関連しており、これはPoSの精神に似ており、現在では多くの人がBFTのこの種の投票アルゴリズムをPoSアルゴリズムと呼んでいます。実際、BFT のようなコンセンサス アルゴリズムと、最初に提案された PoS アルゴリズム (Peercoin など) は根本的に異なるメカニズムです。

さまざまな BFT アルゴリズムのブロック プロデューサーと委員会メンバーを選択するプロセスは、システムのパフォーマンスとはほとんど関係がないことを上で述べました。 PoW/PoS と同様に、そのスループット パフォーマンスも各ブロックのサイズとブロック生成のサイクルに依存します。 BFT システムでは、各ブロックを比較的大きくできるようにする場合、比較的長い期間のブロック生成が必要となるため、新しく生成されたブロックとその委員会の署名データが完全に伝播される可能性が高くなります。委員会内で。理論的には、委員会の規模はネットワーク全体の規模よりもはるかに小さく、BFT アルゴリズムのブロードキャスト遅延は同じ規模の PoW/PoS ネットワークの遅延よりも小さくなります。実際、これは真実ですが、ゴシップ プロトコルに基づくブロードキャスト遅延は、線形ではなくネットワーク サイズの対数に比例するため、ブロードキャスト遅延はそれほど小さくなりません。さらに、BFT アルゴリズムは、定期的なグローバル同期などの追加のセキュリティ対策に依存しているため、実際には、

BFT のようなアルゴリズムには、PoW/PoS システムに比べてパフォーマンス上の利点があまりありません。

副題

どのアルゴリズムを使用してもパフォーマンスが大幅に改善されないただし、ゴシップ プロトコルに基づいて完全な伝播を達成するまでの時間は、伝播されるデータ量と線形関係があり、伝播されるノード数と対数関係があるため、BFT は伝播遅延に関してあまり利点がありません。

その結果、どのアルゴリズムを使用しても、ブロック サイズとブロック間隔の間には相容れない矛盾が存在し、パフォーマンスを大幅に向上させることはできません。

副題容量のボトルネック: ブロックを生成しないフルノードは何をしているのでしょうか?シングルチェーンの「チェーン オブ ブロック」システムには、およそ 3 種類のノードがあります。

ブロックを生成するフル ノード、ブロックを生成しないフル ノード、および軽量ノード。

ブロックが生成されるかどうかに関係なく, フルノードは新しいブロックと未確認のトランザクションを検証して中継します. ここでのブロードキャスト作業はメイントラフィックとディスク I/O 負荷を占有します. TPS の場合, イーサリアムのゲスは 12 個しかありません、このトラフィックは約 1.5Mbps です。新しいブロックと未確認のトランザクションの検証をリアルタイムで完了するには、すべてのユーザー アカウント ブックとすべてのスマート コントラクトの状態がメモリ上に存在する必要があり、これがメイン メモリのオーバーヘッドを占有し、現在の規模のイーサリアムではほぼ 4GB のメモリを占有することになります。フルノードはすべてこのような負荷に耐える必要があるため、PoW マイニング ノードや PoS 検証ノードを生成したい場合は、追加の作業が必要になります。これらの負荷の価格は、安全で完全な分散化のために交換されます。フル ノードは事前に他のノードを信頼する必要はなく、フル ノードは他のフル ノードを欺く機能を持ちません。通常のフル ノードの価値は、次の 2 つの側面に反映されます。

Relay は法的データをブロードキャストし、ユーザーまたは軽量ノードがクエリできるようにネットワーク アカウント ブック全体の最新の状態を維持します。たとえば、モバイルウォレットなどの軽量ノードは、ブロードキャストブロックデータや未確認トランザクションの検証や中継を行わず、あらかじめ設定された1つ以上のフルノードに依存し信頼し、これらのフルノードを通じて特定のユーザーのステータスを取得します。アカウント残高などを確認し、送金トランザクションを開始します。軽量ノード自体には情報の信頼性を検証する機能はなく、ブロックチェーンの世界における端末のようなものです。シングルチェーン「Chain of Blocks」システムの場合、システムのスループットTPSを100倍にすると150Mbpsの通信量が必要となり、ユーザー規模を100倍に拡大すると400GBのメモリが必要となります。したがって、基本的に、インターネット上のほとんどの通常のサーバーは、完全なノードをスムーズに展開できません。フルノードを専門のマイニングファームのみが操作でき、一般人が独自にフルノードをデプロイできない場合、システム全体が複数の場所にデプロイされた集中型のクラウドサービスに変質し、攻撃や禁止に対して脆弱になります。

したがって、これら 2 つのボトルネックは、ブロック生成ノードだけでなく、通常のフルノードでも解決する必要があります。

副題考えを変えて新しい活路を見つけてみてはいかがでしょうか

パフォーマンスのボトルネックと容量のボトルネックについてはすでに述べましたが、現在のシングルチェーン「ブロックチェーン」システムでは、特に容量のボトルネックを大幅に改善するのは困難です。これが、いわゆるブロックチェーン不可能な三角形の起源です。コンピューター技術開発の歴史を通じて、大規模な成功を収めた大容量かつ高スループットの設計パラダイムは 1 つだけです。

スケールアウト スケールアウト。たとえば、GPU は共通の性能を持つ数千個のコアを並列動作させて、CPU の演算性能を数桁上回る性能向上を実現します。また、GPU が依存する半導体テクノロジーは CPU と根本的には変わりません。チップ。また、今日のオンライン クラウド サービス システムでは、通常の性能を備えたサーバーを数千台、場合によっては数万台使用して並列動作させ、大容量、高スループットのオンライン サービスをサポートしています。

ここで私は大胆に想像してみるのもいいかもしれません。

おそらく、大容量で高スループットのブロックチェーン システムも同様のソリューションとなるでしょう。つまり、数千の同種のシングルチェーン インスタンスを並行して連携させ、ネットワーク全体のワークロードを分割して、全体的に大容量と高スループットを実現します。

Odaily公式コミュニティへの参加を歓迎します
購読グループ
https://t.me/Odaily_News
チャットグループ
https://t.me/Odaily_CryptoPunk
公式アカウント
https://twitter.com/OdailyChina
チャットグループ
https://t.me/Odaily_CryptoPunk