extrnode: How We Plan to fix the Main Vulnerability of the RPC Layer in Web3

RPC nodes have become a vital part of Web3. They provide dApps access to blockchain and execute the primary functions of retrieving or sending data. Sadly, this layer of the Web3 architecture is still extremely vulnerable to outside influence from regulators and ill-intentioned actors. Most RPCs now don't stand the test of true decentralization.

This article explores the RPC node issues and offers our vision of a viable solution to their fundamental shortcomings.

What is RPC?

RPC nodes are crucial for Web3 since they provide a link between blockchains and the dApps that run on top of them. RPC’s task is to retrieve information from the blockchain for users of decentralized applications. User actions in dApps, including even launching their wallet, in fact have the application make an RPC request.

Why is Web3 not as decentralized as we think?

We live in the era of Web3 that promises to scale up the ecosystem to the level where architectural, political, and logical decentralization is possible.

Still, this decentralization is sufficient only on the consensus layer where discontinuing one or more validator nodes won’t affect the entire ecosystem, proving that the network is decentralized enough. For instance, the Solana consensus layer is politically and architecturally decentralized as the Nakamoto coefficient is currently 31 and a complete removal of several validator nodes will have no impact on the network.

At the same time, the centralization of the RPC layer makes the network vulnerable to malicious attacks, sanctions, and unscrupulous community members. That is, having the layer controlled by just a handful of centralized providers creates a single point of failure that third-party intruders and the providers themselves can exploit to effectively disrupt the entire ecosystem. Disintermediating the layer is therefore important for the blockchain industry if it wants to develop securely.

Without a well-functioning and well-decentralized RPC layer, transactions cannot be verified, nor can dApps perform properly. Leaving this crucial infrastructure vulnerable to arbitrary or government-sanctioned shutdowns puts the entire Web3 ecosystem in enormous peril.

Why do dApps need an extra RPC?

Since putting all eggs in just one public RPC node is dangerous, we believe every dApp developer should maintain their own RPC node. It’s the only way to achieve sufficient decentralization on this layer.

As an example, we used to run a public RPC node called Tezos Giga Node, and about 75% of the total network traffic went through it at some point, which looked terrible in the long run. We shut it down in the hope that it would incentivize developers to run and maintain their nodes and ensure higher sustainability of the entire ecosystem.

But the problem is the expenditure of maintaining such an infrastructure, which requires continuous investment of time, funds, and technical expertise. For instance, running an RPC node on Solana would require at least 265 GB of RAM. Put into perspective, this would be enough to have 7,500 tabs open on Chrome, even though Solana is not RAM-intensive. Plus, the price of one server with these specs starts at nearly $1000 per month, so running several nodes can cause financial strain.

Still, even if each dApp runs its own RPC node, it’s not reliable enough in terms of sustainability. A node could easily go down or become compromised for – let’s be honest – entirely predictable reasons.

An obvious solution is to get an extra RPC node that will ensure low latency and act as a fail-safe if a primary RPC endpoint doesn’t function properly.

What's wrong with the existing solutions?

There are several ways for the community to connect to extra RPC nodes.

  • Public nodes are not fault-tolerant because they can often go down or get spammed.

  • Centralized providers of RPC nodes can get attacked by regulators and unscrupulous ecosystem participants. Even though their nodes are geographically distributed, their teams and legal entities aren’t immune to cyber, regulatory, and physical attacks.

  • Known decentralized RPC providers frequently require a volatile token to use their nodes, and this heightens the entry threshold, especially since the infrastructure should be tailored to it, which again increases the costs.

It’s crucial to roll out a solution that will protect the network from the mentioned vulnerabilities.

What we believe

We are building an open-source load balancer to allow dApps developers to connect to a cluster of public RPC nodes and automatically redirect requests if any node is down. We will also add our RPC endpoint to the cluster to ensure 99.9% uptime, no matter what.

extrnode’s load balancer will be free, and each developer will be able to use it to connect to public RPC nodes. Our purpose is to provide the community with a fault-tolerant, attack-resistant, and disaster-resilient solution.

We are also developing a paid solution for enterprises and blockchain platforms. Its operation will be in the hands of battle-tested validators. After all, it’s their job to be network protectors, and they have the reliable infrastructure and proper experience that fit this enormous task.

So far, we’ve pooled efforts with 01node, Chainflow, Imperator, Chainode Tech, Stakin, Staking Facilities, and Triton. All of them are true experts in running nodes, and we are proud to have their support. More validators are expected to join soon as the project unfolds.

There must be an economic incentive for professional validators to keep joining extrnode and remain honest – a mechanism that works for any rational actor as long as they want to succeed or remain in the game without losses. Node operators will get compensation in stablecoins for each request made via their RPC endpoint. A smart contract will handle automated payments.

We might further reinforce decentralization through competition by introducing governance tokens that would come as a reward for every successful RPC request processed. The eventual amount paid in stablecoins will directly correlate with the number of tokens earned. This would help honest actors boost their reputation and remove dishonest ones. It would promote fair competition and make the entire ecosystem more resilient and reliable. Other utilities of these tokens, such as granting the right to accept new validators through a vote, are discussable.

As a result, we will build a reliable decentralized RPC layer. Developers will be able to focus on building new products that bring value to end users and advance mass adoption and the Web3 world.

What makes extrnode stand out?

Let’s compare the existing solutions to extrnode using the data as of October 17, 2022

extrnode aims to be the Robin Hood of Web3 and a truly decentralized community-driven project.

Conclusion

While the work on our free load balancer is still underway, we offer a list of Solana public RPC endpoints. Check out our GitHub. We will update the list regularly.

Ensuring the safety of the RPC layer means ensuring its true decentralization, which is unattainable to those who act alone. Only as a community can we come together and solve the many problems in this area. extrnode is a solution that can benefit everyone. So let’s make it work. Together.

Drop us a line on Twitter. Let’s discuss things at length.

Subscribe to extrnode | Powered by Everstake
Receive the latest updates directly to your inbox.
Mint this entry as an NFT to add it to your collection.
Verification
This entry has been permanently stored onchain and signed by its creator.