
Understanding Bitcoin Name Service (BNS): How to Register and Use .BTC Domains
The Bitcoin Name Service (BNS) is a decentralized naming database secured on the Bitcoin blockchain that provides Web3 usernames registered by Stacks. BNS serves as the Web3 phonebook and offers a mapping between human-readable host names, such as unchained.btc
, to cumbersome alphanumerical wallet addresses.
How Does BNS Work?
BNS shares a similar purpose with the Web2 Domain Name System (DNS), providing an interface for buying, registering, managing, and looking up domain names. However, unlike DNS, which relies on centralized servers, BNS operates on peer-to-peer server systems that are secure and censorship-resistant.
Properties of .BTC Domains
BNS names have three key properties:
- Universally unique: Each .btc name is distinct and cannot be replicated.
- Human-meaningful: .btc domains use human-readable host names, making it easier for users to identify and remember their addresses.
- Strongly owned: Ownership of every .btc name is documented on the Bitcoin blockchain as a hash.
How Do .BTC Domains Work?
A .btc domain is a specific type of blockchain name registered and stored on the Bitcoin network as an NFT. These domains are held on the BNS and registered through a smart contract on Stacks, utilizing Bitcoin’s security features and implementing Clarity smart contracting language to create a decentralized name registry.
Ownership of every .btc name is documented on the Bitcoin blockchain as a hash. Each domain and subdomain on BNS has Decentralized Identifiers (DIDs) that provide an eternal identifier for public keys and are compatible with other systems that use DIDs.
Global Name Hierarchy
.BTC names are organized into a global name hierarchy in three layers:
- Namespaces: These are similar to DNS top-level domains; they are names at the top of the hierarchy that anyone can create but not own.
- BNS Names: BNS names are recorded directly on the blockchain, and their creation depends on a namespace containing the BNS name already existing.
- BNS Subdomains: These records are stored off-chain and are owned by separate private keys.
How to Register .BTC Domains
To register a .btc domain, you will need a wallet that supports .btc domains, such as Hiro Wallet or Xverse. You will also require STX in your wallet to purchase a Bitcoin domain on BNS. New domains cost 2 STX; these costs do not include transaction fees.
You can buy STX from an exchange and send it to your Stacks-compatible wallet.
Steps to Buying a .BTC Domain
To buy a .btc domain, follow these steps:
- Search for Your .BTC Name: Go to https://btc.us/ and write the name you want to register in the search bar on the landing page. A pop-up will tell you whether the name is available, the rates you’ll pay in STX, and how long you’ll have it (5 years for 2 STX).
- Create an Account: Once you’ve confirmed the name is available, you must create a Bitcoin-connected Stacks account to start the purchase. Connect your Stacks-compatible wallet to the site to log in.
- Purchase Your Domain Name: After logging in, you will get a prompt to purchase the .btc domain you chose. Send in the 2 STX, and you’ll own the domain for five years. The transaction will incur a small gas fee.
Using BNS Names
BNS names give people unique web3 identities and make it easier to complete transactions without making any errors. With BNS, users can send and receive STX as well as Stacked-based tokens and NFTs within the Stacks ecosystem.
Benefits of Using .BTC Domains
Using .btc domains offers several benefits:
- Easy Identification: Human-readable host names make it easier for users to identify and remember their addresses.
- Security: BNS operates on peer-to-peer server systems that are secure and censorship-resistant, ensuring the safety of user data.
- Scalability: The decentralized nature of BNS allows for greater scalability compared to traditional DNS systems.
Conclusion
In conclusion, the Bitcoin Name Service (BNS) provides a decentralized naming database secured on the Bitcoin blockchain, offering Web3 usernames registered by Stacks. BNS names have three key properties: universally unique, human-meaningful, and strongly owned. The process of registering a .btc domain involves searching for an available name, creating a Bitcoin-connected Stacks account, and purchasing the domain through a smart contract on Stacks.
With the rise of Web3 applications and services, BNS is becoming increasingly important for providing users with unique web3 identities and making transactions easier to complete.