How Inco Is Bringing Privacy Onchain using FHE

30 Oct 2024 · 50:25

Remi Gai of Inco joins The Rollup's Eigenlayer Unlocked series to explain how fully homomorphic encryption, or FHE, lets developers compute on encrypted data without ever decrypting it. He compares FHE to zero-knowledge proofs and multi-party computation, walks through Inco's universal confidential computing network built on the Cosmos SDK, and discusses how dual-staking with EigenLayer's restaked ETH adds security guarantees. The conversation also covers potential use cases including private automated market makers, confidential payroll, and onchain gaming.

Speakers

Topics

Transcript

welcome back to Igan layer unlocked with Remy from inco Remy welcome on today welcome to igen lay unlocked an interactive educational Journey Through the igen lay ecosystem created by technical Founders and builders for the entire crypto Community a special thank you to our partners all Lair polymer authentic skate and lrange for helping to make this happen our goal is to raise the Collective knowledge of the Igan Lair AVS ecosystem and unpack the technical designs of the top teams in space welcome to Igan layer unlocked welcome back to igen layer

unlocked for an episode today about the idea of fhe which is fully homomorphic encryption with Remy from inco Remy welcome on today uh looking forward to it yeah thank you for having me excited to talk about FH and also broadly speaking what we're building here yeah man looking forward to learning how you guys utilize I layer um amongst this kind of broader series and dive into some of the lower level technical architecture so whenever you're ready let's jump in yeah absolutely so you know from a high level I'll introduce sort of what we're trying to the problem we're trying

to solve here but also sort of what fhe is and then towards the end I can go more towards like the use cases because ultimately you know for anyone building infra what truly matters is you know what can people actually build with this right uh so what we're building is what we call the universal confidential Computing Network and so the problem we're trying to solve is you know today all the layer one layer twos have one thing in common they're all transparent databases and so we actually believe that you know in order to have mass adoption you actually need a minimum of confidentiality so just just a couple examples today when you use crypto as your bank account or for payroll everything is transparent and if you were to unboard

the billon people to crypto systems today would almost be unusable because it would be social chaos it means that you know your neighbor knows how much money you have um everyone within your company knows how much you're getting paid it's not how you know web 2 works because there are social sort of like rules that you know we we need to feel comfortable you know with this private information and this is just not feasible today in web and second there are you know uh institutions and Enterprises who have explored the idea of you know Pride blocking in the past you know hyperledger or three qua uh re you know solving this problem of like you know confidentiality but these are not quite the same because these private blockchains cannot interoperate with you

know the other public blockchains they also don't tap into you know the same uh amount of liquidity or user user base and and lastly you know just institutions Enterprises have you know compliance rules Trade Secrets it doesn't quite make sense for them to move to public blockchains and then lastly there are just a lot of use cases that wouldn't make sense without any hidden information so think of the C games private voting blind auction this idea of HD information is just part of you know uh how you build things in general even in web too right so if you want to build something like eBay uh you have to hide know people's bids right so this idea of Shield States or shielded

private States is a very necessary component so so it's beyond privacy right so what we're building at Ino is what we believe to be the missing layer of the blockchain stock the confidential Computing layer so it's very similar to you know if you think about the existing layers like execution settlement da uh we're very much you know our own stock here on on layer and and and I'll explain a little bit more later on why we are on own layer here uh but we utilize a cryptography called fhe so uh for folks who have never heard of this term before it's a very different type of cryptography compared to ZK what FH does is one thing and one thing really well is the ability to

encrypt data but also allow you to compute on top of it without having to decrypt so it it almost sounds like magic right imagine like you have this C picture you can encrypt this C picture you're still able to manipulate every single single Pixel because ultimately they are RGB values right they're just integers you can still add divide multiply on top of these individual pixels without seeing what it is and by the time you decrypt now you have a magical filter so so this is really what FH read does at the core is really just the ability for you to do comput on top of encrypted data so not only you can do computation you know operations like additions you can also do comparisons which are quite useful for you know

