フィットネスジムで新しく発行した年会費カードを買ったんだけど、コーチは「来月から有効になる」って言うの。私はその時、「お金を払ったその日から普通はすぐ有効になるはずじゃないの?」って疑問に思った。
友達がジムの年会費カードを作った当日にレッスン予約をしようとしたら、受付で「システムに“猶予期間”が設定されてるんだ。本月発行のカードは、再来月の初めまで正式に有効にならない」と言われた。人を意地悪してるわけじゃなくて、カード発行当日に人が我先にレッスンを大量予約してリソースを占有し、すぐに解約して得をするのを防ぐためだ。こういう「発効を遅らせる」仕組みは、チェーン上のステーキング(質押)にもあって、それもフィットネスジムよりずっと精密なんだ。
Dusk側のステーキングは、ロックしたらすぐにブロック生成の投票に参加できるわけじゃない。まず「成熟期」を通過する必要がある。各ステーキング記録には、ロックした時点のブロック高が記録されていて、システムは固定の式で成熟期の長さを算出する。要するに、ロックしたその瞬間から、まず現在のepoch(epochは固定で2160ブロック)の残り分を埋めて、さらにまるごと1つ新しいepochを足す。だから、どんな新しいステーキングでも、次のepochが正式に開始した時点まで、本当の有効化は待たされる。ロックした直後に参加できるわけではない。
この遅延設計が防ぐのは「一時的にステーキングして投票権の重みを急増させる」ことだ。もしステーキングがすぐに有効になるなら、悪意のある人が重要な投票の直前の1秒に大量の資金を投入して票の主導権を奪い、投票したらすぐ引き上げる——そんな抜け道ができてしまう。この脆弱性は成熟期によって直接塞がれる。発言権を得たいなら、前もって資金を1サイクル分まるごとステーキングしておく必要がある。
代償もかなりストレートだ。ステーキング資金は、投入してから実際に投票権や報酬が発生するまでの間、完全に空回りする待機期間がある。資金の効率という面では損失があるわけで、安全性と資金活用率のどちらを取るかのトレードオフになる。
$DUSK
#dusk @Dusk