Crate ethers_core[−][src]
Ethereum types, cryptography and utilities.
It is recommended to use the utils
, types
and abi
re-exports instead of
the core
module to simplify your imports.
This library provides type definitions for Ethereum's main datatypes along with other utilities for interacting with the Ethereum ecosystem
Signing an ethereum-prefixed message
Signing in Ethereum is done by first prefixing the message with
"\x19Ethereum Signed Message:\n" + message.length
, and then
signing the hash of the result.
use ethers::signers::{Signer, LocalWallet}; let message = "Some data"; let wallet = LocalWallet::new(&mut rand::thread_rng()); // Sign the message let signature = wallet.sign_message(message).await?; // Recover the signer from the message let recovered = signature.recover(message)?; assert_eq!(recovered, wallet.address());
Utilities
The crate provides utilities for launching local Ethereum testnets by using ganache-cli
via the GanacheBuilder
struct. In addition, you're able to compile contracts on the
filesystem by providing a glob to their path, using the Solc
struct.
ABI Encoding and Decoding
This crate re-exports the ethabi
crate's functions
under the abi
module, as well as the secp256k1
and rand
crates for convenience.
Re-exports
pub use rand; |
pub use k256; |
Modules
abi | This module implements extensions to the |
types | |
utils | Various utilities |