tap_eip712_message 0.2.3

EIP712 singed messages used by TAP
Documentation

EIP712 signed message

This crate contains the EIP712SignedMessage struct which is used to sign and verify messages using EIP712 standard.

Example

# use thegraph_core::alloy::{dyn_abi::Eip712Domain, primitives::Address, signers::local::PrivateKeySigner};
# let domain_separator = Eip712Domain::default();
use tap_eip712_message::Eip712SignedMessage;
# let wallet = PrivateKeySigner::random();
# let wallet_address = wallet.address();
# let receipt = tap_graph::Receipt::new(Address::from([0x11u8; 20]), 100).unwrap();

let signed_message = Eip712SignedMessage::new(&domain_separator, receipt, &wallet).unwrap();
let signer = signed_message.recover_signer(&domain_separator).unwrap();

assert_eq!(signer, wallet_address);