stealth-address-erc-contracts
stealth-address-erc-contracts copied to clipboard
π Contracts for ERC-5564 Stealth Addresses and ERC-6538 Stealth Meta-Address Registry
ERC-5564 and ERC-6538 Contracts
This repo contains the canonical implementations of the ERC-5564 and ERC-6538 contracts:
- ERC-5564 Stealth Addresses: Private, non-interactive transfers and interactions.
- ERC-6538 Stealth Meta-Address Registry: A registry to map addresses to stealth meta-addresses
Usage
This repo is developed using Foundry.
Setup
-
Install Foundry on your local machine by following the instructions here.
-
Clone the repo and navigate to the root directory of the repo:
git clone [email protected]:ScopeLift/stealth-address-erc-contracts.git
cd stealth-address-erc-contracts
Compile
# Build the contracts
forge build
Test
# Run the tests
forge test
Coverage
# See test coverage
forge coverage
Linting and Specifications
This project uses scopelint for linting and spec generation. Follow these instructions to install it.
Lint
# Check formatting
scopelint check
# Apply formatting changes
scopelint fmt
Spec
scopelint spec
This command will use the names of the contract's unit tests to generate a human readable spec. It will list each contract, its constituent functions, and the human readable description of functionality each unit test aims to assert.
Deployments
The stealth contracts are deployed at the following addresses:
ERC5564Announcer: 0x55649E01B5Df198D18D95b5cc5051630cfD45564
ERC6538Registry: 0x6538E6bf4B0eBd30A8Ea093027Ac2422ce5d6538
If you've deployed the contracts on networks other than the ones currently listed, please submit a pull request to update the deployment table with the relevant block scanner links. Thank you!
Ethereum Test Networks
| Networks | ERC5564Announcer | ERC6538Registry |
|---|---|---|
| Sepolia | 0x55649E01B5Df198D18D95b5cc5051630cfD45564 | 0x6538E6bf4B0eBd30A8Ea093027Ac2422ce5d6538 |
| HoleΕ‘ky | 0x55649E01B5Df198D18D95b5cc5051630cfD45564 | 0x6538E6bf4B0eBd30A8Ea093027Ac2422ce5d6538 |
Additional EVM-Based Test Networks
| Networks | ERC5564Announcer | ERC6538Registry |
|---|---|---|
| Arbitrum Sepolia | 0x55649E01B5Df198D18D95b5cc5051630cfD45564 | 0x6538E6bf4B0eBd30A8Ea093027Ac2422ce5d6538 |
| Base Sepolia | 0x55649E01B5Df198D18D95b5cc5051630cfD45564 | 0x6538E6bf4B0eBd30A8Ea093027Ac2422ce5d6538 |
| Optimism Sepolia | 0x55649E01B5Df198D18D95b5cc5051630cfD45564 | 0x6538E6bf4B0eBd30A8Ea093027Ac2422ce5d6538 |
Security
Coming soon.
License
Contracts in this repository are released under the MIT License.