Snapps: DeFi’s Private Key to Mass Adoption
EDCON 2021 · 29 Aug 2021 · 10:18
Emre Tekisalp of O(1) Labs introduces Snapps as applications that prove facts about private user data rather than publishing the data itself. He considers privacy-preserving financial access, Mina-based zero-knowledge proofs and planned Ethereum integration, explaining how applications could verify information without moving their existing contracts to another chain.
Speakers
Topics
From EDCON 2021, hosted by EDCON.
Transcript
all right hello everyone uh my name is emre and i'm going to be giving you giving you a sneak preview of snaps um i work at one labs if you haven't heard of one labs before it's the company that incubated the media protocol and launched it helped launch it earlier this year and although it is a new layer one it is an actually friendly layer one and i'm going to talk about why that is later on so let's take a quick look at the phy landscape today um here you can see at the bottom we have obviously ethereum as the main settlement layer then we have liquidity protocols these are the likes of compound ave many others
then sometimes there's third party end user applications that provide access to these literature protocols sometimes they're the same or built by the same company and then at the very top you have many many users today the way this whole scheme works is via collateral as we know it's you know whether it's lending or you know providing liquidity to amms or many other things um collateral is the backbone of this entire system it's great because it works but the problem is that it and it causes a lot of or or you know it enforces the users to be rich um in order to be able to participate in in any of this services provided by the fight today users without having to put a lot of collateral so obviously this is not how we reach
the masses and how the ordinary users can use defy and actually this is you know this is something that the legacy financial services industry has saw for many many decades now what they do is you know yes collateral is still in the works but they also make use of each individual's financial information um so we could do that if we want to remove or you know prevent it just being accessible to reach users but then the issue is that instead of dollars or collateral you end up having to share personally identifiable information pii for short across this entire stack and the main problem here is that ethereum as with any other blockchain today is everything every data shared on
ethereum is public forever for anyone to see and obviously that's not going to work because you know not many people are going to share their banking information or social security number or credit score um on a public database forever for the entire world to see so what can we do we need to provide some privacy locks at some point in the stack so let's see how we can do that we could do it at the end user application level where users share their information with apps but the apps you know do some magic to not share with the rest of the stack but this essentially causes you know this model causes these applications to be the likes of coinbase um you know which have a lot of different user information
and can abstract some of it away from the stack but um it's not kind of the eventual goal of this decentralized system that we want to create because you know coinbase as good as it is is just like another bank what about we put the liquidated protocols um the lock at the liquidity protocol level this is even worse because although not a great analogy because you know they're not necessarily in the financial service industry if you think about facebook and social media um they have like they use the internet as a you know information settlement layer but everything else is within facebook's confines and all of your information obviously they make a lot of um uses for it good or bad then the question is okay what if we could put these privacy locks right at the user level what if the
users had a means to share or share their information or get get use of or benefit from these applications without having to share their personal information well that's what we're working on um so snaps which is short for smart powered applications uh we see them as a private plaid for everything and for those of you who may not be familiar with plaid it's a fintech company based in the us that basically does similar things in the legacy financial space where they most link banking information of users the catch however is class for example sees your entire banking information forever is all your transactions whatever you use it to link um they see everything so that's
obviously not good but you know that's the legacy financial space where you know people are i guess used to their privacy being violated but snaps um it's kind of like a private version of this for anything not just for banking but for anything how do we do this so snaps are a type of a decentralized application which has two very important features um beyond which you know they're kind of like adapt smart contracts and all number one is instead of sharing the user's data directly they use or they prove facts about the user data and how do they do this as some of you might be able to tell from the name um snaps are based on zero knowledge proofs or specifically ck snarks and the magic of zero knowledge proofs allow you to prove your information or prove a piece of data without sharing
what it actually is and then the second very important feature of this which is actually a piece of the the snap stack which we'll see a bit later is that they embed universal trustless oracles which we call web snaps for short what does this mean um oracle's obviously many of the audience will be familiar with but they're usually very limited in what they can be doing and they're not trusted so if you look at the likes of chain link or you know maker or whatever they're basically just for price feeds and they're somewhat you know their pseudo maybe trustless but at the end of the day it's a limited subset of knows that relay oracle information whereas with web snaps we basically leverage um the tls protocol uh which
how https servers um already sign all of their data and the good news is zero knowledge proofs being their magic they are are able to prove or you know essentially enable verification of these tls signatures inside of a snark so this opens a pathway pathway for many many interesting use cases some examples are unsecured lending with credit scores which is kind of like the specific use of what i just mentioned in fact we already announced and showcased a you know proof of concept would tell our finest an ethereum based app which is live on testnet where you can link your credit score in the us to get more beneficial loan terms another example of this is you can share
privately verify your employment data or whether you're accredited or not or vals you can do private dials where you don't have to disclose your vote you can basically prove that you voted on on a result or on a specific thing without sharing who you are so what's in the snap stack at a technical level um so the snaps are being built today i'm just off the bat they're not live yet for you to play around with but they will be in in a month or two um at the base layer as i mentioned snaps are based on mina which is the world's largest blockchain what that means is with mina because it's built using recursive you're not spruce a full node is always 22 kilobytes in size
um what that also enables is for that for there to be trussless bridges between mina and ethereum in fact there's a ethereum foundation grant or joint grant between the mena foundations and ethereum foundation to exactly enable this to basically build an efficient stock prover for the mean of full node such that there can be a trusses bridge built between ethereum and mina the work on this is starting soon so it'll be announced what the timelines are but what that in turn will enable is for there to be smart contracts which basically fully verify mina as well as any information or any snap transaction as we call them that happens on the mina chain to be queried directly on the ethereum smart contracts um
and the other thing that this enables is that any the app already on ethereum or on any any other chain for them to benefit from snaps they don't have to move or they don't need to change anything basically it's not like other layer ones where you have to you know move away from ethereum or maybe have two versions of your applications no what what snaps are they enable is just for mina and snaps to be used as this maybe like a layer to do for data privacy um but otherwise keep the entire dap as it is intact on ethereum and you know did that can query a smart contract which relays over the private data verification that's happening on nina the other good news is um the sdk that is being built from mina or for snaps is
typescript which is basically like javascript so super easy to use there's a lot of tooling available already we started showcasing just to private audiences and the feedback so far is great and then we're also enabling a bunch of libraries um to essentially enable some of the magic such as web snaps that i talked about or to make it much easier to do snap snark programming um the other tricky thing here is that snarks is the new frontier um good news is we're we're good at it we have one of the best teams around and we're building all the libraries to essentially enable uh for programmers to be easy to build in and open easily um the various features that they need um so that's actually my presentation uh
snaps we hope will enable a new frontier for d5 essentially this private key pun intended for mass adoption um and enable you know many of the amazing fi apps here today as well as many other use cases that we haven't even thought about yet to go for you know enable many many more users as a reminder by the way um only less than two percent of all ethereum addresses so they have used d5 at any point so we're still at the very beginning there's a lot of ground to be covered um and we hope with snaps we can enable some of this without without causing a lot of havoc and you know ask for ethereum apps to move move their infrastructure away from ethereum um yeah that's it thank you so much for listening and here are a few on slides
information that you can you know just dme or someone from vol navs or mina teams um to get more information and we'll be announcing the or releasing the sdk documentation and and and a preview uh very soon in a few months thank you for listening