The DNS and dappy

The DNS and dappy


The Domain Name System

Let’s start with you behind your desktop, you want to access the website example.com. The DNS is a resolution service, you will send a lookup request to a DNS resolver that you know (or your device knows). The request contains the domain name example.com, then the DNS resolver will ask other companies about example.com (for example Verisign manages .com and .net, Donuts Inc manages .technology).

In the case of example.com, the registry Verisign will probably find the entry in its database and send back the IP address of the server, if not it sends back not found. The DNS is centralized, a DNS lookup request is atomic/unique, you put 100% of your trust in the few corporations that will carry your request and respond. When you or your clients access a B2B portal, DeFi website or a banking web application, there is only one way to go: trust the answer that was given, and hope that none of the aformentioned service were corrupted. The DNS is full of single point of failures.

The system is neither bad or good, it just works that way. In some case you’ll be happy that DNS service providers, registrars, lawyers and human employees constitute a chain that successfully turns your obscure IP address into a cool domain name. In some case, often when a registrar is hacked, a DNS resolver is undergoing a cache poisonning attack in some regions, or lawyers decide to take your domain name and give it to amazon, you may want a more trustless, decentralized system.

Dappy

Dappy is a service that, among other things, resolves domain names to IP addresses (we call them “names” or “TLDs” and not “domain names” because they have no extensions). The system works in such a way that there are no single source of truth anymore, the mechanism is called co-resolution. When you clients access your website, or when you access other companies services, many “DNS resolvers” are queried (5, 10, 20 etc.) for a given name, instead of a single one, and then perform a reconciliation at the browser level.

The accuracy, and trust one may put into this system is potentially superior to that of the DNS by one or two orders of magnitude. There is no magic, we simply apply the basic principle of decentralization, or distributed trust to a name system.

This is nice, but who decides that bob owns name bob, mike owns mike, and amazon owns amazon ?

Good question, this is where the blockchain thing comes in. It is all handled into a smart contract, either a name is available and you can purchase it, either it’s not, meaning that someone already controls it and can set the IP address (and TLS certificate) to point to his server. No one owns this smart contract, once it’s deployed it’s basically here to stay, the underlying blockchain infrastructure keeps it alive. The corporations that get requested by browsers for DNS lookups just have to look into this smart contract to resolve, or not resolve a name to an IP address.

This basically is the dappy system.

We provide free assistance for companies that wish to try dappy, you can reach out to us by email contact[at]fabco.tech or through the dappy.tech/contact form.