Technical Details
Last updated
Last updated
TNA is built on the and follows the standards of the .
It leverages Taproot's, , and mechanisms. It also utilizes its key data structure, the , and further expands it to better suit domain name use cases.
TNA supports reverse resolution, allowing lookups from wallet addresses and other external identifiers to their associated Tapnames.
TNA enables users to create custom top-level domains (TLDs) with suffixes such as.btc, .nostr
, etc.
The TNA registry maintains a list of domains, storing information such as name
, target
, and owner
.
name
: The domain name, like bob.btc
target
: The address that the domain name maps to, which can be a wallet address or other external identifiers
owner
: The creator or current holder of the domain name
The TNA resolver is responsible for resolving domain names, i.e., returning the actual address corresponding to a domain name.
Resolving a domain name typically involves two steps:
Determining the domain name's position in the Sparse-Merkle Tree, i.e., the leaf node.
Obtaining the resolution result from the node's structural information, i.e., the target
.
The asset_id
is calculated as follows:
Where asset_tag
represents the top-level domain, such as .btc
.
The TNA Consensus Network is responsible for voting on proposals for top-level domain applications to approve or reject. It consists of a group of wallet addresses, with initial members recruited from the community and new members requiring a majority vote from existing Consensus Network members. The Consensus Network ensures that approved top-level domains are globally unique to avoid confusion, which can be achieved through query requests and negotiations with other domain networks.