Zupass and the ZK data ecosystem
EthPrague 2024 · 1 Jun 2024 · 19:34
Richard Liu explains Zupass, the app EthPrague 2024 attendees used to hold their tickets, and the ecosystem of zero-knowledge data growing around it. Zupass began as an open-source project at Zuzalu, the network state experiment hosted by Vitalik Buterin, and lets apps such as a Telegram group bot and a voting tool accept a ZK proof of a ticket instead of trusting one central server. Liu frames zero-knowledge proofs as part of a wider field of programmable cryptography that includes MPC, and argues that interoperable, user-held data can make Ethereum conferences programmable without putting everything onchain.
Speakers
Topics
From EthPrague 2024, hosted by ETHPrague.
Holešovice Market
Transcript
[Music] thank you Alia um I'm gonna wait for my slides to show up here but here I'm here to talk about zoo pass and this ecosystem we in Stan shating around um everyone might notice as they registered for the event they had to pull up this weird kind of green app with a QR code so I'm here to explain what that's all about um and how you can help contribute and also get a sense of where all this technology is going so I want to start off with a bit of a prompting question which is what
does going to a crypto conference uh feel like or what did it feel like five or 10 years ago um okay so it's a bit of a drawing so you have these attendees on the bottom um they use something like a Eventbrite uh Gmail to receive their emails telegram to join sort of a chat you have a whole bunch of data spread across these different apps right you have for example transactions of payments you have proofs of attendance via you know records and event brights database um and you have communications and relationships between attendees um so that was kind of the stack 10 15 years ago what does it what does it look like you know today or you know in the present day it's pretty much
the same picture right maybe we use a slightly different ticketing system um you know for eth Prague using like uh pre- tix or tick eth rather than eventbr and oh we also offer ethereum payments but it hasn't really looked too much different in terms of the actual experience itself um so what could it look like going to the Future right what could looking what could go into a conference and for you know for someone experiencing ethereum for the first time right for a hacker coming in and getting a sense of what's going on what could it really look like so what it could look like is all these different piece of data at the conference right um are an interoperable
ecosystem right for example ethereum um those transactions attendance permissions roles and any all kinds of food vouchers all kinds of different forms of data are in this shared Ledger that we can all interact with it really feels like a truly you know like ethereum programmable event right um and I'm here to say that we're actually not that far away from this kind of state right especially considering how much conferences are Ground Zero for a lot of new developers coming in um this is this this state is like not too far away and you know here's a hot take but if the conference if an ethereum conference years from now can't get to this kind of state then have we really graduated from
just building you know more financial applications as important as they they are um something is seriously wrong if we're not getting to this state so what would it look like to actually run a conference fully on something like rollups or fully on ethereum well there's some benefits here I'm not going to go into too much given time but okay you have the benefits of data being owned by the user you have composability uh but it's really hard at this point right transactions still cost a good amount of gas the friction for using blockchain is still pretty high even with a lot of the great advances we made around account abstraction um and
rollups but is there a way yeah so going all into everything needing to be on ethereum is probably too much friction right now but is there a way we can get 80% of the way to this thir environment with only 20% of the effort um and you can probably imagine ZK data is one way we can get 80% of the way to sort of fully onchain uh inperson event with only 20% of the effort so I'm going to introduce a bit of what zup pass is kind of starting from its initial story and I'm going to link these sort of two threads back together at the end so Zu uh zup pass started as a project called zuu passport it was essentially an open
source project spun up by um some members in this zuu ecosystem zuu being a sort of uh Network State kind of experimental event hosted by vitalic last year extended into an event called Zoo connect um there are a variety of like other data at these events for Beyond uh tickets for example there were games around frogs um there were volunteer badges issued there were like these little stamps you could collect so all different forms of data collected at these different events um and a bunch of different apps were also starting to get built right and these apps would interact with this data they would consume and they would produce new forms of data um and until
you eventually got this sort of like real ecosystem right where the different apps are ingesting data there are um you know events all the all the sort of data that's being produced by an event is actually usable within different kinds of apps um so just to go into a few examples this zookat was used for managing telegram groups um polling for managing voting and that's what will be used for hackathon voting tomorrow as well um as well as like a wide variety of different things ranging from Anonymous chat to games to others other forms of uh Collectibles so what we have here is essentially a an ecosystem of data that is easy to make ZK proofs out of where
all these different apps don't have to trust each other and they're able to communicate um but the data that's being used is interoperable and crucially there's no need for one centralized structure server there actually is no one server that holds like all the data it's being done through a bunch of these different like apps and services that have their own databases and able to talk to each other through this permissionless protocol so we use math here not trust so that brings us back to ethereum conferences in E Prague right where you might have noticed your ticket being within zoo pass and um as well as some sort of apps requesting your a ZK proof
of your zup pass ticket for example here's some screenshots from the telegram uh bot zookat which requests a ZK proof of your ticket in order for you to join the community Hub here's um what it looks like to log into zoole which is you're creating a ZK proof that you're a member of this set of hackers um and once you've proved it you're able to vote so essentially it's you know private voting based on uh your proof of attendance to an event I should also mention that all of this uh I'm saying ZK here a lot but uh zero knowledge proofs are really just the tip of a much like deeper Iceberg of
this larger field called um programmable cryptography which is essentially how can we take uh sort of the advances within cryptography over the last you know 5 10 years and move them into sort of things that are useful things that are tangible within uh you know experiences such as events right so we have things like zero knowledge uh zero knowledge proofs which is finally starting to get to a point that are um you know usable on mobile phones usable in events at things like zo pass but we have a whole bunch of more you know down the stack we have things like uh multi-party computation NPC we have fully homeomorphic encryption um and even getting down to things like C ideas such as can we have a cryptographic AGI
can we have some sort of like network of Truth um but I'll sort of save that for maybe another time cool so that's a bit of about zup pass um to kind of bring in an example of you know the developers of one of these apps um in this ZK data ecosystem I wanted to introduce Miriam who worked on an app called Zoom meet at eth Berlin this past um weekend at or yeah the E Berlin this past weekend uh they had a lot of really great memes they also created so wanted to highlight that as well but without further Ado I'll I'll hand it off to Miriam yeah hi I'm from team we were four people team so the
rest of my team is that at work or enjoying their weekend um actually can I C okay um perfect um can you guys just show your hands if you are a hacker right now or have been in the past okay so the rest are visitors to the conference I assume um just to get a sense so yeah we um were a game of four and we have had a gaming development background and also we're very interested in how we can use games to bring people together at uh events and especially hackathons and maybe get them to connect more use ice breakers and on the other hand some of us were really
interested in the topic of decentralized identities and how we can use zero knowledge proofs and people meeting at offline events and making these connections um and storing them how we can use that those proofs to bootstrap an ecosystem of decentralized identities in a similar way that Facebook 10 20 years ago started within a closed Network such as the Harvard k campus and what came out of it in in a two-day hackathon um with a live product essentially was then Zoom meet which uh was a little bit of a specked down version of that of course um but we had so much fun getting to know the Zupas um ecosystem and we got introduced to so
many cool new technologies and um yeah at at 2 or 3 a.m. I heard if your meme game isn't strong by that time you have no chance to submit a project before the hackathon deadline um but yeah PCD or pod were some important um Concepts within the supas uh architecture setup that we used within the Su Meet app so what is sum if you have by any chance been to East Berlin you still have the folder for East Berlin and you could technically still go on zi. pages. dev and connect with with another person now who has also been to East Berlin and um make a
CK proof of your meeting and yeah it works so Zoom me pages. DAV was the app that we developed and it works within z.org on the right side and it works by scanning each other's um Su meet SL Su pass profile and um once that semafor ID link is established so the proof is there that you've met in person um the other person's profile will be pulled from the feed server and also show up in each other's um sup pass folder for Su me so how does it exactly work so once the one person sets up a profile which is on the one hand a QR code and on the
other hand um we the PCD we made or pod was um which an image you can create as well as your name and a tagline can be a wisdom you want to pass onto the person you meet or can be your telegram handle um in a future version this can be a game uh to play with but this is what we built so far and how it works is the you go on our app you verify um with supas that you're an you're a verified uh attendee of the event at which you want to connect with the other person and you subscribe to our feed stream so that's the third
image um which in this hackathon project it's our centralized feed server but in a future version we plan to make it peer-to-peer um yeah so once you subscribe to that and you verifi that you are a verified ID attendee of uh East Berlin or east Prague then you go back and confirm it and you get to create a profile oops sorry you get to create a profile and then the other person can can scan your QR code and like I've mentioned the full profile shows up in both uh Zupas accounts and yeah you will have a collection of people you've met and it's
CK verified that that you have met at this event in location so we were very proud to have finished this project we had a great time working with the suass team I can highly highly recommend building on sup pass that docs are great and also the team Richard Rob and Ivan who we've um interacted with throughout the weekend were super helpful explaining everything and as far as I understood it it's going to be a very open architecture for that's inviting developers to build upon and build out anything that can be built with um ZK proofs between people that are meeting in a form or connecting in a form so one thing we built on top it's
basic basically a feature for event organizers so for example this shows who has connected with who how active is the social graph for example if you were to use zoom meet as an icebreaker app for your event and you're an event organizer of East Prague you can see how actively people are connecting and can possibly um push people to do more of those interactions um this is a bit outdated but shows the purpose um yeah so it will have a stack of cards in your profile this is Su up this is a little bit the um architecture I'm going to speed up because we want to leave some room for questions um yeah so
there's a feed stream in between and upon polling the P pcds pods show up in both wallets um like I said we want to eliminate that in the next version um we also want to make setting up feed streams for specific events accessible to event organizers so that we don't have to um each time add a new event but you can do it on your own and yeah this was a poster we used at East Berlin in that sense it's been nice to meet you and I'll hand it back over to Richard to answer some zup pass questions where's this go yeah [Applause] you guys are finished we do have time
for some questions so hands up if you want to ask anything oh there's one great I'm wondering about rev revocation because you're using these sort of as as gating tokens for different privileges are you thinking about revocation or expiration of the certificates yeah that's a good question so um I didn't want to get too much in the details for this presentation but in the actual sort of type for uh we call it a ticket PCD so PCD is sort of the name we
use for um you know the different let's see the yeah for not this one uh yeah so I guess you can see here this is an eth Berlin ticket so the ticket um object itself there's a few different field fields and one of them is this is revoked field um that basically is uh syncs with the uh event server and if that revoked is true it won't allow you to make certain proofs so basically applications can request for you know proofs of your ticket and they can have they can set certain requirements right and one of those requirements can be it has to be a valid ticket that's not been revoked also like whenever we can get
those missing from frogs that would be really welcome stay tuned stay tuned one more in the back here hi I have a question you mentioned that um currently there are no centralized servers storing the data and you also mentioned peer-to-peer networks um how is that uh working currently or is this plan yeah good question so it's a kind of uh there's definitely some kind of tradeoff um right now between like existing systems like if we talk about
just events there's existing data that exists on services like pretx which was used for ticketing there's existing data like you know apps like telegram that are super centralized I think the key thing that we care about is um um just going back a few slides yeah is that like these apps for example you know zookat which hooks into telegram right or you know Zoo pole which is hosted in its own service they have like these apps are centralized but the sort of data that's being used across these different apps um is like understandable by all these different apps and uh they're they're not also
they're also not stored on you know like one server right so zup pass itself uh stores this data like locally um and we also store like an n10 encrypted backup so that you can access it on you know different devices but uh yeah I think the biggest thing we care about is that the protocols that are used for interacting with this data are open source and decentralized the the apps that are being used are ideally open source and zup pass itself and other sort of alternative data wallets um store things locally and respect privacy all right that is our time for
zoo pass thank you both so much um we're gonna just take five and we've got an awesome panel coming up next so stick around [Music]