Exit to App
Security

Restricted Signing

How the agent signer is constrained to pre-approved contracts and calldata encodings.

The restricted signer (RestrictedSigner in @moi/wallet-signer) acts as a cryptographic sandbox. Before signing any raw EVM transaction, it asserts:

  • to address matches the allowlisted Textile LimitOrderReactor (0xa9AA0a64769cBed4d3B1Ceb4Df01CdE915C235b3).
  • value is strictly 0 (no native CELO transfers allowed).
  • Calldata decodes into valid Textile reactor or Permit2 orders.
  • A valid, unexpired HMAC policy attestation is presented matching the calldata hash.