Design
Principles
Name Principles
According to Zooko's triangle, the name should follow:
- Human-meaningful, names can be meaningful and memorable to humans.
- Secure, as long as the Chia Blockchain Consensus is concrete, the CNS can survive various attacks.
- Decentralised, every entity can start its resolver service without any central authority.
Everything On-Chain, Non-custody
- All critical information is On-Chain, non-custody.
- Every domain is an NFT, and can be transferred and exchanged.
- Owner of the domain can change the domain reference address afterward, and these changes are also On-Chain.
- Protocol is open, you can register, update and exchange in a compatible wallet.
Resolver
- The Off-Chain resolver will provide a quick domain resolving service.
- Every resolved result can be verified in every full node(by retrieving and parsing an NFT coin's puzzle and solution), Or theoretically by an SPV protocol and even a ZKP protocol. This can avoid malicious resolver attacks and MITM attacks.
- Resolver would respond not only to the address itself but also come with some critical information(like how long the reference address is stable, which can be done easily by confirmed_index of the domain NFT).
- Resolver is decentralized, even if we disappear, another team can take up the role and provide the resolving service by collecting information from the On-Chain information.