certain applications that I can dive into later so you know the idea of HG is not new it's been us for almost 40 years now it actually started from the 70s uh back then you know the concept was Pure Fantasy it was like more around what if we could compute on top of encrypto data right was just a well fantasy and so this concept of privacy homomorphism started back in the 70s and then the first uh I say realistic proof that this was somewhat feasible was towards the end of the '90s with partial homomorphic encryption where you could do simple additions um and the Breakthrough was done by paser uh a a legend in space and the

next breakthrough reame much later back in 2009 where kentry introduced this concept boost strapping so I'll explain quickly like why this was so challenging when you do FH operations you do them on top of something called CeX so a CeX is the encrypted data so uh you can see the picture on the left here a seex is composed of you know the actual data with some data padding some noise and no noise padding and so when you compute on top of these SE Forex what happens is this noise will keep on growing and so it overflows and this Seer Tex is no longer valid because of it so bootstrapping you can think of it as a way to den noise in between

operations so that you can keep this noise in check so you can continuously do operations on top of this encrypted data without this becoming uh unusable so so this is the Breakthrough that Craig uh came out back in 2009 which was a pretty big deal back in the days but this process was still very slow it was very costly and slow process so still making F difficult to be practical and fast forward another breakthrough happened back in 2021 called programmable boostrapping so what it is really it's a fast table lookup that allows you to do Boost shopping at a much faster Pace in tens of milliseconds and so now suddenly FH becomes a lot more practical because of

it uh one thing I like to mention is you know the way to think about FH is FH is compute bound so meaning that you know it's it is quite computational intensive uh but it is solvable with more Hardware so you know today you can use it to compute with no CPU uh GPU will be faster and the are special Hardware that will come out very soon there are actually dozens of companies working on this Hardware uh for for years actually and then a lot of them are coming out to the market next year these are specialized as6 um you can you know similar to bitcoin they're basically specialized machines that are more uh that can run basically specific cryptograph more efficiently and so

essentially the way to accelerate FHA is really through comput and you know with the specialized Hardware things will always get you know faster and cheaper over time and so this is different a little bit different from you know some other uh you know system that might be Network dependent for example NPC because for every single comput or specific operations you need the the not to talk to each other ultimately you s you know Bound by the networking time because that's you can go faster than speed of light right so at some point with the distance the different nodes if you try to scale this up spe especially then it becomes more of a networking problem but with FH it's really you know compute bound it's it's really just all

about compute uh so yeah I mean the the F Hardware research has been going around for quite some time uh even DARPA gave us some grants to Intel Duality back in 2021 uh there are also quite a bit of overlap between ZK and FH Hardwares as well so uh it's actually quite exciting to see a lot of this Hardware actually very close to being production ready so you know in the context of privacy for blockchain this is not a new topic neither there has been a lot of attempts solving it using more of a commitment based approach so you can think of maybe like a ZK based approach uh what we're using is what we call the encryption based

approach and maybe just High LEL comparison of the two approaches what are some trade-offs I I believe that you know both approaches are quite valuable for different use cases uh but maybe just from a high level you know in terms of M based approach the computer overhead is actually on the client side so you know the end user generates e proofs on the client side so it's sort of like spread out across every single user base right in the encryption based approach typically the blockchain does the state transition on behalf of every single user so this also means the compu overhead is on the BL ins side in terms of privacy You could argue that the commitment approach is more private because every single user has their own

encryption key so encryp you know private and public key uh so basically the secret is also stored up chain you also encrypt using this private key so the secret actually never leaves the clients so in a way it's quite private right uh encryption typically you depend on a third party authority to help you decrypt the piece of information so it could be a single key or it could be an NPC network uh but essentially because there are risk around collusion you can argue it's less private uh but maybe you know privacy the degree of privacy is also debatable right depending on your on your use case here but this is just kind of like from a high level the third Point here is around decryption rules so

you know when you have a system that's more commitment based typically the way it works is if I transfer if Andy you transfer money to Robbie uh you essentially generate a proof but also specify Robbie's viewing key so Robbie will will have a viewing key that he can utilize you know he he have the private key associate with it to be able to decrypt uh but you you cannot have to like spe that specify that ahead of time during the proof generation and so this also means that you know later on if Robbie loses his keys or wants to delegate viewing to a third party it's actually very rigid it's very difficult because sort of like the delegation of the viewing is is done at the proof generation time at the transfer time uh

