Function isMessageSignatureCorrect

  • Returns whether the account abstraction message signature is correct. Signature can be created using EIP1271 or ECDSA.

    Parameters

    • context: Web3Context<unknown, any>
    • address: string

      The sender address.

    • message: string | Uint8Array

      The hash of the message.

    • signature: SignatureLike

      The Ethers signature.

    Returns Promise<boolean>

    import { Web3 } from 'web3';
    import * as web3Accounts from 'web3-eth-accounts';

    const wallet = web3Accounts.create();
    const ADDRESS = wallet.address;
    const PRIVATE_KEY = wallet.privateKey;
    const context = new Web3('some-rpc-url');

    const message = "Hello, world!";
    const signature = await new Wallet(PRIVATE_KEY).signMessage(message);
    const isValidSignature = await utils.isMessageSignatureCorrect(
    web3,
    ADDRESS,
    message,
    signature,
    );
    // isValidSignature = true