作者:ビットコインメカニック;来源:Web3前沿
ASICからマイニングプールまで、ビットコインマイニングの課題、ソリューション、分散化の傾向を探る
ビットコインの提唱者であり教育者であるビットコインメカニックは、マイニングプールとマイナーの間の動的な関係に特に焦点を当てて、ビットコインマイニングに存在するさまざまな問題と課題を掘り下げています。 彼は、マイナーの自律性と全体的な分散化の傾向を高めることを念頭に置いて、既存の問題の解決策を提案しています。 その中で、StratumV2プロトコルの議論とマイニングエコシステムの将来の発展は、ユニークな洞察に満ちています。 さらに、この記事では、ASIC製造とマイニングプールインフラストラクチャの最近の開発を指摘し、マイニングセクターの分散化の新たな可能性を切り開いています。 既存のマイニングモデルの批判的分析と、将来の改善の可能性についての見通しを通じて。
ビットコインマイナーは、エコシステム全体に非常に重要なサービスを提供します。 サイバーセキュリティを確保する一環として、サトシ・ナカモトが設計した最も堅実でエレガントなデザインの1つであり、ビットコインの最も印象的な側面の1つであるネットワークから報酬を受け取ります。
しかし、マイニングがハッシュ化だけではないことを無視する人が増えているようです。
プロセスに関与する人は、ノードを実行してブロックチェーンの最新の状態を取得し、新しいブロックの構築を開始する必要があります。 これには、前のブロックの有効性の検証、未承認のトランザクションの発見、および一般的にそれらの中で最も収益性の高いトランザクションの選択が含まれます。 生成されたトランザクションで自分自身を支払い、それらのトランザクションの複数のマークルツリーを構築し、最後にハッシュして実際にブロックを解決します。 ブロックテンプレート内のトランザクションは、新しいトランザクションがネットワークにブロードキャストされると、常に変化します。 他の誰かが新しいブロックを見つけた場合、マイナーは代わりにそれに基づいて構築し、ブロックチェーンにすでに存在するすべてのトランザクションをダンプして、新しいテンプレートに入力する必要があります。
ご覧のとおり、実際にブロックを解くためにハッシュを実行することは、プロセスの一部にすぎません。 ビットコインマイニングASICもハッシュのみが可能です。 現在の環境では、マイニングの他のすべての側面は、通常、マイニングプールに委任されます。 これはいくつかの混乱を招いています。 例えば、ブロックテンプレート内のバージョンビットを反転させてソフトフォークをアクティブ化する議論では、そのプロセスがMASF、つまり「マイナーアクティベーションソフトフォーク」であると常に言及され、マイニングプールが単独で責任を負い、マイニングプールはマイナーではないと主張する人が必ず現れます。 また、マイナーがアップグレードしたいが、自分がいるプールがそれを望まない場合は、プールを切り替えるだけでよいため、最終的な責任は依然としてマイナーにあると指摘するかもしれません。 わかりやすくするために、この記事の残りの部分では、ハッシュ化にのみ参加し、マイニングの他のすべての側面をプールに任せる人を「ハッシュ」と呼ぶことにします。
ソフトフォークに話を戻すと、ブロックの99%以上が同じ組織によって構築されている現在の環境では、これらを「プール活性化ソフトフォーク」と呼ぶ方が正確かもしれませんが、現在は誰もそう呼んでおらず、ハッシュパワーの分布だけでマイニングが分散化されていると見なすことができるという危険な錯覚につながります。 この主張は、すべてのハッシュパワーが少数のマイニングプールに制限されている場合に信じがたいものになるため、ビットコインブロックチェーンのコンテンツは、これらの少数のエンティティが受け入れられないと判断したものや、他の多くの問題を最終的に除外します。
マイニングプールによって構築されたブロックをハッシュするだけで、ビットコインマイナーはその役割の重要な要素の大部分を放棄しました。 これは可能であるだけでなく、最もスムーズな道であり、体系的な問題があることを示しています。
ハッシュ化だけを行い、他のすべてをプールに任せることの影響は、ソフトフォークのアクティベーションをはるかに超えています。 例えば、現時点では、マイナーは解決されたブロックがどのように見えるかまったく見当がつかないため、マイナーはブロックに目的のトランザクションのみが含まれていることを盲目的に信頼して作業しています。 しかし、このようなブロックでは、その信頼をあからさまに侵害し、「平凡な」熱狂を引き起こした有名なブロックを目にするでしょう。 このブロックで作業しているマイナーは、実際にはビットコイン取引手数料で約200ドルしか享受できませんが、その両側の平均ブロック取引手数料はビットコインで約5,000ドルであることに注意してください。
ブロックスペースには価値があり、それがビットコインが長期的に機能する理由の一部です。 しかし、ほんの一握りの参加者だけが構築したテンプレートをブロックチェーン上に配置できる世界では、これらのエンティティはスペースを販売し、それに対して超高額な報酬を得るほぼ独占的な権利を持っています。 彼らがこれをやっていることは、彼らの鉱山労働者に対する責任であり、おそらく告白なのだろうか? もちろん、この場合、意図はみんなを驚かせることです。 将来、彼らは帯域外ブロックスペースの販売で受け取ったお金をハッシュ化者に転送しますか?
要するに、マイニングプールとそのハッシュのインセンティブは一般的に利益を最大化するという目標と一致していますが、マイニングプールが通常のビットコイン取引以外の何かのためにブロックスペースを販売することは可能であり、マイニングプールが透明性を選択し、収益を共有することに同意しない限り、マイナーの収入はより限られています。 仮にそうだとしても、検証にはマイニングプールからの許可が必要であり、補助金や取引手数料から得た資金の検証は必要ではありません(FPPSマイニングプールを使用する場合は注意が必要ですが、これについては後で詳しく説明します)。
ビットコインの集中型ブロックテンプレートのビルダーとしてのマイニングプールのさらなる影響は、より基本的なレベルでは、独自の「スーパーメモリプール」を持つ12の「スーパーノード」があるというより基本的な事実に由来します。
これにより、人々はマイニングプールを直接扱い、mempoolを完全に無視するようになりました。 何があっても、mempoolは滅びる運命にあると主張する人もいます。 中央集権的なテンプレート構築の現状は、このプロセスを加速させるだけですが、いずれにせよ望ましいものではなく、真に分散化されたテンプレート構築が実用的であると考えられている世界では、そのような仮定をするのは悲観的すぎるかもしれません。 そして、ブロックスペースを購入した人が同じ時間枠でブロックチェーンに含めたい場合、帯域外の支払いをより多くの人々に渡す必要があります。 これは、現在の動作と同様に、より透過的である可能性があります。 逆に、「スーパーノード」はより小さな断片に分解されることが予想されるため、同じ保証を提供できなくなります。
マイニングのこの側面から逸脱するために、現在の支払い方法がどのように処理されているかに焦点を移しましょう。
ほとんどすべてのマイニングプールは、FPPS(Full Pay Per Share)などを介してハッシュに支払います。 唯一の例外はViaBTCで、FPPSに加えてPPLNS(Last N Share Payouts)を提供しています。 AntpoolはPPLNSも提供していますが、ハッシュ化者はすべての取引手数料収入をあきらめなければなりません。 基本的に、補助金よりも取引手数料収入に重点が置かれている世界では、FPPSはうまく機能するモデルではありません。 Braiinsプール(旧Slushpool)は「スコア」と呼ばれるシステムを使用していますが、これは実際にはPPLNSと非常によく似ています。
なぜFPPSがこれほどまでに好まれるのでしょうか? ハッシュ作成者の視点から見ると、ブロックチェーンで何が起こっても報酬が支払われます。 これはマイニングプールの目的と一致しており、収入はさらにそれと一致しています。 FPPSは、マイニングプールが予測される収益に基づいて支払いを行い、ブロックチェーンとは無関係に決済するため、より一貫した支払いを提供します。
これにより、キャッシュフローの中断によって引き起こされる問題を最小限に抑えたいマイナーにとって、生活は非常に簡単になりますが、もちろん欠点があります - ここで強調したい重要な欠点です。
FPPSではまず、マイニングプールが新しくマイニングされたすべてのビットコインのカストディアンである必要があります。 これらのビットコインは、マイニング後最低100ブロックの間はマイナーに転送できないため、新たにマイニングされたビットコインはそれまで使用できず、実際、マイニングされたビットコインは、マイナーがマイニングプールから撤退したときに受け取ることになるビットコインとは何の関係もありません。 第三者による親権のリスクは、この記事を読んでいるほとんどの人にとって明らかなはずなので、この点はスキップして、FPPSに関する他の問題に移ります。
次の懸念は、FPPSマイニングプールがハッシュとネットワーク自体の間の重要な仲介者であるという、より一般的な問題から来ています。 ハッシュ化者は、解決されるまで、作業中のブロックがどのようになるかを事前に知ることはできないことを確認しました。 FPPSは、ブロックが発見されたかどうかさえ気にせず、マイニングプールの問題です。 ペイアウトの増加の予測可能性(プールがハッシャーを騙すことを決定した場合、それは決して起こりません)を無視して、そうすることのトレードオフを認識する必要があります。
ビットコイン自体から直接支払われるマイナーは、PPLNSやもちろん独立したマイニングなどの代替手段で可能ですが、取引手数料を含め、完全に報酬を受け取ることが期待できます。 FPPSプールは、ハッシュ作成者が実際に1株あたり受け取る金額を決定する際に、手数料がいくらに達するかを予測する方法がないため、事後にのみこれを計算できます。 マイニングプールは、手数料が0より低い場合、自分のポケットからマイナーに支払うだけなので、手数料が0より大きい特定の値であると単純に想定し、マイニング時にマイナーの収入に含めることはできません。 彼らは定期的に手数料を割り当て、実際にプールで拘留されているマイナーに帰属させる必要があります。
ハッシュ作成者の観点からは、マイニングプールの完全な透明性と協力がなければ検証はほぼ不可能であるため、マイニングプールには完全な信頼が必要です。 上記のように、マイニング収益のほとんどが補助金から来ており、取引手数料はそこに散らばっているサトシのほんの一部であるため、これは以前は大きな問題ではありませんでしたが、これは成長するビットコインマイニングの未来ではありません。 将来的には、マイナーは主に取引手数料を通じて収益を得ることになりますが、マイニングプールを利用する場合、補助金よりも予測や監視が困難です。
ハッシャーはPPLNSのような支払いスキームよりも大きなバリエーションを受け入れており(マイニングプールの運はハッシャーの運になります)、マイニングエコシステムは、受け取ったものを検証する能力よりも支払いの一貫性を優先する傾向が極めて強いことがわかります。 傷害に侮辱を加えるために、一部のハッシュ作成者は実際にこのアプローチを好みます-ビットコインから完全に切り離された一種の「ハッシュサービス」として政府機関に自分自身を提示したいと思っています-そしてそれを誇りに思っている人もいます。 これは、FPPSが理想的なマイナー/プールのダイナミクスからかけ離れているため、たとえそれが「ビットコインマイニング」であっても、ハッシュチャーが正確に何をしているのかを再度説明するのが難しいためです。
実際、FPPSマイニングプールは、ブロックを解決するためにハッシャーにお金を払う大規模な独立したマイナーです。 その後、彼らはハッシャーに支払われる金額が決定される内部的で不透明なプロセスを持っています。 これを実際に説明するために、ハッシャーは(いくつかのそれほど難しいシナリオでは)ビットコイン以外のものでそれを支払うことさえできます。
ブロックが見つかったかどうか、ましてやブロックが構築される前にどのように見えるかを気にしない場合は、独立したマイナーに不換紙幣を支払ってもらい、ASICを最も便利な通貨でそれらに向けてみてはいかがでしょうか。 ビットコインは常に最も摩擦のないオプションであるとは限りませんが、それでも、「ハッシュ」を好きなだけ多くのエンティティで実行できる次のパスに進むことを想像するのは合理的ですが、すべて「マイニングプール」の小さなグループに代わって これで、ネットワーク全体がブロックチェーンに何かを実際に記録する許可を得る必要があります。
これをより広い文脈で見てみましょう。 すでに述べたように、一部の大手プレーヤーはビットコインからできるだけ離れたいと考えているため、ビットコイン関連の活動を可能な限りマイニングプールに委任することをいとわない。 これらのマイニングプールは規制を受けやすく、その大きなハッシュレートは非常に満足しています。
これもまた、ネットワーク自体の観点から経済的な非合理性をもたらし、特定の恣意的な基準を満たすブロックをマイニングする行為に現れます。 過去にこのようなことが起こったとき、コミュニティの反発と、頼まれもしないのに管轄区域の刻々と変化する規制体制を積極的に喜ばせようとすることの不条理さのために、それは長くは続きませんでした。 しかし、実際には、これは選択の選択肢であり、一元化されたブロックテンプレートを構築することのリスクを露呈しています。 ある管轄区域のマイナーは、別の管轄区域からの取引を禁止したり、処理を拒否したりしようとしますか?マイナーは政府やインフルエンサーによる悪質な行動の延長線上にあるだけなのか?違法な利益を上げるために、時には規制の圧力に従うためだけに、取引手数料を拒否するマイニングプールの具体的な例があります。 ネットワークの観点から見ると、これも経済的に不合理に見えます。
最も極端な最近の例は、1回の取引で支払われる19BTCの取引手数料で、これは最終的にF2Poolによって発見され、表面上はバグでした。 FPPSマイニングプールとして、彼らは19BTCのマイニング手数料の管理人となり、ミスを犯した人に返還することを選択しました。 これは、マイナーとビットコインネットワークの間に大きすぎる仲介者を配置するコストを完全に示しています。 PPLNSマイニングプールでは、これが起こる可能性は低くなります。 PPLNSプールが必ずしもトラストレスまたはノンカストディアルであるからではなく、正確なブロックエントリーの瞬間に手数料収入を監視および検証できるため、プールがマイニングファンドのシェアを内部に預け入れている可能性があるため、プールが試行するのが難しくなり、より大きな反発を引き起こします。 原理的には違いはありませんが、マイニングプールがコインベース/ジェネレーティブトランザクションでマイナーに支払うとどうなるかを比較するまでは。 その場合、お金はすでにマイナーの手元にあり、マイニングプールは手数料収入を横取りすることはできません。 つまり、この例では、プールは寛大で公平に見せたいが、マイナーは50万ドルの手数料収入を失うことになる。
これは簡単に説明できるはずです:現時点では、51%攻撃が何であるかは誰もが知っています。 しかし、(ネットワークが迂回するまで)あまり理解されていないのは、この攻撃が破壊的であるだけでなく、保証され、一貫して成功するための要件は51%であるということです。
実際、ネットワークシェアの20%を超えるエンティティは、さまざまな攻撃ベクトルを通じて問題を引き起こす可能性がありますが、その一部は実際に実行され、めったに議論されませんが、これについては後で詳しく説明します。 しかし、その前に、このネットワークには、総計算能力の51%を確実に超えるエンティティが2つしかないことがわかります。 さらに悪いことに、最大のマイニングプールの1つは、別の大規模なマイニングプールで見つけたブロックの残りの10%を慎重にカバーしておらず、このマイニングプールは親会社との戦略的パートナーシップを維持しています。 この茶番劇がいまだに続いているという事実は説得力がありません。
これに対する一般的な応答は 2 つあります。 まず、マイナーが51%の攻撃のために団結した場合、プールを変更するだけで投票できることが指摘されました。 第二に、これを行おうとするマイニングプールは、ビットコインを壊すと価格が下がるという単純な理由でクレイジーであり、エコシステムに投資する人には起こらないと予想されます。 第二の議論は、人類の歴史を無視し、さらに、人間が破壊的な行動をとらざるを得ず、破壊のためだけに、あるいは他の極悪非道な目的のために破壊を引き起こすことは決してないと仮定しています。 また、市場がビットコインが問題を抱えていることを示す良い指標であるとは限らないことも考慮されていません、2017年のハードフォーク戦争を参照してください。
ただし、最初の引数は、特定のプールが大きくなりすぎた場合、マイナーは常に他のプールに切り替えると仮定すると、より強力です。 実際、プールがこれを行おうとすると、現実が介入し、ブロックテンプレートの99%を構築しているにもかかわらず、プールは実際にはマイナーではないことに気付くでしょう。 たとえば、よく知られたケーススタディである Ghash.io では、ハッシュレートが40%を超えるため、致命的な下降スパイラルを引き起こしました。
つまり、これは実際には問題ではなく、マイナーは信頼できることを証明し、他のプールに移動するのです。 実際には、大規模なマイニング作業が官僚主義によって制約されている場合、この仮定の信頼性は低くなりますが、少なくとも、そのような攻撃の可能性は低いとかなり確信していると仮定しましょう。
残念ながら、マイニングプールのハッシュパワーは、ひどいしきい値を超えるとすぐに他の場所に移行するという認識により、自己規制を余儀なくされます。 しかし、ハッシュパワーを閾値以下に維持する必要はなく、外界にその印象を与えるだけでよいため、これは役に立ちません。 これは基本的に、彼らが手に入れることができるすべてのハッシュパワーを受け入れながら、それを他のマイニングプールに転送して、混乱を引き起こす可能性があることを世界に警告することを避けることになります。
このように、私たちはネットワークについてあまり知りません。 ブロックの30%は最大のマイニングプールで見つかり、すべての人に受け入れられますが、ネットワーク全体のハッシュレートの残りの10%はそのプールに向けられ、1つ以上の小さなマイニングプールに密かに転送されます。 この10%を担当するマイナーは、このように使用されていることに気付かない可能性があり、stratumV2で検出するのはより困難です。 これについては後ほど詳しく説明します。
このすでに望ましくない状況は、このリダイレクトされたハッシュレートがブロックマイニング攻撃を通じて小規模なマイニングプールに害を及ぼすために使用される可能性があることを考えると、さらに悪化します。
具体的には、攻撃者は主に被害者プールの通常のユーザーとしてマイニングプロセスに参加します。 その結果、マイニングプールで見つかったブロックから期待どおりに報酬の一部を受け取ります。 報酬は最終的に攻撃者に支払われ、攻撃者は資金を失うことなく実際のマイナーに支払うことができます。 これまでのところ、プールのハッシュレートに対する誤った印象を与えただけで、実際よりも小さく見えますが、小さなプールは無傷のままです。
ここで、攻撃者がブロックを見つけたときに被害者プールに通知しないことを決定した場合、損害が発生します。 これにより、被害者プールが不運に見える可能性があります。 彼らは、必要以上に少ないブロックを見つけ、実際に正直なマイナーである参加者、つまり、他の方法でそれらの損失を補わないと仮定して、負ける運命にある参加者により多くの報酬を支払うようです。
FPPSマイニングプールがこのように攻撃された場合、収益を燃やし、マイナーにポケットからお金を払ってギャップを埋め合わせる必要があります。 PPLNSの場合、マイナーはなぜ自分たちにふさわしいものが得られないのか不思議に思うでしょう。 いずれにせよ、ブロックマイニング攻撃は反競争的であり、悪い評判を与えることで被害者プールを破壊する可能性があります。
マイニングプールを攻撃する観点から、被害者のマイニングプールのハッシュレートの5%を占めているとしましょう。 これは、彼らがまだ予想される収益の95%を受け取っていることを意味しますが、マイニングプールは予想よりも5%運が悪く見えます。 これはマイニングプールを簡単に破壊するのに十分であり、より大きなマイニングプールでは、リダイレクトされたハッシュレートの5%の損失ははるかに重要ではありません。 より大きなプールの合計ハッシュレートの1%しか表さない場合、攻撃者は予想される報酬の1%の5%(0.05%)のみを失います。 これは、非倫理的に行動する準備ができている悪意のある大規模なマイニングプールにとって明確な利点です。
マイニングプールが小さければ小さいほど、この攻撃に対して脆弱になります。 プールが大きければ大きいほど、競合他社の小さなプールを止める可能性が高くなります。 このリスクは、大規模なマイニングプールが合計ハッシュレートがコミュニティにパニックを引き起こし始めるレベルに近づくにつれて増加し、実際にハッシュパワーを使用していなくても、または問題が分散に煮詰められるほど頻繁に攻撃しない場合でも、少なくとも小さなプールにハッシュパワーを隠すように促されます。 大規模なマイニングプールは、ネットワークがより一貫した支払いを提供するため、変動性が低下し、より厳しいマージン内で運営できるため、マイナーへの請求額が少なくなります。 攻撃されていない各マイナー/マイニングプールの観点から、この攻撃は、ビットコインネットワークが調整して合計ブロック数が少なくなるため、難易度が低くなることを意味します。
ブロック保持は理論上のものですか? 絶対に違います。 2015年初頭にも、いくつかのマイニングプールがこの方法で攻撃されました。 プールはすべてのマイナーを監視し、プールから追い出すか、支払いを拒否するかを慎重に決定しなければならず、彼らの運が統計的に不可能な場合、プールは彼らが悪意を持って行動していると合理的に想定できるため、この攻撃を阻止することは非常に困難です。 また、この種の攻撃は、マイニングプールが「マイナーを知りたい」と思い、支払いを規制する動機付けにもなりますが、これはもちろん、許可なくマイニングしたい人にとっては生活をより困難にします。
いずれにせよ、これらすべての全体的な影響は、人々が別の理由でより大きなマイニングプールでマイニングすることを好むということです。
大規模なマイナーが、期待したほど報酬が支払われていないため、小規模なプールをあきらめていると公然と言っているのを聞いたことがあります。
大規模なマイニングプールとそれらを使用する大規模なマイナーは、規制上の負担に悩まされる可能性が高く、したがって、ブロックテンプレートの集中化とすべてのブロック報酬の一時的なエスクローを超えて、ビットコインに害を及ぼす行動に従事する可能性が高くなるため、これは非常に望ましくありません。
マイニングプールは実際にエージェントとなり、「彼らに代わって」マイナーに官僚的なナンセンスを押し付けます。 現在、2つの最大のマイニングプールでは、ユーザーは自分の身元を明らかにするものを含む多くの面倒な手順をスキップする必要がありますが、これはビットコインマイナーが独立したマイニングの外で通過しなければならないものではなく、またそうである必要もありません。
ブロック保有に関するこの最後の点については、小規模なマイニングプールやマイニングを希望する人々の生活をより困難にするという脅威は別として、明らかに過去に起こったことにもかかわらず、これを純粋な理論として退けようとする可能性のある人々に言いますが、マイニングプールは自然に一貫性があり、明らかに許容できるサイズであると思いますか? これは、新しいハッシュレートが常に何らかの方法で均等に分散されることを意味します。 マイニングプールが出現し、急速に成長し、人々が動揺する前に必要なしきい値付近で停止する可能性があると信じなければなりません。 マイニングプールが人々にマイニングをやめるように求めているのか、それとも単にアカウントの作成を制限し、既存のアカウントで許可されている以上のハッシュレートを持つマイナーを追い出しているのでしょうか? もちろん違います。
より可能性の高い2つのシナリオは、マイナーが集団的に自己規制しているというものです。 しかし、この記事で紹介した理由が十分に説明されていなくても、マイニングプールが小さくなるとマイナーの収入が少なくなることはよく知られているため、これはありそうにありません。 言うまでもなく、マイニングプールからの品質の大規模な移行の事例はすべて非常に説得力があり、プールが指し示しているハッシュレートについて人々を誤解させているだけであることは言うまでもありません。
これに加えて、小さなプールには別の問題があります:大きなプールは数時間しか持たないのに対し、彼らは何日もブロックを見つけられないかもしれません。 それは解決策の問題であり、ハッシュレートが高ければ高いほど、短期的には期待に近づきます。 残念ながら、この結果、不運な時期にマイニングプールが損失をカバーすることが期待できない下限値になり、その時点で競争が不可能になります。
難易度の時代と難易度の間には2週間という期間があるため、その2週間の間に十分なブロックを見つけ、その後の幸運で相殺するチャンスを得る必要があります。 そうでない場合、例えば、プールの予測ブロック率が13日ごとに1ブロックで、難易度調整が上がる前にブロックが見つからず、15日ごとに1ブロックの予測に低下した場合、前の時間枠は永久に閉じられます。 PPLNSマイニングプールの場合、マイナーの収入は他の場合よりも少なくなります。 FPPSマイニングプールの場合、マイニングプールは多額の現金を燃やしたり、破産したりします。
これは、少なくとも今日のマイニングプールの運用方法では、その数のマイニングプールしか存在できないことを意味します。 簡単に言うと、不利な時期にクラッシュする可能性のあるものの多くは、ネットワークのハッシュレートの1%未満であるため、毎日確実にブロックを見つけることさえできず、ブロックのない週が数週間ある可能性があるため、数百はあり得ません。 これは、ビットコイン自体が私たちに課す一種の制限です。
マイナーとマイニングプール間の通信プロトコルはStratumです(StratumV2に徐々に置き換えられています)。 StratumV1は古く、大きな欠陥があります。 まず第一に、すべての通信は平文で送信されます。 これは、ISPがあなたがマイニングしていることだけでなく、マイニングの規模も知っていることを意味します。 ネットワークトラフィックを盗聴できる人は誰でも中間者攻撃を実行し、あなたのコンピューターとコンピューティングパワーを他人のマイニングに使用させることができます。 これは以前、未知の攻撃者によって悪用され、意図したマイニングプールからハッシュパワーを盗むことがありました。
いくつかの非効率性に加えて、StratumV1は、マイナーが独自のブロックテンプレートを構築し、プールでマイニングするための実用的な方法を提供していません。 これらの問題はすべて、非常に魅力的なStratumV2(当初は「GBT」と呼ばれ、その後「Better Hash」と呼ばれていました)で対処されましたが、これについては後で説明します。
プール/マイナーのダイナミクスについて説明する前に、意味のある規模でASICを製造している企業はBitmainとMicroBTの2社しかないことに言及しなければ、この記事は不完全になるため、少し逸脱します。 他にも会社もありますが、実はこの2社が作ったマシンでハッシュ化がほとんど行われています。
これは明らかに悪いことであり、根本的な原因は、チップ製造が非常に困難であるため、中央集権化されすぎていることです。
この記事の範囲は、ここで解決策を議論するこの記事の範囲を超えていますが、ホームマイニングをより実用的にするために取り組んでいる人々がいます(北米では、主な問題は220〜240ボルトの必要性と過酷なノイズへの対処です)。 「プレブマイニング」プロジェクトに取り組んでいる人々は、十分な数の通常のビットコインユーザーがこれを行うことができれば、ネットワークの総ハッシュレートのかなりの割合を占め始めることができ、規制干渉の影響を受けやすいため、ほとんどの規模のマイニング操作よりも好ましいと主張しています。
このタスクの難しさは、ファームウェアがクローズドソースであるという事実にあります。 ASICを「ジェイルブレイク」できるカスタムファームウェアでさえ、ユーザーが開発にお金を払うようにクローズドソースになる傾向があります。
ASIC、特にBitmainの工場出荷時のファームウェアは、ASICが市場支配にどれだけ自信を持っているかを示す良い指標です。 クローズドソースであることに加えて、明らかに悪意のあるものです。 Antminerを起動すると、マイナーは接続をブロックするか、マーケットファームウェアをインストールしてから開発費を支払うことで、少なくともこれを防ぐことができますが、これらの料金を止めることはできません。 Bitmainは、マイナーのファームウェアに悪意のあるバックドアを追加することが何度も確認されており(Antbleedを参照)、マーケットプレイスのファームウェア開発者をブロックするために積極的に取り組んでいます。
実際、これは衝撃的であり、ASIC製造において切望されている競争の緊急性を明確に示しています。
ネットワークルールがクローズドソースのビットコインノードによって強制された場合、誰もが快適でしょうか? また、これらのノードがユーザーがソフトウェアの開発者にビットコインを失う原因となることを私たち全員が知っていた場合、誰かがそれを受け入れると想像してみてください。 マイニングに関しては、参加者の主権を気にする人はほとんどいません。 もちろん、ノードソフトウェアとASICファームウェアの重要性は同じではなく、前者に焦点を当てることは当然ですが、後者は重要ではなく、明らかに見落とされています。
そうは言っても、マイナーの可能性の範囲を拡大し、既存のモデルを改善することに特に焦点を当てて、いくつかのソリューションに移りましょう。
これについては、基本的にプールマイニングのあらゆる側面を分散化すること以外に、あまり言うことはありません。 これは小規模で多くの望ましいことを行いますが、各ユーザーが他のユーザーの共有をダウンロード、検証、追跡し、テンプレート内のすべてを正しくカウントしていることを互いに証明する必要があります。 どのような規模の対立的な環境でも、これを達成することは本質的に不可能な作業です。 プールマイニングの基本的な性質により、マイナーの仕事がより複雑になることは言うまでもなく、ビットコインのフルノードを実行するよりもはるかに多くのリソースが必要です。
これらの理由から、ほとんどの人はそれを無視し、より技術的なユーザーまたは理想主義者だけがそれを使用しており、当然のことながら、他の代替手段を使用して自分自身を実現することはできません。
これは間違いなく最も簡単に解決できる問題であり、この記事で説明した問題の多くに対する実用的な解決策を提供します。
まず、マイニングプールとマイナー間の暗号化された通信を許可することで、ISPやネットワークトラフィックにアクセスできるその他のエンティティは、マイニングしていることや、マイニングの距離を簡単に認識できなくなります。 その結果、攻撃者の名前でハッシュ化できる「MITMing」も不可能になるか、さらに容易ではなくなります。
第二に、そしておそらく最も重要なことですが、マイナーが独自のブロックテンプレートを構築できるようになるため、プールは報酬分配の信頼できるコーディネーターであり、ブロック報酬の管理者であり続ける可能性がありますが、これはプールからマイナーへの権力の移行を表しており、これは間違いなく良いことです。
StratumV2が標準である世界では、マイナーは独自のテンプレートを構築することに熱心であり、理想的には、マイニングプールは独自のテンプレートを構築するマイナーにインセンティブを提供し、はるかに強力なビットコインにつながります。
コミュニティは、マイニングエコシステムをStratumV2にアップグレードするというコミットメントでほぼ満場一致ですが、歴史的に、マイナーは、余分な労力(p2poolと比較すると微々たるものですが)とインセンティブの欠如のために、一般的にこれらのソリューションを避けてきました。
StratumV2の有無にかかわらず、改善の余地はたくさんあります。 必要なのは、マイナーがマイニング中にコインを直接ホストする機能を提供するマイニングプールです。 これには、マイニングプール(またはそのマイナー)が、各ブロックに含まれるコインベース/生成トランザクションでマイナーの報酬が直接支払われるブロックテンプレートを構築する必要があります。 FPPSシステムの下では、これは実際には実用的ではなく、このアプローチを実践するマイニングプールは一部のマイナーの消極的に直面することを意味しますが、切り替える人は、ビットコイン自体が特定のしきい値を超えて直接支払われ、簡単に検証可能な補助金と手数料収入の分配が行われるため、より高い透明性を享受できます。 これは、StratumV2以前でもマイニングプールと組み合わせて使用することで、ブロックを解く前に少なくともマイナーにどのブロックテンプレートが構築されているかをマイナーに知らせることができ、StratumV2以降は、すべてのマイナーが報酬の分布を正確に反映するテンプレートを構築したことを確認するだけで済み、すべてのマイナーがこれを行うために常にスケーリングする必要はありません。
また、マイニングプールは、マイナーが独自のブロックテンプレートを作成するインセンティブを提供することで、マイナーに低い手数料を請求することで、マイナーの消極的な対応にも対処することができます。 マイナーが再び実用化された後も、この負担を引き受けたくないのであれば、この追加のインセンティブが必要になるかもしれません。
上記の推奨事項は、状況を大幅に改善します。
ASICの製造とマイニングプールのインフラに関して、多くの新しい計画や発表が出てきており、マイニングの分散化が進む傾向にあることを目指す人にとっては歓迎すべき進展です。
45.21K 人気度
5.71K 人気度
4.05K 人気度
1.65K 人気度
1.62K 人気度
ビットコインマイニングの進化と未来:マイニングプールは問題になるのか?
作者:ビットコインメカニック;来源:Web3前沿
ASICからマイニングプールまで、ビットコインマイニングの課題、ソリューション、分散化の傾向を探る
ビットコインの提唱者であり教育者であるビットコインメカニックは、マイニングプールとマイナーの間の動的な関係に特に焦点を当てて、ビットコインマイニングに存在するさまざまな問題と課題を掘り下げています。 彼は、マイナーの自律性と全体的な分散化の傾向を高めることを念頭に置いて、既存の問題の解決策を提案しています。 その中で、StratumV2プロトコルの議論とマイニングエコシステムの将来の発展は、ユニークな洞察に満ちています。 さらに、この記事では、ASIC製造とマイニングプールインフラストラクチャの最近の開発を指摘し、マイニングセクターの分散化の新たな可能性を切り開いています。 既存のマイニングモデルの批判的分析と、将来の改善の可能性についての見通しを通じて。
ビットコインマイナーは、エコシステム全体に非常に重要なサービスを提供します。 サイバーセキュリティを確保する一環として、サトシ・ナカモトが設計した最も堅実でエレガントなデザインの1つであり、ビットコインの最も印象的な側面の1つであるネットワークから報酬を受け取ります。
しかし、マイニングがハッシュ化だけではないことを無視する人が増えているようです。
プロセスに関与する人は、ノードを実行してブロックチェーンの最新の状態を取得し、新しいブロックの構築を開始する必要があります。 これには、前のブロックの有効性の検証、未承認のトランザクションの発見、および一般的にそれらの中で最も収益性の高いトランザクションの選択が含まれます。 生成されたトランザクションで自分自身を支払い、それらのトランザクションの複数のマークルツリーを構築し、最後にハッシュして実際にブロックを解決します。 ブロックテンプレート内のトランザクションは、新しいトランザクションがネットワークにブロードキャストされると、常に変化します。 他の誰かが新しいブロックを見つけた場合、マイナーは代わりにそれに基づいて構築し、ブロックチェーンにすでに存在するすべてのトランザクションをダンプして、新しいテンプレートに入力する必要があります。
フォークのアクティブ化
ご覧のとおり、実際にブロックを解くためにハッシュを実行することは、プロセスの一部にすぎません。 ビットコインマイニングASICもハッシュのみが可能です。 現在の環境では、マイニングの他のすべての側面は、通常、マイニングプールに委任されます。 これはいくつかの混乱を招いています。 例えば、ブロックテンプレート内のバージョンビットを反転させてソフトフォークをアクティブ化する議論では、そのプロセスがMASF、つまり「マイナーアクティベーションソフトフォーク」であると常に言及され、マイニングプールが単独で責任を負い、マイニングプールはマイナーではないと主張する人が必ず現れます。 また、マイナーがアップグレードしたいが、自分がいるプールがそれを望まない場合は、プールを切り替えるだけでよいため、最終的な責任は依然としてマイナーにあると指摘するかもしれません。 わかりやすくするために、この記事の残りの部分では、ハッシュ化にのみ参加し、マイニングの他のすべての側面をプールに任せる人を「ハッシュ」と呼ぶことにします。
ソフトフォークに話を戻すと、ブロックの99%以上が同じ組織によって構築されている現在の環境では、これらを「プール活性化ソフトフォーク」と呼ぶ方が正確かもしれませんが、現在は誰もそう呼んでおらず、ハッシュパワーの分布だけでマイニングが分散化されていると見なすことができるという危険な錯覚につながります。 この主張は、すべてのハッシュパワーが少数のマイニングプールに制限されている場合に信じがたいものになるため、ビットコインブロックチェーンのコンテンツは、これらの少数のエンティティが受け入れられないと判断したものや、他の多くの問題を最終的に除外します。
マイニングプールによって構築されたブロックをハッシュするだけで、ビットコインマイナーはその役割の重要な要素の大部分を放棄しました。 これは可能であるだけでなく、最もスムーズな道であり、体系的な問題があることを示しています。
マイニングプールとブロックスペースマーケットプレイス
ハッシュ化だけを行い、他のすべてをプールに任せることの影響は、ソフトフォークのアクティベーションをはるかに超えています。 例えば、現時点では、マイナーは解決されたブロックがどのように見えるかまったく見当がつかないため、マイナーはブロックに目的のトランザクションのみが含まれていることを盲目的に信頼して作業しています。 しかし、このようなブロックでは、その信頼をあからさまに侵害し、「平凡な」熱狂を引き起こした有名なブロックを目にするでしょう。 このブロックで作業しているマイナーは、実際にはビットコイン取引手数料で約200ドルしか享受できませんが、その両側の平均ブロック取引手数料はビットコインで約5,000ドルであることに注意してください。
ブロックスペースには価値があり、それがビットコインが長期的に機能する理由の一部です。 しかし、ほんの一握りの参加者だけが構築したテンプレートをブロックチェーン上に配置できる世界では、これらのエンティティはスペースを販売し、それに対して超高額な報酬を得るほぼ独占的な権利を持っています。 彼らがこれをやっていることは、彼らの鉱山労働者に対する責任であり、おそらく告白なのだろうか? もちろん、この場合、意図はみんなを驚かせることです。 将来、彼らは帯域外ブロックスペースの販売で受け取ったお金をハッシュ化者に転送しますか?
要するに、マイニングプールとそのハッシュのインセンティブは一般的に利益を最大化するという目標と一致していますが、マイニングプールが通常のビットコイン取引以外の何かのためにブロックスペースを販売することは可能であり、マイニングプールが透明性を選択し、収益を共有することに同意しない限り、マイナーの収入はより限られています。 仮にそうだとしても、検証にはマイニングプールからの許可が必要であり、補助金や取引手数料から得た資金の検証は必要ではありません(FPPSマイニングプールを使用する場合は注意が必要ですが、これについては後で詳しく説明します)。
ビットコインの集中型ブロックテンプレートのビルダーとしてのマイニングプールのさらなる影響は、より基本的なレベルでは、独自の「スーパーメモリプール」を持つ12の「スーパーノード」があるというより基本的な事実に由来します。
これにより、人々はマイニングプールを直接扱い、mempoolを完全に無視するようになりました。 何があっても、mempoolは滅びる運命にあると主張する人もいます。 中央集権的なテンプレート構築の現状は、このプロセスを加速させるだけですが、いずれにせよ望ましいものではなく、真に分散化されたテンプレート構築が実用的であると考えられている世界では、そのような仮定をするのは悲観的すぎるかもしれません。 そして、ブロックスペースを購入した人が同じ時間枠でブロックチェーンに含めたい場合、帯域外の支払いをより多くの人々に渡す必要があります。 これは、現在の動作と同様に、より透過的である可能性があります。 逆に、「スーパーノード」はより小さな断片に分解されることが予想されるため、同じ保証を提供できなくなります。
マイニングのこの側面から逸脱するために、現在の支払い方法がどのように処理されているかに焦点を移しましょう。
マイニングプールのペイアウトモデル
ほとんどすべてのマイニングプールは、FPPS(Full Pay Per Share)などを介してハッシュに支払います。 唯一の例外はViaBTCで、FPPSに加えてPPLNS(Last N Share Payouts)を提供しています。 AntpoolはPPLNSも提供していますが、ハッシュ化者はすべての取引手数料収入をあきらめなければなりません。 基本的に、補助金よりも取引手数料収入に重点が置かれている世界では、FPPSはうまく機能するモデルではありません。 Braiinsプール(旧Slushpool)は「スコア」と呼ばれるシステムを使用していますが、これは実際にはPPLNSと非常によく似ています。
なぜFPPSがこれほどまでに好まれるのでしょうか? ハッシュ作成者の視点から見ると、ブロックチェーンで何が起こっても報酬が支払われます。 これはマイニングプールの目的と一致しており、収入はさらにそれと一致しています。 FPPSは、マイニングプールが予測される収益に基づいて支払いを行い、ブロックチェーンとは無関係に決済するため、より一貫した支払いを提供します。
これにより、キャッシュフローの中断によって引き起こされる問題を最小限に抑えたいマイナーにとって、生活は非常に簡単になりますが、もちろん欠点があります - ここで強調したい重要な欠点です。
FPPSではまず、マイニングプールが新しくマイニングされたすべてのビットコインのカストディアンである必要があります。 これらのビットコインは、マイニング後最低100ブロックの間はマイナーに転送できないため、新たにマイニングされたビットコインはそれまで使用できず、実際、マイニングされたビットコインは、マイナーがマイニングプールから撤退したときに受け取ることになるビットコインとは何の関係もありません。 第三者による親権のリスクは、この記事を読んでいるほとんどの人にとって明らかなはずなので、この点はスキップして、FPPSに関する他の問題に移ります。
次の懸念は、FPPSマイニングプールがハッシュとネットワーク自体の間の重要な仲介者であるという、より一般的な問題から来ています。 ハッシュ化者は、解決されるまで、作業中のブロックがどのようになるかを事前に知ることはできないことを確認しました。 FPPSは、ブロックが発見されたかどうかさえ気にせず、マイニングプールの問題です。 ペイアウトの増加の予測可能性(プールがハッシャーを騙すことを決定した場合、それは決して起こりません)を無視して、そうすることのトレードオフを認識する必要があります。
ビットコイン自体から直接支払われるマイナーは、PPLNSやもちろん独立したマイニングなどの代替手段で可能ですが、取引手数料を含め、完全に報酬を受け取ることが期待できます。 FPPSプールは、ハッシュ作成者が実際に1株あたり受け取る金額を決定する際に、手数料がいくらに達するかを予測する方法がないため、事後にのみこれを計算できます。 マイニングプールは、手数料が0より低い場合、自分のポケットからマイナーに支払うだけなので、手数料が0より大きい特定の値であると単純に想定し、マイニング時にマイナーの収入に含めることはできません。 彼らは定期的に手数料を割り当て、実際にプールで拘留されているマイナーに帰属させる必要があります。
ハッシュ作成者の観点からは、マイニングプールの完全な透明性と協力がなければ検証はほぼ不可能であるため、マイニングプールには完全な信頼が必要です。 上記のように、マイニング収益のほとんどが補助金から来ており、取引手数料はそこに散らばっているサトシのほんの一部であるため、これは以前は大きな問題ではありませんでしたが、これは成長するビットコインマイニングの未来ではありません。 将来的には、マイナーは主に取引手数料を通じて収益を得ることになりますが、マイニングプールを利用する場合、補助金よりも予測や監視が困難です。
ハッシャーはPPLNSのような支払いスキームよりも大きなバリエーションを受け入れており(マイニングプールの運はハッシャーの運になります)、マイニングエコシステムは、受け取ったものを検証する能力よりも支払いの一貫性を優先する傾向が極めて強いことがわかります。 傷害に侮辱を加えるために、一部のハッシュ作成者は実際にこのアプローチを好みます-ビットコインから完全に切り離された一種の「ハッシュサービス」として政府機関に自分自身を提示したいと思っています-そしてそれを誇りに思っている人もいます。 これは、FPPSが理想的なマイナー/プールのダイナミクスからかけ離れているため、たとえそれが「ビットコインマイニング」であっても、ハッシュチャーが正確に何をしているのかを再度説明するのが難しいためです。
実際、FPPSマイニングプールは、ブロックを解決するためにハッシャーにお金を払う大規模な独立したマイナーです。 その後、彼らはハッシャーに支払われる金額が決定される内部的で不透明なプロセスを持っています。 これを実際に説明するために、ハッシャーは(いくつかのそれほど難しいシナリオでは)ビットコイン以外のものでそれを支払うことさえできます。
ブロックが見つかったかどうか、ましてやブロックが構築される前にどのように見えるかを気にしない場合は、独立したマイナーに不換紙幣を支払ってもらい、ASICを最も便利な通貨でそれらに向けてみてはいかがでしょうか。 ビットコインは常に最も摩擦のないオプションであるとは限りませんが、それでも、「ハッシュ」を好きなだけ多くのエンティティで実行できる次のパスに進むことを想像するのは合理的ですが、すべて「マイニングプール」の小さなグループに代わって これで、ネットワーク全体がブロックチェーンに何かを実際に記録する許可を得る必要があります。
誰がハッシュ化しているのか?
これをより広い文脈で見てみましょう。 すでに述べたように、一部の大手プレーヤーはビットコインからできるだけ離れたいと考えているため、ビットコイン関連の活動を可能な限りマイニングプールに委任することをいとわない。 これらのマイニングプールは規制を受けやすく、その大きなハッシュレートは非常に満足しています。
これもまた、ネットワーク自体の観点から経済的な非合理性をもたらし、特定の恣意的な基準を満たすブロックをマイニングする行為に現れます。 過去にこのようなことが起こったとき、コミュニティの反発と、頼まれもしないのに管轄区域の刻々と変化する規制体制を積極的に喜ばせようとすることの不条理さのために、それは長くは続きませんでした。 しかし、実際には、これは選択の選択肢であり、一元化されたブロックテンプレートを構築することのリスクを露呈しています。 ある管轄区域のマイナーは、別の管轄区域からの取引を禁止したり、処理を拒否したりしようとしますか?マイナーは政府やインフルエンサーによる悪質な行動の延長線上にあるだけなのか?違法な利益を上げるために、時には規制の圧力に従うためだけに、取引手数料を拒否するマイニングプールの具体的な例があります。 ネットワークの観点から見ると、これも経済的に不合理に見えます。
最も極端な最近の例は、1回の取引で支払われる19BTCの取引手数料で、これは最終的にF2Poolによって発見され、表面上はバグでした。 FPPSマイニングプールとして、彼らは19BTCのマイニング手数料の管理人となり、ミスを犯した人に返還することを選択しました。 これは、マイナーとビットコインネットワークの間に大きすぎる仲介者を配置するコストを完全に示しています。 PPLNSマイニングプールでは、これが起こる可能性は低くなります。 PPLNSプールが必ずしもトラストレスまたはノンカストディアルであるからではなく、正確なブロックエントリーの瞬間に手数料収入を監視および検証できるため、プールがマイニングファンドのシェアを内部に預け入れている可能性があるため、プールが試行するのが難しくなり、より大きな反発を引き起こします。 原理的には違いはありませんが、マイニングプールがコインベース/ジェネレーティブトランザクションでマイナーに支払うとどうなるかを比較するまでは。 その場合、お金はすでにマイナーの手元にあり、マイニングプールは手数料収入を横取りすることはできません。 つまり、この例では、プールは寛大で公平に見せたいが、マイナーは50万ドルの手数料収入を失うことになる。
次の問題:51%攻撃とその他の攻撃
これは簡単に説明できるはずです:現時点では、51%攻撃が何であるかは誰もが知っています。 しかし、(ネットワークが迂回するまで)あまり理解されていないのは、この攻撃が破壊的であるだけでなく、保証され、一貫して成功するための要件は51%であるということです。
実際、ネットワークシェアの20%を超えるエンティティは、さまざまな攻撃ベクトルを通じて問題を引き起こす可能性がありますが、その一部は実際に実行され、めったに議論されませんが、これについては後で詳しく説明します。 しかし、その前に、このネットワークには、総計算能力の51%を確実に超えるエンティティが2つしかないことがわかります。 さらに悪いことに、最大のマイニングプールの1つは、別の大規模なマイニングプールで見つけたブロックの残りの10%を慎重にカバーしておらず、このマイニングプールは親会社との戦略的パートナーシップを維持しています。 この茶番劇がいまだに続いているという事実は説得力がありません。
これに対する一般的な応答は 2 つあります。 まず、マイナーが51%の攻撃のために団結した場合、プールを変更するだけで投票できることが指摘されました。 第二に、これを行おうとするマイニングプールは、ビットコインを壊すと価格が下がるという単純な理由でクレイジーであり、エコシステムに投資する人には起こらないと予想されます。 第二の議論は、人類の歴史を無視し、さらに、人間が破壊的な行動をとらざるを得ず、破壊のためだけに、あるいは他の極悪非道な目的のために破壊を引き起こすことは決してないと仮定しています。 また、市場がビットコインが問題を抱えていることを示す良い指標であるとは限らないことも考慮されていません、2017年のハードフォーク戦争を参照してください。
ただし、最初の引数は、特定のプールが大きくなりすぎた場合、マイナーは常に他のプールに切り替えると仮定すると、より強力です。 実際、プールがこれを行おうとすると、現実が介入し、ブロックテンプレートの99%を構築しているにもかかわらず、プールは実際にはマイナーではないことに気付くでしょう。 たとえば、よく知られたケーススタディである Ghash.io では、ハッシュレートが40%を超えるため、致命的な下降スパイラルを引き起こしました。
つまり、これは実際には問題ではなく、マイナーは信頼できることを証明し、他のプールに移動するのです。 実際には、大規模なマイニング作業が官僚主義によって制約されている場合、この仮定の信頼性は低くなりますが、少なくとも、そのような攻撃の可能性は低いとかなり確信していると仮定しましょう。
残念ながら、マイニングプールのハッシュパワーは、ひどいしきい値を超えるとすぐに他の場所に移行するという認識により、自己規制を余儀なくされます。 しかし、ハッシュパワーを閾値以下に維持する必要はなく、外界にその印象を与えるだけでよいため、これは役に立ちません。 これは基本的に、彼らが手に入れることができるすべてのハッシュパワーを受け入れながら、それを他のマイニングプールに転送して、混乱を引き起こす可能性があることを世界に警告することを避けることになります。
このように、私たちはネットワークについてあまり知りません。 ブロックの30%は最大のマイニングプールで見つかり、すべての人に受け入れられますが、ネットワーク全体のハッシュレートの残りの10%はそのプールに向けられ、1つ以上の小さなマイニングプールに密かに転送されます。 この10%を担当するマイナーは、このように使用されていることに気付かない可能性があり、stratumV2で検出するのはより困難です。 これについては後ほど詳しく説明します。
このすでに望ましくない状況は、このリダイレクトされたハッシュレートがブロックマイニング攻撃を通じて小規模なマイニングプールに害を及ぼすために使用される可能性があることを考えると、さらに悪化します。
具体的には、攻撃者は主に被害者プールの通常のユーザーとしてマイニングプロセスに参加します。 その結果、マイニングプールで見つかったブロックから期待どおりに報酬の一部を受け取ります。 報酬は最終的に攻撃者に支払われ、攻撃者は資金を失うことなく実際のマイナーに支払うことができます。 これまでのところ、プールのハッシュレートに対する誤った印象を与えただけで、実際よりも小さく見えますが、小さなプールは無傷のままです。
ここで、攻撃者がブロックを見つけたときに被害者プールに通知しないことを決定した場合、損害が発生します。 これにより、被害者プールが不運に見える可能性があります。 彼らは、必要以上に少ないブロックを見つけ、実際に正直なマイナーである参加者、つまり、他の方法でそれらの損失を補わないと仮定して、負ける運命にある参加者により多くの報酬を支払うようです。
FPPSマイニングプールがこのように攻撃された場合、収益を燃やし、マイナーにポケットからお金を払ってギャップを埋め合わせる必要があります。 PPLNSの場合、マイナーはなぜ自分たちにふさわしいものが得られないのか不思議に思うでしょう。 いずれにせよ、ブロックマイニング攻撃は反競争的であり、悪い評判を与えることで被害者プールを破壊する可能性があります。
マイニングプールを攻撃する観点から、被害者のマイニングプールのハッシュレートの5%を占めているとしましょう。 これは、彼らがまだ予想される収益の95%を受け取っていることを意味しますが、マイニングプールは予想よりも5%運が悪く見えます。 これはマイニングプールを簡単に破壊するのに十分であり、より大きなマイニングプールでは、リダイレクトされたハッシュレートの5%の損失ははるかに重要ではありません。 より大きなプールの合計ハッシュレートの1%しか表さない場合、攻撃者は予想される報酬の1%の5%(0.05%)のみを失います。 これは、非倫理的に行動する準備ができている悪意のある大規模なマイニングプールにとって明確な利点です。
マイニングプールが小さければ小さいほど、この攻撃に対して脆弱になります。 プールが大きければ大きいほど、競合他社の小さなプールを止める可能性が高くなります。 このリスクは、大規模なマイニングプールが合計ハッシュレートがコミュニティにパニックを引き起こし始めるレベルに近づくにつれて増加し、実際にハッシュパワーを使用していなくても、または問題が分散に煮詰められるほど頻繁に攻撃しない場合でも、少なくとも小さなプールにハッシュパワーを隠すように促されます。 大規模なマイニングプールは、ネットワークがより一貫した支払いを提供するため、変動性が低下し、より厳しいマージン内で運営できるため、マイナーへの請求額が少なくなります。 攻撃されていない各マイナー/マイニングプールの観点から、この攻撃は、ビットコインネットワークが調整して合計ブロック数が少なくなるため、難易度が低くなることを意味します。
ブロック保持は理論上のものですか? 絶対に違います。 2015年初頭にも、いくつかのマイニングプールがこの方法で攻撃されました。 プールはすべてのマイナーを監視し、プールから追い出すか、支払いを拒否するかを慎重に決定しなければならず、彼らの運が統計的に不可能な場合、プールは彼らが悪意を持って行動していると合理的に想定できるため、この攻撃を阻止することは非常に困難です。 また、この種の攻撃は、マイニングプールが「マイナーを知りたい」と思い、支払いを規制する動機付けにもなりますが、これはもちろん、許可なくマイニングしたい人にとっては生活をより困難にします。
いずれにせよ、これらすべての全体的な影響は、人々が別の理由でより大きなマイニングプールでマイニングすることを好むということです。
大規模なマイナーが、期待したほど報酬が支払われていないため、小規模なプールをあきらめていると公然と言っているのを聞いたことがあります。
大規模なマイニングプールとそれらを使用する大規模なマイナーは、規制上の負担に悩まされる可能性が高く、したがって、ブロックテンプレートの集中化とすべてのブロック報酬の一時的なエスクローを超えて、ビットコインに害を及ぼす行動に従事する可能性が高くなるため、これは非常に望ましくありません。
マイニングプールは実際にエージェントとなり、「彼らに代わって」マイナーに官僚的なナンセンスを押し付けます。 現在、2つの最大のマイニングプールでは、ユーザーは自分の身元を明らかにするものを含む多くの面倒な手順をスキップする必要がありますが、これはビットコインマイナーが独立したマイニングの外で通過しなければならないものではなく、またそうである必要もありません。
ブロック保有に関するこの最後の点については、小規模なマイニングプールやマイニングを希望する人々の生活をより困難にするという脅威は別として、明らかに過去に起こったことにもかかわらず、これを純粋な理論として退けようとする可能性のある人々に言いますが、マイニングプールは自然に一貫性があり、明らかに許容できるサイズであると思いますか? これは、新しいハッシュレートが常に何らかの方法で均等に分散されることを意味します。 マイニングプールが出現し、急速に成長し、人々が動揺する前に必要なしきい値付近で停止する可能性があると信じなければなりません。 マイニングプールが人々にマイニングをやめるように求めているのか、それとも単にアカウントの作成を制限し、既存のアカウントで許可されている以上のハッシュレートを持つマイナーを追い出しているのでしょうか? もちろん違います。
より可能性の高い2つのシナリオは、マイナーが集団的に自己規制しているというものです。 しかし、この記事で紹介した理由が十分に説明されていなくても、マイニングプールが小さくなるとマイナーの収入が少なくなることはよく知られているため、これはありそうにありません。 言うまでもなく、マイニングプールからの品質の大規模な移行の事例はすべて非常に説得力があり、プールが指し示しているハッシュレートについて人々を誤解させているだけであることは言うまでもありません。
これに加えて、小さなプールには別の問題があります:大きなプールは数時間しか持たないのに対し、彼らは何日もブロックを見つけられないかもしれません。 それは解決策の問題であり、ハッシュレートが高ければ高いほど、短期的には期待に近づきます。 残念ながら、この結果、不運な時期にマイニングプールが損失をカバーすることが期待できない下限値になり、その時点で競争が不可能になります。
難易度の時代と難易度の間には2週間という期間があるため、その2週間の間に十分なブロックを見つけ、その後の幸運で相殺するチャンスを得る必要があります。 そうでない場合、例えば、プールの予測ブロック率が13日ごとに1ブロックで、難易度調整が上がる前にブロックが見つからず、15日ごとに1ブロックの予測に低下した場合、前の時間枠は永久に閉じられます。 PPLNSマイニングプールの場合、マイナーの収入は他の場合よりも少なくなります。 FPPSマイニングプールの場合、マイニングプールは多額の現金を燃やしたり、破産したりします。
これは、少なくとも今日のマイニングプールの運用方法では、その数のマイニングプールしか存在できないことを意味します。 簡単に言うと、不利な時期にクラッシュする可能性のあるものの多くは、ネットワークのハッシュレートの1%未満であるため、毎日確実にブロックを見つけることさえできず、ブロックのない週が数週間ある可能性があるため、数百はあり得ません。 これは、ビットコイン自体が私たちに課す一種の制限です。
マイナーとマイニングプールはどのように通信するのですか?
マイナーとマイニングプール間の通信プロトコルはStratumです(StratumV2に徐々に置き換えられています)。 StratumV1は古く、大きな欠陥があります。 まず第一に、すべての通信は平文で送信されます。 これは、ISPがあなたがマイニングしていることだけでなく、マイニングの規模も知っていることを意味します。 ネットワークトラフィックを盗聴できる人は誰でも中間者攻撃を実行し、あなたのコンピューターとコンピューティングパワーを他人のマイニングに使用させることができます。 これは以前、未知の攻撃者によって悪用され、意図したマイニングプールからハッシュパワーを盗むことがありました。
いくつかの非効率性に加えて、StratumV1は、マイナーが独自のブロックテンプレートを構築し、プールでマイニングするための実用的な方法を提供していません。 これらの問題はすべて、非常に魅力的なStratumV2(当初は「GBT」と呼ばれ、その後「Better Hash」と呼ばれていました)で対処されましたが、これについては後で説明します。
ハードウェア/ファームウェア
プール/マイナーのダイナミクスについて説明する前に、意味のある規模でASICを製造している企業はBitmainとMicroBTの2社しかないことに言及しなければ、この記事は不完全になるため、少し逸脱します。 他にも会社もありますが、実はこの2社が作ったマシンでハッシュ化がほとんど行われています。
これは明らかに悪いことであり、根本的な原因は、チップ製造が非常に困難であるため、中央集権化されすぎていることです。
この記事の範囲は、ここで解決策を議論するこの記事の範囲を超えていますが、ホームマイニングをより実用的にするために取り組んでいる人々がいます(北米では、主な問題は220〜240ボルトの必要性と過酷なノイズへの対処です)。 「プレブマイニング」プロジェクトに取り組んでいる人々は、十分な数の通常のビットコインユーザーがこれを行うことができれば、ネットワークの総ハッシュレートのかなりの割合を占め始めることができ、規制干渉の影響を受けやすいため、ほとんどの規模のマイニング操作よりも好ましいと主張しています。
このタスクの難しさは、ファームウェアがクローズドソースであるという事実にあります。 ASICを「ジェイルブレイク」できるカスタムファームウェアでさえ、ユーザーが開発にお金を払うようにクローズドソースになる傾向があります。
ASIC、特にBitmainの工場出荷時のファームウェアは、ASICが市場支配にどれだけ自信を持っているかを示す良い指標です。 クローズドソースであることに加えて、明らかに悪意のあるものです。 Antminerを起動すると、マイナーは接続をブロックするか、マーケットファームウェアをインストールしてから開発費を支払うことで、少なくともこれを防ぐことができますが、これらの料金を止めることはできません。 Bitmainは、マイナーのファームウェアに悪意のあるバックドアを追加することが何度も確認されており(Antbleedを参照)、マーケットプレイスのファームウェア開発者をブロックするために積極的に取り組んでいます。
実際、これは衝撃的であり、ASIC製造において切望されている競争の緊急性を明確に示しています。
ネットワークルールがクローズドソースのビットコインノードによって強制された場合、誰もが快適でしょうか? また、これらのノードがユーザーがソフトウェアの開発者にビットコインを失う原因となることを私たち全員が知っていた場合、誰かがそれを受け入れると想像してみてください。 マイニングに関しては、参加者の主権を気にする人はほとんどいません。 もちろん、ノードソフトウェアとASICファームウェアの重要性は同じではなく、前者に焦点を当てることは当然ですが、後者は重要ではなく、明らかに見落とされています。
そうは言っても、マイナーの可能性の範囲を拡大し、既存のモデルを改善することに特に焦点を当てて、いくつかのソリューションに移りましょう。
P2プール
これについては、基本的にプールマイニングのあらゆる側面を分散化すること以外に、あまり言うことはありません。 これは小規模で多くの望ましいことを行いますが、各ユーザーが他のユーザーの共有をダウンロード、検証、追跡し、テンプレート内のすべてを正しくカウントしていることを互いに証明する必要があります。 どのような規模の対立的な環境でも、これを達成することは本質的に不可能な作業です。 プールマイニングの基本的な性質により、マイナーの仕事がより複雑になることは言うまでもなく、ビットコインのフルノードを実行するよりもはるかに多くのリソースが必要です。
これらの理由から、ほとんどの人はそれを無視し、より技術的なユーザーまたは理想主義者だけがそれを使用しており、当然のことながら、他の代替手段を使用して自分自身を実現することはできません。
STRATUMV2
これは間違いなく最も簡単に解決できる問題であり、この記事で説明した問題の多くに対する実用的な解決策を提供します。
まず、マイニングプールとマイナー間の暗号化された通信を許可することで、ISPやネットワークトラフィックにアクセスできるその他のエンティティは、マイニングしていることや、マイニングの距離を簡単に認識できなくなります。 その結果、攻撃者の名前でハッシュ化できる「MITMing」も不可能になるか、さらに容易ではなくなります。
第二に、そしておそらく最も重要なことですが、マイナーが独自のブロックテンプレートを構築できるようになるため、プールは報酬分配の信頼できるコーディネーターであり、ブロック報酬の管理者であり続ける可能性がありますが、これはプールからマイナーへの権力の移行を表しており、これは間違いなく良いことです。
StratumV2が標準である世界では、マイナーは独自のテンプレートを構築することに熱心であり、理想的には、マイニングプールは独自のテンプレートを構築するマイナーにインセンティブを提供し、はるかに強力なビットコインにつながります。
コミュニティは、マイニングエコシステムをStratumV2にアップグレードするというコミットメントでほぼ満場一致ですが、歴史的に、マイナーは、余分な労力(p2poolと比較すると微々たるものですが)とインセンティブの欠如のために、一般的にこれらのソリューションを避けてきました。
StratumV2の有無にかかわらず、改善の余地はたくさんあります。 必要なのは、マイナーがマイニング中にコインを直接ホストする機能を提供するマイニングプールです。 これには、マイニングプール(またはそのマイナー)が、各ブロックに含まれるコインベース/生成トランザクションでマイナーの報酬が直接支払われるブロックテンプレートを構築する必要があります。 FPPSシステムの下では、これは実際には実用的ではなく、このアプローチを実践するマイニングプールは一部のマイナーの消極的に直面することを意味しますが、切り替える人は、ビットコイン自体が特定のしきい値を超えて直接支払われ、簡単に検証可能な補助金と手数料収入の分配が行われるため、より高い透明性を享受できます。 これは、StratumV2以前でもマイニングプールと組み合わせて使用することで、ブロックを解く前に少なくともマイナーにどのブロックテンプレートが構築されているかをマイナーに知らせることができ、StratumV2以降は、すべてのマイナーが報酬の分布を正確に反映するテンプレートを構築したことを確認するだけで済み、すべてのマイナーがこれを行うために常にスケーリングする必要はありません。
また、マイニングプールは、マイナーが独自のブロックテンプレートを作成するインセンティブを提供することで、マイナーに低い手数料を請求することで、マイナーの消極的な対応にも対処することができます。 マイナーが再び実用化された後も、この負担を引き受けたくないのであれば、この追加のインセンティブが必要になるかもしれません。
上記の推奨事項は、状況を大幅に改善します。
ASICの製造とマイニングプールのインフラに関して、多くの新しい計画や発表が出てきており、マイニングの分散化が進む傾向にあることを目指す人にとっては歓迎すべき進展です。