now in the encryption base in the encryption base system it's actually a lot more flexible because there's just a single key that everyone shares and then you can basically um change the rule so that you know someone else can can you know decrypt on your behalf if you wanted to uh the fourth point is around composability so uh what makes FH composable is the idea that you can store this encrypted data directly on the blockchain and so anyone can transformate so I can add to it divide multiply so it's the idea of a share private States where the blockchain itself is the share layer and so so why does this uh matter right uh it matters because blockchains are

multipay systems so if you think about defi right you're always interacting with some kind of share pool uh for something like uh priv voting you are adding to a share tally right and so having basically the encrypted blockchain States fully on chain allows anyone to interact with this in a permissionless manner and do state transition in a permissionless manner so the blockchain itself is the coordination layer uh the problem with ZK based approaches is because all the encrypted data are stored off chain all the circuits you know the data logic is also stored off chain you also need you have this like Prov verifier architecture where you know it's quite unique I'll say compared to your typical

blockchain uh essentially you know to coordinate States across multiple parties you sort of need this centralized prover to uh do the tally on behalf of everyone right for example for like a priv voting now the challenge with that is ZK cannot do state transition over encrypted data it's not meant to do proofs over inced data it has to be over PL Tex so there are there could be also information leakage risk because you need a centralize op improver to coordinate the states and then do the state transition right uh and so real quick Remy just on that on that point um with with all of those understandings with regards to the differences between as like the ZK modeling of uh of

encryption and proving versus the FHA model would you say that these Technologies are complimentary or competitive I'm seeing differ opinions on in like the research forms and also people throwing in like tees here as well as like being like somehow in in the mix like what is the what is the right mental model to think about the relationship between zek K FH and even like tees as a bonus that's a really good question they are essentially different tools and and they're particularly better suited for different purposes so for example ZK extremely efficient for any large

amounts of computes uh imagine you were to build a game like Pokemon right there are hundreds of moves and you want to choose a hdden move right uh you're better off validating the logic off chain to make sure it's a valid move generat Z get proof out of it rather than do doing this onchain over FHA so you know The Sweet Spot from what I see is combining ZK and FHA and also understanding you know what are the trade-offs of these cryptography another examp another example is you know if you wanted to break the linkage between the card recipients um you know I say ZK is probably more efficient in that way um obviously viously it's also quite

controversial right with turn into Cash things like that but there are also practical reasons why sometimes you want to break the linkage like I'll give you two examples if you were to for example do supply chain right Coca-Cola does supply chain um all the vendors are are typically known so it's okay for you to pay them on chain having tracebility you're just hiding the amounts you're paying out to the vendors so that's okay but for example in the case where you want to visit a medical professional you actually want to hide the fact that you have visited a medical professional in the first place right so this is where you actually do want to break the linkage between the center recipient and this is where you know I would say zkb systems actually work fine uh and probably more private and more Anonymous

um so I guess like back to your point I do think there is room for both Technologies uh what I'll say the encryption system does really well is this idea of composability so any use cases that involves multiple parties uh multiplayer systems I think what ZK does really well is more around these single player use cases more around anonymity use cases and around I would say things that require a lot of you know compute use cases uh like including like something like ZK passport like if you want to prove your age um actually ZK works fine and it's actually great yeah it makes sense so so the combination of the two is what really

gets you to the desired outcome for you know specific use cases that that want that um you know want that combination you don't really see them as necessarily being uh directly competitive but when put together there's there's going to be interesting use cases but ultimately um it it seems like the Privacy element strictly of uh fhe could be potentially seen as stronger in certain elements than ZK however ZK gives you that those kind of fast finality guarantees and these things that that you were speaking about previously um and so I think that like it's kind of a balance of trade-offs

there so so I'll go over a few examples down the line uh to illustrat some like you know the advantages that that encryption BAS system have um yeah and just quickly on the last point on key rotation so uh you know in the commitment based system you know everyone has this viewing key that's quite rigid so if Robbie loses his key it's very difficult to well it's you can't re rotate the keys right there there's some uh challenges you you also cannot revoke access right because these are predefined encrypted values under a specific viewing key now in the encryption system there are actually ways in FH where you can also rotate the keys uh without you know just doing it

