ノンスレーン
ノンスレーンは、EVM系トランザクションの競合を防ぎます。 具体的なチェーン対象と署名レーンについて、利用可能、処理中、確定、破棄、置き換え済みのノンスを追跡します。
既定の規則
既定のTempo・EVM署名フローでは、アプリのコードでノンスを取得・割り当てしないでください。 署名エンジンが、ノンスの準備、送信報告、確定報告、照合を管理します。
ライフサイクル
- チェーンのノンスと、ローカルの未解決状態を読む。
- 受け付けた署名リクエスト用にノンスを予約する。
- 送信の受理または拒否を報告する。
- 確定、破棄、置き換えを報告する。
- チェーンとローカルの状態が異なる場合に照合する。
ノンス状態は、具体的なチェーン対象とレーンに属します。 別の永続ECDSA鍵や、表示する署名アドレスを選択してはいけません。
送信状態が不明な場合と再試行
タイムアウトやローカルのリース期限切れは、チェーンが取引を拒否した証明にはなりません。 トランザクションハッシュとリクエストIDを保持してください。 別の取引を送る前に、SDKが対象レーンをチェーン状態と照合できるようにします。 同一の再試行は、操作フィンガープリントを維持します。内容の変更は新しい操作です。 ローカル状態を消去しても、トランザクションはキャンセルされません。
ノンスの調整と署名の利用枠は、管理主体が異なります。 送信失敗は、消費済みの署名利用枠を払い戻しません。ノンス状態のリセットでセッションを補充することもできません。 ブラウザー内の調整は、同じオリジンのタブを対象とし、デバイス間の競合は防ぎません。
NEAR署名も、ネットワーク、アカウント、アクセスキーに限定したノンス調整を使います。 未確定の受理は、照合で解決するまで保護します。 アクセスキーのノンスが進み、トランザクションハッシュがない場合は、チェーンとの照合が必要です。 それだけでは、EVM形式の置き換えを示しません。