ethers-rs/ethers/examples/sign.rs

18 lines
470 B
Rust

use ethers::prelude::*;
fn main() {
let message = "Some data";
let wallet = MainnetWallet::new(&mut rand::thread_rng());
// sign a message
let signature = wallet.sign_message(message);
println!("Produced signature {}", signature);
// recover the address that signed it
let recovered = signature.recover(message).unwrap();
assert_eq!(recovered, wallet.address);
println!("Verified signature produced by {:?}!", wallet.address);
}