Zk validation module for contract accounts - Eugenio Reggianini

EthPrague 2025 · May 2025 · 19:27

Eugenio Reggianini presents a zk validation module for contract accounts that combines account abstraction with privacy-preserving authorization. The module extends existing account abstraction frameworks with on-chain mechanisms for business logic authorization, validating verifiable off-chain inputs from multiple data sources using zero-knowledge proofs. At EthPrague he illustrates use cases in on-chain voting, trading and real-world assets, aimed at enterprise and compliance needs on Ethereum.

Speakers

Topics

From EthPrague 2025, hosted by ETHPrague.

Transcript

[Music] All right. All right. So, hi everyone. Um, now we are going to talk about something which is uh cool and fancy but sometime also quite a bit burdensome. So, how to make privacy easy going with development and usage. So, a little bit of background. Is it working here? Maybe. Uh okay, let's be practical. Okay. Um let's start from what's happening currently.

No, sorry for that. Okay. Why is it not working? Okay, let's retry. So, let's start from the market. Um, we see why why Ethereum should care about uh modular privacy. Well, we see that Ethereum is probably dominating the RWA space by numbers. A lot of institutions are going into testing stable coin issuance, depth issuance, share issuance and so on. At the same

time, privacy has been expressed as one of the core feature for Ethereum. Uh we have seen building of solution for goods like privacy pool uh trying to create uh a more compliance way of running the operations on on Ethereum. At the same time, uh, Ethereum h holds the widespread adoption of community development with many proposals from many many years which of course provide a history in the in protocols development that others won't won't offer at the moment.

Um, I'm keeping having issue with the presentation. I'm sorry. Oh, it's okay. So in the market we generally have um a current friction which is on one side user wants to do more things on chain in the same block space. This uh requires multiple execution and this is what pro has led for instance proposal like EAP72 to get uh adopted into into pectra. At the same time uh the enterprise development requires a higher level of compliance for the operations whether is for from simply data

management perspective or whether it requires also additional um additional regulation like for example in the ESG space or the financial space. So um the the background about this research was trying to find a way to offer a balance between these two tension factors creating an element that u uh can allow accounts to work in an efficient way at the same time taking care about how the data is originated processed uh throughout the use case.

So with a modular approach we we see the trend of building use cases through smart contracts a little bit like a Lego where from rational perspective the account logic is separated between the validation and the execution but also at the same time you can uh allow the the checking of different function before the execution on chain. At the same time allocating specific crypto cryptographic features to specific model, we can combine the different function of different cryptographic techniques to allow a more compliant data

management. Um so what are we talking about in terms of reference standards? Um when we are taking care about building compliance solution, we need to take care about essentially three things. Trust, privacy and UX. um trust uh meaning identity and in the in in this context we see of course a um a specific reference to ERC 7812 which offer the opportunity of anchoring an onchain registry with uh by ZK at onchain attestation. Um the second pillar we have here is the account the

the contact account setup which of course um um born in um um with the original 437 uh proposal has evolved into a modular setting which also provide the capability that capability of calling different functions uh before executing and um and the third pillar is uh actually what I uh a compliance clue because actually allows a standardized way to check smart contract signature which in the the context whether it's coming from the contract account or for a user EOA it's very important to streamline the process

overall. So from from user perspective that's to recall a pre uh a previous uh a previous statement we are offering three main core identity through onchain attestation identity on chain that can be linked also to offchain data repository um national ids offchain governmental um digital credentials uh privacy uh by zero knowledge technology which compress or and minimize the data which is posted on chain or through homorphic encryption which actually uh privately run uh the specific uh use case for the user and

then user experience with uh allowing essentially batching of diff of different execution in one uh single time. Why user need this? Uh because essentially they can do many things with this within the same um user experience time. the because uh why because enterprise offer um may offer great benefits to that uh in of um compliance with data management rules, compliance with uh potential financial requirements. um not

only uh in the on boarding of the user but also in in terms of uh allowing secondary transfer of asset allowing u um burning of new asset out of a specific uh onchain call or a minting a specific um and and from that perspective these of course provide an overall compliance of not only the the data origination but also So the process overall at least in the execution layer. Um this project uh was uh built by a couple of researcher across different communities. Uh I was part of

that uh of that group of researcher and uh we are currently trying to define a set of use case which could fit that uh account infrastructure and see uh whether an opportunity for to further implement the development overall. So but before that let's try to understand how a potential user flow would look like. Um so the user the user flow start with the user having his own um off-chain credential uh and using that ofchain credential to self-p proof an onchain attestation about the ownership of that

uh EOA and um with that authentication the user is allowed to compute uh a specific request in form of messages uh through an application um infrastructure which can require the minting or trading of different uh of different assets. Uh and this message will be defined as a user operation which will then fall into a meool and then will trigger the smart contract account to uh to run the validation loop to generate the nons and estimating the gas fees before actually uh make a proper making a proper verification of