over FH directly so uh Ela key managements uh El encryption systems are definitely uh a lot more flexible here so you know ultimately there are many crypto cryptographic Solutions uh but like like I mentioned earlier uh at the beginning what you really want is the ability for people to build things useful things with these cryptography right so um the way this uh FH cryptography is being implemented at the evm level is really just you know in the form of new types operations uh within the evm and so um you know it's it's

very typical for a solity developer or a new developer coming to the webp space to have this realization very quickly that okay everything I build on the blockchain is transparent all the types are public meaning that yeah I have to read think through potential information leakage and make sure I don't store anything sensitive or people cannot Trace the execution path right of my of my logic so what we're enabling here is the ability for people to have new encrypted types so EU 8 for example um 1632 128 EB meaning encrypted booleans encrypted addresses and you can also compute on top of these uh encrypted types so you can add divide multiply and

we also have onchain Randomness uh you can think of this as a way to augment the existing evm M so that you're no longer constrained to only public States like what if I want to store a private informational chain right what if I want to store someone's credit score someone's age or someone's cards right for for like a poker game you can just use these encrypted types to encrypt values and stored on chain but not only this you can also compute on top of it so you can do Stitch transitions over encrypted data so this is a very powerful concept because this is not just a matter of encryption decryption it actually means that you can build custom Logic on top of inted data so if you know build like a private

amm you know you have to be able to add multiply divide right to to calculate the the tokens coming out this reopens up for I'll say a lot more design space uh around this ideal prodct comput and again this is all happening through cryptography uh basically you don't need a specialized hardware for this uh you don't have to write know complex circuits nor you you don't need any op coordination because you don't have this like Pro verifier system it's all basically happening uh on chain uh and then with f you can also derive uh Randomness um and this is actually quite useful in a sense that like this Randomness is actually encrypted by

default so um quite useful for for example card games you generate uh hidden cards right so a little bit different than your typical vrf that's you know plain Tex space that for example chain link would uh provide so so you know F has had 40 Years of history there are actually a lot of schemes uh there's TF BV bgv CQ and many many others um I guess this is a little bit more uh specific but yeah we utilize the TF scheme uh there are a couple benefits of this um just broadly you know TF does support um a lot operations so uh additions multiplications divisions comparisons uh

pretty broadly other schemes sometimes are you know constrained to only additions and multiplications but they could be more more speal specialized for other use cases right but in the context of smart contract you want to have the ability to uh have a wider range of uh way to express yourself right you need to be able to do uh more complex operations uh the other schemes you could some of them you know uh um you could you could you could have them do uh additional operations but oftentimes they become approximation so they're not going to beo U accurate and the reason why this wouldn't quite makes sense in the Contex smart contract is know

imagine defi right you want the every single operation to be exact you want exact computation you can have a balance that's you know slightly off or you can have a a defi pool uh that has a liquidation threshold that's like know slightly off right uh so exact computation is also very important and then uh what I mean by non-level structure is some of these FH schemes also you have to predefine ahead of time how many steps operations you'll be doing and so what happens is like you would do something like uh a bunch of operations and then do a big bootstop at the end of it versus tfh actually does a boost drop in between operations so more frequently uh to keep the the noise in

check but uh what you also get is this amount uh basically unlimited depth um of operations right so you don't have to necessarily know ahead of time how many operations you need to do so also makes sense for smart contracts because uh yeah the smart contract logic can be arbitrary right so some dabs will have longer or shorter logic so so yeah this is just I guess from a high level uh introduction to you know there are other schemes as well some of them could also be more specialized for you know AI machine learning some of them are more suitable for smart contracts so what we're building uh at Ino here is you know essentially the uh confidential computes uh layer for

existing blockchains and from a high level you know we are a l one blockchain so uh back to that previous you know slide that I mentioned uh earlier for that stack you can almost think of as similar to celesia in a way that like we are also a layer one blockchain obviously celesia is also layer one they provide uh da as a service but inco provides basically confidential computer as a service and with this we also do store uh cyberx because they are quite big uh we also do have our own consensus uh so right now we're using Comet bft which has the property of instant finality um I can probably dive a little bit deeper why this is important uh but from a high level um you actually want a system that has insta finality because

