wETH FUD? Should you worry about it?
Dec 27, 2022
Basically, in the 3rd week of November, there were a bunch of tweets going out where people were jokingly, talking about wrapped Ethereum and whether the price would go down or if it can get hacked or whatever. Unfortunately, that joke turned into some real fun and people started questioning that. That's a downside of the way crypto is structured around Twitter where everything loses the context and loses a joke.
What is wrapped ETH?
In order to answer that, we have to go back to 2015. There is a doc that Vitalik wrote in 2015 around thoughts about standardizing certain smart contracts. Originally smart contracts could write anything in them. You could build your dApp that way. What they found is that for specific use cases like tokens or decentralized exchanges or name registries, it would be useful to have some template that you could use.
So that's where the EIP 20 came from, that's the Ethereum Improvement Proposal 20 and in that, they basically outlined a simple interface or template for creating a new token on Ethereum. That interface essentially had a couple of different functions in the smart contract. Things like what is the name of the token, what's the symbol?
What are the total supply functions to transfer tokens from one account to the other, view balances of accounts, and things like that? That's what laid the foundation for the crazy ICO boom in 2017 and 2018. People use ERC-20 to create new tokens and then get other people to buy into those tokens through marketing and then increasing the value of those tokens.
Why do we need wrapped Ethereum?
The original ETH token is not compatible with ERC 20. That's pretty interesting because obviously, ETH came from the very beginning of the Ethereum networking protocol. ERC 20 got added later to standardize a token and so essentially what wrapped Ethereum is, it's a way to solve that difference between regular native Ethereum and the new ERC-20 tokens that started appearing after 2015. If you think about it, it's technical debt in the Ethereum network, and this was a way to put a wrapper around regular Ethereum to make it compatible.
Why does it need to be compatible with ERC-20? The reason behind that is that so many different applications got built, that all understood ERC-20 natively. If you think about decentralized exchanges and all kinds of Defi lending protocols, they all speak ERC-20 natively. It was very useful to wrap regular Ethereum into the ERC-20 contract so you could directly exchange them and transfer them and lend them the way you did with other tokens. The next step from that is what the ERC-20 contract looks like.
Here's a link to Etherscan with the actual contract that holds all the wrapped Ethereum.
From the contract, you can see there are 600,000 addresses in total that hold wrapped Ethereum, and there have been 128,000,000 transfers through that contract. Now, if someone's trying to sell you wrapped Ethereum and it's not through that contract, that is a scam. This is the only official real wrapped Ethereum and so that's something to be careful about. Just to go into slightly more detail about the contract itself, ERC-20 is just from a programming perspective, we call it an interface, so it's basically specifying what functions you need to have available in your smart contract to enable it to be compatible with ERC-20.
It's a standard that people just agree to all follow along with and the other thing I think is interesting is built into the actual code of solidity and that's the reason why we had to have a separate wrap ETH token. When you call a function on Ethereum by solidity, you can send money as part of that function calls, and that's what enables a lot of the flowing of money around the Ethereum network.
Ethereum, ERC-20 wrapped is just a smart contract. You can create your own wrapped Ethereum. Of course, it's not the official one, and as long as you could just duplicate that contract and it would be safe in that instance. But the reason why it's generally not safe is that most people manipulate the contract slightly to add in bad code and it's very hard to debug smart contract code, even using the explorers that are available today. It's one of the spaces today is like, how do we make smart contracts more readable and more understandable for everybody?
Another thing that we want to talk about is, like, when you use gas on Ethereum to pay for transactions, you have to use the native currency where ETH is built into the code of solidity, and that's why you can use it to pay for gas. You can use wrapped Ethereum to pay for gas. So while they are equal in the sense that their values are one-to-one, their functionalities are different. The way it works is simple. You could probably write the smart contract in less than 100 lines of code. It's just about sending and locking in Ethereum and then updating the value in the smart contract to say that there's some available.
According to the rules of the ERC-20 token. So it's all open source. So if you are a developer, we would recommend just going in and looking at the repo of the wrapped Ethereum smart contract just to see how it works because it isn't as complex as you might think.
Getting to the main question of this blog post can the value of wrapped Ethereum go down?
If you take your regular ETH, you send it to the contract and you get back wrapped Ethereum, is there a risk in holding that? The simple answer is no, there is no risk. It is easily transferable back to ETH and you can't lose it. Now, there are a couple of caveats. The first one is that if the smart contract itself is wrong in some way, it can be hacked, or someone figures out a way to manipulate that, then you can lose your wrapped Ethereum.
But if that happens, there are way bigger challenges that would be exposed in the Ethereum network. So the likelihood is extremely small. You're basically guaranteed by the smart contract and by the whole Ethereum network that you'll always be able to switch back and forth between wrapped and regular Ethereum at a one-to-one value. The second thing is that to dispel the fear around it, there is no issue in holding wrapped Ethereum and it's a safe asset to hold basically almost the same safety level as Ethereum. However, as we touched on earlier, there are other things that you can wrap and so because the ERC-20 is just a regular contract, people can create other, wrapped Ethereum, they can try to shill those and you can get into trouble that way.
So the question is always make sure you know where you're sending money to, always check the ether scan link, make sure it's the right smart contract you're sending money to, etc.