While walking the dog today I listened to Bankless, which is my new favourite podcast for following the Ethereum ecosystem and economy. My curiosity was piqued when I saw the item about Cloudflare’s rolling out support for Ethereum Name Service (ENS) and IPFS, especially the way it was worded:
“Cloudflare and IPFS – Your ethereum address is now accessible by any browser without an extension”
When I read that I thought it meant that they had somehow added visibility to ENS .eth addresses natively, and I was wondering how they were doing that without a browser plug-in. If any .eth domains were publishing IP addresses, it would be possible to see them via Cloudflare’s 1.1.1.1 resolver but I didn’t really get how they would do it for IPFS.
Turns out they’ve set up two distributed web gateways, one for ens and the other for ipfs. There are already sites like this, like ipfs.io
These would function similar to onion gateways, which provide access to .onion sites normally accessible via TOR, via the conventional web.
To gently push back on the Bankless hosts, who extolled the virtues of a decentralized DNS like ENS, Cloudflare’s initiative, while positive for raising awareness of these protocols, doesn’t actually contribute toward a decentralized web and “uncancellable” web addresses (which are very much a topic of conversation in the aftermath of the Great Deplatforming).
As the hosts note, DNS is centralized, at least it is at the root of the inverted tree structure. However, operationally (as distinct from governance) below the root, and even at the root level name severs, DNS is actually already a quite decentralized federation held together by an open protocol defined in various RFCs that comprise widely accepted DNS specifications.
The root servers themselves are a federation of 13 separate anycast constellations, operated by different entities employing dozens or even hundreds of individual name server nodes.
As I said in my (other) book (Unassailable: Defend Yourself from Deplatform Attacks, Cancel Culture, and other Online Disasters), which came out in early 2020 and which I made free in April owing to my well founded concerns around Big Tech censorship,
“While there is a nominal oversight body in ICANN, they do not exert top-down control and they don’t monitor or curate content at all. At least not yet. The DNS and domain system is the closest thing we have today that resembles a decentralized federation that everybody can access and all technology stacks interoperate with.”
There is no top-down decentralized censorship in the DNS system. Where we do see massive centralization and corresponding censorship is within massive walled gardens within this wider decentralized federation. The Big Tech platforms and to a lesser extent, those who control the onramps and offramps into them: the domain registrars (like easyDNS, and Cloudflare, and Godaddy) and the DNS providers. However, while anybody can operate their own nameservers, to be a registrar you need to be accredited by ICANN.
If Dailystormer or 8Chan, two entities which Cloudflare has deplatformed in the past, set up on IPFS or registered ENS domains, I wonder how long Cloudflare would resolve any of those end-points through their Distributed Web layer (to be transparent, both of those entities also approached easyDNS for service at different times and we took a hard pass, so no judgement there).
So what can be done with ENS and IPFS across the legacy DNS?
You can specify IPFS endpoints in the legacy DNS simply using TXT records of the form:
\_dnslink.docs.ipfs.io. 34 IN TXT "dnslink=/ipfs/QmVMxjouRQCA2QykL5Rc77DvjfaX6m8NL6RyHXRTaZ9iya"
This publishes your endpoints in the legacy DNS world where pretty well any tech stack can see it. But it remains to be seen how many applications will start building out IPFS support into their interfaces. Browser plugins like Metamask are the natural place for these to inhabit as more of them start to bridge between Web3 and where we are now.
On the DNS side, there are a few legacy TLDs, defined as those that are published in the globally visible IANA root, a.k.a a normal domain name, which already can be linked to your Ethereum address via ENS. .XYZ is one of these TLDs and we are, at least for the moment, one of the few DNS providers and possibly the only registrar that facilitates linking your .xyz domains to your ethereum address. (I think we’re also the only registrar in the world that accepts Ethereum payments as well 😉
This has been live for a few years, but with crypto entering another cycle in the sun I’m expecting a bit of a revival in initiatives like Ethereum Name Service, and given the current climate of cancel-culture run wild, a growing impetus toward censorship resistant naming.
That said, I have gone on the record in the past, and told the ENS Working Group this at their first meeting in London UK in 2017: “You don’t necessary want 100% uncancellable names”. There will be, must be, some sort of governance, the trick is getting it right. If only at a second layer, which is effectively what a distributed web resolver like Cloudflare’s et al would be.
More on that in a future post.
Leave a Reply