any reorg is problematic in encryption system so imagine you know I decrypt a value and now it reworks I cannot see that information right so there there could be information leakage if there is a room for rework so even within the consensus uh you know there are obviously other consens mechanism like Grandpa and and others right what com bft re offers you is instant phology which is quite convenient um the same goes for you know anything that's more optimistic uh as well which is there is this you know s at least 7day window Prof finality which is uh still risky right uh any information you decrypt that information is leaked or any

information you unwrap right so imagine a confidential balance that you unwrap it's effectively bridging so you do want this property of instant finality also the consequences could be also quite qu quite bad basically so I I know I talked a lot about F this entire time uh but really what we're building here is uh is a combination of NPC ZK and fhe so FH really is uh refocus on compute right so anything related to uh computation you do it over fhe on the client side this is where the ZK side uh we utilize ZK uh you generate ZK proof for two purposes one is you want to prove that

The Cypher text is not malformed meaning that you know the cyer text is encrypted under uh this defined public key and then you know the formats everything is correct else you know later on this will have issues right on on the compute side the second thing you're proving is as you're encrypting the pl Tex into the cyer text you also generate a z proof that you know what the PL Tex is and this is uh I'll say important in web 3 because you know you're still we're still supporting public blockchain so it is possible for someone else to you know copy paste your seph text and then try to deploy it somewhere else and decrypt it right so so this acts as a gating mechanism

so the only way for you to input cyber text into the system is to prove that you also know what the PL Tex is so this is what the ZK proof also includes uh for decryption we utilize NPC so the benefit of this is that uh in NPC essentially the private key never existed typically you would generate this through a distributed key generation system where you know every single nde operator only has a fragment of it has a key share and so for any decryption what happens is every single node does a partial decryption and you need to combine a threshold of all these decryptions to recreate the pl Tex so this is sort of like you know

high level how you know we guarantee security uh across these different components you know from the user side to the compute to the decryption um this very high level here so we'll offer the most intuitive way for people to write code so so first of all you know because we're augmenting uh EVMS you get to write these FH code within the evm uh which should be pretty intuitive for developers uh will also support the ability for FH compute on top of existing blockchain so this is where you know you could also tap into the existing user base uh but also tvl uh just quickly from a high level how this works uh you know Cypher Tex in

there are actually quite big so inle I will be in charge of storing the actual seex and what you're storing on ethereum is essentially the handle so you can think of the handle kind of like the key right so it's like a key value pair relationship so you're storing essentially a representation of the saex and if Bob sends money to Alice you are adding an encrypted amount to an encrypted balance uh so effectively you know uh what you're doing on a theorem is uh kind of like a symbolic execution where you're not actually doing fpg comput what you're Computing essentially is a representation of it right so here we just hash the operation with the hand one handle two you generate the handle

three and then inco basically is abstracted away and we'll handle the rest uh so now I guess onto the IG L part um so you know we we first uh started chatting with I layer towards uh I believe it was October November of 2023 and uh it was right after their blog post about you know um how ion layer can enable layer ones specifically Cosmos chains uh to be more secure using this idea of no dual staking um so you know I can dive a little bit deeper into you know the advantages that we see here uh but we do yeah we do have a blog post

here with I layer that earlier uh this year that came out we talking about this Concepts and I I do think you know it is sort of a interesting uh design space uh so you know especially for layer ones to benefit from you know additional security but also um yeah I guess I can talk about a little bit more here um so basically there there are two essentially there's a when when you launch a layer one typically you have this coldstar problem and it's really a problem around two points one is typically as a layer one blockchain uh new layer one blockchain your market cap is going to be smaller uh so there are two consequences with that one is because your market cap is smaller

you'll have higher volatility and because you have higher volatility typically you know you have to give out higher inflation rates of your tokens to compensate for the inventory risk that all the stickers will have right so typical you know custom chains give out 20 to 50% annual inflation rate which is you know really really high but if you can utilize this concept of dual staking which is you know effectively staking ethereum and inco um then essentially you can uh lower the inflation rate because ethereum market cap arguably is going to be more stable less volatile the second point is yeah because your market cap is also lower your security is also much lower to begin with right um so this is where you know with dual staking you could also

