本文へ移動

ノンスレーン

ノンスの管理主体、照合、置き換え状態を明示し、EVM系トランザクションの競合を防ぎます。

ノンスレーン ​

ノンスレーンは、EVM系トランザクションの競合を防ぎます。 具体的なチェーン対象と署名レーンについて、利用可能、処理中、確定、破棄、置き換え済みのノンスを追跡します。

既定の規則 ​

既定のTempo・EVM署名フローでは、アプリのコードでノンスを取得・割り当てしないでください。 署名エンジンが、ノンスの準備、送信報告、確定報告、照合を管理します。

ライフサイクル ​

  1. チェーンのノンスと、ローカルの未解決状態を読む。
  2. 受け付けた署名リクエスト用にノンスを予約する。
  3. 送信の受理または拒否を報告する。
  4. 確定、破棄、置き換えを報告する。
  5. チェーンとローカルの状態が異なる場合に照合する。

ノンス状態は、具体的なチェーン対象とレーンに属します。 別の永続ECDSA鍵や、表示する署名アドレスを選択してはいけません。

送信状態が不明な場合と再試行 ​

タイムアウトやローカルのリース期限切れは、チェーンが取引を拒否した証明にはなりません。 トランザクションハッシュとリクエストIDを保持してください。 別の取引を送る前に、SDKが対象レーンをチェーン状態と照合できるようにします。 同一の再試行は、操作フィンガープリントを維持します。内容の変更は新しい操作です。 ローカル状態を消去しても、トランザクションはキャンセルされません。

ノンスの調整と署名の利用枠は、管理主体が異なります。 送信失敗は、消費済みの署名利用枠を払い戻しません。ノンス状態のリセットでセッションを補充することもできません。 ブラウザー内の調整は、同じオリジンのタブを対象とし、デバイス間の競合は防ぎません。

NEAR署名も、ネットワーク、アカウント、アクセスキーに限定したノンス調整を使います。 未確定の受理は、照合で解決するまで保護します。 アクセスキーのノンスが進み、トランザクションハッシュがない場合は、チェーンとの照合が必要です。 それだけでは、EVM形式の置き換えを示しません。