431 / 736CAP

Jan Čapek

Braiins 共同創業者、Stratum V2 共同設計者

マイナーが自分の機器をよりよく管理できるよう取り組む Braiins 共同創業者。Braiins OS から、マイナーとプールの通信規則である Stratum V2 の共同設計まで手がけています。

Jan Čapek はチェコの技術者で、Pavel Moravec と Braiins を共同創業しました。Bitcoin の採掘には強力な機器を買うだけでは足りません。仕事を渡し、動作を制御するソフトウェアも必要です。Čapek はこの部分に取り組み、採掘機器内のソフトウェア Braiins OS に携わるとともに、Moravec、Matt Corallo と Stratum V2 を設計しました。このプロトコルは機器と採掘関連サービスの通信方法を定めます。その歩みは、所有者が実際に何を管理できるかをソフトウェアが左右することを示しています。

Čapek と Pavel Moravec は、機器の内部で動く組み込みソフトウェアを開発する会社として Braiins を設立しました。一方、Slush として知られる Marek Palatinus は、2010 年に Bitcoin.cz Mining Pool を創設していました。プールではマイナーが仕事をまとめ、規則に従って収益を分けます。それぞれが単独でブロックを見つけるまで待つ方式とは異なります。この二つの歴史が後につながりました。Čapek はプールを引き継いだ会社の共同創業者であり、元のプールを作ったのは Palatinus です。 [1]

2013 年、Braiins は過半数の持分を取得して運営全体を引き継ぎ、Palatinus は Trezor に集中できるようになりました。残りの持分を取得したのは 2020 年 9 月 1 日です。ウェブサイトの発表には 2021 年 12 月 29 日という公開日が付いていますが、本文はそれ以前の取引日を示しています。歴史を読む際、この違いは大切です。後から公開された記事だからといって、その時に初めて運営を始めたわけではありません。運営の引き継ぎと所有権移転の完了は別々の段階でした。 [1]

Antminer S9 を思い浮かべてください。チップは計算を繰り返しますが、プログラムが仕事を準備し、動作を制御する必要があります。採掘機器を制御するソフトウェアをファームウェアと呼びます。会社史によれば、Čapek が率いるチームは、採掘計算を効率よく利用する AsicBoost への対応を検証し、2018 年に公開されたオープンソースの Braiins OS を開発しました。公開されたコードは開発者が動作を調べられます。ここで確認できる Čapek の貢献はソフトウェアであり、チップそのものの設計ではありません。 [1] [2]

2020 年公開のインタビューで、Čapek は autotuning を説明しています。選んだ消費電力の設定に合わせ、各チップに適した周波数と電圧を自動で探す仕組みです。周波数は仕事の速さ、電圧は電気的な動作に関係し、利用できるエネルギーを有効に使うことを目指します。マイナーには性能の数字だけでなく運転費も重要です。当時、Čapek は Braiins OS の公開基盤に有料の独自機能を重ねる案を検討していました。この取材が示すのは当時の事業案であり、現在の全バージョンのライセンスや価格ではありません。 [2]

機器内のプログラムに加え、仕事と結果を送る共通言語も必要です。採掘プロトコルは、双方が理解できるメッセージの規則を提供します。Jan Čapek、Pavel Moravec、Matt Corallo は Stratum V2 を共同設計しました。公式サイトでは独立したオープンソースコミュニティが保守を担うとされています。Čapek の貢献は Braiins の製品の外にも及びます。異なる開発者が連携できるプログラムを作るための共通標準であり、一社が所有するプロトコルではありません。 [3]

インターネットで結果を送るマイナーは、途中で読まれたり書き換えられたりすることを望みません。Stratum V2 はメッセージの完全性も確認する暗号化と、サーバーの本人確認を使います。仕様では上流サービスへの遠隔接続に安全な接続確立手順を要求し、機器と近くの中継役との間など、ローカルネットワークではその手順の例外を認めます。これはメッセージの通り道を守りますが、プールの会計を監査したり、後の支払いを保証したりはしません。安全な通信と信頼できる運営者は別の問題です。 [4]

もう一つの問題は、取引を含めた次のブロック案を誰が作るかです。この案をブロックテンプレートと呼びます。Job Declaration は、マイナー側のプログラムであるクライアントが、対応するプールと独自の仕事を調整する仕組みです。Template Distribution がテンプレートを渡し、Mining Protocol が採掘の仕事と結果を運びます。これらは連携が必要な構成要素です。ファームウェアに Stratum V2 と書かれているだけでは、実際にマイナーが取引を選んでいるとはわかりません。対応し、有効になっている機能が決め手です。 [5]

仕様は拒否も扱います。DeclareMiningJob.Error は採掘ジョブの申告が拒否されたことを示します。クライアントはその後、JDS、すなわち Job Declarator Server を備えた別のプールに移るか、最後の手段として solo mining に切り替えることになっています。単独採掘では、プールと同じようには収益を分けません。切り替えには動作する代替設定も必要で、プロトコル名だけで運転の継続は保証されません。設計の狙いは、マイナーが離脱しても選んだテンプレートを使い続けられることです。実現できるかは構成全体にかかっています。 [5]

理解を深めるには、この項目とあわせて次もお読みください Braiins, Stratum V2, Mining Firmware. 次の項目からも参照されています Stratum V2.

DOC · 001Braiins — Remaining pool stake acquisition一次資料 DOC · 002Jan Čapek — Mining software interview, 2020一次資料 DOC · 003Stratum V2 — Designers and independent maintenance一次資料 DOC · 004Stratum V2 — Protocol Security仕様 DOC · 005Stratum V2 — Job Declaration Protocol仕様
改訂日: 一次資料を優先 · 投資助言ではありません