Web3.0 cannot stop at key management plug-ins


 54 total views

A long time ago, I introduced BigchainDB to a full audience. This company has developed a (scalable) decentralized database, and I am its employee. Since we just released a browser-compatible JavaScript driver at the time, I told the audience: “…So, using our driver in the browser, your application no longer needs a backend!”

The first time I knew about Metamask was around 2017, and then I started the magic of Ethereum Web 3.0. It can be said that Web 3.0 quickly became popular. Suddenly, users can directly interact with the public chain through the downloaded browser plug-in. In a sense, Web 3.0 is still great.

If you install an extension program like Metamask on your browser, you can access nodes on the public chain network and use digital currency to do the craziest things. The recent DeFi website is an excellent example. The DeFi website allows users to trade cryptocurrency, provide liquidity, and perform peer-to-peer lending. These sites do not require registration, and you can gather thousands of dollars at the click of a button. This is really cool and proves that the vision of Web 3.0 is feasible.

So, what is the vision of Web 3.0? First of all, this thing may not exist at all. I only know that there is a library named “web3.js”. When working in a browser environment (JavaScript), developers use this library to communicate with remote or local Ethereum nodes.

In a Web 3.0-enabled website, when a user clicks a button (to gather ETH into a smart contract), most of the calculations are supported by the web3.js library that regularly communicates with Ethereum nodes. Finally, the web3.js library allows users to send transactions to this node, thereby transferring user funds.

READ  Interview with Mask Network: We want to connect the old world of Web 2.0 with the new world of Web 3.0

Normally, key management projects such as Metamask run on the user’s browser. They allow users to use the same key to sign transactions on different websites.

All in all, this is Web 3.0, a word game based on “Web 2.0”. Web 2.0 is an upgrade of network standards, bringing us modern single-page applications and dynamic AJAX loading. What about Web 3.0? What improvements does it bring? Currency website?

Indeed, if you can clear specific memories in your brain, for example, you can do grep -l web3 brain | xargs rm, and someone asks how you conceived Web 3.0 based on the blockchain and implemented by smart contracts, you might be Describe a completely different ecosystem. You will envision peer-to-peer networks, light clients, and new network standards. None of these happen to be Web 3.0.

Based on current experience, if you don’t install Metamask (or other key management plug-ins), you will find that the website responds very poorly and is prone to crash or stop working. Open the web console of a Web 3.0 website, and you will see that it is sending a large number of PRC requests to all Ethereum nodes. Sorry, I’m talking about Infura nodes (a provider of cloud hosting services for Ethereum full nodes). It’s kind of stupid.

Even more stupid, Metamask allows developers to arrange users to make specific contract calls. You may accidentally click a button and put all your funds at risk of being stolen. It is possible that the hacker invaded the website server, the website service provider did evil, or the website took the initiative to routine you (on the surface everything is normal, stealing your money secretly).

READ  3 key on-chain indicators indicate: Ethereum price is bullish and reverse

That’s the end of the complaint. Now I want to point out what I think Web 3.0 should change:

  • We should stop building key management plug-ins and start thinking about how to implement standardized network APIs. We can no longer train users to develop the habit of installing browser plug-ins!
  • We need to optimize the light client as soon as possible to keep it away from third-party services such as thegraph and Infura.
  • We need to improve the client libraries (ethers.js and web3.js), simplify them greatly, and eliminate all bugs (damn bugs!)!
  • We need to take advantage of some basic features of blockchain. Since most of the data on the chain is immutable, we can cache it first.

Finally, I think we can no longer focus our attention on improving the version number of the Web. Maybe we should reconsider writing more backends. We should advance research on license-free networks such as Open Gas Station Network to allow developers to improve user experience. In addition, we should think more about how to build a network of machines composed of blockchains. In many ways, Web 3.0 is just a cool concept. We have to think of something better. Imagine what would happen if currency was more deeply integrated into the computer system?