ZKVs Cosmos Privacy & ZKP Showcase - Storytime with Zaki Manian

29 Mar 2021 · 18:25

Recorded at the ZKValidator Cosmos Privacy and ZKP Showcase, Zaki Manian of Iqlusion presents on the public goods still missing from the Cosmos privacy ecosystem. The talk surveys gaps in zero-knowledge tooling and infrastructure that the Cosmos community needs to build out to support private applications.

Speakers

Topics

Transcript

um actually would you guys mind dropping an anna's screen share so like people can just see my giant head totally we'll we'll sweet sweet okay because i want to tell stories like um so i'm zucky um again like i've been around the cosmos basically since the beginning um i i have been working on this project for a really long time um and the uh the is like so you know my formative experience in in cryptocurrencies to a large extent was um when uh ellie and aaron trummer like came and spoke at the um the bitcoin meetup i was running in

santa clara and gave the first public talk um outside of israel about zero cash and i'm like snarks what is this witchcraft like i don't understand this talk but i will eventually understand it and it took like three years and eventually i understood like how snarks worked and all of this stuff and um it's been you know it's been fantastic to see like this like you know expansion of knowledge um around um and like you know like one of my one of the things i've been frustrated by uh in the history of cosmos has been that like you know there's like this amazing privacy work um that i get to help out with i'm an advisor to the electric coin company um i uh have been uh you know

trying for years to like you know i've been just interested in like every single piece of zkp tech we uh we run a data availability node at inclusion for um for diversify will's uh wills decentralized exchange um we've just been like you know i've been bullish on on zkp tech um and so it's always been like you know there's like all this cool zkp stuff there's all this cool cosmo stuff like the the like why don't these things uh uh uh mesh together and it's been a it's been a surprisingly shocking um uh uh uh uh divide and so you know i've had um the opportunity to advise a lot of projects

um who are trying to work at the intersection of cosmos and privacy um and but i've never really had an opportunity to share what usually i tell them um so it's weird but like probably the biggest um the biggest sort of breach point um between the cosmos world and the privacy world is the fact that the cosmos sdk is written in go um and the privacy world has basically congregated around two things they congregated around the ethereum virtual machine um so there's a lot of really cool solidity code like uh like the uh like the uh starkware's uh cairo verifier um

written in solidity super cool amazing technology um and there's a lot of really cool zkp stuff written in rust um and the the challenge has always been like the cosmos sdk is in go uh and for a variety of like feedback loops um uh and as dave is saying in the chat he's like the sdk is not very geared at the moment for changing anything about the cryptography to be zkp efficient uh yes he is 100 right about this uh but i was going to say i i'll cover the the the impedance mismatch that dave has been talking about for like five years or three years or something like that about uh the

uh between in a second uh and i'm sure he's going to talk about his talk too um like so we have this like huge cultural divide um but like between like what is happening like all of this innovation um and these feedback loops and so like the evm is there because ethereum is this great target market um and ethereum has done a couple of things to like make it easier for people to build privacy tech on top of ethereum but mostly like projects have macgyvered um their privacy tech on top of ethereum uh you know lots of like with like lots of really amazing photography and cryptographic tricks um in ways that nobody really uh anticipated and it's just a testament to the

extensibility of ethereum far exceeding anything i would have expected you know when it was being designed um and then the rust thing is uh i don't really there's like not really any like one explanation i'm sure everybody who choses to chooses to write their uh zkp stuff in rust does it for a particular reason the power of the abstractions memory safety uh uh correctness oriented design but i think a lot of it just came down to the fact that like what the uh uh electric coin company um really adopted rust like very early on um in the zcash ecosystem um and all you know we like you know they were the people who pioneered this frontier

um and that like you know had a feedback loop where you know you needed no rust to read the code for sapling um the sapling design like innovated so many of the sort of uh important ideas uh that have sort of propagated out of the zkp space um and so there's a really widespread adoption of rest um so then the the advice that you know you you have to give is um is there's like basically a bunch of different kind of routes you could take to sort of uh uh uh um the uh the the routes that people i could take to integrate um go and rough stuff uh together um

