Welcome back! This week I'm walking through the recent news with Uniswap.
Quick Background & Terminology
Uniswap is the world's largest decentralized exchange. Built on Ethereum, the protocol is the largest consumer of gas fees on the entire network. Uniswap allows users to exchange one token for another using smart contracts and liquidity pools (rather than a central order book, like Coinbase). We'll cover Uniswap and decentralized exchanges in more detail in a future edition of Easy DeFi. For now, all you need to know is that the Uniswap Protocol is a huge decentralized exchange that runs on Ethereum smart contracts.
Next, a few definitions:
Web2 - Web2 is the Internet that most of us use in our everyday lives. It's made up of websites and services that are run by centralized companies, like Twitter.
Web3 - Web3 is tomorrow's decentralized web, powered by smart contracts. The Uniswap Protocol is part of Web3.
What Happened This Weekend?
Last Friday, Uniswap published a blog post outlining their decision to remove a number of tokens from their interface. The full list can be seen here. Uniswap's post was light on details, but it implied that the decision was based on recent regulatory comments.
One explanation for Uniswap's decision is SEC Chairman Gensler's recent comments on stablecoins:
SEC Chair Hints Some Stablecoins Are Securities - CoinDesk
Being labeled a "security" puts a token in a much different light in the SEC's eyes, which is why Coinbase doesn't allow certain tokens on its platform (as it's not a registered broker-dealer).
Most of the tokens that were removed from Uniswap's interface are some type of synthetic or derivative token.
For example, one of the tokens on the list is Mirrored Amazon (MAMZN). Mirror is a DeFi protocol that allows users to create synthetic exposure to real world assets - stocks like Amazon, Tesla, or Google, for instance (all of which were restricted by Uniswap last Friday). Using Mirror, someone could gain exposure to Tesla or Google stock on chain.
Interestingly, they decided to restrict a number of other assets, like options and synthetic Euros, as well. Adam Cochran had an interesting thread on Twitter analyzing the list of restricted tokens:
While the restrictions are unfortunate, the situation does offer a good opportunity to highlight the important differences between web2 and web3, and why decentralization matters.
Uniswap's Structure
Understanding what happened with Uniswap on Friday requires an understanding of its legal structure.
The Uniswap Protocol is a set of decentralized, autonomous, and unchangeable smart contracts that have been deployed to the Ethereum network.
Meanwhile, Uniswap Labs is a development studio that contributes code to the Uniswap Protocol. Uniswap Labs is a legal entity in the United States. They're also the ones who develop and maintain Uniswap.org, the main user-facing application for the Uniswap Protocol. Because Uniswap Labs is a quasi-centralized legal entity in the US, they're exposed to regulation just like any other company.
Protocol vs Website
The Uniswap Protocol is its own, living thing. Though created by Uniswap Labs, it now operates independently and autonomously. Once the smart contracts were released, Uniswap Labs gave up all control over the protocol and could no longer change the code (except through subsequent versions of the protocol, like launching Uniswap v2 and v3).
The Uniswap Protocol is the back-end code that makes everything work. Its smart contracts are deployed on the Ethereum network, which has a few important implications:
The code is open source and forkable. Anyone could take Uniswap's code and adapt it for their own protocol (see sushi.com, for example, which was created from a fork of Uniswap)
No one can change the code, not even the creators
No one can censor the protocol or take it down
Anyone can call functions in the smart contracts and use the protocol themselves without having to go through Uniswap's official interface, uniswap.com
On the other hand, Uniswap's website is maintained by and closely associated with Uniswap Labs. When faced with regulatory uncertainty, Uniswap Labs had to take action to remove certain tokens from the website. Importantly, Uniswap did not and cannot remove those tokens from the Uniswap Protocol!
That means that anyone can still call functions to swap the restricted tokens, they just can't do it by using uniswap.org.
New Front Ends
Let's go back to the world of Web2 for a second.
Twitter has an API that developers can use to create things using Twitter's data. Developers can use that API to create Twitter bots, services, or alternative front ends. While Twitter maintains its own official front ends (twitter.com and the Twitter app), there are a host of alternative Twitter clients on the App Store. All of these clients use data from the Twitter API to create an alternative browsing experience.
Like with Twitter, developers can use the Uniswap Protocol's code to create applications of their own. The important difference between Twitter's API and the Uniswap Protocol is that the protocol's code is open source and uncensorable.
Twitter, as a centralized company, wants its users to use the official apps and website so they can monetize the platform by showing ads. In order to keep users on their official apps, they limit the types of actions that can be performed with their API. This means that unofficial Twitter clients, like Tweetbot, end up having more limited functionality than the official Twitter app.
In the protocol's code, all the functions are open for anyone to call. That means that someone could build a full replica of Uniswap's interface while including the tokens that Uniswap recently restricted.
In fact, someone did just that! Uniswap.ninja was publicized shortly after the announcement. It interacts with the same back end that uniswap.org does, it's just happening through a different website.
Security Concerns
While it's great that anyone can call the smart contract's functions, most of us are not technically adept enough to write code that interacts with them. We rely on others to build sites that interact with the protocol, like uniswap.ninja.
This should raise some eyebrows from a security perspective. It would be quite easy for a malicious actor to create a Uniswap-clone website and tell everyone that it interacts with the Uniswap Protocol when the website actually just sends money to the bad actor's wallet.
You should be extremely careful when using these services. I'd recommend not even using them unless they are community vetted and considered safe for use. Uniswap.ninja is built by a reputable team, Kleros, but should still be used at your own discretion!
Concluding Thoughts
While Uniswap Labs' decision is unfortunate, hopefully it can serve as an illustrative example of why Web3 and decentralization are so important. Consider that if Uniswap was a centralized exchange, like Coinbase, users would have no way of purchasing or selling these tokens and their assets would be stranded.
This situation affects a few tokens, but you can extend the implications to other areas as well. For example, we could one day see a version of Twitter built on Ethereum where all the content is freely accessible. Instead of having one client, we could have many different apps that all show the data in different ways. And no one would be able to censor a user!
Note: The information contained in this site is provided for informational purposes only, and should not be construed as legal advice on any subject matter.