“This post is under review and not yet refined”
The method behind the naming of this article is inspired by one of my favorite Rust language influencers Luka Palmieri
During the researches I had about privacy friendly domain name extensions, I came across .eth, a domain name on top of Ethereum, pointing to an IPFS address (or a .onion address) and I was excited! the blockchain I loved and contributed to has some solution! (my contributions were only in translation not code repos), today, May 25th 2023, based on what I’ve learnt during the months I’ve read about “how to have custody on your online presence”, I consider .eth the best to fit my dreams.
a short non-techie brief about how .eth works:
it’s a domain extention you can pay on the Ethereum network that points to your wallet(s) and also optionally points to a specific IPFS address
IPFS
IPFS (InterPlanetary File System) is something like torrent, it’s a network of distributed computers (nodes) that each has a piece of information of the whole network, when you request a file (a piece of information) from the network, there’s at least one copy of it somewhere in the network and it’s sent back to you, now imagine this content is actually a website! that’s awesome! no one can block that website as there is a big number of nodes in the network and no one can shut them all down at once! but there’s a problem with IPFS, the names are not user friendly (not even developer friendly!) just look at Vitalik Buterin’s blog on IPFS:
ipfs://bafybeieexfyfk3blzpi7g7j3aaogyvlg7qhopr7ru5x5v3nxrlx5zihnaa/
no one can actually memorize it! this is where ens comes in! it’s a cutie lovely short name you register on Ethereum’s network that is resolved to an IPFS address! browsers that support ENS+IPFS combination work this way: you write vitalik.eth in the address bar, the browser resolves it to a long ugly IPFS directory and ta-da! the contents are loaded from IPFS! yessss! that’s the true realisation of my dream!
the state of ENS+IPFS now:
to actually load a website of this type you can either use browsers that support it, or extensions that add support to your favorite browser and I’m gonna check them all
Browsers:
there are currently 16 browsers listed in browser section of ens.domains but only 9 are actually browsers and not gateways or wallets-with-webview, they are 1- Brave, 2- Status, 3- Puma, 4- Opera, 5- OneKey, 6- Mises, 7- MetaMask Mobile, 8- Beacon, 9-Aloha
the gateways are honestly great projects! like eth.link and eth.limo that let you reach the eth website you like with just adding a .link or .limo to the end of the domain but afterall there’s a server (=centralization) that is helping you reach your destination.
I am a Linux user and I’ve researched for months (again) to find a privacy/security focused phone for myself and except some laggy and buggy Linux phones or hardened Android OSes you have to install on your phone manually I found nothing, so let me be a little bit harsh and claim that private smart phones aren’t good and good smart phones aren’t private! I’m sure you can’t a true peace of mind and have all of your lifesavings in an android wallet on your phone where the number of permissions apps need to run are actually more than the number of all the apps you have on your phone! so though mobile browsers with Web3 compatibility seem to be lovely projects but I’m only gonna talk about the browsers that have Linux support, which are 1- Brave, 2- Opera, and 3- Mises.
1- Brave
I installed Brave browser to test it, it wasn’t by default in Debian repository due to some controversy it had about giving the users a “false sensation of privacy” (link is copied from debian.org) which is a negative point but I don’t hate it, installed it and typed an address and it showed me a warning that Brave uses Infura to access Ethereum and Infura may see someone is trying to access the network with a “Learn more” link, I clicked on the link, (which was to https://consensys.net/privacy-policy/) and I’m presented with a 403 error 🙂 I typed “vitalik.eth” in the bar and it couldn’t resolve it, but when I turned on my proxy, both 403 error on ConsenSys and that I couldn’t load the website were all magically solved! this is not decentralization when I’m forced to use gateways that throw me a 403 on my way to reach my destination!
2- Opera
Opera is not free software, and to access Web3 from a closed source browser is like going to war for peace!
3- Mises
Mises browser is a chromium browser with Web3 support, an ambitious and admirable project! unfortunately the last commit on the browser was on Jan 8th, and it has only 10 stars on GitHub, I doubt I can be sure of the security patches of the browser.
Extensions
so yup! we aren’t ENS/IPFS yet in terms of browsers, but how about extentions? can I install an extention on my lovely firefox and browse Esteroids?
there are only 2 extentions listed on ens.domains, 1- Almonit and 2- MetaMask there are also other extentions I found on Firefox add-ons and Chromium Webstore but the total number of users of all of them combined doesn’t reach 100.
1- Almonit
The last commit on Almonit on GitHub is for 2021, and the last tweet is again for 2021, I guess it’s all discontinued
2- MetaMask
Here we reach to the most used solution to access .eth ecosystem, MetaMask extention, you install it and then whatever .eth address you type in your browser is transformed to an IPFS…wait…what? it is resolved to ipfs.dweb.link :), a SERVER somewhere in the world that is currently run by nice and lovely people but CURRENTLY! and those nice people live under a countries jurisdiction that can force them whatever it wants! and that’s the exact reason we want centralization, what we don’t see in the way MetaMask resolves .eth domains.
Fun thing about MetaMask!
btw! after installing MetaMask on firefox I opened a wallet there and as almost always there was a terms of use page I opened in a new tab and started reading, paragraph 5:
In addition, you represent to us that you and your financial institutions, or any party that owns or controls you or your financial institutions, are (1) not subject to sanctions or otherwise designated on any list of prohibited or restricted parties, including but not limited to the lists maintained by the United Nations Security Council, the U.S. Government (i.e., the Specially Designated Nationals List and Foreign Sanctions Evaders List of the U.S. Department of Treasury and the Entity List of the U.S. Department of Commerce), the European Union or its Member States, the United Kingdom, or other applicable government authority and (2) not located in any country subject to a comprehensive sanctions program implemented by the United States.
https://metamask.io/terms-of-use/
Conclusion
NO! we are not ENS/IPFS yet…