The timing could not be better.
On October 21, 2016 millions of Internet users across America were denied access to major websites such as PayPal, Netflix, Twitter and Spotify. due to a massive DDoS attack that brought down the DNS servers of of DNS provider Dyn.
The best startups solve problems that need brilliant solutions.
“As it happens, my own project Nebulis is building a new domain directory using the Interplanetary File System (IPFS) and the Ethereum Blockchain, so I thought I’d weigh in,” writes Philip Saunders, founder of Nebulis, a distributed, blank-slate DNS system.
Most people have heard that countries like China, Turkey, Russia and North Korea censor their internet. Not as many people know how this is achieved: by poisoning the DNS system. When a Chinese user tries to access “Twitter.com” they are redirected to the wrong IP address or blocked altogether. The same goes for requests that contain keywords that have been banned by the regime.
It would be no exaggeration to say that DNS is the weak link of the internet, exploited by rogue ISP’s, censors, and hackers to create an unreliable web.
Blockchain offers a solution – a decentralized system that can make it literally impossible for the infrastructure to fail under an excess of requests. And Nebulis plans to use the Ethereum Blockchain and the Interplanetary File System (IPFS), a distributed alternative to HTTP’s centralized structure, to make its DNS infrastructure immune to DDoS attacks.
Saunders told Techcrunch recently:
“Blockchains, particularly the Ethereum platform, can allow a different approach,” Saunders explains. “Only changes or updates to the record cost money in the form of network fees, but reads are free, as long as you have a copy of the Blockchain.”
“With the Ethereum Blockchain, you read straight from your own copy without imposing costs on the network. This has great potential for lifting a great deal of pressure from the physical backbone of the internet,” he added. “It also means we can do away with many of the redundancies of the traditional DNS and come up with something which is much better.”
You can read the first memorandum here.
These are the core contracts of the system:
- Nebulis: controls the creation of new clusters and zones, redirecting queries as well as basic governance functions.
- Whois: Query the existence and availability of domains and clusters.
- Resolver: Takes URL queries and returns the IPFS resource if it exists.
- Who: “Accounts”- whenever a new user creates a domain they are assigned a Who contract which holds all domains associated with that address as well as keeping a direct address link to the database nodes where the domain records are stored.
- Zones: Groups of users run managed as one group. Useful for domain name registrars running on Nebulis. Zones are Who contract-factories. Naming convention for zones is NB1, NB2, NB3 etc.
- Clusters: Top-level-domains. Anyone can create a new cluster as long as they amass a certain amount of Dust. Once a cluster is created, anyone can register a domain on it.
- Root/Branch/Node: Every cluster has its own database. Entries are indexed alphabetically (or in their UTF-8 assigned order) to three levels of depth.
- Parser/Regex: By default only certain valid character sets are activated, although when a cluster is created it is possible to specify a greater custom character set.
- Ox: When dormant domains are ejected, the Dust tokens associated with them are send to the Ox contract and paid to miners via dust awarded to the user. Note that it is not necessary to use Dust to buy the domain in the first place, all that is required is to pay the gas price at time of creation. This means that acquiring Dust from more dense clusters is more expensive, because as the database expands gasprice of interaction will be more. But dust everywhere has the same amount of governance leverage no matter what cluster it was generated in. This provides an incentive for people to register domains in less dense clusters.
Nebulis is incorporated as a nonprofit foundation in order to support continual development not only of the core system on Ethereum but also the surrounding tools. The goal would also be to provide support for the IPFS project over the long term, while also promoting the ideals of decentralization and privacy online.