47 / 691ASIC

ASIC Miner

専用マイニングハードウェア

ビットコイン マイニング ASIC は、SHA-256 プルーフ オブ ワーク候補の極めて高速かつエネルギー効率の高いテストを目的として設計された専用の集積回路です。固有の作業は、ファームウェア、コントローラー、プールまたは独自のノードによって提供されます。

ASIC はハードウェアの専用化を意味し、コンセンサスを支配する権限を意味しません。チップは候補となる 80 バイトのブロックヘッダーに double-SHA-256 を繰り返し適用し、指定された target を満たす結果を報告します。マイニング装置全体には、コントローラー、電源、クロック、冷却、ファームウェア、block template やプールのジョブの供給元も必要です。Hashrate は毎秒の試行回数、J/TH はテラハッシュ当たりのエネルギーを示します。どちらも利益や Bitcoin のルールを変更する権利を保証しません。

ASIC は、汎用の命令ロジックではなく、シリコン内に狭いタスクを直接実装します。したがって、マイニングは歴史的に、CPU と GPU、FPGA、SHA-256 ASIC へと移行してきました。固定データパスは、ジュールあたりより多くのハッシュを処理できます。その代償は柔軟性のなさです。SHA-256 マイニング ASIC は、タスクが変更されたときに簡単に再プログラムできる汎用コンピューターではありません。 [Bitcoin Developer Guide — Mining] [Bitaxe — open-source ASIC miner hardware]

Bitcoin の proof of work は、シリアル化した 80 バイトのヘッダーから SHA-256(SHA-256(header)) を計算します。ヘッダーには version、前のブロックのハッシュ、Merkle root、timestamp、nBits、32 ビットの nonce が含まれます。チップは変化しない部分の中間結果を再利用できますが、ネットワークが評価するのは最終ハッシュと target の関係(hash ≤ target)であり、装置内部の最適化方法ではありません。 [Bitcoin Developer Guide — Mining] [Bitcoin Core v29.0 — CheckProofOfWorkImpl]

32 ビットの nonce には 2^32 通りしかなく、現代の hashrate では短時間で探索し尽くします。そのため、マイニングシステムはほかの変数も変更します。coinbase の extranonce を変えると coinbase トランザクションが変わり、Merkle root も変わります。nTime はコンセンサス上の制限内で変更でき、BIP320 提案は version bits を汎用用途に予約します。Stratum V2 は重複しない探索空間を機器に割り当て、同じ候補の重複計算を防ぎます。 [BIP 320 — nVersion bits for general purpose use] [Stratum V2 — Mining Protocol specification]

ASIC 自体はトランザクションを選択したりルールを作ったりしません。Full node またはテンプレート提供者が候補ブロックを構築します。BIP22 は getblocktemplate を、BIP23 はそのプールマイニング拡張を標準化します。プールやプロキシは機器向けに target と変更可能な変数を含むジョブを用意します。Stratum V2 は Mining Protocol、Job Declaration、Template Distribution を分け、作業配布とトランザクション選択を別の役割にできます。 [BIP 22 — getblocktemplate fundamentals] [BIP 23 — getblocktemplate pooled mining] [Stratum V2 — Protocol overview] [Bitcoin Core — getblocktemplate RPC]

プールは通常、Bitcoin ネットワークの target よりも大幅に達成しやすい share target を設定します。プールの target を満たす share は、報酬を計算するための作業量を統計的に裏付けます。さらにまれな、network target も満たすハッシュだけが有効なブロックの候補になります。したがってプールの難易度が変えるのは share の頻度であり、コンセンサス上の難易度や装置の物理的な hashrate ではありません。 [Bitcoin Developer Guide — Mining]

Hashrate は毎秒のハッシュ計算回数です。消費電力はワットで測り、エネルギー効率は通常 J/TH、すなわち W を TH/s で割った値で表します。J/TH が低いほど同じ探索量に必要な電力量は少なくなります。ただし利益はネットワーク難易度、BTC 価格、手数料、稼働時間、電気代、冷却、資金調達、ハードウェアの減価償却にも左右されます。 [Braiins OS — Autotuning] [Bitaxe — open-source ASIC miner hardware]

同じタイプのチップであっても、電気的には同一ではありません。製造上のばらつきにより、漏れ電流、タイミング、必要な電圧予備量が変化します。したがって、ファームウェアは周波数とコア電圧を調整できます。多くの場合、アンダークロックすると エネルギー効率が改善し、J/TH が低くなりますが、オーバークロックすると、不釣り合いに多くの電力と熱を犠牲にしてハッシュレートが追加されます。自動チューニングは、特定のチップまたはハッシュボードに適したポイントを検索します。 [Braiins OS — Autotuning]

マイニング装置は ASIC だけではありません。電源、DC-DC 調整、コネクター、hashboards、ファンや液冷回路、コントローラーが全体の性能を制約します。高温、ほこり、ファンの故障、不安定な電圧、過度なクロック周波数はハードウェアエラーや停止のリスクを高めます。そのためチップ単体の効率は、コンセントでの消費電力から測る装置全体の効率とは一致しません。 [Braiins OS — Autotuning] [Bitaxe — open-source ASIC miner hardware]

ASIC は競争力あるマイニングに必要な資金と技術のハードルを上げ、調達、電力、修理、インフラで規模の経済を生みます。製造企業や hashrate の集中につながる可能性はありますが、コンセンサスを支配できることを意味しません。チップ製造、プール、物理的な設置場所、実際の hashrate 所有者の集中は区別して考える必要があります。 [Bitcoin Developer Guide — Mining]

ASIC は候補ヘッダーを探索し、上流ソフトウェアが指定するジョブを処理できます。しかし、無効なブロックを有効にしたり、発行上限を変えたり、他人のコインを使ったり、full node に異なるルールを受け入れさせたりはできません。運用者はファームウェア、プールの接続先、プール側の hashrate、拒否された shares、コンセントでの消費電力、温度、自らの block template 方針を確認する必要があります。 [Bitcoin Developer Guide — Mining] [Bitcoin Core — getblocktemplate RPC] [Bitcoin Core v29.0 — CheckProofOfWorkImpl]

理解を深めるには、この項目とあわせて次もお読みください ビットコイン・マイニング, Hashrate, SHA-256, ブロックヘッダー, Nonce, Extranonce. 次の項目からも参照されています Mining Pool, Hashrate, Nonce, Braiins.

DOC · 001BIP 22 — getblocktemplate fundamentals仕様 ↗DOC · 002BIP 23 — getblocktemplate pooled mining仕様 ↗DOC · 003BIP 320 — nVersion bits for general purpose use仕様 ↗DOC · 004Stratum V2 — Mining Protocol specification仕様 ↗DOC · 005Stratum V2 — Protocol overview仕様 ↗DOC · 006Bitcoin Developer Guide — Mining文書 ↗DOC · 007Braiins OS — Autotuning文書 ↗DOC · 008Bitaxe — open-source ASIC miner hardware一次資料 ↗DOC · 009Bitcoin Core — getblocktemplate RPC文書 ↗DOC · 010Bitcoin Core v29.0 — CheckProofOfWorkImpl一次資料 ↗
一次資料を優先 · 投資助言ではありません