leverage the uh Economic Security of e if there are lot of stakers uh you can essentially increase your overall security through dual scking uh in terms of architecture this is definitely still I'll say a very open-ended uh exploration um I personally haven't quite seen many teams uh being able to know completely finish this in in terms of production ready architecture but there has definitely been a couple Explorations uh for for example like I can maybe share a little bit more about what we've considered um so you know when you run uh a cal chain um like like we do here what you could do effectively

to uh get this economic from security Economic Security from ethereum is to customize your L1 nodes to monitor all the states on ethereum and so from there you could also inject so you can basically uh observe the additional uh economy stake on eth and inject that economy stake directly into your staking module on the Comm Cosmo side and so you could either do it I'll say through some kind of voting module uh within the cosmos or maybe through something like a V extension so I'm not sure if you have heard of V extension Andi and Robbie if now that I can quickly uh explain that yeah I'm unfamiliar please uh if you don't mind yeah from a high level vot

extension is essentially the ability for every single validator to run a scar and this scar basically can collect any arbitrary information so um I think some folks we've seen around like for example skip what they do collect is like for example the price of Bitcoin ethereum and then they basically inject in Oracle pricing through the iar uh what we could do here is for example monitor the voting power or the state amount State East um on ethereum and essentially every single valuator uh during the consensus process can inject arbitrary data and you can also write cost and logic to uh basically

uh verify that you know the attested uh values are the same and from there you can change the state machine basically of Cosmo so it's just a very convenient way to uh add additional external information into a blockchain system uh VI the consensus and uh so I would say that's that's a way that we can potentially use uh for for this you know voting power uh for for calculating the new voting power basically within this entire system y yep makes sense and so this is something that Ian excuse me this is something that ethereum validators would run as a side car and then they would also have the ability to implement this

into the abss that they secure um via reaking so actually know the this is something that the the inle L1 validators will run got it yeah okay so the inco L1 uh I should have I should have uh mentioned this earlier um we are built using the cosmos SDK so we're using you know com bft for consensus uh so it is very much a later on blockchain and I think a lot of people probably in the space also don't realize that many l1s that you see today uh including like you know early polygon binance chain uh I believe Celestia is also built using Cosmos uh you know it's

quite of a flex ible and convenient stack uh and you know you know granted we are uh very focused on the evm ecosystem um to build an L1 you know Cosmo is very very flexible tool and so the V extension capability is on the cosmo side so the cost most valuators will run V extension yeah got it which is that like you know a lot of the the purpose functionality of of the inco L1 seems to be uh encryption decryption and and more cryptographic security measures and so how how should we think about the way to balance crypto cryptographic

security handling on the L1 and then cryptoeconomic security under like underneath the L1 that's a a really good question so today the reality is with fhe uh verifiable FH is quite inefficient and so there has been research uh around how do you do like a let's say like a like a snark proof of a FH compute right uh the most costly step is around boost strapping and so that research basically uh came out with a result saying that a single bootstrap takes 20 minutes to prove today and uh so we're still quite far away I say to be able to do fully verifiable F and so the second best

option here is really via consensus so one property that you have with FH that's interesting is that the compute is deterministic so this is where every single note that does the same compute can also arrive at the same conclusion and Via consensus they can disagree or agree with each other's uh answers so this is how our L1 is uh basically uh Computing and also basically agreeing on the end results now what's actually slash in that context is not necessarily the uh compute results I I guess you could do something inter subjective here uh but if you want something more objective then probably it will happen I'll say later on when you can actually do you

know some kind of ZK FHA uh yeah I'll say it will probably take some time uh but in the context of Cosmos what is slash is the concept of double signing so if the validators you know attest to different results uh then that's you can actually cat them on that and then on ethereum you could actually pass in let's say this double setting signatures and then slash them right so that's that's doable and objective today uh the F compute side I'll say we'll probably take a bit more time uh as of now so the the second best option is I'll say yeah consensus and using maybe uh like a more of a social way of slashing around inter subjective um interest subjective slashing

Concepts yep makes sense thanks see so you get like the cryptographic guarantees of ZK uh MPC and F and then you also simultaneously get this cryptoeconomic security from ethereum so like why is this not something that or from Ian layer from restake assets like why why isn't everybody building in this way where you get both levels of of security like it it seems like the Holy Grail so so yeah just to clarify so today what we're utilizing is is economic security with consensus we're not doing cryptographic security because like I said verifiable FH is still some time

