you are right. The deployed ENS infrastructure has:
- a registry contract (ENSRegistry)
- a registar (FIFSRegistrar) that own the “eth” TLD
- some resolver (PublicResolver)
- a reverse resolver (ReverseRegistrar)
A registrar owns a domain and only it can add sub-domains.
A registrar can be:
- an externally owned account (EOA)
- a “simple” contract like FIFSRegistrar
- a contracts ecosystem (like that is in use on Ethereum for eth TLD)
Our goal was to deploy an ENS were someone registers a domain in some way and then he enables his app to add sub-domains.
To do this we registered three domains (‘universal-login.eth’, ‘poppularapp.eth’ and ‘my-id.eth’) for our purposes and we gave the ownership to an our FIFSRegistrar. Our app controls the FIFSRegistrar (via private key) and can invoke a sub-domain registration.
We are using UniversalLogin in our app, and we are using the tool ENSBuilder of EthWorks for ENS deployment: https://github.com/EthWorks/ENSBuilder
We do not need the auction mechanism.
As you point out, we are the owner of eth TLD in this deploy, if someone want to register a domain like “example.eth” he need to ask us. Than we will register his domain and he will be able to add sub-domains.
We do not want the ownership of this TLD in any way :-), our deployment is only for testing our app, there was a misunderstanding in my first post. Indeed I was asking if there is an “official” ENS infrastructure on POA (and Sokol, but is less important).