昨晩ベッドで寝転がってスマホを見ていたら、目が画面の光でしんどくなってきました。ちょうどそのとき、誰かが「Dusk」コンセンサスを解体している記事を見つけたんです。しかも、あまり知られていない冷えた(地味な)細部でした。もう寝るところだったのに、読めば読むほど目が冴えてしまって——技術に感心したというより、このプロトコルの中に、かなり陰うつな駆け引きが隠されているのに気づいたからです。普段は誰もほとんど話題にしません。
私たちがPoSのステーキングの話をするとき、だいたい「ちゃんとしたノードを見つけて待っていれば取り分がもらえる」という話になります。ブロック生成の内部プロセスがどうなっているかなんて、誰も気にしません。ところがDuskには事情があるようです。1ラウンドのブロック生成が、何ラウンドもの反復(イテレーション)を要する可能性がある。そして、各イテレーションで誰がブロッカー(出塊者)になるかは、事前に算出できる。これをよく考えると、ちょっと背筋が寒くなります——後ろに回った人は、合理的に考えて前の人の失敗を望むのでは?前の人がどれだけ長引かせ、どれだけ傷を負わせ(時間を浪費させ/失敗させ)ることで、ようやく自分の番が押し込まれてくる。そのとき初めて自分が参加して、報酬の表彰台に上がれる。これはリレー競技とまったく逆です。最後の走者がチームメイトを応援するのではなく、先の走者が転んでくれることをこっそり願っている——そんな構図です。
プロトコル設計者は、この層を明らかに考慮していて、漏れを塞ぐために4つの仕組みを入れています。1つ目:投票に参加すること自体に報酬があり、自分の番が来るのを無駄に待つだけにならないようにする。2つ目:ブロック報酬が、あなたがどれだけの票を収録したかに連動しており、「死んだふり」をできないようにする。3つ目:次のブロッカーが、現在の投票への参加を直接禁止されている。これで「棄権して確率を買う」動機を根こそぎ潰す。4つ目:1ラウンド全体に最大イテレーション回数の上限を設けていて、故意に引き延ばそうとしても引き延ばせない。これら4つをまとめて置くことで、テーブルの下に隠れているような小さな思惑を全部表に引っ張り出して、ルールでガチっと固定する——そんな感じです。
そしてこの設計は、「合理的な人間は悪事をしない」とは見せかけません。むしろ堂々と、人は抜け穴を狙って悪事を働くと認め、その“悪事の得”をメカニズムの中で相殺するように組み込んでいるんです。この「不信任しているのに設計で解決する」感じは、「コミュニティのコンセンサス」を毎日口にしているだけのプロジェクトより、ずっと実務的に見えます。私はDuskについて、これまでプライバシーとRWAくらいの印象しか持っていませんでした。でも今日この細部を見て、彼らは最底層のブロック順序でさえ、人間性を抑え込むことを仕込んでいるんだと気づきました。これが公チェーンというより、行動経済学の実験をしているように思えます。
プロトコル設計って、こういう穴を塞いでも、しばらくするとまた別の曲がり角が見つかってくる可能性がある。結局のところ、チェーン上のデータが十分にたまって初めて、その出来が良いのかどうかが分かるんでしょう。あなたたちは、他のPoSチェーンで似たような「後手の悪用を防ぐ」設計を見たことがありますか?コメント欄に名前を投げてください。順番に全部調べに行きます。 #dusk $DUSK @Dusk
私たちがPoSのステーキングの話をするとき、だいたい「ちゃんとしたノードを見つけて待っていれば取り分がもらえる」という話になります。ブロック生成の内部プロセスがどうなっているかなんて、誰も気にしません。ところがDuskには事情があるようです。1ラウンドのブロック生成が、何ラウンドもの反復(イテレーション)を要する可能性がある。そして、各イテレーションで誰がブロッカー(出塊者)になるかは、事前に算出できる。これをよく考えると、ちょっと背筋が寒くなります——後ろに回った人は、合理的に考えて前の人の失敗を望むのでは?前の人がどれだけ長引かせ、どれだけ傷を負わせ(時間を浪費させ/失敗させ)ることで、ようやく自分の番が押し込まれてくる。そのとき初めて自分が参加して、報酬の表彰台に上がれる。これはリレー競技とまったく逆です。最後の走者がチームメイトを応援するのではなく、先の走者が転んでくれることをこっそり願っている——そんな構図です。
プロトコル設計者は、この層を明らかに考慮していて、漏れを塞ぐために4つの仕組みを入れています。1つ目:投票に参加すること自体に報酬があり、自分の番が来るのを無駄に待つだけにならないようにする。2つ目:ブロック報酬が、あなたがどれだけの票を収録したかに連動しており、「死んだふり」をできないようにする。3つ目:次のブロッカーが、現在の投票への参加を直接禁止されている。これで「棄権して確率を買う」動機を根こそぎ潰す。4つ目:1ラウンド全体に最大イテレーション回数の上限を設けていて、故意に引き延ばそうとしても引き延ばせない。これら4つをまとめて置くことで、テーブルの下に隠れているような小さな思惑を全部表に引っ張り出して、ルールでガチっと固定する——そんな感じです。
そしてこの設計は、「合理的な人間は悪事をしない」とは見せかけません。むしろ堂々と、人は抜け穴を狙って悪事を働くと認め、その“悪事の得”をメカニズムの中で相殺するように組み込んでいるんです。この「不信任しているのに設計で解決する」感じは、「コミュニティのコンセンサス」を毎日口にしているだけのプロジェクトより、ずっと実務的に見えます。私はDuskについて、これまでプライバシーとRWAくらいの印象しか持っていませんでした。でも今日この細部を見て、彼らは最底層のブロック順序でさえ、人間性を抑え込むことを仕込んでいるんだと気づきました。これが公チェーンというより、行動経済学の実験をしているように思えます。
プロトコル設計って、こういう穴を塞いでも、しばらくするとまた別の曲がり角が見つかってくる可能性がある。結局のところ、チェーン上のデータが十分にたまって初めて、その出来が良いのかどうかが分かるんでしょう。あなたたちは、他のPoSチェーンで似たような「後手の悪用を防ぐ」設計を見たことがありますか?コメント欄に名前を投げてください。順番に全部調べに行きます。 #dusk $DUSK @Dusk