A Privacy Layer for Web3 Workshop - hosted by Oasis Network
Ethereum Denver·Mon, Oct 9, 2023, 12:00 AM
Do you want to add confidentiality to your dApps on any EVM network? Do you want to have the flexibility to build smart contracts that can be fully public or fully confidential or anywhere in between on that spectrum? Join the workshop to learn how the simple-to-integrate, UX-friendly Oasis Privacy Layer can be helpful. LOCATION: #BUIDLHub 3403 Brighton Blvd, Denver, CO 80216
Transcript
have these account these confidential runtimes on the network that allows us to keep data keep data private in use and we currently have two confidential runtimes one is evm compatible the other one is a web assembly a Canon uh compatible and uh confidential runtimes you know they are back powered by trust executing environment and allow us to keep data protected while in use and basically if you think about the trust execute environment you can think about them as basic a black box for computation encrypt data and smart contracts go in encrypt results come out end to end it is a private and secure so uh um here is just a quick highlight of the Oasis very robust ecosystem uh we launched the always ecosystem Farm last year currently the size is a 235 million dollars so if you're interested in uh in building interesting applications that are using always a privacy layer which is the star of the today uh definitely tap into that fund you know we are very open to applications and we also have those these amazing um Partnerships so besides privacy we're also was kind of you know go hand in hand together we're also working on responsible Ai and then we have partnership with meta formerly known as a Facebook and we also have amazing grants program that is also suitable for developers who are you building applications uh who maybe just got started and they want to explore the confidential runtimes and network and slash or using always privacy layer um so I understand quite a lot of people are here today because you know you're very passionate about ethereum and ethereum and uh they're probably another thing you guys all have in common is that you're all very passionate about web3 so I Oasis we identify we're building The Primitives for web3 um so this basically covers uh three major components first scalability as we talked about earlier you know always a network is scalable we separate we separate computation from consensus we have high TPS uh and uh second is privacy so we believe privacy is not some sort of bonus or nice to have or some sort like you know afterthought this should become a default as for every solid developers or any blockchain developers out there what we meant by that is if in the current web 2 world if you think about it we transition very smoothly from HTTP to https if you open a website open any URL if it's started with HTTP you know you will probably get some sort of like warning alert from the browser telling you like you're sure you want to proceed so https is basically default here in the current web 2 world so we think that's how things are going to be in web 3 as well like currently we have Smart contract stay pretty much all public but that's not how things should be in the future as we transition from public pure public smart contract stay to a Smart contract state where developers get to configure how they want to make it either fully public or fully private was you know somewhere in between on that spectrum and last but not least the central identity which is also critical for web3 so we want to dig into privacy today which is you know the highlight of the workshop today so let's talk about the always privacy layer again privacy layer for web3 so it's powered by sci-fi which is evm compatible confidential runtime on the network um and um so why are we so interested in privacy besides you know the what we talk about this whole like you know migration you know like uh kind of smoothly transition from web to the web three um you know we ought to have uh not necessarily every smart contract needs to be contested needs to be public so besides that uh from a technology perspective you know from the use case perspective why on chain privacy matters so let's talk about those like pain points uh the first like dials I'm sure many of you probably are very much involved active in some of the dials out there and then if you think about it currently the currently the voting process for Dallas for Dow members are pretty much public so that has caveats like the Dow members will not have the freedom of expression and then you know that also could potentially your product could also have some sort of early voters anchor the late voters that could you know lead to unbiased voting process and second you know the dids as we as we know how important the central identity is uh for uh web3 so be able and we know that the data behind a true decentral identity is more than just a some sort of binary kyc data like I pass the qic I don't pass the kyc as we continue to evolve uh web3 the data behind the decentral identities needs to be more complex than kyc yes or no so but the users need to be able to control how they want to share all this data behind their decentral identity because and be able to do this selective disclosure because it's probably going to be different than some data you disclose to other dabs for instance if you're using if you're using some sort of learning that sure maybe in the future you won't disclose your credit score to them so you can have some sort of under clusterized Lending Service or something but do you need do you want to disclose your credit score when you are doing gaming or something because those are two different uh categories of dabs and then you ought to have very different data sets they use and users get to do this kind of like selective disclosure and third is in gaming so I'm sure uh you know many of you are playing those strategy games and fog of War all these all these games out there and then all this game logic currently are off chain so obtain as we continue to move to web3 like we we ought to have more things move to unchain so we can have like stronger in Turkey Integrity guarantees and more transparency and last but not least D5 I'm sure for those like uh very uh for those D5 users uh you probably come across issues like front run sandwich attacks and those can be resolved by using privacy uh if we can make specific training parameters uh uh private so let's talk about Sapphire the engine behind This Confidential evm runtime so uh the first you know private variables get to be private actually private and protected by the trust executing environments which is the confidential compute technology we're using uh for the Oasis Network currently and um it's the smart uh the the smart contract uh get to see the the state and smart contract gets to configure who else can see those uh those State and uh and when we say is evm compatible we actually meant it um so it's identical user experience Dev experience to ethereum and um it's also uh the fees are much much lower uh compared to ethereum and also it has those amazing building functions like RNG which is also critical for those games like of war or strategy uh you know those games and um it also has the general purpose smart contract support which is some other confidential compute Technologies uh currently might have limitations around and it's also uh for composability which is also critical to web3 as everyone is building each other um so in short there's literally no reason not to use it um right so the Privacy layer for web3 um so is this is not just a product for applications building on the Oasis Network this is also a product for applications uh from any other evm network out there um so today the workshop is a code co-sponsored by Oasis and BMB so for developers who are building on the BMB you can also use the Oasis privacy layer the trust execution trust execution environment we're using is not just for the native applications on OS Network any applications on any evm network can use always privacy layer just with a little bit help from the cross Chain Bridge and the assets and users get to stay on the home chains for people who are uh you know want to enjoy the benefits of you know user liquidity from BNB chain and don't want to use don't want to leave BMB chain that's perfectly fine we want you to stay where you are and you could just you know deploy a confidential smart contracts on sci-fi and secrets and logic uh live on sci-fi but user and assets stay on the home chain whether that's BNB or ethereum or any other evm networks and the use cases you know we have you know secret ads we talk about for doubts and still beating auctions for those nft minting and the games you know as we talk about those strategy games um and the ID and also private payments uh and then for developers uh you know what we really want to emphasize that you know it's really really easy to use you know so start integrating in under 15 minutes and we we really meant by that uh and then you know and from the end user perspective so if you are operating a dial or some other categories of dabs um any evm network out there you know your end user don't actually need to know that sci-fi will always never exist and here is how we how it works this is basically a user flow diagram and we will explain how that works and what we meant by you know your assets and users stay on the home chain and your end users don't even need to know that sci-fi always never exists um you know it's purely working from the uh you know behind the scene so here let's say you have a dial let's say operate on the BNB on the BNB chain and this is a home network uh this which is which is a BMB chain in this in this in this in this scenario and then you have uh you have something you want your down members to vote on uh you know a proposal or something so your user log on to the dab and want to vote and they cast the vote and sign the transactions uh in the meantime the gas relayer which is the key component here you know get to uh convert a little bit of tokens in this game could be BNB could be other tokens on BNB whatever the tokens that your users have convert tiny amount because you know the gas fees on the OS network is also very very low so just a tiny amount of tokens that convert that into the gas token required for the Sapphire Network and then sign the messages and then the ballots uh you know and the uh the the voting contract goes into this uh Sapphire Network and then um after voting uh concludes the uh the the uh the trust execution environment you know completes the the compute uh what you have is in the ballots as well as the aggregated voting results uh you know sent back to the home chain via the message message passing Bridge so in this case you know it's just the voting process you get to keep everything private uh after the voting process concludes you still can make everything transparent you know you still can publish you know each wallet addresses um our batter as well as the the end results of this voting so you get to stay very transparent by using secret ballot you still get to see you still get to be very transparent you know you're not hurting you're not diluting any sort of transparency uh you know as a as a model or you thought that you're telling your down members about so uh this is really just uh you know using secret battle is really really just a very beneficial for you know very productive governance uh where users get to have this kind of freedom of expression where you don't have you know biased voting process you know early voters are now biasing the or anchoring the late voters uh cool um yeah so uh try on try out sci-fi on Mainland today by scanning this QR code you'll get to the it will lead you to the docs of sapphire uh I'll probably stay here for one second or two for people to scan the QR code and then uh there's another QR code sorry which is like QR code on fire basically um so this is a basically links you to the website of a web page of always the Privacy layer and we're on that on that webpage you get to see what always privacy layer is and also some detail you uh uh use case and last but not least join the hackathon Privacy we're launching the Privacy for web3 hackathon very very soon so to register for the hackathon today by scanning the QR code thanks very much and now we are migrating to The Far Side chat with uh where I'll be the moderator and always exactly Nick and then the devrel from BNB were joining the the fireside chat and talk about privacy and web3 privacy with audience thanks very much you scare me check yo hello it works I think it works yeah hello well thanks for being here uh thanks for having the patience you know going through the uh presentation earlier with us and here we have the far side chat between Oasis Tech League Nick and devrel from bnbj first let's start with the self intro first Nick and Dylan why don't you introduce yourself to the audience uh hey everyone so as you've heard several times now I'm Nick I'm the tech leader Oasis and I've been building the Oasis privacy layer which allows you to bring confidentiality to your L1 dapps in under 15 minutes so you heard Linda say um a 15 minutes I used to be saying you get your if you don't support your dab in under 15 minutes you get your money back but like maybe someone was actually going to demand their money back but it's like testing it or something it's free but anyway pour your DAP in under 15 minutes or your money back awesome um I'm Dylan uh Tech evangelist for BNB um I studied and did a lot of research and zero knowledge proofs with zkutxo and did my own sets of code Audits and now working on ZK BNB which is a privacy it's a scalability roll-up and we also work on Greenfield which is a decentralized storage Network and there's a lot of really cool things that we can do with tee and I'm excited to to talk about it excellent we're excited as well so let's dive in so Nick and dinner you know were gathered here today to talk about privacy so in your own opinion like you know why do you think web3 privacy matters you know in your own words like maybe dinner can start from you since you know your experience with ZK as well BNB you're working on Greenfield like why privacy matters to you and to BNB well it's uh privacy is it's beyond just being a fundamental right um it's it's a way where we can protect ourselves if we're you know if we're decentralizing currency and we're doing this thing with social financing and we're making our own tools um we need to have a level of anonymity um and this ability to really identify one another without actually being able to obfuscate who you are and what you are say for example if I know you based off of how much money you make um there's a lot of judgment that can get played with into this I care about it because there might be a disenfranchised Community that's living somewhere and just because I can see what's on on their balance sheet or what's inside of their Dow I might not vote there I might not want to contribute just because I made this judgment so I think there's a lot of really important reasons why privacy matters because it's almost like social policy and it's a respect and I think in terms of like digital respect uh privacy is necessary in this way so that's why I care about it excellent what do you say Nick I think that was a really great over overall description of why privacy is necessary and to that I'd only would like to add that privacy is good for when you don't know the alcohol ramifications of what's going to happen right so like tomorrow you don't know if something like the government's going to crack on on you or you're going to go somewhere where it's really important that you have privacy so it's just so important for everyone to have privacy so that they can be prepared for whatever might happen nice nice so yeah so probably is obviously critical and critical for web3 to continue to move forward so I mean this is the eth event right so we can see mostly audience here are slow developers so what kind of private solution actually exists today for student developers you know like what kind of private solution actually is this for BNB developers these days yeah um so in in B and B well I'm wearing one of them right now so there's like polyhedra where I get to use stealth IDs uh which was something that vitalik proposed what year uh last year even yeah last year I think and so it was a it was a really fancy way of doing privacy on chain and then I can put my nfts inside of this container and then all the encryption happens and there we go now I have a a private nft and now I think we're looking for those use cases uh of where we can apply stealth ID and then of course we can do well since it's evm I can do snarks and I can still run this and um you know just use the base Primitives that are on ethereum that are available to me in solidity so there's that as well uh there's there's other ones you know the ones that we're working on with uh with discrete Labs which was you know we can just have an accountability layer for you know using utxos and we can still do you know trusted setups or non-trusted setups um to run cryptographic proofs unfortunately we you know I think the misinterpretation of what tornado cash was originally meant for um was you know obviously we have to go through the sanction now and I think there's a lot of really nice and beneficial use cases for Hardware applications with running an ethereum client uh with tornado that could be for the public good rather than for obviously what it's been bastardized for so um privacy is necessary in this way I think it's it really comes down to how you as a developer interpret what it's going to do for the public good build in that way and then and then you're good and then obviously there's tee which is a little bit more new to me personally so everything that you can do on tee in relation to ethereum or even on BNB is going to be really exciting especially for the data owned economy and how we're going to start using data uh in relation to the things that we're doing on shame there's lots of lots of things that's pretty awesome uh Nick what do you think and then what do you think are the benefits and limitations of the current Solutions that available for those solicit developers yeah so first I want to say that I'm really glad that everyone is taking privacy seriously like even at Ethan for now you see this explosion of just ethos of privacy like you have lots of zero knowledge homework encryption like these sorts of things were unheard of maybe like one or two denvers ago so it's really heartening to see all the developments going on in this space um so granted all those Technologies are great and they have their own specific Niche um what we offer at Oasis is trust execution environments which are basically like these special pieces of Hardware that let you do your normal computation with your normal programming languages with your normal semantics in this special hardware and then you have to change anything so whereas other things require you to adapt yourself to privacy tees allow the Privacy to adapt to you right so I'm really excited about all the different methods we have of adding privacy now to our adapts awesome maybe they can talk but I mean I I know I just talk about like always privacy later during the presentation but from the technical perspective can you walk through you know how it works you know for the audience how does opl always privacy layer works for you know developers sure all right so I'm going to take an example you're going to see this in a little bit the live demo of this but we'll we'll do secret ballot so the idea is you have like at your Dao on BNB chain and you don't want people to see what votes you're doing for like obvious reasons so what you do is you deploy a Ballot Box on the Oasis Sapphire Network and you connect it to the Dow on BNB chin so the user doesn't even need to know that Sapphire exists they're just going to get privacy so just keep that in mind so I navigate to the website I hit the vote button my wallet metamask pops up it says submit assign transaction sign message not signed transaction sign message now this message goes through the gas relayer it goes through the into Sapphire and the vote is collected inside of this secret ballot box and all that's protected encrypted using tee at some point later the ballot will be finished like you'll meet the termination conditions and then you want to actually affect that result on BNB chain and say like pay some people uh do a dow upgrade or something like that so the message passing bridge is once again invoked without the user knowing that they're using Sapphire to bridge that termination message saying what proposal one back over to BNB chin and then the rest of the process continues so from the user's perspective they head to the DAP click the button and then the rest of the day is fine there's only one button click and there's no real notion that you're doing anything special it's just it just happens to be private so for developers it's also very easy to integrate so we try to make it super easy so the adopt developer on BNB chain simply writes a couple of lines of code to like integrate it and then maybe like a callback function to receive the um the vote result and deploy the contract on Sapphire and then they're good to go but it's overall very easy to use and I really hope that developers will will find it easy to use as I do me too yeah I want to I want to be able to try it out because I think with private voting this is like huge it's super necessary it's almost I have a question really quick is like is can I is it like um I want to interpret if I had like a computer and tee is like almost like the GPU to ethereum is like the processor so um like is there what's relation to Hardware can I do you think we can do oh so many things actually it's funny that you mentioned GPU uh there are new gpus out that do confidentiality so like they're GPU tees so what I'm like super excited about here let me get you started in Greenfield man now imagine you have like your AI training data like an AI models on Greenfield stored using encryption using conventionality so for those of you who don't know Greenfield is finance's new decentralized storage Network it's like ipfs plus plus plus I'm like super excited about it anyway so imagine you have your confidence your private training data that you contributed as a user your private model because of course if you have the date private data in the private model it can leak data so all that's encrypted stored on on Greenfield right now you have these GPU tee right you load both of those things into the GPU te that's controlled by the CPU te provided by on Oasis Network and then you have like the machine learning going on with auditability Integrity of blockchain and the confidentiality of the tee on the CPU and the GPU to do end-to-end secure machine learning on private data right and then you enter interface with a smart contracts so all it's permission based so the audibility that you want to add to your tee if I can actually enable private or audible functionality I can actually do this and if I want to encrypt it I can if I want to just say I'm going to I'm gonna you know I'm gonna do a private I'm gonna do a private vote then you say hey contract talk to this bucket everyone has to get inside of that bucket like S3 so if you're familiar with like Amazon S3 and how data is kind of put into buckets and then uh and then you put people inside of that bucket we just call it groups everyone has an account and then on this smart contract you enable tee before I run the ballot then I just say all right make it public or make it private if you're in that group then good and then we just still use ethereum which is great yeah it's cool yeah sounds really awesome you know I'm really looking forward to have like multi-volvers you know beaming chain using the using always a privacy there so did it as you know you're kind of the Forefront of BNB chain like as we Kai sitting here talking about privacy do you see the demand obviously you yourself see the demand like you know while you're talking to your community developers do you see the demand do you see the momentum where like developers start to care about adding privacy to their dab um so yeah yes and no like I'll just be totally honest is that we know we love honesty yeah so I think um we're looking for it I think there's there's a huge need for the way that uh a network will eventually have some sort of Regulation and some sort of uh some sort of decentralized network policy and if they're going to require private functions to be on chain then they're going to be looking for those applications so it's it's like I can't say if it's necessary or not right now but I do know that it's important to learn how to build and try to see if you can apply it and if you open source it awesome then we can try to plug it in and Dows of course who have new sorts of governance models we're looking for more of these and especially for the ones that are based on whether or not you're voting privately because the Dow might need to know whether or not your anonymity is there and secure because that might be the promise of the Dao and if the Dow has a lot of authority in terms of proof of authority then it's probably absolutely necessary it just really depends on what the Dow is signifying its holders and that is going to come down to what everyone decides so that I don't I can't answer it all the way but I yeah it's gonna it's probably gonna have to happen right right so it's not just like if you think about always surprised today it's not just for Dallas right we're also kind of like want to you know help more gaming projects so they can bring more game logic on chain uh currently most of the are off chain so Dylan like you know Dallas gaming you know those did projects like what can we do you know to you know kind of like continue to educate privacy bring this kind of awareness to the what kind of tactics we can do to bring more people to start using you know these privacy Solutions yeah um I wish I knew the full stack of of like what it takes to be a game developer because I've asked a few game developers in web3 and they're just like it's so hard to build a game in web 3. like it's hard enough to build a web 3 product and then building a game on top of that so we're still the infrastructure needs to be there but I think BNB is really really it's super ready for enabling this especially through node real and a lot of the core Partnerships that we have in in working around with with BNB so I believe it's there and then now it's about trying to figure out some of those Solutions and so it's really starting the conversation with the Game Dev who thinks like game who wants to adopt gaming uh in in this and and I'm more interested in knowing whether or not if it's important that I'm trading in World of Warcraft whether it's more important for me to trade in terms of ducks and gooses with you or if it's more important to not have my land be revealed um and then that's where we would you know use some sort of imagery in Greenfield and I think there's just a lot of things that we can play with but it's absolutely necessary in order for me to run a game I need crud I need cloud and so we have that available now on on BNB so now that we have our own cloud infrastructure plus all the things that we have working in and around with BNB and the evm compatibility and hopefully with tee right it's like mixing and matching all these things together is the same complexity of building a game so it's uh yeah I think eventually a game developer who's going to be really smart and put all this stuff together is that's coming for sure what do you think Nick as a tech lead and attack evangelist for always Network like how can we help gaming developers Dow developers or even D5 developers you know to bring more privacy to their application that actually help improve their product experience yeah so I mean like my day-to-day is just making things easier to use so at Oasis I always like to say um extreme convenience extreme convenience like we're trying to make it so easy for people to use that it's like there's no reason not to use it so part of the no reason not to use it is that there's no barrier to entry like these tools are available for you you can choose what you need what you don't need and you can just drop them into your application and it doesn't take that much thought so like right now it is extremely hard for game developers to make web 3 games but like metamask comes in and like gives you their new Unity SDK and that lowers that barrier to entry and increases the amount of adoption so for privacy we'd have to do the same thing like all the other domain-specific languages and whatnot for like coding up these like ZK circuits and stuff like those are super cool pieces of tech but as a developer it's very challenging to learn these new languages in paradigms like these circuits are as different from like solidity programming as like regular programming is to like writing fpga code if you've ever done that so you have to think in a different way so part of that is the extreme convenience is just making accessible by giving developers the tools that they use and bringing privacy to them rather than forcing them to adopt to privacy the ease of use too they're they're always asking like oh is it third web is there dfinity like they want to use tools where they can just quickly deploy they're just looking guys well we can open up for Q a if we have uh questions from the audience for the devrel for Dylan from BNB as well Nick detectly from Oasis uh and okay cool uh I think we have uh okay well you you have the you have the mic okay hey y'all so question about Sapphire I'm not completely familiar with how a trusted execution environment works and how it might be similar or different to like I don't like scroll ZK evm but you were saying it's completely composable and you know you have all the features so would that compare to like byte load by uh byte code level equivalence for ZK evm or how would that look yeah good question so ZK evm it does a lot of it turns the AVM code into a ZK circuit so with trusted execution environments you're running the exact same code as evm uh you're just doing it inside of a secure processor that nobody has access to so it's like we literally took an evm ported it to run in an enclave and it's like it's interpreted byte for byte if you could just explain the mechanism uh inside of this evm in The Enclave I wouldn't understand like if uh you're in a private enclave and things are running there it can access anything and so there's no privacy inside I can go how do you justifically explains the mechanism a little bit Yeah so let's start from what an enclave does so we use Intel sgx which is one of the more popular Hardware enclaves and um the sgx is a combination of a trusted a TPM which allows you to remote data station to prove to everyone else in the world that this is an enclave it's running the right code and then the CPU itself and also the memory encryption engine which makes sure that everything coming in and going out of the processor is encrypted So within the Enclave itself like Intel sgx exposes a very narrow channel so you can basically just post individual messages back and forth so the main things going on when in an evm inside of an enclave is the access to the mkvs like the storage system so first you load in you pass the Enclave requests the contract code then as the contract executes like the byte code it will pull in more storage Keys as the contract requests them and then those are all doing the MK mkvs verification to make sure that's the right storage and then it's decrypted within the enclave and then the um the Mac tags are verified to make sure that the encrypted data is still has integrity so then once that's all done the results are written back out to the mkvs and then you can see any public side effects available to you on chain example through the block Explorer cool I will probably have time for one more question and then we're gonna head to the technical demo any last question hello I actually have a question from The Oasis Network Discord um and some of the people are wondering um if there's any drawbacks or caveats to using opio like for example is it fast enough for gaming considering that there's so many multiple components and network calls really good question so the cross chain bridging of course takes a little while you're going to see on the demo it takes maybe 30 seconds to get a message between chains so for like real-time gaming it's not a perfect fit uh but for things where you can wait a little bit like um for instance like revealing the data on an nft or like unboxing like those things are all fair game and then if you wanted to actually have that real-time thing like opal is a spectrum you can have all of your game on the layer 1 side and then Bridge back and forth or you could have more of your game on the sapphire side and then you can just submit transactions in real time and then only pay that six second block block time cool I think this concludes our far side chat thanks so much Dylan thanks so much Nick thank you really appreciate it thank everyone cool and uh now we're gonna do a technical demo by Nick all right hopefully you're not all bored with me yet I have one more thing for you so the um HDMI cable was conspiring against me this morning so I'm gonna do the demo on someone else's laptop and I guess that's a proof of generality so I'm gonna load up some uh okay yeah I'm good all right so first we're going to open up the block Explorer so this demo is going to be secret ballot I'm going to opl dot pages dot Dev all hell cloudflare all right and I'm going to connect Linda's wallet Linda is this the right browser okay all right so in the meantime I'll key up for what's going to happen so I have the um the opl and what you're gonna see a secret ballot so their active proposal in octopus I'm going to go through I'm going to create a new proposal that's going to be on the the BSC test net Dow and then what's going to happen is that proposal is going to be bridged over to Sapphire once that proposed was bridge I can then tell the Dao that my that I have I have the ability to vote and then once I do that I can vote and then the voting will close this might take a little while because it's set up for lin uh anyway can make a new poll connect wallet and I pray that Linda has a already set up the BSC test net window you can't you can't run away right now uh in can you connect to BSC testing for me why is your Minnie Mouse bugged so let's refresh the page associated all right all right guys I'm gonna do it live I'm gonna do it live this probably won't work all right it's gonna be really weird guys uh why don't we sit close to one another where Nick can do the demo via you know his laptop live basic close together I know it's cold weather so let's uh get cozy up all right so I'm already Sapphire is sapphire good all right so but then there's Quorum of course and I also back to what Dylan was saying about how a dialysis they say public to vote after voting is that Advantage now at this point I'm going to submit the transaction to the essay test net all right thanks all right so I'm going to submit that transaction to BSE testnet pretty soon um the it's going to upload the data to web3. storage and then it will certainly pop up a box saying submit transaction all right here we go let us submit that transaction all right so now we can see the transaction going into the bsetestnet Dao so here's the Dell and you can see my transaction three seconds ago just happened all right fantastic so now what's going to happen is that this is invoked on the seller message passing Bridge we use lots of different message passing Bridges but right now this one seller and now it's going to then pass that message over to Sapphire you can see the sapphire uh The Ballot Box contract right here and at some point later the bridge will finish bridging you can kind of see the progress right here I need to restart this thing this is the debug a debug console for the um the bridge you can see the the internet's not amazing here but like you can kind of see what's going on all right so you can see that's checking the block numbers watching the contracts all good so basic process again if you're a game it might take a little while but like it takes 30 seconds I think it's pretty fast for most applications okay so we can see that the message is going through it's pick the bridges finished signing the message it acknowledges it now it's going to pass it over to Sapphire all right transaction good it's the waiting to be mined fantastic I think we're going well today the technology make Inspire against us but we shall persevere all right so now this is the sapphire testnet of Explorer you can see the messages you can see the message coming through so I think that this one's probably the recent one yeah and then now we can go back to the ballot we can go back to our secret ballot and then we can our ballot has popped up internet's of course a little bit slow but that's okay I'm gonna refresh the page internet is very slow but that's uh still okay so now this part I told you about earlier I need to push the vote weight so my voting token is a course on BSC test net uh why move the voting token across that's just a security risk to bridge those tokens and how about liquidity on the other network so in this case I need to push my vote with I've already pushed it in the past so I don't need to do it again save some gas and I'm gonna vote and the question is that Sapphire good and of course I think it's good so I'm going to say vote so now this transaction is going to be sent to the sapphire test net we have a gas relayer that allows you to just like never know that Sapphire exists but for this demo my metamask is a little bit weird on Firefox so I'm just going to have to do it manually and see like here's that error super bad oh gotta support Firefox so otherwise you have the Chrome hedge Mini all right so switch network over to the software test net I'm gonna vote okay so now at this point the vote will be sent to software testnet with confidentiality I'm going to show you how we can see that it's being encrypted I mean you probably can't see it from where you're sitting but like we'll try anyway okay so at this point the transaction has been submitted and we're going to go to Sapphire test net Explorer this is The Ballot Box and refresh the page okay here's our transaction it just popped up all right so now we're going to go look into this transaction so on normal ethereum transactions you have the data of the contract it's just plain text you can decode it and it's all public so we're going to see what happens when you uh so what this contains actually is a bunch of encrypted data uh if we poke to poke this into the uh Seaboard decoder you'd paste the in you see a bunch of encrypted messages instead this is cyber chef I need to do Hex decode as well so right now we're just waiting for the bridge to do its thing it's going to come back the Voting is closed okay uh from hex excuse me okay so here we have a the in inside of the ethereum transaction data we've done some clever trickery to pack the encrypted data in a way that's compatible with ethereum tooling so in the hex data you have actually this whole Seaboard encoded uh struct that contains the data the public key the non-c and all that other stuff to be decrypted by the sapphire um Paradigm but that's all just an implementation detail I just want to show you guys that it's actually actually private all right then we head back to the secret ballot and um the bridge has done the thing it's Bridget back and now we can go see um that our vote has now under past proposals being that it has closed so nope in this case you can actually see my vote because I actually enabled the uh see about votes after voting has completed but in this case yeah but otherwise if you didn't enable that while voting is going on you can't see it so this is actually completely protected now if I had more if I had more screen space I would show you how easy it is to add but like literally the whole Ballot Box plus Dow contract took maybe 50 lines of code and only 20 of those at most were due to opal and not just the innate complexity of uh of of ballots all right so the internet is like pretty bad but you guys get the idea so thank you for watching this demo and I'm happy to answer any questions um offline or or yeah well once I'm done but thank you foreign
Automatic transcript — names and jargon may be misspelled.