6 releases
| 0.2.2 | Oct 29, 2023 |
|---|---|
| 0.2.1 | Oct 27, 2023 |
| 0.1.2 | Nov 20, 2022 |
| 0.1.1 | Aug 25, 2022 |
| 0.1.0 | May 30, 2022 |
#32 in #public
10,522 downloads per month
Used in 11 crates
(5 directly)
35KB
748 lines
Implementation of Ethereum public addresses for Rust.
This crate provides an Address type for representing Ethereum public
addresses.
Checksums
Addresses are by default formatted with ERC-55 mixed-case checksum
encoding. Addresses checksums may optionally be verified when parsing with
[Address::from_str_checksum()].
address! Macro
This crate exports an address! macro that can be used for creating
compile-time address constants. Under the hood, it is implemented with
const fn and does not use procedural macros.
Features
- default
std: Additional integration with Rust standard library types. Notably, this includesstd::error::Errorimplementation on theParseAddressErrortype and conversions fromVec<u8>. serde: Serialization traits for theserdecrate. Note that the implementation is very much geared towards JSON serialization withserde_json.sha3: Use the Rust Crypto Keccak-256 implementation (provided by thesha3crate) instead of the built-in one. Note that theaddress!macro will always use the built-in Keccak-256 implementation for checksum verification, assha3does not expose aconst fnAPI.
Implementation of Ethereum public addresses for Rust.
This crate provides an Address type for representing Ethereum public
addresses. It implements ERC-55
mixed-case checksum Display formatting and parsing with verification using
Address::from_str_checksum().
Additionally an address! macro is included for compile-time verified address
constants. Under the hood, it is implemented with const fn and does not use
procedural macros.
Usage
Just add a dependency to your Cargo.toml:
[dependencies]
ethaddr = "*"
For complete documentation checkout docs.rs.
Dependencies
~0–490KB