「データの入手可能性」と「データの入手可能性」とは、ブロックチェーン拡大案のいくつかの問題を指します。具体的には、新しいブロックが作成されたとき、ノードはどのようにしてブロック内のすべてのデータがネットワーク上に公開されているかを確認するのですか?困難な点は、ブロックの生産者がブロックの中のすべてのデータを公表していないと、そのブロックの中に悪意のある取引が隠されているかどうかを発見できないことです。
本文では、データの入手可能性の重要性と関連解決策の重要性を深く検討します。
ブロックチェーンノードはどのように動作しますか?ブロックチェーン上の各ブロックは両方の部分から構成されています。
ブロックヘッダ、すなわちブロックのメタデータは、ブロック内容に関する基本情報から構成されています。取引のメルケル根を含みます。
取引データ、すなわちブロックの主要構成部分は、実際の取引データから構成される。ブロックチェーンネットワークには主に2種類のノードがあります。
全ノード(完全検証ノードともいいます。)このようなノードはブロックチェーン内の各トランザクションをダウンロードし、その有効性を検証する。これは大量のリソースと数百GBのディスク空間を消費する必要があるが、これらのノードの安全性は最も高い。無効な取引を含むブロックは受け入れられないからである。トレイ.軽クライアント。あなたのコンピュータがノード全体を実行するために十分なリソースを持っていないなら、ライトクライアントを実行することができます。軽クライアントは、任意の取引をダウンロードまたは検証する必要はありません。これらはブロックヘッダのみをダウンロードし、ブロックに含まれる取引が有効であると認定します。従って、軽クライアントのセキュリティは全ノードより低い。
幸運なことに、軽いクライアントにブロック内のすべての取引が有効かどうかを間接的にチェックする方法があります。軽クライアントは、取引の有効性を自分で確認することなく、全ノードによって無効取引に関する詐欺証明を送信することができる。詐欺の証明は小さな証明です。ブロックの中のある取引が無効であることを証明できます。詐欺証明の運用原理については、本文では具体的に紹介しませんので、この文章を読んでください。ここに一つの問題があります。全ノードがあるブロックのために詐欺証明を生成するには、当該ブロックの取引データを知る必要があります。ブロック生産者がブロックブロックブロックのみを公開し、取引データを公表しないと、全ノードは取引の有効性を検証できなくなり、無効取引に対して詐欺証明を生成する。これはブロック生産者にブロックのすべてのデータを公開するように要求しますが、強制的に実行する方法を見つける必要があります。この問題を解決するために、軽いクライアントは、ブロックの取引データが本当にネットワーク上に公開されているかどうかを確認するための何らかの方法を見つける必要がある。しかし、私達はまた軽クライアントにブロック全体をダウンロードさせることを避けます。これは軽クライアントの存在意義を失わせます。私たちはどうやってこの問題を解決しますか?まず、データの入手可能性について検討します。関性と解決策はどうやって取りますか?
データの入手可能性の問題はどの案と関連していますか?前のセクションでは、データの入手可能性に関する問題を紹介しました。拡張可能解に対するその重要性を議論しましょう。
ビットコインなどのブロックチェーンにブロックサイズを追加すると、ほとんどの一般的なノートパソコンが全ノードを実行してチェーン全体を検証できます。人為的に規定されたブロックサイズの上限があるので、ブロックチェーンが大きすぎないようにします。しかし、ブロックの大きさの上限を増やすにはどうすればいいですか?より多くの人が全ノードを実行し、ブロックチェーンのコストを独立に検証することができます。多くの人が安全性の低い軽クライアントを実行します。これは、ブロックの生産者が契約規則を変更しやすくなりますので、無効取引を挿入して軽クライアントを騙します。したがって、軽いクライアントのために詐欺証明書を提供することは重要ですが、すでに議論されているように、軽いクライアントが必要です。ブロック内のすべてのデータがネットワークに公開されているかどうかを検証する方法が必要です。
スライスによってブロックチェーンのスループットを向上させる方法の一つは、ブロックチェーンを複数のチェーン、すなわちスライスに分割することである。これらのスライスはすべて自分のブロック生産者がいて、しかも互いに通信して、チップの間でトークンを転送します。セグメントの意味は、ネットワーク中のブロック生産者をグループ化することで、各ブロックの生産者がそれぞれの取引を処理する必要がなく、彼らを異なるセグメントに分散させるだけでよい。各セグメントは一部の取引を処理するだけです。一般的に、デフレーションブロックチェーンにおいて、検証者は1つまたは少数のスライスのために全ノードを実行し、他のスライスのためにライトクライアントを実行する必要があるだけである。結局、各ベリファイアが各スライスのために全ノードを実行しなければならないと、スライスの目的を達成できない――ネットワークのオーバーヘッドを異なるノードに分割する。しかし,この方法自体には欠陥がある。区画の生産者が悪事を働く場合、無効取引を開始したらどうなりますか?非分割システムよりも、スライスシステムのほうがこのような状況が発生する可能性があります。後者の各セグメントには少量のブロック生産者しかいないので、攻撃しやすいです。ブロック生産者は絶えず違ったスライスに割り当てられます。フィルムの中のすべてのデータが公開で入手できることを確認し、詐欺証明を使ってすべての無効取引を証明する必要があります。
Rolluptimisticrollupはrollup側チェーン(スライス類似)に基づく新しい拡張可能な戦略である。これらの側鎖は自分の専属のブロック生産者がいて、他の側鎖と資産を移転することができます。しかし、悪意のあるブロック生産者が無効取引をブロックに包装し、サイドチェーン上のすべてのユーザーの資金を盗み出すとどうなりますか?この問題を解決するために詐欺証明書を使って送ることができます。このような状況です。しかし、まだその古い問題です。サイドチェーンユーザはサイドチェーン上のすべてのブロックのデータが公開されていることを確認するために、無効な取引を発見する方法を見つける必要があります。この問題を解決するために、エーテル坊のRollupはすべてのrollupブロックをエーテル坊ブロックチェーンに公開し、エーテル坊に頼ってデータの入手可能性を実現します。つまり、エーテル坊をデータの可用性層とする。ZK-rollupはoptimistic rollupに似ています。違いは、前者は詐欺証明を使って無効ブロックを発見するのではなく、有効性証明を使ってブロックの有効性を証明することです。有効性証明自体はデータの入手可能性が必要ではない。しかし、ZK-rollupは全体として、データの入手可能性が必要であり、ブロック生産者が有効ブロックを作成し、有効性証明を生成してもブロックデータを公表しないと、ユーザーは分かりません。ブロックチェーンの状態と彼らの残高はブロックチェーンと対話できません。
rollupの設計をさらに探索すると、ブロックチェーンをデータの入手可能な層として取引を保存することを目的としていますが、実際の取引処理と計算は全部rollup上で行われます。これは面白い考えです。ブロックチェーンは実際には何の計算も必要ないです。しかし、少なくとも取引をブロックに分けて、取引のデータ取得性を確保する必要があります。これもLazyLedgerの設計思想であり、すなわち「怠惰な」ブロックチェーンはブロックチェーンの二つの核心任務を完成するだけである。拡張可能な方法で取引を並べ替え、取引のデータ取得性を実現する。これにより、LazyLedgerはrollupなどのシステムの中で一番小さい「抜き差し可能」コンポーネントになります。
データの入手可能性問題の解決策は、上記で論じたように、すべてのデータをダウンロードします。データの入手可能性の問題を解決する最も直接的な方法は、すべての人(軽クライアントを含む)にすべてのデータをダウンロードすることです。この方法は良い拡張性を備えていないことは明らかである。ビットコインやエーテル坊など多くのブロックチェーンはこの方法を採用しています。
データ取得可能性証明データの入手可能性は、新規技術であることを証明します。クライアントはブロック内のデータの一部をダウンロードするだけで、ブロック内のすべてのデータが発行されているかどうかを確認することができます。データの入手可能性の証明には、ピケット符号と呼ばれる数学的要素が採用されている。ピケットコードはCD-ROMから衛星通信、二次元コードなどの情報技術に広く応用されています。ピケットコードは、元の1 MBのブロックデータを2 Mバイトに拡張することができ、そのうち、多く出る1 MBは、ピケット符号という特殊データである。ブロック内の任意のバイトが無くなれば、削除コードを探し出してくれます。ブロック全体のデータがなくなっても、削除コードは助けられます。すべてのデータを探し出してください。同様に、消去コードがあっても、CD-ROMのデータが消去されても、あなたのコンピュータが読み込むことができます。1 MBのデータが2 MBに拡充されたら、少なくとも1 MBのデータが元のデータに戻ります。この1 MBのデータは連続ですが、必要ではありません。これは、100%のデータの入手可能性を実現するために、ブロック生産者はブロックの50%のデータをネット上に公開するだけでよいという意味である。悪意のあるブロックの生産者が1%のデータを成功裏に隠すには、50%を超えるデータを隠す必要があります。そうでなければ、この1%のデータは残りの50%のデータを通じて探し出せます。この知識があれば、クライアントはブロック内のデータが隠されないように対策を講じることができます。クライアントが味わうことができますブロックを分割したデータブロックをランダムにダウンロードしてみます。データブロックをうまくダウンロードできなかったら(つまり、悪意のあるブロックの生産者が未公開の50%のデータに属しています。)、ブロックのデータの取得可能性を承認することを拒否します。ランダムデータブロックをダウンロードすると、クライアントは50%の確率で無効ブロックを発見します。二つのデータブロックをダウンロードすると75%の確率があります。3つのデータブロックをダウンロードすると87.5%の確率があります。これを類推すると、7つのデータブロックをダウンロードした後に99%の確率があります。このようにして、クライアントはブロックの中の一部のデータをダウンロードするだけで、ブロック全体のデータ取得可能性を効果的にチェックすることができる。データの入手可能性が証明されたすべての詳細は、より複雑になり、例えば、ネットワーク内の軽クライアントの数は、ある下限値を下回ることができないという他の仮定に依存しており、このようにして、十分に多くの軽クライアントがデータブロックを要求して、完全なデータブロックを復元することができる。ブロックのデータ。もっと多くの情報を知りたいなら、データの利用可能性を証明する論文を見ることができます。
結論は本論文では、データ利用可能性の問題を紹介し、ブロックチェーンの拡張可能性に対するデータ利用可能性の重要性を議論し、解決策を提案した。もっと詳しい情報を知りたいなら、以下の資料を調べてください。ジョンAdler’s white board session aout fraud and data availabilityprooff s
.Originalfraud and data availability prooffpaper
odedMerkle Trees paper on an alternative data availabilityscheme
Ethereumwiki post on the data availability problemtra.