Public Resolver
The public resolver is a general-purpose ENS resolver that is suitable for most user needs. It permits the owner of a name to update their records, includes permissions, and stores its data on layer-1 ethereum.
Most ENS names registered through the ENS Manager will use the latest version of the public resolver by default. Names that resolve to a supported public resolver are editable from within the ENS Manager.
The public resolver supports the following features:
- EIP-137 - Contract address interface (
addr()) - EIP-165 - Interface Detection (
supportsInterface()) - EIP-181 - Reverse Resolution (
name()) - EIP-205 - ABI Resolution for contracts (
ABI()) - EIP-619 - SECP256k1 public keys (
pubkey()) - EIP-634 - Text records (
text()) - EIP-1577 - Content hash resolution (
contenthash()) - EIP-2304 - Multicoin support (
addr())
While the PublicResolver provides a convenient default implementation.
Many versions & variations may exist, and it is therefore not recommended to
hardcode any addresses. To ensure a safe implementation, always use the supportsInterface() method to check for the existence of a specific interface.
See Interacting with a Resolver for how to do this.
The public resolver supports the notion of a "owner" and "manager".