and the or like these two things these two artifacts the evm artifacts and the rust artifacts so the evm artifacts is you know um this concept of ether mint does exist um like ethernet does exist um it is unfinished as a product i'm sure fed a has more to speak about like what it would take to finish ethereum as a product but in its nascent form you actually could build uh an evm like use the the ethereum solidity integrations in a cosmos sd card context with a modest amount of work to the best of my knowledge no one has like gone down that road yet um but i do think somebody will um

because there's like you know millions and millions of dollars that have been invested in uh evm verifiers for uh zero knowledge things it seems like uh insane to um uh uh uh waste on it um the other component of it is um is the rust stuff um and there's basically three plausible approaches to integrating rust into the cosmos sdk and reusing a lot of the cosmos sdk code um so one approach is the approach of that uh of like just using like the seago interface and integrating rust function so okay well one approach is re-implement all the privacy stuff and go um

and like re-implementing like the sapling verifier and go is a modest amount of work um it's definitely doable um uh so far like a bunch of people have sort of started and not really uh uh uh gotten over the finish line um for doing that um so what's like disregard that because a lot of people who just like who want to build this stuff just don't want to write coded code so then there's the question of using like sigo so this is like a tight integration uh uh into sego is this thing that allows go code um to call anything um that looks like c um and uh sego allows for integrations and you do have a bunch of cosmos sdk projects

that do use seago with rust um in production um and so that all that that exists there are examples of this that people can look at um the uh the sort of deepest integration of seago uh stuff uh and rust stuff uh into the cosmos sdk is cosmosome uh cosmosome brings webassembly smart contracts to the to the cosmos sdk um and uses those webassembly smart contracts to um uh uh and those web assembly smart contracts are all being executed over a rust interface um and so there's a huge opportunity to uh to to use uh uh uh

like cosmosome as an example of like how do you build like a lot of rust uh uh inside of go rust also has the advantage of compiling the web assembly so cosmosome could be your execution environment and that's sort of like the second option and then probably the the third option um and honestly like of the as you you'll hear from the teams that are presenting here i found to be seems to be the popular option is build a rust execution environment that speaks to the tendermint uh abci and like rebuild the cosmos sdk in rust um and uh you know and you know there's also the work on abc i plus plus about improving

the abstractions that tendermint offers for the zero knowledge world um so uh i think these are the three options um the problem with the biggest the third option is it is a pretty heavy lift um and what's really exciting to me about these team about like these projects that are presenting today is we are moving from a model where uh the cosm like building a cosmos sdk in rust is like a completely under resourced um uh effort with like you know two and a half people working on it um two large teams um and very competent teams and teams that have a long track record uh um a long track record of um of shipping uh who are starting to build

on this thing and what i hope is that everybody collaborates together um that we end up with like a very um we end up with uh something that is as rich an ecosystem as the going cosmos sdk in rust um and then we can really take advantage of the fact that we have ibc that we have this sovereign interoperability model um the sovereign interoperability model can uh in the sovereign interoperability model just like purely uh uh can enable like all of this code to work together um there's a long way there's a long way to to go to get there um and but the uh the core is uh you know i i see these pieces as inevitably coming together

um and i'm just hoping that like you know all of the teams that are are are presenting today can start collaborating more deeply so that like the cosmos privacy vision finally reaches its like inevitable future it's also cool because i want to use all of this tech um and so i'm super happy that like everybody you know all the teams that are working are presenting it and yeah uh my my i'm available to you guys um just speaking to the other presenters and really anyone else who's building cosmos privacy tech um this is a thing i'm willing to dedicate time and energy to um and you know projects that i'm working on like sommelier uh also need privacy tech um but it