uh the zero knowledge proof related to the user signature and run uh a private computation in com for executing the user operations on chain that will be done finally by the contract entry point in that context uh which may be some of the use case that we envision having more potential. Um the first one is to run a fully confidential voting within Dows. Uh in this context we have many Dows which require u an anti-B solution to essentially determine that a member of the DAO was eligible to vote

and may find useful running private computation over the voting balance that each user has. So in that context onchain attestation can be used as a way to reference the DAO membership of the user and uh uh voting uh onchain governance framework can run over FHAVM to uh execute through the entry point the different proposal which meet the threshold once it has aggregated all the voting power of of the users who vote.

A second use case um that we see very interesting is we call it regulatory compliance for DeFi trading. Defi, we call it DeFi trading because this infrastructure require an EOA to authenticate the user itself and of course a trading account which takes leverage of of batching capability by by contract accounts and executes the trading u um the different trading requirements requested by the user on chain. In this context, for instance, the credential can be user can be used not only to prove the u membership of the user to a specific trading app but also to uh certify specific compliance

requirement which are needed for trading in some in some environments. Um and the big impact that we see from that use case is that in this context uh we again we find a balance between complying with regulation and data management and executing. The third solution that we see potentially a little bit more into the manufacturing and enterprise space is more related to uh supply chain and procurement process. So in this context we use uh a onchain commitment by ZK proof to uh determine the um proof of correctness of different supply chain

processes executed by different parties. And then we use this buyer account to essentially select uh from a private uh synonymous bidding the one which is selected with the best offer and execute the awards to that winding in a private state through uh through a phem. So in that context we create an infrastructure that protect sensitive data and uh still preserving a public competitive environment where everyone can compete with the same rules.

So again sorry um in this in the last slide I wanted to show you and a short cap about the the presentation. Essentially what we are combining here uh we are combining here privacy preserving features and um um new into a new way of uh constructing account infrastructure. Why we believe that is so powerful? Because including these privacy features into a modular approach, we can actually combine and tailor made the different function that are called by the model each time and for each user request or need. This can

allow to build an infrastructure which can be uh privacy preserving but yet flexible to address different stakeholder needs retail investor and institutional investors uh uh small supplier and big buyers. This is just to to give an example. So that's the reason why we leave is so powerful. How is possible? by these three uh main features. Contract accounts which aggregates uh uh by user operation different execution in the same block.

zero knowledge cryptography which compress the amount of data which is uh stored on chain complying with data minimization provided by GDPR and providing a first source of sodonymity in a public network and fullomorphic encryption which actually allow that user operation that has been generated by uh um after authenticating the onchain attestation in a private environment while still preserving a public network. So that's all. Uh I I leave it up to if you have questions. Uh

so if you guys have any questions, so feel free to ask. Okay, there's one. Just a quick one. Yeah. Uh where we are now? We are actually um we are a team of five people. Uh three developers, myself and um in the project development phase. Yeah, we are um let's say we are exited the research phase. We are we have started building this um with our own support and um we are actually looking for

funding and grants to support uh this in different ecosystem because we actually believe that this is a great tool that can help Ethereum but also different layer 2 clients to create a a set of practice that at account level um make uh the inter make the services much more compliant still in interoperable in an interoperable way. So yeah, we are actually in um I think that slide was very helpful. I'm sorry with the pointer is a bit difficult but uh we are actually in the middle between the research and the development phase. We just started the development. We have

some discussion for for instance uh confidential voting and trading and we are scoping this dist this third use case at the same time. Uh but we see also trends this more broadly. U many L2 coming up with proposal of uh fullyomorphic EVM or ERC20 proposal. So on the this combined with the zero knowledge narcification process of execution layer in Ethereum like there are different pieces of the puzzle that are

coming together which says that okay this is something that likely is going to happen uh sometime in the future. But can you how far can you go with current state of Ethereum without further update without further? No, this is something that is is achievable right now. This is something which is achievable right now. uh it can be farther scale with I believe improvements overall but this is something that is uh consider has been considered based on uh the stock which is now so anyone else with a question feel free

to ask please don't be shy okay so if no one is having any questions so I have one question. So like having different hats and different kind of skills. So how exactly it is helping you throughout your journey and apart from that what are the three key takeaways that you can tell us from these various roles? Well, I would say that well, first of all, I'm personally I'm very curious. So, I like to study and research a lot and in the in this context I'm really trying to get the people who do the development together

and try to help them to within the focus of a specific use case or trying to understand um which kind of solution may fit the specific needs to solve to that needs to be solved. So it's a little bit more project management uh for for for the time because I'm not uh I don't have an engineering background. Um but um yeah I think the main three takeaways that I can then I can tell it's probably related to the last slide. So uh this these are capabilities that in general I I and together we see uh to be needed uh for onchain services in the future and

we wanted to try to conglomerate those into a one solution that can be built in the pro in the moment time and so in that context offering innovation to the community. Okay. Thanks a lot and I wish you a great success in your journey. Thank you. [Music]