POW採掘原理プルーフ・オブ・ワーク(POW)マイニングは、ブロックチェーン内に新しいブロックを生成するプロセスです。 BTC、BCH、ETH、LTCなどを含むPOWマイニングは、以下のロジックに基づいています。 マイニングは次のように機能します。システムは、たとえば先頭に 18 個のゼロが付いた数値であるターゲット値を提供します。マイニングとは、先頭に 19 個のゼロが付いた数値など、この目標値よりも小さい乱数を見つけることです。見つけたら、ブロックの採掘は完了です。キーワード: 乱数。重要な質問: このランダム性はどのように計算されるのでしょうか? この乱数は、マイニング プールの最新のブロックチェーンの高さをハッシュすることによって取得されます。キーワード: 最新の高さ。重要な質問: 最新の高さはどれくらいですか? 現在、マイニング プールはブロックをマイニングし、それをブロードキャストしています。このブロックの高さは 50W であると仮定します。次に、すべてのマイニング プールは、この 50W の高さ以降もマイニングを続行します。具体的なアクションとしては、マイニング プールが最初に新しいブロックを組み立てます。この新しいブロックには、「ブロック ヘッダー」と「トランザクションが記述されたブロック本体」が含まれています。ブロック ヘッダーには特別な説明が必要な項目が 2 つあります。 1 つ目は親ブロックのハッシュ値で、ここでは 50W の高さのハッシュ値です。 2 番目は Nonce です。これは 0 から始まる調整可能な数値です。 この新しいブロックを組み立てた後、マイニング マシンはこの新しいブロック (高さ「50W+1」) と高さ 50W の前のブロックをハッシュします。この新しいブロックは、上記の「最新の高さ」です。 マイナーがハッシュを 1 回実行すると、バイナリ数値であるハッシュ値が得られます。マイニング プールはこの値をターゲット値と比較します。目標値より小さい場合は、おめでとうございます。鉱山の採掘に成功しました。それ以外の場合は、Nonce が 1 増加され、再度ハッシュされて、再度比較されます... 当然ですが、マイニング マシンを使用してハッシュすると、ターゲット値を満たす Nonce 値を見つけようとすると非常に時間がかかります。ただし、マイニング プールは、試用のために異なるマイニング マシンに異なる Nonce を割り当てることができます。たとえば、マイニングプールに 1000 台のマイニングマシンがある場合、最初のマシンには 0 から 1000 までのテストが与えられ、2 番目のマシンには 10001 から 2000 までのテストが与えられます...これが並列マイニングです。 POW採掘ブロックの原理上記の50Wの高さと最新の高さブロックに関しては、さらに詳しく説明する必要があります。マイニング プールは、最新の高さのブロックチェーンをマイニングする前に、高さ 50W でブロックを検証する必要があります。検証が成功した場合、新しく組み立てられたブロックの高さ「50W+1」でのマイニングは合法となります。 50W の高さが不正なブロックである場合、すべてのマイニング プールは「50W」の高さに戻ってマイニングする必要があります。 ただし、ブロックの検証には時間がかかります。各マイニングプールのハードウェアとソフトウェアは異なるため、1M ブロックの検証には平均 10 秒かかると想定します。検証が完了するまでは、マイニングプールはブロックが合法かどうかを確認することも、高さが「50W+1」の最新のブロックを追加する必要があるかどうかを確認することもできません。 最新の高さのブロックを組み立てるのにも時間がかかります。ブロック テンプレートを取得して組み立てを開始し、親ブロックのハッシュ値を入力して、メモリ プール内のトランザクションを選択し、ブロック本体に入力します。これらすべてには時間がかかります。 0.1 秒かかると想定します。 「50W」の高さのブロックを検証し、「50W+1」のブロックにトランザクションを埋め込む際には、前進があり、埋め込んだトランザクションは、50W の高さにパッケージ化されたトランザクションと重複してはなりません。そうしないと、最新のブロックの高さが不正になります。 また、高さ「50W」のブロックがマイニングされ、すべてのマイニングプールにブロードキャストされるまでには時間がかかります。ブロック放送は2つのステップに分かれています。最初のステップはブロック ヘッダーをブロードキャストすることです。 2 番目のステップは、ブロック本体をブロードキャストすることです。ブロック本体は非常に小さく、わずか 80 バイトで、トランザクションよりも小さくなります。ブロードキャストは非常に高速で、すべてのマイニング プールはブロック ヘッダーを非常に迅速に取得できます。ブロック ヘッダーを使用すると、新しい高さを組み立てるブロックの「親ハッシュ値」を取得できます。ブロック本体はすべてのトランザクションが含まれる部分であり、通常は非常に大きくなります。たとえば、2,500 件のトランザクションは 100 万件に近くなります。 BTC の最大サイズは 100 万に近くなり、さらに 300 万の分離された証人ブロックが加わります。 BCH はかつて 2100 万のブロックをパッケージ化しました。すべてのマイニング プールがブロックを受信するまでに時間がかかります。これをネットワーク遅延と呼びます。ネットワーク遅延は通常 0.5 秒であると想定します。 マイニング プールでマイニングを行う最も簡単な方法は、マイニング プールがブロックを取得したら、そのブロック内にどのトランザクションが含まれているかのみを確認できることです。ブロック全体を検証することによってのみ、高さが「50W」のブロックが合法かどうかを知ることができます。次に、最新の高さのブロックの組み立てを開始し、マイニングを行って、目標値よりも小さいハッシュ値を計算します。ブロック本体を入手し、ブロック全体を検証し、最新の高さのブロックを組み立てるまでにどれくらいの時間がかかりますか? 0.5+10+0.1=10.6秒。 マイニングプールが上記のプロセスに従ってマイニングを行う場合、この 10.6 秒間はマイニングが実行できず、マイニングマシンは効率的に動作しません。さらに、マイニングマシンは電源が入っている間も電力を消費し続けます。 マイニング プールが次のプロセスに従って動作する場合: ブロック ヘッダーを取得した後、高さが「50W+1」の新しいブロックの組み立てを開始します。しかし、このブロックの高さが50Wのブロックとブロック全体のトランザクションが合法であるかどうかは確認できないため、マイニングプールは、このブロックの高さが「50W+1」のブロックの追加トランザクションでブロック本体を埋めず、Coinbaseの報酬トランザクションのみで埋めます。高さが「50W+1」のこのブロックには、ブロック ヘッダーと Coinbase 報酬トランザクションのみが含まれます (これは空のブロックです)。その後、マイニングが直接開始されます。このように、ネットワーク全体に新しいブロックが現れると、マイニングはブロック ヘッダーを取得して空のブロックを組み立てる時間を待つだけで、その後はマイニングを開始できます。この時間は非常に短く、通常は 0.5 秒未満です。これにより、10.6 秒と比較して 10 秒以上が節約されます。 上記のマイニングプロセスによると、マイニングプールは完全な 50W の高さのブロックを受信し、50W の高さのブロックを検証するのに 10.6 秒かかります。上記の 0.5 秒から 10.6 秒の間に、マイニング マシンが目標値よりも小さい乱数を計算すると、マイニング プールは空のブロックを正常にマイニングします。マイニングマシンが目標値未満の乱数を計算しなかった場合、マイニングプールは 10.1 秒のマイニング時間を放棄し、代わりにマイニング用のトランザクションで満たされた最新の高さのブロック「50W+1」を組み立てます。 上記がブロックマイニングの全体的なロジックです。 採掘原則の最適化前述のマイニングの原理では、高さ「50W」のブロック内のトランザクションを確認することが重要な作業となります。これらのトランザクションを事前に知ることができる場合、「50W+1」の高さのブロックを組み立てるときに、これらのトランザクションを回避して他のトランザクションを組み立てることはできないでしょうか?この方法では、空のブロックを作成する必要はありません。 現在、BTC および BCH ネットワークには、このブロックの伝播を最適化できる 2 つのテクノロジがあり、すべてのマイニング プールはどのトランザクションが「50W」の高さにあるかをより迅速に知ることができます。最初の技術はブルームフィルタと呼ばれます。 2番目はコンパクトブロックとシンブロックと呼ばれます。 (Compact block は Core dev によって開発され、Xthin は unlimited dev によって開発されています。機能は同じです。) ブルーム フィルターは、ブロック内のどのトランザクションが「50W」の高さでマークされるかを示すために使用されます。これは単なる識別です。マイニング プールがこのマークを取得すると、その中にどのトランザクションが含まれているかがわかります。次に、マイニング プールは独自のメモリ プールにアクセスしてこれらのトランザクションを見つけ、持っていないトランザクションをリストし、持っていないトランザクションを他のノードに要求します。これらの欠落したトランザクションを取得した後、ネットワークから「50W」の高さのブロックをダウンロードする代わりに、「50W」の高さのブロックがローカルで再構成されます。このプロセスは、Compact ブロックと Xthin ブロックの原理です。 これら 2 つのテクノロジはネットワークの遅延時間を短縮できますが、「50W」の高さのブロックを検証する時間を短縮することはできません。前者はわずか0.5秒ですが、後者は10秒です。 このような時間差がある場合、マイニング プールは依然として空のブロックをマイニングする必要があり、そうしないとマイニング マシン全体が電力を無駄に消費することになります。この 10 秒の無駄は、ネットワーク全体にとって膨大なエネルギー量となることを知っておく必要があります。 ではどうすればいいのでしょうか? 中空ブロックの問題に対する完全な解決策上記の分析は、空ブロックのマイニングの原理とマイニングの最適化の原理に関するものです。空のブロックをマイニングする主な理由は、マイニング プールが、空のブロック「50W+1」を、すでに「50W」の高さに存在するトランザクションで埋めようとしないことです。 マイニングプールによって組み立てられた「50W+1」の高さの空のブロックに、「50W」の高さに出現したトランザクションが含まれていないことを保証する方法があれば、問題は解決するのではないでしょうか。 1 つの方法は、マイニング プールがトランザクションをブロードキャストせずに独自に生成し、それを独自のメモリ プールにのみ保存して、高さが「50W+1」の空のブロックを埋めることです。 しかし、マイニング プールは意味のないトランザクションを生成することはできません。そうしないと、ジャンク トランザクションとなり、ネットワークが無駄になってしまいます。ユーザーが送信したトランザクションをパッケージ化することは確かに理にかなっています。しかし、ユーザーが送信したトランザクションはブロードキャストされることが多く、パッケージ化すると高さが「50W」のブロック内のトランザクションと競合するリスクがあります。 ブロードキャストされていないトランザクションを必ず探してください。 1つの方法は、マイニングプールが取引所と協力することです。ユーザーが取引所で出金取引を開始すると、取引所はそれをブロードキャストするのではなく、IP から IP 経由で暗号化された方法で直接マイニング プールに送信します。これらのトランザクションは、「50W」の高さのブロックにパッケージ化されることはありません。これらのトランザクションは、100% の競合なしで「50W+1」レベルに到達できます。 取引所とマイニングプールが同じ会社組織である場合、この方法は非常に簡単に実装できます。これらは同じ組織ではないため、マイニングプールは依然として取引所に騙されるのではないかと恐れています。取引所がブロードキャストされたトランザクションを挿入すると、空のブロックのブロック報酬が無駄になる可能性があります。 ただし、この方法では空のブロックにヒットする確率が低いため、取引所のユーザー エクスペリエンスが低下します。これらのトランザクションがパッケージ化されるには長い時間がかかります。マイニング プールはそれらを空でないブロックにパッケージ化できますが、ユーザーは確認を得るためにマイニング プールがブロックを生成するのを待つ必要があり、これはネットワーク全体がブロックを生成してからかなり経ってからになります。 もう 1 つの方法は、取引所がユーザーの引き出しトランザクションではなく、いくつかの散在する UTXO を 1 つの大きな UTXO にまとめるトランザクションをマイニング プールに秘密のトランザクションとして送信できるようにすることです。このタイプのトランザクションは、UTXO ボリューム全体を大幅に最適化し、これらのトランザクションにはそれほど厳しい時間要件はありません。空のブロックで詰めるのに適しています。 POW マイニング メカニズムは最適な設定であるため、経済のみを考慮する必要があり、道徳は関係ありません。空のブロックを生成するマイニングプールに対するすべての批判は、POW マイニング メカニズムに対する信頼の欠如の兆候です。 原作者:黄世良 原題: POWマイニングプールブロックマイニングの原理とソリューション 出典: Lightning HSL |
<<: 丁寧に作られた衝撃的なローンチ |新しいEbit E11シリーズがトレンドに逆らって発売されました
>>: Renrenfeng CMOコンサルタントのポール:Renrenfengはブロックチェーン技術を使用して、ソーシャルeコマースの3次元化を実現します。
イーロン・マスク氏の新しいテスラのマスタープランは、ビットコインやブロックチェーン技術とより深く関わ...
最近、インターネットの片隅で、火薬の煙の立たない戦争が繰り広げられている。あらゆる分野のオタクたちが...
Chiaの歴史を振り返ってみましょう。 5月初旬にChiaが上場され取引が始まって以来、価格が上昇傾...
2021年、ブロックチェーン業界は着実に発展する中で、4つの大きなトレンドを形成しました。「新インフ...
出典:Xiaomi 金融技術研究センター中央銀行デジタル通貨(CBDC)のプロセスが加速しています。...
最近、グレイスケールの保有資産は業界内外から注目を集めています。グレイスケールのマネージングディレク...
意図的であろうと無意識であろうと、ドージコインの波紋を繰り返し巻き起こすマスク氏の意図は何だろうか?...
昨年9月以来、DD4BCと呼ばれるハッカー集団が、標的に対して一連のDDoS攻撃を仕掛け、攻撃を止め...
中国金融情報ネットワークによると、ヒューストン大学のコンピューターサイエンスの准教授である石衛東氏、...
最新の市場を見る新浪米株は北京時間6日夜、人民銀行が金曜日早朝に上海ビットコイン取引プラットフォーム...
水曜日にニューヨークで開催されたブロックチェーンカンファレンスでの予測によると、アイデンティティはブ...
NFC ウォレット アプリケーションである ONEBIT を使用すると、ユーザーはクレジットカードを...
OKExによると、 2021年1月3日午前9時20分、ビットコインは32,500 USDTを突破し...
世界第2位のビットコイン採掘機メーカーであるカナン・クリエイティブは、株式公開初日に上場までの道のり...
ビットコインのブロックサイズ拡張に関する議論は、拡張とネットワークセキュリティの維持との間のトレード...