Input Output が 8 月 27 日、Leios の公開テストネット MusashiNet について、最初のフェーズ「Earth」の記録を公式サイトに掲載しました。処理量の数字だけでなく、41 日間の運転で見つかった不具合を、発生から修正までの経緯つきで並べた文章です。
数字そのものは、8 月 21 日の記事で扱いました。そのとき残る観測点として挙げたのが「メインネットへの道筋と、遭遇した課題をまとめた文書が公開されるか」でした。今回の記事が、その 1 つを埋めています。SIPO は性能の主張よりも、壊れたときに何が起きたかのほうを観測点に置いています。壊れ方の記録は、設計の正しさではなく運用の現実を語るからです。
ここでは数字を再掲するのではなく、公開された 5 つの障害のうち、プールを動かす側に直接関わる 3 つを読みます。
初期報: https://sipo.tokyo/breaking-x-2092879262575378757/
■ 公開されたのは、数字ではなく壊れ方でした
先に、今回はじめて出た数値を整理します。Earth フェーズの 41 日間で、127,000 を超える Praos ブロック、30,000 の endorser ブロックの告知、そして 8,000 近い証明書がチェーン上に載りました。参加プールは開始時の 3 から 63 まで増え、ピーク時には 1 エポックで 40 プールがブロックを生成しています。安定した終盤の数日間では、チェーンに到達したもののうち 54% を Leios が運びました。同じ期間に実際のメインネットが運んだ量と比べると、トランザクション数で 18 倍、バイト数で 3.3 倍だとされています。
見出しになっている「約 6 倍」は、これとは別の比較です。合成負荷をかけた条件下でのピーク 26.8 TxkB/s と、現行パラメータで Praos だけのメインネットが到達しうる 4.51 TxkB/s の比を指しています。何と何を比べた数字なのかは 8 月 21 日の記事で分解したので、ここでは繰り返しません。
そのうえで、記事が自分から書いている位置づけのほうが重要です。「見つかった問題はすべてプロトコルの欠陥ではなく自分たちのコードのバグだった」「そのすべてを公開の場で、週次のリリース周期で直した」。8 週間で 12 のリリースが出ており、同じ週に 2 度のホットフィックスを挟んでも次のリリースを落としていません。そのうえで、まだプロトタイプであること、mempool の置き換えはレビュー中で、ボトルネックは残り、パイプラインは完成していないことも、同じ文章の中に書かれています。
■ 1 バイトの違いで、鎖が分かれました
4 週目の早朝、ネットワークがブロック 67,554 で分岐しました。VOLCY の Greg 氏がログを投稿しています。サイズの不一致——66,006 バイトに対して、宣言されていたのは 66,007 バイト。差は 1 バイトです。
原因は、別のノード実装を動かしていた生成者が、まったく正当なブロックを鍛造したことでした。それを Haskell のノードがデコードし、異なるバイナリ規約のもとで 1 バイト短くディスクに書き戻していました。同じトランザクション、同じ意味、違うハッシュです。
記事は、相手の実装は何も間違っていないと明記したうえで、こう書いています。ほかのノードのデータを再シリアライズしないというルールは 10 年近く前から持っていたが、自分たちがそれを破った、と。Nick Frisby 氏が同日中に暫定の防御(ディスクへ書く途中でブロックのバイト列を変えるのをやめ、すでに壊れて届いているものを修復する)を投入し、恒久的な修正は台帳側の上流に入って、Earth フェーズが終わる前に着地しています。
ここは、Leios 固有の話として読まないほうがよいところです。実装が 1 つでないネットワークでは、無害な再エンコードというものが存在しない——記事自身がそう結んでいます。メインネットに近づくほど、実装間の適合性検査の重みが増すという指摘は、そのまま今後の観測点になります。
■ 不正な署名 1 つで、全ノードが止まった朝
6 週目、自動導出されていた投票鍵が、実際の BLS 鍵に置き換えられました。鍵そのものは、IO の暗号エンジニアである Thomas Vellekoop 氏が数か月前に確定させ、独立した監査も受けたものです。
そして 10 時 42 分 UTC、ネットワーク上のすべてのマシンが停止しました。遅くなったのではなく、止まったと書かれています。外部の実験的なノードが、無効な署名を持つ証明書を載せたブロックを鍛造し、コードがそれを「拒否すべきブロック」ではなく「致命的なエラー」として扱ったためです。そのブロックを見たノードはすべて落ち、再起動したノードは同じブロックに再び当たって、また落ちました。システム信頼性ノードチームを率いる John Lotoski 氏の状況報告は 6 語だったとされています——全マシンが影響を受け、全マシンが停止した。
修正版のノードは 45 分後に配備され、公開の告知は 2 時間以内、恒久的な修正は翌日にマージされました。外から届いた不正なブロックは、いまはプロセスの死ではなく、記録された拒否になります。記事は、署名方式は設計どおりに動いたのであって、過剰反応したのは自分たちのコードのほうだ、とまとめています。
運用する側から見ると、この壊れ方はいちばん手が出しにくい形です。外から届いたものを検証して落とすことと、検証に失敗して自分が落ちることは別のことで、後者は再起動しても同じ結果になります。ノードの仕事は、見知らぬ相手が送ってきたものを生き延びることだ、という一文が記事に置かれているのは、そのためだと思います。
■ mempool は、ハードウェアで殴れる問題ではありませんでした
Leios のアーキテクトである Sebastian Nagel 氏が週末に書いた負荷生成ツール tx-firehose が公開され、コミュニティがそれをネットワークに向けました。ニュージーランドの Kiwipool、テスト用の ada を 1,000 使った HAPPY といった参加者の名前が挙がっています。結果として mempool は 10 時間続けて満杯になりました。
そこでブロックの伝播が遅れ始めます。40% を超えるブロックがネットワークに届くまで 1 秒以上かかりました。メインネットではほぼすべてが 1 秒未満で届く水準です。
原因はメモリでも伝播でもなく、ブロック生成そのものでした。鍛造ループは、待機中のトランザクションのスナップショットを mempool に要求するところから始まります。ところが Praos 向けに設計された mempool は、ノードがブロックを取り込むたびに全体を再検証し、そのあいだ鍛造ループが必要とするロックを握り続けます。mempool が満ちているほど、各生成者は鍛造まで長く待たされ、極端な場合には自分のリーダースロットを過ぎてから鍛造することになります。
記事は、大きなマシンなら助けにはなったと書いたうえで、こう続けています。1 ギガバイトごとが運用者の持ち出しになるのだから、ハードウェアは解決策ではない、と。この一文が、今回の記事でいちばんプール運用者に寄っているところだと思います。処理量を上げる設計が、そのまま機材代に跳ね返る形になっていたら、増えた容量は誰かの持ち出しで買われたことになります。設計側がそれを「直すべき問題」として扱い、mempool をオフチェーンで再検証する形に作り直した——その検証の場が、次の Water フェーズです。
■ 次に見るもの
赤チームの結果も、今回はじめて公開されました。Piranha と名づけられたノードが、公開されている脅威モデルにもとづく攻撃を期間を通じて仕掛けています。いくつかは効いて、持ち分に比例して性能を劣化させました。ただし Praos 層の安全性を損なったものはなく、いちばん重い攻撃は Fire と Wind のフェーズで来るとされています。「攻撃が効いた」ことと「安全性が壊れた」ことを分けて書いている点は、読むときにも分けておきたいところです。
Water フェーズは新しい鎖の上ですでに開いています。内容はパラメータの探索、部品ごとの代替実装(まず mempool から)、そして投票委員会に入る手段としての実際の BLS 鍵です。報酬プログラムも同時に動いており、Earth フェーズで鍛造と投票を行ったプールは、リセット前に取られたスナップショットにもとづく遡及的な報酬の対象になると書かれています。
目標は、年内にメインネットで動く Leios です。合意形成の改修は通常なら年単位で測られるもので、1 年で走り切るのは異例の速さになる——記事自身がそう書いたうえで、公開の場でリリースを重ねながらそれを追う、と続けています。
観測点は 3 つです。Water での mempool 再設計の実測値、Fire と Wind での赤チームの本番、そして第三者環境での再現。3 つ目は 8 月 21 日に挙げたときから、まだ埋まっていません。
一次ソース / 関連リンク
- Input Output 公式ニュース – Leios hits 6x Cardano’s throughput on its first testnet(2026-08-27・本記事の数値と経緯はすべてこの記事由来)
https://www.iog.io/news/leios-hit-6x-cardano-s-throughput-on-its-first-testnet - Input Output 公式アカウントによる告知(2026-08-27)
https://x.com/IOGroup/status/2092879262575378757 - 初期報 – Leios、Cardano のトランザクション処理能力を 6 倍に拡張(2026-08-27)
https://sipo.tokyo/breaking-x-2092879262575378757/ - Leios のテストネットが 41 日で 12 万 7 千ブロックを積みました – 合成負荷での処理量はメインネットの約 6 倍です(2026-08-21・「約 6 倍」の比較対象の分解)
https://sipo.tokyo/signal-20260821-dc4562b5/ - Leios がテストネットで一周しました – Earth フェーズを終え Water フェーズへ(2026-08-08)
https://sipo.tokyo/signal-20260808-8b6b3ddb/ - Hydra と Leios は競合しません – Cardano のスケーリングを二層で読む(2026-08-08)
https://sipo.tokyo/deep-dive-20260808-ac986992/
