Afri Schoedon, an Ethereum developer at Parity Technologies, said that the network cannot rely on Infura to process 10 billion requests per day.
Created by Michael Wuehler, an author at ConsenSys and NYC Ethereum founder, Infura is an infrastructure that allows decentralized applications (dApps) to process information on the Ethereum network without running a full node.
Some of the largest dApps and protocols including Ethereum wallet MetaMask, decentralized exchange protocol 0x, and MyCrypto rely on Infura to broadcast transactional data and smart contracts to the Ethereum mainnet.
Ethereum Has to Stop the Dependence on Infura
This week, Schoedon firmly stated that if dApps continue to rely on a third party service provider or infrastructure developer in Infura, the vision of Ethereum will “fail” in the long-term.
“If we don’t stop relying on infura, the vision of ethereum failed. If we don’t stop relying on infura, the vision of ethereum failed. Or build a strong network of thin and light clients. There is no point in having d-apps connecting through metamask to a blockchain hosted by someone else.”
The concern in regards to the influence of Infura in the node ecosystem of the blockchain is that if dApps do not run their own nodes or rely on a network of light clients, it will increase centralization in the protocol, which was structured and designed to operate as a global supercomputer.
if we don't stop relying on infura, the vision of ethereum failed
— Afri ⬙ (@5chdn) October 26, 2018
In ideal blockchain ecosystem, service providers, dApps, and decentralized systems would operate their own nodes to verify information and data in a fully peer-to-peer and distributed manner. However, if node infrastructure operators like Infura are tasked by popular dApps to handle data requests on behalf of them, then the risk of centralizing the Ethereum network could increase.
The merit in the argument of Schoedon is that for dApp operators and even individual users, it is relatively easy to run a pruned node, as opposed to an archival node, for efficiency.
An archival node, often referred to as a full node, includes all of the historical transactional information on the network so that a node operator could check the history of every transaction recorded throughout the entire history of the network.
“People think that in order to have a fully verified Ethereum blockchain (aka full node), you need to run an archival Ethereum node. Running an archival node is thought to be an issue for Ethereum because an archival node currently takes up to 1.4 Terabytes (data point provided by Afri Scheoden, a developer at Parity Tech),” cryptocurrency researcher Julian Martinez wrote.
However, for dApps and the vast majority of users, it is highly unnecessary and inefficient to run an archival node. Rather, users can run a pruned node, which eliminates historical data on the Ethereum network and allow users to run a light node.
“Pruning the state trie saves tons of disk space because it is the historical state data that is creating the blockchain bloat. A pruned blockchain can take up 90 GB compared to the 1.4 Terabytes taken up by an archival node (data point provided by Afri Scheoden, a developer at Parity Tech). Although data from older state tries are deleted, all of the information necessary to recreate that state trie is still saved on your local blockchain.”
Run Individual Nodes
A simple solution to the issue of the reliance of dApps on Infura is for dApps to begin running indepent nodes. But, as Schoedon suggested, a strong network of thin and light clients could also be a possibility to reduce the dependence on centralized infrastructure operators.
Featured Image from Shutterstock