away um but it is feasible and that's probably more of a long-term goal what you could prove cryptographically and SL that's slash is double signing so that's outside of the cryptography this is more of a cosmos thing that that actually does work uh what's interesting is uh yeah we we we thought about some you know potential interesting ways to uh yeah I guess without getting too much into the weeds you know some folks have also been working on this idea of like zkc uh you know how how do you prove you know Cosmo States um or verify custom States on chain on ethereum and so there there could be also slashing mechanism in that sense uh that we're still

exploring um but yeah definitely a super interesting area uh for sure cool thanks uh so yeah I guess on to the use cases so what can you do with you know FH and what we're building here um essentially you can think of an augmentation of existing EVMS and now you can build new use cases across gaming Asset Management Defi and infra that wouldn't be possible otherwise right uh couple examples so imagine building a confidential erc20 where you know Bob sends money to Alice uh the the balance here is

confidential so in solidity it's just the mapping of address to e for your balance it's an encrypted integer and when you do a confidential transfer essentially you are doing uh FH comparison you know do you have enough balance and then you also basically add a hidden amount to the recipient's balance which could be zero or the actual you know value here uh so essentially you know you are able to do conditional validation uh largic validation over encrypted data and then complete this you know confidential ERC transfer so Remy quick quick question here just like as we're putting together the pieces it you know in the long run you you'd like to do fully verifiable

FHA encryption by verifying that encryption with a ZK proof but because ZK is still kind of far off you guys are validating and or verifying the FHA computations using consensus and and cryptoeconomic security yes and then a slight new answer so we are using ZK for all the inputs so to prove that The Cypher Tex is correct but we're not using ZK for the compute because that's too inefficient so we're using consensus for the compute today and yeah long term we like to move towards more of a ZKA based um ver verification yeah okay and then you so the from what I'm gathering the core innovation here is that you guys have designed a way to use consensus for

uh the the computation of FHA and the FHA is encrypted so like the validators don't know what exactly is being computed upon this the cipher text but they don't really need to know they can still validate and verify the correctness of the FH computation without exactly exactly it's deterministic right so when Bob sends money to Alice although the values the amounts are encrypted the new sapher Tex right is going to look the same across all the validators and this is actually kind of nice because you think if you think about if you were to zoom out right like why are the blockchains transparent right they're they're transparent because you need to be able to verify

that all the transactions are done correctly right you need this transparency and this is sort of like pre fhe right uh but FH also has this property where you can verify that auto comput has been done correctly and now you can suddenly have encryption on top of blockchains that's also verifiable right so it's almost like a perfect match for blockchain technology because of this aspect that you can verify it's deterministic um so this is what we're building the The Innovation that we're building here is a blockchain layer that sits on top of existing blockchains and augments them to have the ability to have private computes so you know in I like this example

because it's uh it's also a stark contrast compared to something like 2 cash right the the difference here is when I do a esc20 transfer uh confidential es transfer the flow of funds is actually traceable so if I look on ether scan I can see that Andy has transferred Robby some money but just the amount is encrypted versus you know tornado cach you're hiding the center recipient you're breaking the L linkage so here's a very different property here because everything happens on chain with f you do have this tracebility aspect but like I mentioned earlier depending on use case right if you're visiting a medical facility you actually this is actually probably not the right Tool uh if you want to do some Anonymous donation you know you're probably better

off using ZK but if you're trying to do something like payroll or supply chain where the parties are known you just want to hide the amounts then this is fine uh this experience is very similar to venmo uh folks who live in the US you know venmo with VMO you can see your friends sending money to each other just not the amounts uh for folks in Europe you know would be something like revolute right um so so we're effectively able to replicate that experience uh I'll say in web 3 and that's sort of been a missing uh Missing experience and and like I said like a lot of these things it's not even really about you know uh it's just the practicality of at least having some confidentiality because the reality is yeah if I transfer you money even $5 on

