New Ethereum talks, every Monday. The week's conference uploads by event, in your inbox.

Loading player…

Pre-execution Privacy and Cryptography - Peyman Momeni

ETHGlobalMon, Oct 9, 2023, 12:00 AM

Join Peyman Momeni for a talk titled "Pre-execution Privacy and Cryptography". Welcome to back to ETHGlobal Waterloo, where it all began! Returning to Canada's tech hub, we're thrilled to bring together international enthusiasts and local talent for an unforgettable hackathon experience. This year we had 650+ attendees from 29 different countries and 47% were new to Web3! We concluded the weekend with 168 projects submitted and gave away $250,000+ in prizes ----------------- Follow us: https://twitter.com/ETHGlobal​ Check us out: https://ethglobal.co​m Email us at: hello@ethglobal.com

Transcript

foreign [Music] ERS of furb like and actually I've done my graduate school in uwaterloo cryptography lab and same for my co-founder and couple of our team members so it means a lot of it means a lot for us to be here and so while you are still in your 40 second attention is spent I just want to summarize the key points that I really want to make so probably you've already heard of like private transfers like you know tornado cash Z cash penumbra like Aztec and like ZK Roll-Ups and uh they are great but like today I'm trying to talk more about like other applications of privacy and and talk about like how privacy can actually like enable more applications for users how it can actually save you money until about the fact that it doesn't necessarily mean like bad ux or like travel with IRS or CIA and and also like the key point up here is like pre-execution privacy and threshold identity based encryption that we are building uh so what's pre-execution privacy first so right now all of the applications that we have like the centralized application that we have we have like the messages are published so if you are sending a message a vote for a dollar or like if you are trading everyone can see your transaction the contents of your transaction before finalization and the inclusion of your transaction inside the block so this is the like the heart after problem for like nav France running and other stuff that is happening in D5 and also it has limited couple of like cool applications that we know um for like Unchained applications like seal bit auctions or like private governance that a lot of people are talking about these days so the idea is that like so right now we don't have any privacy before execution the idea is that we want to protect transactions the contents of the messages up to the point of execution after that everything should be like transparent it's just for like protecting you from like exploits and also enabling applications the basic idea is that we can encrypt the transaction contents in the user site in the front end and then once the inclusion and ordering and like sequencing of the transactions are finalized a threshold Committee of like it can be like validators after blockchain or analectile members they can send their private key shares and a single private key can be generated which can decrypt all of the transactions and we can execute it right after that so this means that all of the transactions will be encrypted all of the contents will be protected and nobody has access in any way to the contents of your transaction before execution so uh you can rest for this part because it's a little theoretical but uh the idea that we are implementing is like identity based encryption the classic idea is that right now like in I don't know probably you know about like private keys and public keys using like classic public key cryptography you should know the public key of the receiver party right like you you know like the public key is like some random address and then you encrypt your message for that specific public key so the original idea of identity based encryption is that you can just without the knowledge of the receiver party like any information about the receiver party you can just encrypt some message for like their email address their IPs or their photos and the receiver party right after that they can go talk to us like centralized private key generator authenticate themselves and they get the private key so this is called like extraction and then once you have the as the receiver party you have extracted your own private key you can decrypt it so there is like the setup algorithm which after the setup algorithm we have the master secret key which is going to be used by the centralized private key generator to generate a single private key for all of the receiver parties and there is a master public key for the whole system so you can encrypt transactions with the combination of the master public key and an ID for anyone so using the master public key which is fixed and ID that can be the I don't know your photo your IP or like your email address we can encrypt transactions for the receiver parties and then the guy can ask the third party to extract a private key for themselves and uh it can decrypt using that so this is the classic idea of IB how we are using that we are combining IV with like ideas in multi-party computation using dkg and other Technologies like ZK we have made it decentralized so the central allies party that I was talking about for extraction of the private key right now using dkg is decentralized so instead of asking one person to generate the private Keys a committee of like validators can send their private key shares and this is decentralized so this can be all of the validators of the blockchain and the ID which was email address or IP we are this is the condition of decryption here like we are the ID is black number or like just a like simply the deadline for decryption so you can encrypt the transaction for a specific deadline you can encrypt it and say like it should be decrypted in Black hundred and um yeah so we can have like some the idea of time like encryption using IB and dkg so right now uh I'm going to briefly like discuss a couple of the applications that we've enabled using IB and then black dkg so the celebrity here is like Mev the bad part of Mev not like the good Mev and Arbitrage opportunities the toxic Mev and France running attacks that a lot of people have already heard of the heart of problem problem is that when you send your trades on uni swap or something other people can see your trades they can put a like buy order before your transaction and then right after execution after original transaction they can sell it so they can make some money like because of your transaction because of like having some kind of Insider knowledge about contents of your transaction and uh this this is also called sandwiching you made heard of this kind of stuff this is a like really big Market it's like one billion Market some part of it is coming out of like normal retail users packets and like verticals and uh it's been known that this is not good for ux you should know about like a lot of sleepers amounts and it may cause a lot of other complexities so one of the uh problems to mitigate consequences of Mev and France running is by having pre-execution privacy which can be built uh with IB and NPC as I discussed and the other idea that we've implemented is private governance and like those so the basic idea is that we can encrypt your votes right and your votes will be encrypted up to the point of the deadline or the voting nobody can see other people's vote but everything will be transparent after the deadline and once you're uh votes are like encrypted we can send them to the like blockchain on a smart contract in ethereum or in Cosmos and uh once everything is finalized the deadline of voting the Gathering votes is finalized and nobody can vote anymore all of the validators all of the dollar members can send their private key shares and a threshold of them can be aggregated automatically to decrypt them and uh yeah tally the results and the results will be transparent so why why this is important is like it can help it like information symmetry less bias and less censorship like shorter voting periods and it may be like helpful for like mitigating a lot of social media dramas for like governance proposals to make it more uh easy to understand and without all of these buzzwords like there are like couple examples here so most of the time people don't do their homework and their research like in like governance proposal they just copy other like influential faces I don't know votes and um this is good like there is also like offshine communication but at least an Unchained communication you can't just like see like whatever what's the like other people's like decision you should do your own research and then vote after that so the results will be slightly less influenced the second point is that if you see that the like voting result is already done and like I don't know if either you are in on The Winning Side so you don't think that it's important to like a vote or you are in the losing side and so like you think that like your vote is not going to be counted right so for the winning scenario if you don't vote you may like win the election by like just one person but the reality maybe like 67 percent right and in the losing side maybe you like end up losing by like 0.5 percent so if you have voted like maybe the election was like in the other side election result wise in the other side so exactly this is exactly like like you know political elections in reality nobody can see your votes like now everything is like I don't know in the pockets so we are basically making the podcast so other people cannot see your votes and like that I know Turkish election or other stuff there is like common strategy in our crypto that major stages and various days like they wait until the very last second for voting because they can influence the results if they vote and they weight and then they just sometimes it's possible to borrow some steak from other people and then just vote to like just turn the results in the other way so using like pre-execution privacy and cryptography we can like prevent this kind of scenarios the other application that we are excited about is like sealed with actions and uh yeah theoretically there is a lot of like you know research and like mechanism design research that talk about like steel build actions you may know it of like ahead of it as like second price actions Victory actions so basically second price actions uh is better for users because there is like Financial incentive for all of the bidders to send their election bids for their real value of the asset and um yeah there is a couple of implementations in the crypto space for example by A6 a16z but they are using some kind of like just simple hashing the problem is that if you want to Hash your like beat you should reveal it yourself so there is like two interactions but right now like with our implementation since there's a like virtual network of like um decryption you just encrypt it send it and the decryption happens automatically after the like deadline of the auction so there's just a single interaction and in there in most of the other implementation in like the space you need some kind of deposit so if you don't reveal it you should be slashed but like in this case you don't need any any like unknown preposit because other people uh are going to decrypt it anyway and um yeah like one I don't know I think example is like nft marketplaces and sale deductions for nft marketplaces the good thing is that you cannot really hype the value of the NFD by asking your friend to submit a bid for like thousand ifs for your I don't know eight and people will beat with something closer to the real value and uh yeah this was the like the main ideas that we've explored but with you like using the same infrastructure exactly the same idea of like encrypting messages and decrypting them after the time right after the time uh deadline or like after meeting couple of conditions we can enable we can get really creative and uh make other applications the first idea is like Randomness generation like as an oracle service the idea is that the private key the single private key that we are generating with IB um it can be just effectively the source of Randomness right so and nobody the good thing is that like even the last person who is sending your private teacher can not affect they cannot wait and like for the last they can and send their private key shares to effect to find out Randomness Randomness like results because there's the private key once the threshold of them like send the private kit is it like it's going to be the same private event like it doesn't matter if you are the last person on the other guy is the last person so this is quite nice it can be used for gaming and since the crypto is a big Casino so gambling is big part of it and you can use like Randomness for all of the gaming and like you know other gambling application and it's also very important for some kind of fairness applications there is also some more serious applications like uh private intents and like limit orders the idea is that you can encrypt your transaction and say that the decryption should only happen when some conditions on the market is like are going to be met for example we can say that when if like meets 5000 usdc like t-shirt my transaction so this is very important for like Texas the central exchanges and couple of other D5 players that we can enable the defense here is that the ID that I was talking about in IB here is not the time you are not encrypting for like like 100 for description you are encrypting for a price and uh this is the idea and the last idea I know you're overwhelmed with all of these ideas but the last idea is like censorship resistant roll-up sequencing so there is like a really big hype about shared sequencing right now and um the idea is that that like single sequencer you can sequence all of the roll up transactions for I don't know for example like arbit strong opting us and all of the robot providers there is a like really good um exploration for the reason of that like for example one after is that you can have Atomic cross chain transactions and for this idea for like shared sequencers and like sequencers in general they are good because they are decentralized nobody can censor your transaction based on like your identity your address uh if someone like some black book like some sequencer tries to censor you other people can include your rollout transaction but there is still uh not fully censorship assistant because they can still like censor you they can have some kind of Insider knowledge and sensor a lot of the transactions based on the contents of transactions before sequencing so the idea is that we can increase product transactions uh in the sequencing layer and once the sequencing is done like nobody has like any knowledge about the contents of Roll-Ups they can execute it in the roll up side so we can we will be like fully censorship assistant because we are decentralized and also we have encrypted product uh roll up transactions and yeah so to sum it up like so I talk about like the Privacy it's not just Suzuki Roll-Ups and it can enable a couple of applications which is quite for quite important for users I know a lot of people doesn't actually care about I don't know privacy or like the data but the key Point here is in crypto there is a special space that privacy actually means more money for you it means like better applications it means like better value for a user so this is a like very fantastic opportunity to build cryptographic libraries and build like better applications even for the users who don't actually care about privacy and uh yeah it doesn't necessarily mean like you are going to be arrested to work on privacy it's not like tornado cash necessarily which is also like important but like it's a safe area to work on privacy and uh yeah lastly I um yeah we are happy that we are building production ready cryptographic libraries like very short identity based encryption and enable this kind of applications uh yeah that's all and please follow us on Twitter uh we love talking to you guys more about these ideas without feedback here to Susan and we are also hiring so yeah thank you [Applause]

Automatic transcript — names and jargon may be misspelled.