DIP-2: Seamless Account Integration Between EVM and Substrate
- Category: Core
- Description: This proposal introduces the adoption of
H160
account addresses in Substrate-based chains to unify address formats with EVM, which aims to simplify user interactions and enhance compatibility with the Ethereum ecosystem. - Authors: @AurevoirXavier, @hackfisher, @boundless-forest
- Original Article: https://github.com/darwinia-network/DIPs/blob/0cff2d8719e652c8a1652b50494e6bcc61ad1ba3/DIPs/dip-2.md
Abstract
To facilitate Ethereum integration, Substrate-based chains are transitioning to H160
account addresses, using ECDSA
for signatures. This change streamlines the user experience by consolidating address types and wallets.
Rationale
Ethereum-like and Substrate-based chains differ significantly in their account format.
Ethereum uses H160
for its account addresses, while Substrate opts for H256
.
With the EVM being a superior feature, more Substrate-based chains are incorporating it into their systems to tap into Ethereum’s ecosystem Darwinia is doing the same.
However, this creates an issue where users and developers must juggle two distinct address types and wallets.
To avoid this disconnect, we’ve decided to adopt H160
as the native account address type for Substrate.
With this improvement, users only need to interact with one type of account and wallet.
Specification
Utilize ECDSA
as the signature algorithm for Substrate native runtime.
The address is 20 bytes long, and the public key no longer has a corresponding SS58 address.
All pallet addresses have been truncated to 20 bytes; simply remove the trailing zeros, which are 12 bytes long.
Copyright
Copyright and related rights waived via CC0.