chain immediately you know my net worth all the things I've bought in the past all the people I interact with right it's it's quite also dangerous like what if a bad actor you know gets to know you right uh your neighbor for example could be a bad actor right then you're also putting yourself at risk so moving a billion people on chain in my opinion today is uh would actually create a lot of social chaos it's very difficult to make this practical uh I would say like what we're building here if you think about like the early internets uh nothing was encrypted you had this you know HTTP essentially so you can only do academic research uh things of that nature you really needed https so you know SSL TLS to start encrypting credit cards payments and bring in businesses

to the internet right and so in a way like we see Ino as this infra that essentially enables encryption to blockchains uh but here it goes beyond payment right because it's re introducing this concept of price private states to the blockchain uh blockchain the blockchain world basically um so you know yeah like I guess like Beyond payment right like even poker it's crazy to think that we still don't have fully onch poker games in crypto and the reason why is you just can't hide data it's a bluffing game this game would just not make sense without the ability to hide data and so this is where you know we are able to generate a hidden integer that are quite useful for for games games and and such uh we build this fun game about a

year ago doing East Global uh it's a fully ACH Mafia game uh so also known as uh werewolf basically uh you know four or five players will play together and you know there will be a doctor police uh a Secret Killer and some villagers right and so you know this game is easily done uh using our Tech because everything happens on chain it's a it's a multiplayer game it's a multiplayer system uh it's very very difficult to build the same game using ZK because everything will happen offchain and you need to do coordination we talked to various teams who have tried to build this using ZKA and they just end up you know not being able to finish the game or just end up wasting a

lot of time just you know working around the the challenges and complexities uh this game was done within 24 hours because everything happens on chain it's a coordination game multiplayer game it just a lot easier basically uh one benefits that's interesting with I'll say encrypted uh compute is you have me protection by defaults right because if you're hiding the amount you want to swap out for example you're sort of masking your intent so Bots can re sandwich attack you right or they could take a risk try to sandwich attack you but you know um just an interesting property here and then for something like private voting uh again it is a multiplier uh kind of like use case so having this share layer

where everyone can cast their vote is quite convenient and so I would say one thing that people need to understand when building using FH is to how to design a r uh conditional so there's no IFL statements in FH because IFL statements that you have in regular code does leak information about the underlying value right so depending on the branch that you execute you actually reveal what the underlying information is so there's a clever way to do this over FH using a multiplexer so quickly I can walk over a example so imagine we're building Pride voting the encrypted Choice can be zero or one and so the

first thing you do is you can compare if this encrypted value one sorry if the encrypted choice is equal to one and what you get is an encrypted Boolean and so what this really means is when you pass in this encrypted Boolean into this CMO which is a conditional multiplexor function it will return the encrypted V counts if the encrypted value is true but zero if it's false so it's it is a conditional over encrypted data uh kind of like a turnery in JavaScript and then you do the same thing for against where you return zero if the Inc value was true and then the V count if it's false so one of these values what actually be the encrypted VC count the other one will be zero right you're just doing the reverse and so you add both of these

encrypted values to their respective tties and so again from the outet perspective because everything is encrypted you can't really tell you know if the US user voted for uh in favor or against because you just end up doing talles uh over encrypted data basically um I that's probably the slight Nuance that most people have to learn when building using F here um yep so we are compatible with existing ethereum tooling uh We've hosted quite a bit of hackathons already and you know one of the bigger feedback or positive feedback is that people can start building very quickly and we are supporting a pretty wide

array of operations and you know comparisons uh so it's really you know I'll would say a green field opportunity for people to build novel use cases that wouldn't be possible otherwise and uh yeah it's really just about uh identifying new problems to solve unleashing your creativity and uh you know at inco we are very passionate and excited about you know another use cases so definitely come talk to us if you have any ideas we're happy to you know help you refine your ideas provide feedback and uh yeah some of our docs uh you can check out our docs we are uh making some significant uh updates pretty soon so the docs might change uh there are some you know mini games that you can play around uh with arcade.in

co.org uh definitely reach us out at you know on on telegram but also email and we're pretty active on Discord as well uh so definitely you know uh don't be shy and you know come talk to us and uh and yeah this uh sort of concludes the the overall introduction here awesome yeah Remy I mean really great conversation and presentation today I think they this is the first of its kind on the roll up so excited to get this out and um thank you for joining today it's been great yeah absolutely and uh yeah thank you having for having me cheers man