axelar-gmp-sdk-solidity

Solidity API

ECDSA

_Elliptic Curve Digital Signature Algorithm (ECDSA) operations.

These functions can be used to verify that a message was signed by the holder of the private keys of a given address._

InvalidSignatureLength

error InvalidSignatureLength()

InvalidS

error InvalidS()

InvalidV

error InvalidV()

InvalidSignature

error InvalidSignature()

recover

function recover(bytes32 hash, bytes signature) internal pure returns (address signer)

_Returns the address that signed a hashed message (hash) with signature. This address can then be used for verification purposes.

The ecrecover EVM opcode allows for malleable (non-unique) signatures: this function rejects them by requiring the s value to be in the lower half order, and the v value to be either 27 or 28.

IMPORTANT: hash must be the result of a hash operation for the verification to be secure: it is possible to craft signatures that recover to arbitrary addresses for non-hashed data. A safe way to ensure this is by receiving a hash of the original message (which may otherwise be too long), and then calling {toEthSignedMessageHash} on it._