Solanaは永続Nonceを廃止し、今後のトランザクションを最近のブロックハッシュに一本化する準備を進めています。
Solanaコミュニティは、永続Nonceの仕組みを削除し、最近のブロックハッシュ(Recent Blockhash)を使ってトランザクションのリプレイを防止するプロトコル変更を提案しました。
関連する変更には、Nonceアカウントの初期化、進行、アップグレードに関わる一連のシステムプログラム命令の無効化も含まれます。
なぜこの仕組みを変更するのでしょうか?
Nonceはもともと、トランザクションの有効期限切れに対処するために導入されました。通常のSolanaトランザクションは最近のブロックハッシュに依存しており、有効期間を過ぎると送信できなくなります。一方、永続Nonceを使えば、トランザクションをより長い期間有効に保ちながら、重複実行を防ぐことができます。
しかし、そのためにプロトコルでは、追加のアカウント状態と命令ロジックを長期にわたって維持する必要があります。
今回の提案では、この仕組みを直接削除し、トランザクションを最近のブロックハッシュ方式に一本化する方針です。
提案では、早ければ2027年5月5日以降にメインネットで有効化する予定です。ウォレットや取引所、その他Nonceに依存するアプリケーションが移行するための時間を確保します。
永続Nonceは、単に時代遅れになった機能というわけではない点に注意が必要です。オフライン署名、遅延送信、特殊なトランザクション処理など、一部の用途ではNonceに依存している可能性があります。本当の難しさはプロトコルの変更だけではなく、エコシステム内の関連インフラがすべて移行を完了できるかどうかです。
提案が最終的に実施されれば、Solanaは長期的に維持するトランザクションの仕組みを一つ減らせますが、永続Nonceに依存するアプリケーションは、トランザクションの処理フローを再設計する必要があります。
Solanaコミュニティは、永続Nonceの仕組みを削除し、最近のブロックハッシュ(Recent Blockhash)を使ってトランザクションのリプレイを防止するプロトコル変更を提案しました。
関連する変更には、Nonceアカウントの初期化、進行、アップグレードに関わる一連のシステムプログラム命令の無効化も含まれます。
なぜこの仕組みを変更するのでしょうか?
Nonceはもともと、トランザクションの有効期限切れに対処するために導入されました。通常のSolanaトランザクションは最近のブロックハッシュに依存しており、有効期間を過ぎると送信できなくなります。一方、永続Nonceを使えば、トランザクションをより長い期間有効に保ちながら、重複実行を防ぐことができます。
しかし、そのためにプロトコルでは、追加のアカウント状態と命令ロジックを長期にわたって維持する必要があります。
今回の提案では、この仕組みを直接削除し、トランザクションを最近のブロックハッシュ方式に一本化する方針です。
提案では、早ければ2027年5月5日以降にメインネットで有効化する予定です。ウォレットや取引所、その他Nonceに依存するアプリケーションが移行するための時間を確保します。
永続Nonceは、単に時代遅れになった機能というわけではない点に注意が必要です。オフライン署名、遅延送信、特殊なトランザクション処理など、一部の用途ではNonceに依存している可能性があります。本当の難しさはプロトコルの変更だけではなく、エコシステム内の関連インフラがすべて移行を完了できるかどうかです。
提案が最終的に実施されれば、Solanaは長期的に維持するトランザクションの仕組みを一つ減らせますが、永続Nonceに依存するアプリケーションは、トランザクションの処理フローを再設計する必要があります。