Technical Details

TNA is built on the Lightning Network and follows the standards of the Taproot Assets protocol.

It leverages Taproot's Asset ID, Universes, and Asset Transfer mechanisms. It also utilizes its key data structure, the Sparse Merkle Tree (SMT), 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.

Registry

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

Resolver

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:

  1. Determining the domain name's position in the Sparse-Merkle Tree, i.e., the leaf node.

  2. Obtaining the resolution result from the node's structural information, i.e., the target.

Domain’s Asset ID

The asset_id is calculated as follows:

asset_id = sha256(genesis_outpoint || asset_tag || asset_meta)

Where asset_tag represents the top-level domain, such as .btc.

Consensus Network

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.

Last updated