Portal Community
No RPC call — pure local cryptography. Every operation on this page runs entirely locally against the resolved signing key (or, for verifySignature, purely against the supplied message/signature). Nothing is broadcast to the network and no gas is spent.

signMessage — needs credential

EIP-191 (personal_sign) message signing.

FieldTypeRequiredDescription
messagetext✓ YesPlain text message to sign.
credentialIDcredential✓ YesVault CRYPTO_WALLET credential.
{
  "success": true,
  "address": "0x742d35Cc6634C0532925a3b844Bc9e7595f0bEb",
  "signature": "0x8a4f2e...1c"
}

signTypedData — needs credential

EIP-712 structured/typed data signing — the standard behind wallet "sign this" prompts for DeFi approvals, permits, and off-chain orders.

FieldTypeRequiredDescription
typedDataJsontext (JSON)✓ YesFull standard EIP-712 envelope: {types, primaryType, domain, message}.
credentialIDcredential✓ YesVault CRYPTO_WALLET credential.
{
  "success": true,
  "address": "0x742d35Cc6634C0532925a3b844Bc9e7595f0bEb",
  "signature": "0x3fa1c9...0b"
}

verifySignature — no credential required

Pure signature recovery — verifies a signature against a message and recovers the signer's address. No signing key involved.

FieldTypeRequiredDescription
messagetext✓ YesThe original signed message.
signaturetext✓ YesThe signature to verify.
{ "success": true, "address": "0x742d35Cc6634C0532925a3b844Bc9e7595f0bEb" }
Common pattern: compare the recovered address against an expected signer to authenticate an off-chain message — e.g. verifying a user "logged in with Ethereum" by signing a nonce.