@tevm/voltaire / primitives/ContractSignature
primitives/ContractSignature
Classes
ContractCallError
Defined in: src/primitives/ContractSignature/errors.ts:17 Error thrown when contract call for signature validation failsExtends
Error
Constructors
Constructor
new ContractCallError(Defined in: src/primitives/ContractSignature/errors.ts:18message,context?):ContractCallError
Parameters
message
string
context?
unknown
Returns
ContractCallError
Overrides
Error.constructor
Properties
context?
Defined in: src/primitives/ContractSignature/errors.ts:24optionalcontext:unknown
ContractSignatureError
Defined in: src/primitives/ContractSignature/errors.ts:4 Error thrown when EIP-1271 signature validation failsExtends
Error
Constructors
Constructor
new ContractSignatureError(Defined in: src/primitives/ContractSignature/errors.ts:5message,context?):ContractSignatureError
Parameters
message
string
context?
unknown
Returns
ContractSignatureError
Overrides
Error.constructor
Properties
context?
Defined in: src/primitives/ContractSignature/errors.ts:11optionalcontext:unknown
Variables
EIP1271_MAGIC_VALUE
Defined in: src/primitives/ContractSignature/constants.js:11 Magic value returned by isValidSignature for valid signatures bytes4(keccak256(“isValidSignature(bytes32,bytes)“))constEIP1271_MAGIC_VALUE:"0x1626ba7e"="0x1626ba7e"
IS_VALID_SIGNATURE_SELECTOR
Defined in: src/primitives/ContractSignature/constants.js:16 Function selector for isValidSignature(bytes32,bytes)constIS_VALID_SIGNATURE_SELECTOR:"0x1626ba7e"="0x1626ba7e"
Functions
isValidSignature()
isValidSignature(Defined in: src/primitives/ContractSignature/isValidSignature.js:32 Check if a contract signature is valid via EIP-1271 Calls the contract’s isValidSignature(bytes32,bytes) method and checks if it returns the magic value 0x1626ba7e.provider,contractAddress,hash,signature):Promise<boolean>
Parameters
provider
JSON-RPC providerrequest
(method, params) => Promise<unknown>
JSON-RPC request method
contractAddress
Contract address to callstring | AddressType
hash
Message hash (bytes32)Uint8Array<ArrayBufferLike> | HashType
signature
Uint8Array<ArrayBufferLike>
Signature bytes
Returns
Promise<boolean>
True if signature is valid
See
https://eips.ethereum.org/EIPS/eip-1271Throws
If the contract call failsExample
VerifySignature()
VerifySignature(Defined in: src/primitives/ContractSignature/verifySignature.js:13 Factory: Create unified signature verification for EOA and contract accountsdeps): (provider,address,hash,signature) =>Promise<boolean>
Parameters
deps
Crypto dependenciesaddressFromPublicKey
(x, y) => AddressType
Address derivation from public key
keccak256
(data) => Uint8Array
Keccak256 hash function
recoverPublicKey
(signature, messageHash) => Uint8Array
secp256k1 public key recovery
Returns
(provider,address,hash,signature):Promise<boolean>
Parameters
provider
request
(method, params) => Promise<unknown>
address
string | AddressType
hash
Uint8Array<ArrayBufferLike> | HashType
signature
Uint8Array<ArrayBufferLike> | { r: Uint8Array; s: Uint8Array; v: number; }
Returns
Promise<boolean>
