Aeternity Naming System (AENS)
Last updated
Last updated
The æternity Naming System (AENS) transforms complex blockchain addresses into human-readable names, making the blockchain more accessible and user-friendly. While other blockchains implement naming systems through smart contracts, AENS is built directly into æternity's protocol, offering enhanced efficiency, security, and usability.
In the blockchain world, addresses are typically long strings of numbers and letters that are difficult to remember and prone to error when typing. AENS solves this problem by allowing users to register memorable names that point to their accounts, contracts, or oracles. Every name in the system ends with '.chain' (for example, 'superhero.chain'), creating a consistent and recognizable namespace.
What sets AENS apart from other blockchain naming systems is its protocol-level implementation. Instead of relying on smart contracts, AENS uses native blockchain operations, making name registration and management more efficient and cost-effective. When you use a name in a transaction, the translation from name to address happens directly in the protocol, providing better security guarantees than smart contract-based solutions.
AENS implements an innovative auction system to ensure fair name distribution and prevent name squatting. Names shorter than thirteen characters are distributed through a first-price auction system, where the auction duration and starting bid are automatically adjusted based on the name length. Shorter names, which are typically more desirable, start with higher minimum bids and longer auction periods. For example, a four-character name might start at 134.6269 coins with an auction period of approximately 62 days after the last bid.
Names longer than twelve characters can be registered instantly, making the system accessible to all users while preserving the value of shorter, more premium names. Each new bid must be at least 5% higher than the previous one, ensuring meaningful price discovery during auctions.
AENS includes sophisticated measures to prevent front-running attacks, where observers might try to steal a name by watching the network's transaction pool. The registration process occurs in two steps: first, a preclaim transaction containing a hash of the desired name and a random number (salt) is submitted. Since observers cannot determine the name from this hash, they cannot front-run the registration.
After the preclaim is accepted, the claimant reveals the name and salt in a claim transaction. To further enhance security, the protocol requires the preclaim and claim transactions to be in different blocks, effectively eliminating the possibility of front-running through block manipulation.
Once a name is registered, owners have full control over their names through a suite of protocol-level operations. They can update their names to point to different addresses or resources, transfer ownership to other users, or revoke names they no longer need. Names expire after a set period unless renewed, ensuring that unused names eventually return to the available pool.
The system's integration with the protocol means that names can be used directly in transactions. Instead of copying long addresses, users can simply reference names, and the protocol handles the resolution automatically. This tight integration reduces the risk of errors and improves the overall user experience.
AENS enables numerous practical applications that make blockchain interactions more user-friendly. Decentralized applications can use memorable names for their smart contracts, making them easier to discover and interact with. Payment systems can simplify their interfaces by allowing users to send transactions to human-readable names rather than cryptographic addresses.
The system also supports the creation of decentralized identities, where users can build reputations around their .chain names. This feature is particularly valuable for decentralized marketplaces, social platforms, and other applications where persistent identities enhance trust and usability.
Developers looking to integrate AENS into their applications will find detailed technical specifications and implementation guides in the Developer Tools section. This includes comprehensive information about name auctions, registration processes, and integration patterns. Users interested in registering and managing their own .chain names can find step-by-step guides in the User Guides section of this documentation.
What can you do with a .chain name
How to register yoru own .chain name