Overview

Info

The current protocol are 9chsTNS-0.0.1 and 9chsTNRS-0.0.1. The versioning policy follows PVP.

Tldr
  • teznames - a system for name registration on and for tezos network
  • tezname - a name entity on teznames system
  • tezname records - a list of records of registered tezname
  • cTezName - contract defines one tezname. A .tz file
  • cTNRecords - contract defines one tezname records. A .tz file.

The teznames is a system for name registration on and for tezos network. Conceptually the teznames system consists of two parts: tezname and tezname records.

tezname

A tezname is represented by an instance of contract on tezos network. Every user can inquire information for one specific name. He/she can also register a name by deploying (aka originating in tezos world) if he/she want to own a name. A tezname is defined by contract cTNRecords which can be inferred to file cTNRecords.tz.

The name on tezname is stored as plain text. And there are three roles will get involved for interacting with a tezname.

  • user - a regular user
  • owner - a actual registrant of this tezname
  • admin - a centeral manager of this tezname (will be removed soon)

For a user, he/she can look up public information on ant tezname as long as he/she has its address. This is actually require no operation at all. It just a simple storage reading.

For an owner, he/she can renew the tezname which belongs to him/her. This renewing will extend this ownership by one year. Only the owner can do the renew operation.

For an admin, he/she can (1) change (register) the ownership of an avaliable tezname; (2) forcely expire (free) a contract; (3) change (update) identity of root and admin. (The root and admin are actually the same role here. We just writes in this way for proceeding some testing.)

Info

If you read the source code of cTezName, you can find out there is another role named root. A root is a super user existing only for testing and demoing and it will be removed in the next update.

Info

One key feature here is how we present an identity on this contract. The basic idea is to use a public key as an identity and use its signature as the proof of ownership. This concept of this signature-based identity includes two parts. The first part, how to present identity as data has been written in contract cTezName indeed. But, the other part, how to interact with this identity without causing too much trobles for user, is written in dough.

tezname records

A tezname records is an instance of tezname records contract that maintains records of all registerred tezname and its corresponding contract address. The tezname records is defined by contract cTNRecords which can be inferred to file cTNRecords.tz.

For user who just want to resolve a tezname, he/she just need to look up the public information (aka storage in tezos world) on this contract.

Currently, teznames has a working tezname records contract at this address KT1P4fir3MtexzztWbybNxonCv28Fu6hwmGA on alphanet. (Please open the storage tab to see the storage. All the tezname records will be listed in sRecord.)