probably is more in the enclave space and less in the um in the uh zkp space uh as we as we go forward um oh i think like so like i think the other the other real uh uh the other real impediment you know to moving cosmos forward has been like the uh privacy and cosmetics forward has been um like sort of general the general like um stark timber phenomenon um where you know it was like a new proof system uh came out like every every every month for like all of last year's um okay so anna has a really good question how does ibc open up new ways um ooh

okay i i'm gonna i'm gonna take cyslis question first okay cool cool um what's your okay hi zucky what's your view in combining nfts and privacy and he's not for our performance for uniswap lps nfts because people uh because then people will know my orders um yeah um so i think this is a little bit about what i was hinting at with um with uh nflps uh i really like the turn and if nflps are like a way a way better trend than lp nft just um uh uh the um the the uh mechanism is so

i mean i was hinting at this right because it's it's um it is as far as i know um pretty hard to build systems that do this sort of property based computation um in zero knowledge um like the um like it's it is uh uh though you know there is an increasing world around it um but uh there you know and but and like you can do things like big like bare big shield like a shielded pool that contains nfts um like there's no uh uh uh they're they're uh um the the big the big the big thing that is going on there is

that you can build shielded pools of nfts like it's very clear that you can do that um whether or not you want to go beyond that and like uh have computation over those properties then i think you need enclaves um um so now you have this uh uh okay so there's another question how does the informal effort around tendermint rs uh fit into the need for a rust sdk um one of the things that you know so informal is this amazing team that has been built up um uh by uh ethan buckman and like ariane and uh and like the rest of that team that is

like this tea is like these team of like formal verification rust ninjas um in uh in the cosmos um they have been diligently improving the quality of general rust tooling in cosmos so one of the most painful things about integrating with cosmos um in another one in any other ecosystem other than cosmos sdk uh is uh what we call the ibc handlers which are these components that sort of handle the id the ibc packets and set up ibc connections and sort of are essential for speaking ibc um and so one of the things that informal has been working on that i'm most excited about and will unlock um a lot of of rust in cosmos stuff

um is the is the world of um as having those handlers available in rust um one of the things that i think is also interesting there is those handlers may in an idealized world those handlers kind of can go across all kinds of ecosystems this like hypothetical sdk you know cosmos sdk and rust uh that is being built uh across multiple people across multiple organizations uh is a use case for it existing blockchains that speak webassembly and rust like substrate or near are other potential users of that system and that makes me really excited um and then okay i'm gonna do the last one um what is the business case for privacy

in the cosmos ecosystem uh uh uh in the cosmos ecosystem in web3 um the business case well i'm actually not going to answer that question because i think when you see the presentations uh that are coming up um it's going to be relatively obvious what the business case is because they all three of these projects have super compelling business cases um uh and they're not just hey we're gonna make uh private e cash um they're really saying you know there are functionalities in the cosmos ecosystem that are essential to the economic development of cosmos

um uh and that makes a big difference um and so yeah uh i i think you're gonna i think if you watch the remaining presentations you'll um you'll uh you'll you'll you'll get a um a pretty good sense of what the business case is um so uh just so like i got one minute left uh i'm going to uh wind things up uh so what's really exciting to me uh about where we are is that yeah uh i i think that the idea of uh uh that like the ship has sailed on creating a really compelling uh zkp go ecosystem um and so

what what is going to happen uh what what these projects really represent um is an increasing uh you know you know having crossed the boundary and ibc going live on monday um you know there's a really compelling reason to build a rust ecosystem now around cosmos and that's going to enable all of the uh that's going to be enable a lot in terms of uh that's going to enable a lot of sort of like more code reuse more innovation on the zero knowledge front uh and if you watch the remaining presentations the business case uh for why you should build cosm privacy and cosmos uh should become really clear um i think you're gonna see like these projects

represent a frontier that a lot of people are going across thanks john awesome awesome thank you so much lucky yeah uh please enjoy the rest of the event like there's some really exciting projects to learn about