On privacy in Web3. In conversation with Will, Kaili and Mike from Tutela
For this interview we sat down with not one, but three interesting people! They are Will McTighe, Kaili Wang & Mike Wu - some of the people behid Tutela, an application which aims to help Ethereum and Tornado Cash users protect their privacy, and understand how much they have revealed about themselves through their blockchain activity. We talked about getting into the web3 space, privacy, as well as the ideas behind Tutela.
Introduction
How did you all get started in computer science?
Kaili: In 8th grade, I went to an academic summer camp, where by coincidence, I got placed into a Robotics module. By playing around, I found out that in C++ there is a function that emits sounds at a given duration and frequency. “Animals” by Martin Garrix was stuck in my mind at the time, so out of boredom during class, I figured out the frequencies for each note and coded the main theme of the song. I was ecstatic. I signed up to take AP Computer Science in 9th grade, and then it went from there.
Mike: When I was learning to drive, I was really bad at changing lanes and several times, almost crashed into other cars in my blind spot. I first started to code to hack together a shoddy appendage glued to the dashboard of my car that contained a camera, an LED, and a computer vision algorithm called “optical flow” that would shine a bright red light when a vehicle was in my blindspot. I formally took my first computer science course in college, where I had to unlearn a lot of the bad habits I picked up learning to code myself.
Will: Only when I got into crypto. I primarily studied Math Econ and Philosophy in the UK and given I’m taking the leap into Crypto post-graduation, I’ve recently thrown myself in head first!
Before starting your work on Tutela, where were you and what were you working on?
Will: I was living in the UK before I came to Stanford. I worked at Goldman Sachs in Investment Banking and then Vitruvian Partners, a Growth Equity fund based in London. At Stanford, I’ve been exploring business ideas and fell down the crypto rabbit hole in June 2021 - I’ve been obsessed ever since!
Kaili: I’m a senior in undergrad school - so I’ve just been a student at Stanford. Ever since sophomore year, I’ve liked to tinker on web-based side projects.
Mike: I’m a fifth year PhD student in computer science. Before Tutela, I was focused on researching new machine learning algorithms called “generative models”. Before then, I worked at Facebook in the applied ML group, and as a software engineer at a startup called Lattice Data.
What was your first impression of web3 and what interested you to move to web3?
Will: I became convinced that crypto was going to take off when I came to understand how tokenomics could incentivize early participation in new crypto projects and reduce the cold start problem. Tokens with a finite supply and an in-protocol utility are an equity-like instrument, in that they give early adopters and retail investors meaningful upside opportunities that they would have not otherwise received.
Early Uber drivers received nothing for driving for Uber despite being a core contributor to its early growth. In an Uber dApp, in which drivers are paid in an Uber token, they would have received a lot of upside for their participation because as the network grows, so should the token’s price.
Kaili: I heard about Bitcoin and Ethereum in passing during high school, but I had the impression that crypto was basically synonymous with the dark web and shouldn’t be taken seriously. So I didn’t really pay any attention to it. Fast-forward 4 years and my internship project this past summer at Robinhood happened to be on preventing fraud among crypto users. It got me thinking about crypto, and the more I learned about it, the more I was intrigued. You can never stop learning.
Mike: I couldn’t believe how much data is public and free to use on blockchains. Coming from the AI world, valuable data is a scarcity and the bottleneck for most models is not new algorithms, but the quality and quantity of the data given to it. All of the sudden, there is this public data source where millions of transactions are posted with rich metadata, and the quality of data is guaranteed through public protocols. I was, and am, excited about what you can do with this data.
Is there any trend or group you love but don’t want to associate with its culture or perception of it?
Will: I love crypto, I hate the crypto elitism on Twitter. I saw a Twitter poll recently asking if the NFT community was a ‘real’ part of Crypto Twitter. Most people responded ‘no’. This annoyed me because crypto is still a fringe group of people and if we want this industry to succeed or reach scale, we should be welcoming everyone who is interested with open arms, not creating a community of upper and lower class citizens.
Kaili: Although I am fascinated by the crypto world and spend a lot of time in it, I don’t strongly identify with the mainstream perception/culture of it — and by that, I mean the focus on getting rich super quickly (WAGMI, NGMI, etc.). It is an unsustainable environment. I’m interested in crypto because its technology can unlock new possibilities for humanity. For that reason, I don’t currently spend a lot of time on NFTs/meme coins/ investing and spend more time on the building side.
Web3 and Privacy
What does privacy on the internet mean to you personally?
Kaili: Personally, I’m actually not that private on the internet (i.e. I use social media often). That’s also because the stakes are only my own; I’m 22, so I don’t really have anything that I’m worried about protecting (if I become successful, I’ll revise my answer). However, if I’m building something for other users, it is a much bigger deal to make it private because the stakes are much higher.
Mike: For me, being private on the internet comes at a big cost. A lot of web 2.0 is built on using my data to provide a better experience, like high quality search results. Although there are ways to protect my privacy, such as using Tor, I am conscious that the cost is a worse experience (and of course speed). My efforts when it comes to internet privacy come down to being careful about what information I put about myself publicly, which I admit is a crude proxy.
What does a privacy-friendly internet look like to you?
Will: I don’t think there is a privacy-friendly internet. We are mined for our data every time we use an internet browser. I imagine a world where your data is attached to your crypto wallet and when you enter a new web app, with a single click you can approve or deny access to your data from within your wallet. I would much prefer that to the annoying multi-click pop ups we currently get about cookies.
Mike: I think a privacy-friendly internet is not about not using my data but about transparency around when my data is being used and for what. For many applications, I am happy to trade my data for a good user experience. For example, I would trade my listening history to Spotify in return for better recommendations for new music to try. But I would be less happy if I found out an internet application is selling my data to another company. Being privacy-friendly means me knowing what an internet application is using my data for and having the power to prevent the usage I believe is crossing the line.
Do you think our data and identity on the internet should be our responsibility or of the platforms we use?
Kaili: It should be both. It is your responsibility to judge whether or not the convenience is worth giving up your information. But it’s also the platform’s responsibility to 1) be ultra-transparent about how they handle your data, and 2) keep it secure.
In web3 we as individuals want to stay private and anonymous but expect companies and projects to stay transparent and open. Can these go hand in hand?
Will: I would argue that most individuals talk about liking on-chain privacy but don’t really care about it yet and aren’t willing to spend money to stay private. Only around 30 thousand unique Ethereum wallets have actually used Tornado Cash, despite it being a best-in-class protocol and privacy coins like Zcash and Monero have underperformed other crypto categories.
Mike: In an ideal world, privacy is not something that individuals need to consciously choose. With the right infrastructure and incentives, I would hope that future blockchain ecosystems will have privacy as a given. Zero-knowledge proofs seem to be a very promising technology for transferring information without compromising privacy. We are seeing some early examples of this being used, e.g. in the DarkForest game. It remains to be seen how zero-knowledge proofs can be baked into core blockchain design, and what is sacrificed along the way.
What do you think is a barrier for entry in shifting to DeFi right now?
Will: Two key barriers for DeFi adoption are a lack of KYC (when it comes to institutions), transaction fees (for consumers) and cross-chain liquidity bridges (for both institutions and consumers).
It is very possible that AMM DEXs segment their liquidity pools into KYC’ed and non-KYC’ed users because many US regulated institutions can’t run the risk of accidentally trading with sanctioned entities. We need KYC for wallet holders that reveals identity to a protocol and can be stored privately without revealing identity on-chain.
The transaction fees on Ethereum are prohibitive. The next billion users are just not going to pay $80 in transaction fees to buy tokens and engage with crypto protocols. This is made even harder by the fact that liquidity is in all the disparate pools (Ethereum, L2s, Solana, CEXs) and it is annoying and expensive to move between them.
Kaili: I also think that accessibility from a UX perspective is pretty bad right now in crypto. So many people I know have asked, “Where can I start getting into crypto?” Setting up a wallet for the first time is pretty confusing. There needs to be more abstraction from the low-level blockchain technology right now - just like how the internet became usable by everyone, rather than just technical people. Builders have been focusing so much on pushing the frontiers of backend (like applications, protocols) that few have been focusing on the UX side and onboarding processes.
People have become so accustomed to giving their information away at the cost of convenience on the web 2.0. What do you think should be the main concerns when it comes to this?
Will: I actually don’t have a problem with having my data on web 2.0 sites. Giving away your data to web 2.0 companies is much safer than leaving it on-chain! At least for web 2.0 companies, you have to be an employee to see the data or an approved third party. In Web3, anyone can see your data as it currently stands. That is like someone being able to go through your online purchasing history. There is so much room for stalking and nefarious activities aimed at users.
Mike: Personally, I am concerned about the lack of traceability. Although I am quite comfortable trading a decent amount for a good application experience, I do have a problem with my data being used when I get nothing in return. Right now, there isn’t a way to tell the difference between when my data is being used for a better UX versus when it is used for pure profiteering.
Tornado Cash and Tutela
Transactions on the blockchain are public by nature and this is marketed as a positive feature of financing on the blockchain. Why do you think privacy is important here?
Will: There is a place for privacy for every group of potential crypto users:
Consumers - our salaries are not public knowledge for our colleagues/the public to see. Neither are our bills, online purchasing history or political & charitable donations.
Businesses - Apple doesn’t want to reveal who its suppliers are, and how much they pay for parts. Similarly, they may not want salaries to be public. Investors want to keep their alpha private. Alameda Research would probably prefer it if y’all didn’t copy their trades.
Applications - privacy prevents mempool front running. We’re seeing interesting solutions already like Flashbots & Eden Network.
It would also support sealed bid auctions and help prevent ConstitutionDAO being outbid because another bidder knew exactly how much it had. We obviously don’t want it all the time but there are lots of use cases we do.
Can you give us a brief explanation of Tornado Cash?
Mike: As you said, everything you do on the blockchain is public. But for many practical applications e.g. salary payment, I may not want that to be publicly tied to my wallet. Tornado Cash provides a solution for this on Ethereum through what is called a “mixer”. You, along with a large set of other users, deposit tokens into a “mixing pool”. When you need to use your tokens, you can withdraw from the pool with a separate address. Because your tokens were “mixed” with the tokens of everyone else who deposited into the pool, it is highly unlikely for an adversary to tie your withdrawn tokens to depositing wallet. Theoretically, Tornado Cash provides privacy. However, in practice, there are many ways to use Tornado Cash incorrectly, which can leak information.
And what is Tutela?
Kaili: Tutela is a web app that helps users check how anonymous they are.
It does two main things. The first is that we downloaded all Ethereum and clustered addresses we believe belong to the same entity through expert heuristics and ML algorithms. Users can enter an address and see which other addresses are in their same cluster as well as which transactions led Tutela to creating those clusters.
Second, for Tornado Cash users in particular, Tutela analyzes how private your mixed transactions are. As Mike mentioned, there’s lots of ways to use Tornado Cash incorrectly. For example, if you deposit and withdraw from the same pool using the same wallet, you have just revealed your identity. Tutela has 6 or 7 of these heuristics to check what users reveal about themselves.
Will: Companies like Chainalysis are already using sophisticated methods to mine information about you. We made Tutela to be a public version that is more accessible for Ethereum and Tornado Cash users.
Mike: If you are curious, we have a whitepaper and you can try the product at tutela.xyz. All of our code is public on Github.
What steps can users take to be more anonymous if it’s found that their anonymity score is low?
Mike: On Ethereum, everyone should use many wallets. I know this is a lot of secret information to manage but if your privacy score is low, try creating a few new addresses and splitting your transactions across them. Of course, you can also use Tornado Cash! Just remember to use new addresses when depositing and withdrawing. And don’t set the gas price to be your favorite number.