What to know about Zero Knowledge | Devcon Bogotá
Devcon·Sat, Oct 7, 2023, 12:00 AM
Visit the https://archive.devcon.org/ to gain access to the entire library of Devcon talks with the ease of filtering, playlists, personalized suggestions, decentralized access on Swarm, IPFS and more. https://archive.devcon.org/archive/watch/6/what-to-know-about-zero-knowledge/ Zero Knowledge, aka ZK, has become a catch-all term to represent much of "modern" or "advanced" cryptography -- especially cryptography that's relevant to the future of blockchains. In this panel, we will share our perspectives on ZK -- how to think about it, what to look out for, and what to focus in on. We'll also discuss how ZK may alter and complement Ethereum's own future. Speaker(s): gubsheep, Albert Ni, Barry Whitehat, Vitalik Buterin Skill level: Beginner Track: ZKPs: Privacy, Identity, Infrastructure, & More Keywords: ZKP,Zero Knowledge,Future of Ethereum,Scalability,Security,Privacy Follow us: https://twitter.com/efdevcon, https://twitter.com/ethereum Learn more about devcon: https://www.devcon.org/ Learn more about ethereum: https://ethereum.org/ Devcon is the Ethereum conference for developers, researchers, thinkers, and makers. Devcon 6 was held in Bogotá, Colombia on Oct 11 - 14, 2022. Devcon is organized and presented by the Ethereum Foundation, with the support of our sponsors. To find out more, please visit https://ethereum.foundation/
Transcript
foreign [Music] good afternoon everyone as Evan said my name is Albert and I am delighted and honored to host this panel which is ambitiously titled what to know about zero knowledge but first I need to apologize to all the cryptographers out there oops we did it again we took a turn from cryptography and how should I say it expanded what it means and I'm very sorry even though it wasn't my fault not even one bit it's actually more of these guys's fault but I apologize nonetheless you see as cryptographers so often remind me this already happened with the word crypto a long time ago like six whole years ago crypto used to mean cryptography but now it generally refers to a much broader set of things such as cryptocurrency or just this kind of circularly defined quote-unquote crypto space and here in a case of History if not repeating then at least rhyming something similar has happened with the term zero knowledge or ZK when I thought about this I was like it's almost like someone somewhere went through an escalating series of dares like I dare you to hijack the meaning of the word crypto oh you did it well that was too easy because you know the word cryptocurrency even has crypto in it how about you do something really ridiculous like take an objectively defined terms such as zero knowledge and repurpose it to include stuff that is literally not at all zero knowledge and so that is the first thing to know about zero knowledge it no longer means zero knowledge in a technical sense only rather zero knowledge or ZK has morphed into referring to just about anything that utilizes certain proof techniques proof techniques that give you actual zero knowledge in some but definitely not all cases so to summarize ZK used to mean zero knowledge as in I am able to prove that I know something without revealing anything beyond that fact but in practice ZK now tends to refer to a broader usage of proof techniques that have some important properties now what are these properties a very incomplete list includes Precision correctness and succinctness for example when ZK is used for privacy that's an example of high Precision because you can provide better privacy when you are more precise about what information is exchanged and succinctness is another way of saying that in some instances ZK is used as this compression super weapon now compression is super important especially in a blockchain context because as we know the cost of storing data can be quite high and so that's why for example a ZK roll-up doesn't actually provide privacy rather it provides a more succinct guarantee of correctness but anyway enough about how I think about ZK my thoughts are both surely flawed and incomplete which is why I have these three fine gentlemen up here with me today gup sheep Barry vitalik thank you so much for joining every time we chat I learn a ton and have a lot of fun so I'm excited to have another conversation I hope everyone here enjoys it as much as I will so let's start with some introductions specifically gup sheep and Barry since I figure people are a little bit familiar with italic um go up sheet Barry can you share a bit more about what you do on a day-to-day basis how would you go cheap cool hey everyone I'm gut sheep I work with the Xerox Park Foundation along with Justin glibert and a handful of other folks on the day-to-day most of our projects are focused on some combination of what we call application Level r d and what this roughly means is trying to skate to where the puck is going on you know if ethereum public blockchain slash New Primitives from applied photography get let's say 100x better over the next two to five years what is that really going to unlock so we help support this you know relatively tightly knit but uh you know loosely associated group of teams working on anything from applications of zero knowledge cryptography to crypto native gaming or what we're currently calling autonomous worlds yeah so I'm Barry I work with the PSE team at the ethereum foundation and basically we work on applying zero knowledge proofs to achieve both private private and scaling applications so some of our projects include like ckbm we also have some like private voting some private coercion resistant voting stuff um uh yeah that's that's mostly what we work on I also work with other people in the ecosystem to to build these tools out I'm in fact having a lot of fun working with some of the people in their expect on several different things at the moment yeah speaking of which one of the things I really love about both PSE and Xerox Park is and we both have a desire to solve what I would characterize as the actual problems you know as opposed to settling for these like superficial or defensible Solutions and I've seen both of the the groups are really the collections of people demonstrate this deep sense of responsibility for how to go about doing things and a willingness to prioritize this like Collective good so just want to say on behalf of the broader ZK ecosystem which as I noted we kind of repurposed to mean something bigger now uh we're really lucky to have all these groups and thank you very much for that and so on that note let's dive in on on the core topics here today one way that I like to learn about a topic is to ask people who know more about that topic than me which definitely includes all three of these folks here I like to ask people what has been surprising to them what has surprise them so when it comes to ZK what has been surprising over let's say the last three years you know it's been three whole years since the last Devcon that's a long time anywhere but especially in this space um and so again I'll kick things off with gupsheet but I gotta have an open conversation from here yeah this is super interesting to me because actually it was around the time of the last Devcon in 2019. that was first getting involved in the space to begin with uh and when my like zero knowledge Journey was first starting and at the time the thing that Drew me in was basically a set of tools uh built by the folks at item three uh sir comments and arcgs which enabled for the first time browser-based proving and in browser ZK applications that were if not developer friendly at least like developer possible um you know you didn't have to like roll your own cryptography for the first time and the thing that's just been continually shocking to me is and I mean it was true at the time and it continues to be true today is I think that a lot of people find zero knowledge to be a very scary term uh it seems like oh you know this is Moon math this is something you need like you know specialization and number Theory to understand but really there's just so many ways to get started with zero knowledge and so many things that you can build and contribute to depending on whatever level of the stack it is that you have expertise on um and you know the space has just been surprisingly accessible for both math and CS uh technical generalists overall I'd say the second thing that kind of you know is very complementary to that is that uh as a result the space has been moving much more quickly than we originally or at least I initially would have expected I mean I know Barry has a lot to say about like ZK evm with respect to this but you know I look at my old notes from like 2020 or 2021 when I'm trying to flesh out what are some of the open like application Level r d directions I remember like last year I wrote something like we had a student pay Ren who built out linear regression inside of a star work and we were thinking oh you know maybe like five years in the future it'll be possible to put a neural network in the snark and you know lo and behold actually this past Sunday which was like not even a year from when I'd written that um we had two teams that presented on their work on building like mnist and you know various classifiers inside of the Halo 2 proving system so this stuff just keeps accelerating and accelerating and accelerating yeah so thank you Brian um like just to build on what you said I think that like on your first point about like getting into the space I think one of the like most powerful ways you could get in now because we have all of these high-level tools you can black box out a lot of the crypto components it makes a lot more accessible um okay but to answer the original question the thing that most surprised me was uh yeah so for three years ago I didn't really think that ckvm was possible I felt that it was like just going to be prohibitively expensive and like over the last three years I've sort of learned that like oh well actually we there's a whole bunch of extra scope to kind of optimize and improve the way that we can arithmetize things so that makes me like very optimistic for the future when like Okay we okay I I think that we can do the AVM now and I I like the next set of things that are going to be typical like neural networks and like private uh social social graph groups and things like that are going to be super exciting to explore speaking of ZK EVMS you know vitalik you wrote and classified them in a fairly recent post of yours and and I've got a lot of thoughts what are you how are you thinking about ZKA EVMS and how they're going to intersect with the future of ethereum well actually so before I answer I should mention there's uh one really important word that the crypto space has butchered that you forgot to mention which is inflation like remember how in you know good old traditional lands inflation actually refers to like changes in the price level of Commodities in terms of an asset and we just looked totally portrait it changed it to refer to the total quantity of it asset yeah that's us we're great I think it's uh fascinating uh because uh like if we step back and just think about you know like what is the ideal the kind of technical vision of eblock chain like what would I you know love to see ethereum look more like 10 years from now right like the kind of vision that I think I gave a couple of days ago is uh imagine a world where everyone you know it whether they're a validator or there's someone else they run a node and they just run a node on their phone so you know if you want you can even stake a million bucks a piece on your phone and every 12 seconds a job walk comes in and that block contains 3.6 megabytes of data and you know you download 3.6 megabytes of data because these days uh phone planes are getting faster and faster yeah and and you hash it and then you check it against one snark you know the checks like like three or four polynomial equations and then that's it you just know that the block is correct all you have to do is just take 3.6 a mix of data downloaded you know do a few hash it do a couple polynomial checks and you know you magically know that this is the correct block right so in that kind of future you know running a node becomes vastly easy or ethereum becomes much more decentralized it becomes like this very theoretically nice and clean system in a lot of ways but in order to get there like we would basically have to take the entire ethereum Machinery both the consent this layer and the execution layer and stick it inside of a snark and this is always something that we've like known as theoretically possible because ultimately everything is a polynomial I know I'm a polynomial you're a polynomial but it's uh the polynomial is the next term we're going to repurpose that's what you're saying [Music] but the challenge in practice has always been like oh you know how many constraints is it going to take how much inefficiency are we going to eat is this actually viable but you know since we saw polanky in 2019 and we saw they get I think like unlocked a huge number of things because uh flunk was like it wasn't just a protocol it was like this medic conceptual weep when you could start separately thinking about which polynomial commitments do you use to enforce your polynomial equations and how do you convert what you wanted what you want to check into polynomial equations right and like you can do answer those two questions completely separately and so you know you can have you know traditional plunk with kcg traditional plunk with uh you know fry in Starks you could have you know put up with Casey Jeep look up with Starks and like basically just research those two directions separately and um and then we're just seeing all of these amazing improvements you know if it's we've seen pluck up which is uh amazing for solving like pretty much all or making pretty much all kind of all traditionally snark unfriendly computation into something that's like maybe only medium Stark unfriendly and then a couple of other improvements and then you know we've been seeing all this amazing work on ZK VMS at the same time all this amazing work on compilers to try to make it easy to compile things and then at the same time there's a whole bunch of companies that are quietly working on ZK evm Asics I'm you know kind of hoping that now that mining is gone the you know the miners are going to reach rain and become developers like literally you know you know we're going to have a amazing uh companies that are going to create like you know super fast DK proving hardware and like maybe in five to ten years we'll actually get there and you know you'll be able to like you know run a full node on your phone and like you know stake as much um if as you want and just like download 3.
6 megabytes hash it and like check a couple polynomials and you know it got a good block we will have some time for predictions so I'm excited to hear what you actually want to put your foot on the ground for when it comes to what miners will do in the future that's an area that I don't think I've heard much from before and I guess building on this uh a natural question for myself and I'm sure many people in the audience like how do you all see ZK complementing the future of ethereum that can mean a lot of different things so I'm just gonna throw this out here and whoever wants to kind of run with it please do one so what one of the ways I think about for why ZK is a natural compliments to blockchains is that blockchains give you censorship resistance and amino trans guaranteed execution and a couple you know a couple of other guarantees but at the cost of two really important things one is scalability the other is privacy well what what two properties are in aziki snark sub exactly tailored for scalability and privacy right so it's like they too almost fit together perfectly like you know these pieces of a puzzle and no one just like completely solves the weaknesses of the other so I think you know they're a perfect fit and like there's a lot of applications where if you just uh if you only have one they don't make sense but if you have both they just suddenly start fitting together like the way that I think about this is that like blockchains are creating these massive data sets and these data sets are available and public and there's so much Rich information that's going to be there it's going to be very like in in order for in order to allow people to make like proofs about this information you need privacy and you also need succinctness so like there's some things that we can do already like we can use tools like semaphore and hanon to to make proofs about like that that you you're part of a group but like this data is so rich and and the the way that it's rich is it has social connections and interactions and like what I want to see us do in the future is to start to explore ways to make to make proofs about this kind of like shared network data that I don't know all the private information about but I can work with a group of other people in order to make a proof for example that oh I am two steps away from a certain person in the social graph that's like that's where I see some really exciting things coming in the future and a neat thing that I'll say real quick about that is the the transparent the basically fully transparent nature of a blockchain in its history this has been one of those classic examples of something that in some contexts is a feature and in some contexts it's a bug but it's neat that in this context we're looking at ways to make it a bit more of a feature because like you said it's an incredibly rich and verified data set arguably the richest most verified data set ever produced and the ability to kind of work with that using proofs in various ways is just something that is going to be really interesting and I think something that you've thought a lot about so yeah maybe I'll give two framings for I think the equivalent concept but from a slightly different angle because I think that these are useful when thinking about like what kinds of applications might be powerful in the future uh the first is you know to to dig into that complementary uh framing of what ZK uh and ethereum have as a relationship um one thing that is interesting about ZK taken you know just alone is that in some sense DK proofs are stateless so I can prove for example that I know the pre-image of a hash that is contained in a Merkle root but uh you know why would someone care about that particular Merkle room right like a common question actually that we get when we're introducing new developers into ZK is like well can I use the ZK proof to prove that I like know some private keyvin account at this block hash uh or like that I know some sort of fact about a smart contract on ethereum and the answer is well like you can't do that directly because ZK proofs are just like mathematical equations math is not aware of the ethereum blockchain however what the ethereum blockchain does is it allows us to come to consensus on what's important which I think is kind of like a little bit of the flip side of um some of barriers and variant vitalik streaming so we imbue a certain Merkle root or a certain block hash or cryptographic accumulator with meaning and that's what gives ZK proofs their power that's what gives DK proofs like their semantic meaning and then the second kind of framing that I would think about is you know this is to go off of Albert's comment blockchains are it's almost kind of like an accident that in order to build something uh like basically a consensus engine that we can all agree basically on a certain state route or something like that all the data has to be transparent um and I think that that's not necessarily like that's not intrinsic you know we can use these new tools like ZK proofs or witness encryption or whatever else to build systems where we can still come to consensus but we don't have to make like every single thing public which is actually like a really limiting thing in the design space of coordination mechanisms that you can build yeah can you expand on that a little bit because one conversation that we've had with for example various more traditional tech companies is this idea of making the data that they have you know private and literally their databases available but not available in the conventional well we just reveal all of it because they're obviously not going to do that but available in the sense of being amenable to proofs and other things that people can then use outside of those systems can you explain a little bit about how that might work either at a high level low level really whatever top of mind for you there oh yeah one one thing that I think could be really interesting is like what if we took I mean this is super blue sky far out but knowing how fast the DK's going maybe it's not actually as far out as we think imagine we took some traditional web to social company that's got an account model whether that's like Facebook or Twitter or Reddit or something like that and on these Services maybe what we could imagine is like the service provider would produce a state route for everyone's account now it's not going to necessarily show all of the underlying data that is underneath the state route because that might include like your password your password hash but at the very least what they might publish is like a Merkle tree of a bunch of accounts date Roots now what you the user can do is your personal data is still private to you and the service provider like whether that's Twitter or Facebook or Reddit the actual data only a hash commitment to that data is being shared but you can start making ZK proofs that everyone knows uh are actually valid and are using an attested to um data set you're not making something up so you can prove for example that like I am in this Facebook group I'm in this subreddit I have this reputation maybe I can carry that reputation from one platform to another platform and that I think is a really interesting like interoperability mechanism between the web 2 world and the web 3 world yeah and one thing I want to note about that is sometimes people hear this idea and they're like yeah but the company they can just change their database however they want so why is this useful well if they publish a state route they at least can't change things after that and by the way a very natural place to put that state route would be on a decentralized blockchain so I think even though it isn't anywhere near the same as like the ethereum blockchain's history we still get something there that is I think quite interesting and the ramifications of which we really haven't even scratched the surface so um I'm kind of moving forward here I building on this whole like let's just talk about different topics build up different Vantage points to try to learn more about it one game I like to play is what I call the underrated overrated game which is simply to say what do you think is underrated in the space right now and what do you think is overrated uh in the space so maybe let's start with with underrated and again I'll kind of throw it out there for anyone to pick up so I think that when we think about this question we need to think about it in like different contexts I think that like if we're asking this question in the context of like the Western world that uh I think that in the Western World We tend to over as overweight the value of financial privacy um whereas like our societies are like we're the most part free and the the the most important thing about our society tends to be like who speaks and who gets to be part of discussions and how decisions are made and how we decide what to do so I feel like that's much more important so than than the kind of financial privacy applications so in the Western World I think that like social private social media and things like that are much more interesting in the developing world it's completely different right in the developing world it's just so so important to have Financial privacy uh that it's like yeah like one thing that I kind of was really surprised about was we're running like a quadratic funding around at Devcon and like a lot of the people have like just serious problems with like private information and they're just really really reluctant to share their that information so yeah that's that's what I think that's really interesting also because and I think really fitting when you consider even this Devcon where it's located and a lot of the themes that have gone into it which is when you try to say whether some thing is underrated or overrated it's also by definition a manner of perspective where we're looking at things really affects things a lot of times something is underrated or overrated because it's relative to you know something else that might be drawing more attention we're not getting enough attention continue to love to hear other thoughts of like what's underrated or overrated when it comes to CK underrated is probably applications of ZK proofs in areas that have nothing to do with what we consider to be the traditional crypto space so you know government records of various kinds I mean the example of like proving things inside of social media applications I mean even I mean even games I mean like possibly supply chain stuff um like there's just a whole bunch of areas where like maybe it also makes sense to put a blockchain in sometimes it does sometimes it doesn't but like even if it doesn't it um often makes a lot of sense to stickers or knowledge groups in as well yeah absolutely I think that's super underrated at least from my personal perspective which is a lot of what we're calling ZK uh doesn't require a blockchain as we've noted it's very complementary but there's a lot of situations where you straight up are no longer constrained by operating on top of a blockchain and as many people here are very familiar uh I love the blockchain but it can be quite constraining to work with at times so that's something I think will also unlock innovation in new ways yeah I was actually going to jump off that as well I think that a lot of times when we categorize DK use cases today well first of all there's a huge bias towards use cases that are related to the blockchain somehow these things have become you know almost synonymous like uses of ZK and usage of ZK on a blockchain but the second thing is then when you dig into the categorization we often break down apps into their scalability applications and there's privacy applications but I think that we're going to see a third category of thing that is like not quite either of those emerge in the near future which is this idea of like uh ZK snarks's interoperability technology and this might sound a little bit weird because interoperability is typically a word that we use more for you know when we talk about smart smart contracts talking to each other but there exists you know a rich set of basically cryptographic claims that actually you know as a matter of fact exists in the world outside of blockchains as well whether that's uh you know the signatures in your uh like GitHub commitment history or like the signatures that you know various like Communication service providers whether that's like messaging services email Services Etc use to authenticate your messages or signatures on blockchains themselves and one of the crazy things about snarks is that they turn these signatures into things that can talk to each other so we moved from this world where like the RSA signature algorithm can only be understood by other parties that are running you know the RSA signature algorithm to being being able to put the RSA signature algorithm inside of a snark which is sort of this like general purpose programmable cryptography construct and you can do things like I either contain this RSA private key to this GitHub account or I possess this ecdsa private key to an ethereum account and you can start making these like cross-platform claims and I think that that's something that's underrated and hasn't been thought about enough and you know I know there's there's a number of like PSE and Xerox Park teams that are thinking about these things that are actually going to demo this week so if you want to check out ayusha's ZK email project I think this is a really really awesome one in particular just to build on what Brian has said so Brian was so one thing I think that is underrated in the space is that that we are expect we're having a lot of social media experiments happening and like I think that social media will will make internet discourse become more collectivist and less individualistic and like the the reason that I think this is is that because when you're part of a group when you're when you're making like private claims when you're making proofs that you're that you're part of a set when you make a post um you need to you need to consider about the rest of the group right that like you you tend to become more like protective of that group because you need to be careful about its perception and reputation like a representative of it yeah exactly yeah so you speak more as part of the group as as opposed to as part of from your own perspective so that's super interesting what you're saying is because these technologies will enable us for instance to form these groups where we simultaneously kind of get to draft off of the reputation of the group but then we also impact the reputation of that group uh you think or you can see how it will for instance make thinking more collectivist in in certain situations is that about right yeah right because like I see today that like a lot of social media is is very individualistic right A lot of people are focused on like more likes on Instagram or or retweets on Twitter and things like that and like that leads to these kind of incentives that are inherently about like performance but when you switch the Paradigm and instead of trying to get things for yourself you're trying to gather things for your like group the people that you're you're speaking as part of a set of uh that changes that changes the game completely I'm really excited to see how that will develop yeah that's super fascinating um one other thing that always jumps to mind for me right now is being underrated and I think you guys have a lot of thoughts on this is just the kind of community and ecosystem that exists in ZK right now what have you observed and maybe even compare and contrast a little bit with let's say the more conventional crypto ecosystem if it can even be called such a thing um so a couple of things that I've observed it tends to be that like people who are drawn to the ZK space tend to be like really Technical and really just excited to learn things and do things and that's just that's really really fun the other thing that I've observed is that like I've seen like companies who are like competitors with each other like working together so much to like train people and audit each other's code and things like that and I think that that's just really really great yeah maybe one thing also to jump off that last point that I see is like a difference between uh I think this is like representative actually of Applied crypto broadly not just ZK crypto and it's true of you know the best parts of blockchain as well versus other Industries is like there are natural I don't want to say like decentralizing forces but maybe forces that encourage or incentivize like the free sharing of knowledge and information because if you're trying to get everyone on board with your protocol whether that's a cryptographic protocol or a roll-up what you really need is for other people to understand and trust your system um so you need to be permissively licensing your code or at least you know I mean permissively licensing is going to be sort of the gold standard because then you're going to get people digging into the actual intricacies and understanding you know all of the subtleties and edge cases but I think that's something that's a really powerful effect yeah one thing I was actually reminded of this morning when Danny Ryan gave his talk was he said that I had said and I honestly didn't remember saying this but I believe him he said that I had said that you know crypto is this intellectual gravity well that's something I've absolutely felt for many years right down to the part where I literally again repurposed the word crypto there um and I the only other thing I've really seen in recent years that gives me that same feeling is what we are now calling ZK it has a lot of these similar intellectual gravity well effects and uh I think for better for worse like blockchains are inherently financialized like the very invention of a blockchain is kind of introducing this incentive Dimension uh that's orthogonal it's a more conventional consensus Theory and other things much of the core consensus Theory actually existed well before blockchain's did so you can't get away from this financialized aspect of blockchains um and and that's been great in many ways I think that's actually really been a positive for a lot of the development interest in the space but it also causes the attraction of like other forces and factors that knock on wood I think are a little bit harder to do in a ZK context though I would never bet against the broader crypto spaces ability to figure out how to financialize the hell out of something but right now we are in I think a bit of an oasis when it comes to just being able to intellectually pursue really interesting problems that are also very practically valuable and hopefully we can preserve that for a long time and and hopefully it's something that other folks in the audience can kind of get a taste of in the future as well um I guess now that we've sort of we've scanned the space and where it is right now in a bunch of ways so the natural thing that I want to hear about is something I alluded to earlier which is just uh predictions predictions could be about something that will happen tomorrow a year from now decades from now um but yeah what are some predictions hopefully not putting you on the spot too much here so my prediction is that by 2040 someone would have won a Nobel Peace Prize for using zero knowledge proofs well that escalated quickly how maybe say a little bit more about how that might work so basically the way I think about this is that zero knowledge proofs can be I allow you to have like private interactions with people and that means that you're able to build trust in in an environment where there is no trust and it turns out that this is really important for like the negotiations between people so like kind of like the the the easy path to this that I see is that um the the the possession of software bugs will become so serious that there will be this crisis and in order to overcome the crisis we'll need to prove to each other how many software bugs each like nation-state holds so they can use a zero knowledge proof to prove that they know a software bug for ethereum or for a Firefox and this will be the first step in decommissioning the the software bug arsenals that people have accumulated that's super super interesting uh remind me in 18 years to check back on that but that definitely got us off on a bang other predictions that come to mind for many of you guys yeah I have a few maybe that are less like specific and precise than berries and hopefully and unfortunately less like inspiring and galvanizing but I think you know in terms of like really large scale Trends um I think that right now and you can even see this reflected in the programming of this Devcon uh this idea of ZK applications is being seen as almost like a product or application category and my belief is that like these New cryptographic Primitives are going to be so ubiquitous that in you know say 20 years uh it's like it's going to be the case that ZK and similar Primitives are just happening in the background like we're not going to call things ZK apps in the same way that we don't call websites https apps I think it's like an incoherent product category you know similarly to how uh we had a lot of folks calling websites.coms or this idea of like the.com industry we're going to move instead to this world where you have this like massive space of applications and coordination mechanisms that require info information asymmetry which turns out to be a really really fundamental primitive and how that information asymmetry is created is not going to be the focus it's more going to be like you know much like today we have e-commerce sites or like storefronts or landing pages or browser-based games these things rely on the existence of DNS or https but we don't call them again dot-coms or or https apps today um one kind of medium inspiring one I guess that's a little bit less intense to someone winning a Nobel Prize but I think is still important to recalibrate our thoughts around is that I think over the next 10 years it will become recognized that aziki snarks are at least as important as technology as watch ends are well that's very that I think that is depending on your point of view perhaps as exciting as the Nobel Peace Prize like I I'll think the Nobel Peace Prize is an amazing thing but I'm also kind of curious to see if we can you know build up even Alternatives or other you know other sort of recognition emergently so it you sort of alluded this earlier with some of the complementary stuff like how ZK complements blockchains when you say as important that also implies like how do you think blockchains are important you also talked about that so maybe can you tie that together to help us understand it a bit more sure and so I think like you can look at at ZK both as uh massively enhancing what blockchains could do and possibly even being unnecessary ingredients in getting blockchains be getting to like the real high scalability levels of high scalability that a lot of applications require and you could also think of you know ZK applications uh beyond the blockchain space right so for the first one like you know we talked a lot about Roll-Ups we talked about dkvms we talked about um you know my dream for the look and feel of running an ethereum validator in 2032 and uh you know prototype some of this may even come much much faster than 2032 I don't know you know these people are insane um but the and you know without this kind of Technology like it would actually take a lot more sacrifices to get blockchains to you know hundreds of thousands of transactions a second right so that's the first part and then the second part is um just uh you know the the kinds of things that ZK Snorks would enable like even if we just imagine a world where like blockchains as a technology don't exist and are turned off and you just ask the question of like okay you know the world is uh dominated by um you know Facebook and uh Google and uh you know whatever stuff the Chinese government supports and you know we're stuck with that but uh you know how do we make at least some of these better right and that's uh these well you know giving people privacy guarantee is a while at the same time being able to compute over information is huge right uh being able to have Financial systems that prove solvency to people is a huge um having a social media systems where you can vote um anonymously and actually have a credible guarantee that your vote is being is being included or even just like a guarantee that like let's say yeah you know instead of Twitter having some opaque proprietary algorithms Twitter has an algorithm that's actually open source and uh that but then also Twitter actually being able to prove that it's following its algorithm like that's huge right so even if we kind of you know turn off blockchains and just you know imagine like what's the difference between a world with no ZK and a world with CK like it's really kind of epocal gains in um you know things uh like uh privacy and just being able to have a more you know free and open and Cooperative world to just so many ways right and then once you add blockchains on top then you know the gains are obviously compounding yeah one thing I think is really cool is I think we're past the point where we're worried about whether blockchains are going to continue to be a thing so to speak but I remember even several years ago telling people look no matter what happens with blockchains part of its positive Legacy on the world is going to be they're really complemented and accelerated research and development in just cryptography more advanced cryptography which is really what ZK is kind of becoming this like again like I keep saying catch-all term for um but this we have a bit of time to like dig in a little bit more on the future I don't know how far we can get in the Weeds on this what are some of these other sort of ZK adjacent future technologies that might be interesting you know like homomorphic encryption or indistinguishability obfuscation or just other stuff in that category anything that like jumps to mind is just like keeping out maybe not too much of an eye out because we are pretty far from some of this stuff but yeah anything that hops to mind for you guys yeah so the way that I think about this is that uh yeah so my my answer is NPC and why I think it's so important is that can you say what MPC is multi-party computation and the reason why I think this is important is that ckp is like you make proofs about secrets that you know and like it turns out that there's a whole bunch of things in our world with secrets of that that only I know like I know my private key for my GitHub commit Keys um but our world has much more private information than that right there's all like the richest information is is to do with like social networks and social interactions and if we want to make proofs about that we'll need to be able to make proofs about shared secrets and that's what multi-party computation lets you do it allows you to make proofs about about shared secrets so I think that we can leverage these kind of things to make this kind of like proofs of connection in Social graphs where you don't know anyone's connections other than yourselves your own hmm well I think these are big kind of price of prizes in cryptography that it's worth talking about is obfuscation right because obfuscation basically lets you turn a program into an encrypted program but where you can run that encrypted program and it has the same outputs on the same inputs but if that program the original program source code had Secrets inside of it the encrypted program would not let you extract those Secrets it would only let you just run the exact code on this um on the API secrets and the inputs and give you the outputs right so the reason what one way to see how obfuscation is so powerful is like pretty much any other cryptographic primitive can be done with um up with obfuscation right so um you know if you want to let's say yeah turn like make signatures out of obfuscation right then the way that you would do it is you would uh you know say take any symmetric signature scheme so like you know take something where you just like generate a big hash and you'll you know add the data to the hash just like some really simple thing then you would take the the private key just like is the encryption key of that and then the public Key Well you would stick the encryption your key into the obfuscated program and then you would set it to decrypt and you just publish the office or so you decided to encrypt and you'd publish it obfuscated encryptor another one is just is zero knowledge proofs themselves ironically right you basically just uh you know literally create an obfuscated program where you'd be able to just like stick in a piece of code and it would run that piece of code and sign it with a key that it has internally and give you the output right and that gives you possibly the best possible Zeke snark because to verifying it is super simple to verify you'll literally just verify one signature right and then you could do really fancy stuff on top like you know you could make a encrypt data in such a way that that data can only be encrypted if someone gives you a proof that something happened on a blockchain right so the the applications of that like you know just multiply really massively the the problem with um this kind of obfuscation unfortunately is that like we've only had the first formally proven candidates for this like literally two years ago and they're just insanely high in their complexity at the moments right like it takes a it's there's like six levels of you know protocols inside of protocols inside of protocols and there's this big tower and like actually running it we're taking you know like a billion years or something and you know the question is you know are the very smart people going to be able to like bring that down to the point where it's something viable 10 to 20 years from now I'm like we'll see I think if we get to the like something viable then you know the results of that could be amazing yeah and what's going to be really interesting is to see like you said the the rate of progress here I remember myself I think it was back in 2012 or 2013. before I was even interested in blockchains I first got exposed to the concept of fully homomorphic encryption I was visiting former intern of mine who also went to the same University and she described it as like for example say you have a keyboard but it's built in a way where you press the key and the keyboard doesn't know what key you pressed and yet like the right kind of keystroke registers and then she was like oh by the way we're only 11 orders of magnitude away from this actually being viable I was like hold on did you say 11 orders of magnitude she's like yeah yeah 11 orders of magnitude um but you know in the years that have passed I mean we've chopped that number down quite a bit depending on the context we're anywhere from even one order magnitude but probably more like two or three orders of magnitude away um that's a lot of progress and it's going to be like I said really exciting to just keep working on this and seeing what uh we can unlock and we've even seen some of that I think like with your experience is building uh in in the browser today compared to three years ago what are some like the numbers or rough ballpark oh yeah I mean I think it's something like it depends on how exactly you interpret all the different computational resources but since 2018 we might say that we've seen like three orders of magnitude Improvement in how large of ZK snarks you can prove in the browser so yeah it's only it to make that more concrete some of the things I've seen out of Xerox Park involve waiting for you know 45 seconds maybe 90 seconds not perfect but viable right like you can see situations where someone would be willing to wait you know one to two minutes for something and that exact same thing two and a half three years ago literally would have involved maybe two hours or just actually would not have been uh computationally or feasible for other reasons in terms of like memory or things of that sort so that's to give everyone a bit of a taste of kind of the direction uh we've been going in at least in some subsets of this space and uh you know hopefully that'll continue it hopefully uh some of the folks in the audience can also get involved and help us with that and on that note a quick question just like are there good places to quote get started it's always like a very tricky thing even for crypto more broadly but I know that you guys have worked on various uh resources so are there any like just quick things we can mention here and of course if you really want to get more involved you'll want to follow up more afterward yeah so on our end one of our focuses is like education and Community Development um so we run these applied ZK learning groups and we're doing our best right now to get all those materials online at learn.0xpark.
org so that's you know an effort by various like community members and volunteers I think like Michael Chu and John Grievous are probably around here right now um so that's a collection of videos articles various documents um that have exercises on how to just get started with like writing your first circuits cool so that's a learn.0xparc.org yeah um yeah so the first thing I recommend is to don't get intimidated by all of the Moon mats to Black Box things out and to figure out what something does not how it does it and you can use that to build a whole bunch of things and as you're building those bunch of things you can figure out how the thing does what it does and like that's that's how I learned and it was it was really enjoyable the other thing that I would suggest people to check out is you can check out the privacy and scaling exploration teams website it's appliedckp.org and we have a Discord there you can join and chat and ask questions so that's appliedzkp.org yes yeah I mean there's I think a lot of different resources and like for people with um you know different uh like skill levels and like in different interests like there's a there's environments now where that are literally online like you know ZK repo.
dev I think was one right and where you can just uh you know literally go and like start writing the code for a yeah circuit and like compile it and it just outputs to you a piece of solidity code that you can then you know stick on well these days not mean yet because it would be a bit too expensive but um you know some uh the layer two or test out of your choice and you know you can actually kind of play around and see if you can make some simple uh some simple application so that's a one way to learn for some people if you want to get into the math then let me know in the applied zkp.org page has I think a lot of good resources um zkp dot science has a bunch um I mean I have a bunch that I've uh you know that I've written there's a bunch that the starkware team has written there's there's quite a lot these days like just uh you know sometimes it even makes sense to read like multiple explainers on the same topic so you can see how they fit together um yeah so you know depending on like which side of things that you want to learn there's like you know there's plenty of different resources for you um yeah just one other thing I wanted to add that like we've given examples of how you can join if you want to be a developer but as we talked about earlier like there's a whole bunch of like community and ecosystem and cultural things that are also super important and like I'm not sure how to get involved in doing that like uh maybe you could join some of our like uh private social media experiments there's skitter and hey Anon and yeah you can find it on apply dkp.org or Xerox Park's website um or you could you could explore running a quadratic funny ground or things like that yeah there are definitely ways to get involved that don't imply you have to get into programming or math side of things because the goal of all this is to touch so much more than just you know those areas and a really neat thing that's emerged literally since the last Devcon is some of these experiments that among other things just need and want more people to to get involved and to participate in the networks that are being built um so I guess to kind of wrap things up here we've talked a lot about a lot of stuff here today we're talking about Big Stuff future stuff some deeply technical stuff but one of the things that I personally love the most about ethereum is it is that ethereum has this quote-unquote soul and so I'd like to close with a bit more of a personal touch uh you know we all started somewhere we were all noobs and frankly continue to be noobs to this very day any like just stories or even fun anecdotes from listen when you first got interested in ethereum when you first got interested in ZK or anything else any anything you guys could share sure so I first yeah so in 2017 I think I deleted my Facebook and I deleted it because I was getting worried about like the the kind of surveillance date and the ability not really surveillance day but the ability of like Facebook to manipulate me with like ads and showing me happy memories and things like that and like when I deleted my head when I deleted my Facebook I I didn't realize that I I kind of realized at the time but afterwards I felt this loss like I mean I lost connection to like so many people I lost like a social network that I'd been building for years and that was like it I still feel that lost today like I don't know who I went to school with like how many kids they have and things like that and like I didn't realize that it was connected at the time but soon afterwards I got really interested in ethereum and I tried to build like a t-shirt Cooperative I wanted I wanted to build a way for people to to pull their money together so they could get a bulk discount on purchasing like cool and fun t-shirts that there would be like designers and then they would get like a bold discount so I'm like I didn't realize that at the time again but like now when I look back I feel like when I lost Facebook I sort of lost this community and since then I've been sort of searching for one and that's what kind of brought me to ethereum thank you for sharing that it I first heard the story very recently from you and I was like wow I didn't realize kind of how deep and it explains a lot of why you've had all these really fascinating and wonderful experiments in the social media Direction and it's also just a great reminder that again the goal at least my goal and our goal here is to utilize these Technologies in a way where we can more precisely get what we want out of technology and social systems and things of that sort yeah I can give a story about how I first got involved in ethereum Albert was actually the one who brought me into the space back in like 2018 and I remember I spent like two months over the summer of 2018 just like trying to go through and just understand like what ethereum was and I just remember having so much trouble and I was so frustrated and you know perhaps this is like this is either an indictment of the quality of educational resources at the time but I think it's more an indictment of myself and my my ability to onboard so ever since then education has been a really big Focus for a lot of the communities I would say in the Xerox Park ecosystem um and that's why you know I mean even just last year how learn.0xpark.org got started uh was I was talking with Jeff Lau from ens who had done one of our applied CK learning groups and he had also expressed like you know the similar sentiment about coming into ZK and the both of us were obviously really glad that we'd like pushed through that initial uh like you know hump on the learning curve um and you know in no small part due to the fact that people in this community are so welcoming and so willing to share a knowledge and that's uh you know Jeff ended up playing a huge part in putting together a bunch of different educational resources so I would say that like you know if you're like coming up to a new topic even if you're scared or intimidated um like I myself literally took like three months to just get a picture of what ethereum even was like eventually I was like I can't understand any of these blog posts let me just go to the yellow paper and like try to read it like line by line um and eventually we actually did end up putting together a series of resources to summarize all of that stuff that made its way up to like ethereum.
org among other places uh so you know one don't be afraid but also two uh right after you have learned a thing is also I think the best time to to give back and really uh solidify those learnings by sharing them with other people cool and I'll I guess I'll close this out with a much smaller sort of just a cute story when when I first started following ethereum I mainly followed it through Reddit and I remember you know seeing this user you slash V buterin on Reddit and it it was really interesting I was like oh this this V buterin fella he seems really smart but also kind and wise and for I think like three or four months I literally was just like oh v-booter is probably some like 60 year old like Soviet era programmer um and uh I was genuinely shocked when I discovered um how old or how young vitalik was at the time but yeah it's just really funny and interesting to reflect back on and in some ways it ties into some of these other things which is because in my case I hadn't really bothered to go and learn more about the the person underneath it um but it was it's a neat little snapshot of like hey you have this sort of idea identifier and then they're just commenting they're sharing information they're sharing their thoughts and I was like evaluating that and only that and drawing my own conclusions and I think there are positive aspects of that that we can pull into some of these like social systems and other things um that we're we're trying to build uh so on that note once again thank you vitalik Berry Gob sheep and all of you for joining us here today I hope you learned something hope you enjoyed the conversation and hope you enjoy the rest of Defcon
Automatic transcript — names and jargon may be misspelled.