Submind YouTube summaries
Thumbnail for Zero Knowledge Verification Technical Workshop

Zero Knowledge Verification Technical Workshop

Watch on YouTube

Video summary

The Zero Knowledge Verification Technical Workshop, held under Kadano Vision 2026, focused on advancing scalability, postquantum security, and Layer 2 execution through evidence-based research methodologies developed by IOG. The session aimed to transition from fundamental research to applied feasibility, targeting implementation readiness by early 2027. Three key technical tracks were presented: a Groth16 wrapper toolkit designed to convert proofs over the BN254 curve into BLS12-381 compatible formats native to Cardano, thereby enabling existing ZKVMs like RiscZero and SP1 to be verified on-chain without costly contract reimplementations; an implementation of Plonk3 for postquantum security that utilizes a hash-based architecture to avoid elliptic curve pairings, though analysis revealed standard proofs are currently too large for single transactions requiring strategies like splitting across multiple transactions or using off-chain channels; and a Halo2 cost analysis tool that allows developers to simulate verifier costs before implementation, with future improvements in modular exponentiation expected to further reduce expenses. Beyond specific technical implementations, the workshop explored broader applications of Zero Knowledge technology, particularly in verifying AI model correctness and aggregating multiple unproofs into single proofs through recursion to amortize costs. The team clarified that while various tools were considered, the selected solutions offered high value relative to low effort, noting that direct modifications to ZKVMs for native BLS support were less urgent as other teams could address them. Discussions also touched upon the feasibility of native BLS support in RiscZero, which remains challenging due to engineering scope, and confirmed that lattice-based proving systems are still in early research stages. Concerns regarding trusted setups were addressed by clarifying their unnecessary nature for the wrapper solution, ensuring the process remains fully trustless and reliant on cryptographic validation rather than a trusted execution environment. The session concluded with a consensus among attendees to proceed with implementing this work within the next treasury cycle, pending specific tool or guidance requests collected via a post-call questionnaire. Speakers emphasized that while direct engineering changes to ZKVMs were not the immediate priority, the focus remained on delivering practical solutions that leverage existing cryptographic advancements efficiently. The workshop ended with gratitude expressed to the ARC team and presenters Raphael, Jia, and Demetra for their clear and insightful presentations, leaving participants with a comprehensive understanding of the current landscape and future directions for Zero Knowledge verification on Cardano.
Read the full video transcript
Great. So, um yeah, welcome everyone to the uh zero knowledge verification technical workshop. Um this is the first technical workshop we're running under Kadano Vision 26. Um so, uh yeah, we've had a we've had a really good response to it. Uh and we've got some some interesting um presentations uh to share with you today. Um my name is Fergie Miller. For those of you who don't know me, I'm the director of research partnerships here at um at Input Output Group. And uh I'm just going to set the scene by just sort of providing a bit of context around Kadano vision 2026 and then I'll hand over to my colleague Jesus who will introduce the speakers. Um the aim for today is to have a technical discussion around around this this program of work uh particularly around uh you know the team will show that talk you through the work that that they've been undertaking. Um uh but we're particularly interested in having a a discussion moving into a roundt discussion around product product requirements and specifications and then uh as a sort of first part and then um as a sort of second part sort of road mapping and implementation. Uh so I know we've got a number of community stakeholders um on the call today. Um some notable ecosystem labs as well. So, so we invite you to to come forward with questions. Um, I think I think the presentation is actually three presentations. So, I think the the respective um team member will present and then we'll have some discussions at the end of each of the three um presentations uh and and then move into a a general Q&A. Um so just to set this Jean slightly um uh so this sits under um Kadano vision 26 which which itself has three um strategic focus areas um human- centered scalability and and postquantum security. Uh and you can see that the um I've actually highlighted this on the next slide, but you can see that the layer 2 and zero knowledge execution is a key part of our of our scalability um uh theme within within the the program of work for this year. Um, for those of you who aren't fully familiar with with the shape of the the IU proposal, it's broken down into six technical work packages um within which each sits a couple of programs or or focus areas and then we actually have a seventh um delivery and and and dissemination and partnerships work package as well. Um so I just wanted to provide everyone with an overview of of um of that body of work and our approach approach for the year. Uh and I think I think the other thing to to note is is is our evidence-based methodology at at IOG. So we have a research team that that focuses on fundamental research uh and that quite often culminates in a paper but increasingly a sort of more practical technical report. Um we then um uh will then prioritize a stream and hand it over to an applied research team to undertake a technical feasibility. Um so that includes formal analysis um prototyping simulations and specifications uh uh and at the end of that work all being well um that that stream should then be implementation ready. And what I mean by that is ready to hand over to an engineering team to then implement um through to through through to through to mainet in in most instances. Uh so so this is sort of the the technology readiness um uh maturation that that we approach. Uh and you can see here that that the the the team today um our applied research team has been working at a sort of early midtl 3 to five um with the aim of getting this work um prepared for for implementation um early in 2027. Um we do integrate with uh Kadano um uh sort of ecosystem uh uh or community sort of platforms. So we're increasingly publishing Kadano problems statements at sort of TL 23 and then Kadano improvement proposals um at sort of TRL5. So those are sort of the stagegate um uh opportunities to engage and and with the community more formally. Um so so anyway I just wanted to to to sort of um provide that background context and then and then you know the purpose of the call today. So we we have a call for partners out. We're looking for for organizations to to um contribute both to specifications uh and requirements when prototyping and and and you know increasingly earlier than that when we're doing the research and then and then we obviously have have um uh the road mapping and and implementation handover uh point as well. So we got we got three presentations um uh today on on Grath 16, Halo 2 and and Plonky 3. So um yeah and and and we're slightly learning as we go um it being the first one, but the aim is to run a number of these this summer and then and then uh announce a full program of of technical workshops from September onwards through to the end of the year. Um so anyway, that's that's enough from me. Jesus, I I'll hand over to you to um sort of introduce the speakers as it were. >> Sure. Thank you, Fergie. I will not take much time. So um like Fergie said, the work that the team has done focuses on improving Cardano's knowledge capabilities and uh the team here present is Dimitro who has been leading the stream as a technical architect. Yeah. and cryptographer as well and GLU and Rafael Toledo who are applied cryptographers in the arc team and yeah that's it done a great work I'm sure you you will appreciate it is yours to meet >> thanks Jesus um yep hi everyone um happy to be here today and to present some of the work that um our team has been doing um recently um As Hessa said um I won't be presenting alone and also um G and Rafael will also join. We were we were working on somewhat different topics but all related to K verification on Cardano. So um I will probably start with a general overview of uh all the work that we were uh doing and then each of us will present uh its own part. Um yeah so from the start our goal was kind of open-ended. We wanted to explore what we could do to make ZK applications more accessible and more practical on Cardano. Um there is already a lot of work that has been done in in this direction by other teams. Uh but we wanted to explore some um new opportunities. So we did some research and find out um what could be the most useful and eventually settled on the three items that we think are important. Uh so these are these three uh topics. The first one is the wrapper for the gross 16 snark proofs. Uh the situation today is that a lot of the existing tooling in the blockchain space is built around gross 16 proven system and not only over gross 16 also over um BN254 elliptic that is used um underneath which means that it cannot be directly used on Cardano because Cardano does not support uh BN254 arithmetics. So the idea was to develop uh some sort of converter of these incompatible gross 16bn proofs into Cardano compatible BLS proofs and this way we could uh connect a large body of um existing projects and toolkits um to our ecosystem. So we saw this as a high leverage and relatively loweffort work that is um worth doing. Uh the second track is uh about exploring postquantum secure province systems in particular. Uh we were looking into plonis restart and how feasible would it be to to use it directly on Cardano. Um this is closely related with the broader postquantum migration effort that IOG is uh undertaking now. Um for example uh postquantum secure provenence system would be needed um for accounts migration or it could be useful for signatures aggregation or um other stuff as well. And the third track uh is a deeper analysis of the Halo to onchain verifier. Uh we were already building some tooling for Halo 2 on Cardano. So um this is kind of another step to support those developments. And from from our experience, we knew that verifying Halo to onchain could can get um expensive depending on how the circuit is structured. So the idea was to dig into onchain cost structure and and provide some insights on how to build circuits that are efficient to to verify onchain. So yeah, so these are the three tracks we focused on and uh I I personally worked on the first um and um uh so I will now um dig more deeply into the first uh track and then later my colleagues will um deep uh dig more into the the other one. Um yeah so uh so it was about wrapping gross 16b proofs into cardano compatible proofs um I guess many of you know what snarks are so I'll not go into all into details of that just for completeness we'll remind that it stands for saxin non-interactive argument of knowledge and to put it simple it's it's a way to produce kind of a short proof that some computation was done correctly short enough that anyone can check it quickly without redoing the work or or seeing the old list of original inputs. An example could be for instance uh proving the current state of a blockchain without providing like all the blocks and reverifying every transaction and u zk space has really thrived over the last years and and many different systems uh appeared uh each with its own trade-offs and among them uh gross 16 became arguably uh the most popular for blockchains because it it its proofs are small and and cheap to verify. And this is what this is exactly what we want to to to have on the blockchain where the onchain computations are uh limited and u expensive. Um gross 16 relies on uh elliptic curve cryptography and the it can be instantiated over different curves uh for example BN254 or pls 12381 or other alternatives. And uh if you look uh across the ZK space um we we may notice that a lot of the tooling has converged on um gross 16 proofs over the BN54 curve. That's largely because for a long time uh BN was uh kind of the only viable option on Ethereum and and so much of the ecosystem grew around it. Um Cardano on the other hand support a different curve uh BLS 12381 which is considered to be more secure. Uh so kind of uh the problem is that even though the proving system is the same, Cardano cannot efficiently verify gross 16 proofs created over BN254 curve because it just doesn't have necessary built-ins and necessary native support for it and uh reimplementing them directly in a in in a in a contract would be just uh too expensive. So the solution could be uh to recursively kind of wrap u this bnb based proof inside a BLS based proof. So you can think of it essentially as a some sort of a translator. It takes any gross 16bn uh BN proof and and converts it into one that Cardano can verify natively on chain. Why is that useful? because it connects Cardano to to a large body of work that already exists out there and and to the already deployed apps. Especially it was interesting to bring to the Cardano ecosystem uh ZKVMs like risk zero and SP1 that um at the moment produce gross 16b proofs as as a sax output. So, so we built that idea into actual toolkit and here is uh the the general architecture in one picture at the top uh uh at the top are the incoming proofs from uh different source systems. So today we support risk zero and SP1. Uh they they both produce a gross 16 overb and each source has a small plug-in whose job is to kind of normalize the uh the proof from from that system into one canonical form which is then processed by the wrapping core which does the this recursive step reproving over the uh BLS curve that is um native to Cardono. And this this could be done using a uh different engines. Uh today we support GNARC uh that provides out of the box two proven systems for for wrapping gross 16 and plunk. And and finally the tool to toolkit also um allows to generate the corresponding I can verifier for you so that you can verify this translated proof on chain on Cardano. Um, one of the one of the goals, one of our goals was ease of use so that this additional conversion step could be integrated into a workflow that developer already has. And and here is like a simple example how this actually could look like in case of risk zero. The idea is that you just extend an ordinary risk zero program with a few lines. Um uh first the plug-in turns the native receipt from from risk zero into canonical form and then the wrapping engine kind of reproves it over BLS and uh then finally you could also uh generate I can code that verifies this proof with um with all the unit tests for your particular source system and and then basically the idea is that you could you could use that code to to integrate into your >> [clears throat] >> um particular application. >> Um yeah uh I won't go through all the details here but there are like full runnable examples in the repo that show um kind of the full workflow on how to use this um toolkit for the wrapping engine itself. Today we use Garch. choose it because it's very efficient and well-maintained um library and it gives us two proven systems out of the box um cross 16 and plunk each with its own uh pros and cons. uh cross 16 is the fastest and and produces uh smallest proofs around 5 seconds on um ordinary laptop but it requires a trusted setup for the for this wrapper circuit uh which is quite a delicate procedure and plunk avoids this trusted setup. So we can reuse like already existing one but it's roughly 10 times slower to prove. Um um all in all both produce proofs that fit comfortably within Cardano onchain budget. The difference is mostly in uh in in the offchain proving time. Um so what this toolkit could be useful for uh it's still a prototype but it's already good for fast experimentation in the sense that you can take a ZKVM proof or ZKVM program and quickly turn it into something that can be verified onchain on Cardano. Uh what does this unlock? uh a bunch of different applications that are based on ZKVMs and not only as I said we could wrap any gross 16bn proof. Uh for example an interesting use case could be to verify um an Ethereum or Bitcoin state on Cardano. Um one example that we already have in the repository is uh proving ERC20 balance uh of an Ethereum account. [snorts] It's uh implemented with the help of risk zero steel library and under the hood it allows to prove real EVM execution to extract the the balance from from committed a serum state. It's something that would be very hard to implement directly on in Cardano smart contract without using ZK proofs. So uh we we can do really powerful things using uh ZKVMs. uh we could also for instance deploy a SP1 based HOS client that proves kind of full Ethereum consensus in ZK and and verify that on Cardano as well. In general um risk zero and SP1 ecosystem they already provide kind of a lot of uh useful libraries that we can just use and then connect them to Cardano. So it it really gives a developer a very powerful tool to build all sorts of um ZK applications and uh yeah I'll probably stop here um if if there are any questions I would love to answer or we can move to the next speaker. Uh hi Mitra uh thanks for sharing this interesting uh architecture. Uh my question is about this uh uh wrapper that transform one uh proof to another proof. Uh I know that there is a well-known issue that and you mentioned it about the uh trusted environment where this code execute uh executed. Uh do we have any solutions for this? Because [snorts] as far as I know in uh our department we also work on kind of verifiable credentials and usually when we transform uh one uh credential which is signature or also some kind of zero knowledge proof to another uh form of zero knowledge proof. we uh lose kind of region signature and uh some important information. So uh my question is uh what is the right way from your point of view to build the trusted chain that the final verifier can trust all these uh transformations. Um actually there is no trusted component in this transformation. It's fully trustless and fully transparent. Um and it it's basically um verified by the cryptography side that anything was was uh uh compromised during this pipeline. And but there is no uh any trusted component in this workflow. We just convert one proof to another one. >> Did I understand your question correctly? >> Uh probably yes. Uh in my case, the final party that is going to validate uh verify the final proof uh should be um should somehow check the integrity of this transformation because uh they might be um configured to trust only the uh original proof that you accept. as the input for the wrapper. >> Yeah. But I guess this is the whole point of this wrapper is that the wrapper proof actually proves that there exist another external proof and that that proof is also valid. This is kind of the claim that the wrapper doing and this is enforced by the cryptography. Got it. Thank you. Raphael did you have a question as well? >> Uh no it was just about this. So the there would be a tiny TR component which would be in the P of to if you choose the core 16 but not the hello 2 verifier from the from the wrapper but the Mitro has written a has worked on a generic wrapper and so we only need to generate the power of once for for this wrapper and it can be used actually for for many applications. So the trust would be quite limited then you also have the trust of the CRS if you are wrapping a core 16 proof in that 16 proof of the of your inner application let's say but the verification key would be exposed the proof does not really need to be exposed as mutual said it's it's quite big we can just be make it part of the witness and just the security of stacks tell you that I know of a proof that uh satisfies this BK uh this public input and so on so this should be enough uh but so the the only trust components you you might have would be for the pose of to and one is the original application and the other it's only for the wrapper if you use core 16 and it can be shared for by many operations that's that's all I wanted to add >> um there is another uh interesting question in in the comments why why not to provide uh for example in risk zero support for pls 12 381 one elliptic curve. And yep, let me be honest. This is um uh this would be more efficient if we directly modify risk zero and introduce support for BLS. Uh but there are two uh two two issues not issues but two comments on that. First, it's uh it's uh bigger engineering work. So you would need to modify risk zero directly. Um and second it's not always possible. We also consider use cases where you need to to to to convert and verify on Cardano proofs that already exists. So um yeah it might not always be possible depending on your use case. Uh yes Paul. Uh yeah, if I can uh because um I mean navally looking at this uh it would be just you know uh interfacing properly elliptic curves uh operations right you know pairing uh uh I mean multiplication things like that and uh I mean so naively it would you could add any support for analytic right there I mean just nly looking at this so >> I wondered I that that that's why this question. >> Yeah. Yeah. But I I see this work as complimentary. So we we target kind of different use cases. Um yeah, as I said uh it's kind of a different task and I know some some people are working on that. Um yeah and u in general it would be more efficient if if we produce pls proof directly. Yeah, maybe one further clarification for Remo and then and then we can move on to the next next presentation. Uh, okay. I think I think yeah. So, so RML's asking uh why not introduce the necessary built-ins in Pluto's core? >> Oh, it's in general very difficult especially if we introduce the new cryptography. So I'm not sure there is um agreement to introduce new elliptic curve. It will be a very huge effort. Um okay great. So so um thank you Demetri. Let's in in the interest of time um let's um move on to the next uh presentation and you know um we can we can always come back uh to this uh once we once we've finished the the presentations if there are more questions. Uh so I'm going to walk you through the visibility study we did on verifying the uh plank key3 proof in pr next uh why do we choose plank3 plank 3 is a production grade stack framework it's a general toolkit not a specific scheme it powers succeed SP1 SP1 is a dominant zig virtual machine uh there are light clients, bridges, roll apps running on top of it. Uh, PL3 implements hash based stacks. These are the most mature wellstied proving system. Uh, it only uses hash functions and small field arithmetics. There is no uh curves or pairing. So, it's a postquantum secure. Uh, this is beneficial for Cardano's postquantum transition plan. As we all know the hashbased postquantum signatures are huge in size uh typically 10 to 50 kilobytes. Uh we could use a postquantum zk proving system like plunky 3 to aggregate n signatures into a single proof. So it reduces the storage size and reduces the verification cost. Also we could use plank history to prove the ownership of the legacy UTXOs. Uh once Cardano transit away from the ECC signatures, the old UTXO cannot be spent anymore, but uh the owner can still claim them back by generating a Z proof uh to show they know the underlying pre-image seed that can derive the correct public key. Uh PL3's implementation is very modular and flexible. uh it supports all the small fields, baby bear, koala bear, goldilocks and the different hash functions, commitment schemes, mostly firebased ones. Uh it's very pluggable. These components can be swapped individually depending on what you want for the applications. Uh next one. So what did we build? We implemented a prov concept for the ST verifier in icon contract. Uh we generate a PL3 proof convert it into a icon contract call uh to call the stack verifier to check if the proof is valid or not. It also gives information about the amount of uh memory and the CPU that consumes. Uh inside the stack verifier we implemented uh small fields arithmetics and their extension fields. Uh the pro shape check verifies if the proof has the right number of uh fire rounds, number of parties, the trees w and portion chunks. Uh familia transcript hashes all the commitments from the proof uh in a fixed order to generate random challenges. uh these challenges will be used in the following PCS verify and the conraint verify. So this is a component that makes the proof non-interactive. Uh PCS verify fold the five layers to check if the batch polomia is indeed a low degree polomia. Uh so the n polomials are batched together into a single polomia using the random challenges. So we only need to do one fry instead of n fry. uh conjify checks if the circuits conjints are all satisfied. These conjints are also represented as polomials. Uh next one stack proof is huge in size hundreds of kilobytes and it burns a huge amount of memory and CPU to verify improvements. Uh but there are some parameters we could twist to reduce the proof size. Uh it's a trade-off. Uh for example, uh we have this factor called lock blow up. Uh when lock blow up is set to two, we need at least 83 query proofs to reach about 93 bit of security. Uh because we have a lot of query proofs here. So uh we have a huge proof 444 kilobytes. verify this prov consumes 681 million memory and 233 billion CPU. Uh but if we increase the log blow up to eight then we only need 22 query proofs to reach the same 93 bit of security and this gives us a smaller proof 186 kilobytes. uh the memory uh cost is reduced to 220 million and CPU reduced to 75 billion. Uh but we cannot uh continue to increase the log bl. The reason being the it significantly affect the proving time. Uh the proving time grows exponentially and the circuit capacity shrinks. The summation of the log blow up and the circuit degree is upper bound by the two oicity of the field. Uh if we use too much in log blow up then we won't have much left for circuit degree. Uh which means we cannot prove any meaningful computations inside the circuit. Also the commun sound will fall if log grow up increases. At some point this Sunday speeds fall force too much uh we won't be able to reach the security target we want. So the highest lo we can have here is eight. But this proof it's a smaller proof but it's still big compared to the kadano's single transaction limit. A single transaction can only have up to 16 kilobytes in size. Uh 16.5 million memory and 10 billion CPU in computation. Uh so what can we do? Next one. And we have a few options. One potential solution is to split the proof of application across multiple transactions. Uh the good thing about the stack proof is that uh this query proofs can be verified individually. Uh so each query proof can be verified uh individually and the ET query proof for verification costs relatively low amount of memory and the CPU. Uh for example, we have here um 9.47 million for memory and 3.23 billion for CPU. And this is small enough to fit in a single transaction. The rest of the uh part of the proof verification is the shared work uh including the transcript, hashes, computation, PCS setup and the circuit con verification. Uh this part cost 11.8 million memory and 4.1 billion CPU. So this is also small enough to fit in a single transaction. uh so we could split the proof application naturally by the uh queries and it won't introduce too much overhead. In total we should be able to verify the full proof with around uh 23 transactions. Uh if this is still too big then we are also considering other options like uh hydro. Uh we could use hydro to open an offchain communication channel with increased transaction budget so we can verify the proof with less transactions. Uh we are also considering using the optimistic verification to delay or avoid the verification of the four proof. uh anyone can challenge in the validity of the proof with a single transaction. They can either challenge in the single query proof verification or they can challenge in the shared part of the proof verification. Uh so that's all from me. Thanks J. So I think there's one question from Julian in the in the chat. Um, is it possible to cut traces to make the verifier fit into 16 kilobytes? >> Uh, what do you mean cut traces? >> Julian, do you want to expand on that? Um, Whilst we wait for Julian, I mean, you can um take off your mic or use use the uh the chat, Julian. Um uh and whilst we wait for that, does anyone else have any questions for Jia? Um so chunk the AIR traces. Uh so here we um we are experimenting the circuits with just a a very simple uh Fibonacci circuit. We only have two trace. The trace wise trace w is only two. The proof size is big because of this query proofs. It has the marker commitments and the uh open values the query u inside the query proofs. >> Thanks. Yeah, very clear. >> Okay, great. Any other questions? Okay. Well, let's let's move on to the third presentation. Thank you. Thank you, J. >> Yeah, thanks a lot. Uh we turn off the fan. Sorry, it's really hot here. >> Well, at least we're not used to it in the UK. Uh so, I'm Rafael and I will present my work on hello to trade cost analysis. Uh can I have the next slide, please? So one of the main issue of uh ZK is that it's quite hard to implement and when you want to create a an application that uses ZK and you want to verify it on chain it's it's a bit it's even more difficult because right now you have to implement the secret which is very difficult to then have the verifier implement the verifier to see if it's actually worth it or too costly. So that's why uh my project was actually to work on uh a cost analysis of the verifier onchain to see uh to give the opportunity of developers to see if uh this case is worthwhile for their application but also for uh developers to to know how to implement the secret what uh chips component primitive they should or should not use uh so it's uh no way to to close uh one example that I found quite quite funny uh which is an article from bits from a few weeks ago. Uh the article was titled with bit Google zero dish proof of quantum analysis. So for context they implemented uh a proof that they uh hacked the discrete log with a postquantum protocol uh with specific parameters and with that much uh constraints, powers, gates, cubits and so on and trail of bits uh beat Google at it not by finding actually a better protocol but because Google had uh written a unome secret and [snorts] so they they created a proof that is legitimate with better parasites which corresponds to nothing of course uh but that is to show that even Google can't easily write secrets and so implementing ZK is hard and so uh if you have to do this before to know what is the cost of the verifier it is actually very difficult uh so my goal was to to implement a simple and usable onchain ver cost estimator for the verifier uh so I can either show you a slide or I can actually show you live. Uh then I show live. Yep. Uh I'll try. Uh so if this works. Yes. So uh there are two components to to my work. There's a CLI. Uh the repository is public. It's called CL2 verifier gen. Uh you just have that to run uh the binaries. So there are several binaries but the most important one is the estimate uh to then uh implement uh a cost of the verifier. So if you know what uh hello to clunk does you will know what's an advice fire a fix wire and so on and so you can basically set what's the architecture of your secret and you will get some uh some numbers but this is quite tricky to to look in details and I had to make a few assumptions because there more parameters than that so actually what I did on top of that is implement directly chips that you may use. So imagine that I have a secret and I want to use shadow 56. I just have to use this meter with shadow uh sorry wrong one shadow 56 is here. I just have to imple to run this command with shadow 56 the right number of public inputs and I got the result. This is CLI uh it's nice but you have to clone the repo uh build it implement it and so on. So uh I built u a website for the repository which is public uh on which you have the cost estimator uh so if you go on estimator you will have a interactive version of the estimator which wasn't close. So for instance I talked about using SH 256. You will see that the pro the VK size proof size uh number of inputs and so on vary to give you the total uh size in bytes. You have some breakdown if you want to understand more what uh where these come from and you have more importantly uh the operations that are being used for verifying this onchain. So for in so the main course is of course the pairing and then the point operations. So you can see here that I'm using uh 11 uh point exponentiation or multiplication depends on which uh common you are using uh 400 or so scalar addition 600 and so on scalar multiplication uh so it is quite easy uh and you have a very simple view to see what cost you can expect this of course is generic you would have to use a cost table function of Cardano to see what would be the me CPU and so But you could change for any u uh benchmarks, libraries and so on. So it is actually quite neat. It can also not be used for online cost. Uh if you want to have some information about what chip to use, you can go on the chip uh uh tab. Uh and you will see that chips have dependencies with other chips. uh and you will be able to see exactly what is the minimum proof and verification key size you would expect if you were to use this chip on its own as well as uh the operations. If you want to learn a bit more about uh about the Halo 2 verifier, you have a page here explaining uh the main concepts. Uh you have also a page training how the the numbers you have uh seen are uh computed and uh if you want to create your own chip which uh might be difficult but it's quite for me you have a page on how to contribute to this repository by creating a chip on uh hello 2 uh some some advice on how to make it more optimized for the refire uh and so on and how to integrate this to uh the tool. So this is quite interesting. Well, I found it quite interesting to work on this. You could add layers on top of that to give a higher level primitive like a short and so on to make it as user friendly as you want. Um but yeah, that's uh that's it for me. So I will unshare my screen and we can go back to the presentation. Uh so Parl is asking adopt Penture MSM optimization is mission. So uh the MSM pipe puncher is uh I don't think it is implemented. It is simply >> I will just give give a context because for instance in group 16 right there are several levels of of optimizations you usually do right you you start with naive one then monomial then you are adding FFT then you are adding this pip uh pipener uh msme and so on and so on and for this particular uh case you are showing it could probably uh be some change especially for bigger circuits or yeah things like that. So I'm asking whether uh those uh numbers you were showing uh uh took that into consideration or it's uh without this optimization. >> Yeah. Uh so uh here we are only looking at the verifier. Uh so this is uh out of the secret cost to to make it clear uh on the website that I showed I I went quite quickly uh because I was worried about time but there is a field which is called MSM sizes and so right now uh we are doing the MSM on prototype verifier that we have manually. uh but there are some CIPs that actually would uh imperations much more efficiently in the future. So there's one for MSM uh if I remember well it's going to reduce by 30 to 70 plus% the cost of doing an MSM on Cardano with Piscore uh and I hope for this to be merged uh in the coming weeks on I can and I'm not sure when for the lecture it's already implemented uh in princever uh there's another CIP that is coming that I'm really looking forward to which is for modular exponentiation so one of the uh on chain is actually scaline version and you implement it with modular exponentiation. So this is coming and would drastically reduce the vifier cost. So if I'm being cheeky if I can be cheeky and show one less thing. This is not really linked to uh the uh cost estimator but it's on the same page. So this is what I was talking about. You've got here MSM sizes and likewise you have stain version. So these are different from the simple uh point multiplication but so uh this custom lives in a repo called precious to verify gen for generation because we are uh the goal of this uh repo was initially to dynamically generate I can and prince uh uh verifiers and so we had some benchmark in I can and prince about uh verifying this uh this tech so it's in the same repo if you're interested You can have a look there's some codes there that shows before and after CIPs after CIP has not is commented out. If you run it in prints in the future in you will you can see the difference and you will see that is much much cheaper. Um the mention of the CIP in some documents also and on the on the repo. So yes, sorry about that. >> Great. Do we have any other questions for Raphael specifically before we u move to a broader discussion? Okay. Um so feel free to to to um switch off your mic and uh I mean switch on your mic or or or or use the chat. So I I guess [snorts] um you know one of the purposes of of of the workshop today was to understand how well um uh these three tools sort of align to to sort of practition zero knowledge practitioners within Kadano. I know we've got a number of sort of labs on on the call. I've named some but I'm I'm sure there are others as well as as well as individual contributors. So um does anyone have any sort of um particular sort of remarks or questions for the team? Uh you know we're really interested to understand does this does this work for you? If it if it does great what's what's sort of the core parts to it? If it doesn't what can be done to to you know what what can we do to to sort of make it work even better for you? Does does anyone want to sort of kick kick things off? >> Hi Julian please please go for it. >> Hey there. How are you guys? Uh Julian from Emers here. Um so yeah, I mean I love the presentations. I knew more about the first two ones uh than than Raphael's one. Uh they were great. Uh only comments I believe there was I don't know if you guys said it but there was um uh a risk zero adaptation to BLS 12381 that someone at IO G made. I don't I I don't remember who but uh someone made that or or at least a prototype of that uh which was similar to what we wanted to do in the proposal um we we submitted that wasn't voted anyways but like um yeah I think someone made that for uh risk zero if I can find the link uh I'll send it to you guys just that was my like my my comment uh around um Demetra's presentation Um yeah, thank you for the presentations. They were great. >> Um yeah, thank you Julian. Um we are actually aware of of that effort, but as I said, it's kind of a different direction from what we were doing in in in this work stream. >> Yeah, more like specific to risk zero. And yeah, it has its its caveats like as you said Julian, if I can just sort of probe a bit further, if I may, are there like, you know, if these were to progress into full implementation, which we sincerely hope hope they will, will they, you know, [snorts] um, you know, add to sort of enable, you know, your capab, you know, enhance your capability on Kadano. Are there any sort of specific things that you can point to from a from a use case perspective? >> I mean, yeah, definitely. Uh us in particular, we do not have um like products or a or yeah like an application of our own that we're like pushing forward. We're mostly a a development augmentation team for uh you would say specific applications like CK etc. But um but yeah uh in fact that when when we uh what's the word for this when we submitted our proposal uh we submitted some capabilities to the intersect process right that's what I'm talking about uh we submitted some capabilities that were similar to the ones you're uh presenting here presenting here we did know about most of these uh we were in talks with Jesus in the past uh and he told us about some of these Uh so yeah uh what we wanted to present actually was similar to this because we believe that Cardano is lacking SK infrastructure and as you said it's it's key for postquantum uh and and key for scalability and yeah I mean the the graph 16 wrapper um is a great approach uh postquantum stuff with lattice based approaches as Julian is asking uh is also key Um, yeah, I'm particularly interested in the in the wrapper and how that goes in terms of speed and stuff, but but yeah, I think the the presentations are key. Never had the chance to experiment with Punky 3 myself yet. I know most of most of my team has, but yeah, um, they also key key functionalities that needs right now. >> Okay, great. Thanks, Julian. Does does anyone else want to We've got some questions in the chat. Does anyone else want to put their hand up? Um okay so so just coming back to the the chat then so um yeah Julian if if are you considering Julian's question is are you considering latisbased proving systems? I know Raphael's made a comment here but does anyone want to take that one? >> I guess the answer is quite quite uh fast. Yes, we are this is latis face latises are everywhere but at least the development side of it is in way more earlier stages. So yeah >> if I can add a bit more on that. So right now there's not that many latis uh based proving systems. Most of them are are using also uh folding schemes and do not necessarily have a decider which mean that the proving systems are not complete. um as far as I know there's uh a handful of uh of proving system based analysis so it's at the very early stage of research uh as as you say there's no implementation uh and so we're looking uh and we we're keeping track of it uh but if something comes uh I at least and well I at least I'm sure everyone in in our team would be happy to have a look at it and potentially implement uh in the question I as FGY actually was the first one not the second about conversion between BN and BLFS we took a a snack approach uh which is basically we emulate uh a curve in secret on top of another curve and there's no real trick to it there's no let's say cryptography except using a stack uh but if you want natively to convert a curve into another it's it's not really possible unless there's a link between curves like BN uh and uh like ABLS and uh job BN and DP job and so on which is which is quite rare. So yeah there's no no system to do that unfortunately. Um okay great and any any other um participants have any have any sort of remarks sort of >> um I I just wanted to ask like where in the priority list of the road map um is for you guys the uh optimization of all these um all these protocols. I mean for for the real use case uh CK is very valuable but when it comes to like transaction size uh memory and CPU is is quite limited. So it's it's very hard to see like um like real use cases when it comes to like deploying this on pre prepro or or mainet. >> It really depends on your application. If you have uh zk can be or snacks more generally can be used for verifiable computation. So if you have a very big uh program and you want to succently uh show that the result is uh is correct, you can do that with with SNS uh and you can uh uh verify for very cheap on comparatively on chain. Uh if your application is just a transaction, snack may not be the solution you're looking for because the base cost is more expensive than just transaction unless you want something else. if you want uh privacy, if you want to use these uh transactions for identity and anonymous credentials. Um so proof systems are expensive. Uh the postquantum ones are even more expensive. But there is strong interest in them and I think uh in the past few years a lot of people were looking not so much at blockchain but at cloud computing so that you outsource your program and you get the output of your program as well as a proof that this is correct. uh now the main thing in uh in technology is AI. So maybe Z could be used in uh in AI uh to show that the model is correct that the answer is correct or something like this. Uh and maybe the proof is enough that you can pro uh verify chain. Uh that's uh that's a different discussion. >> Uh to add to that uh you can also do recursion uh to aggregate unproofs recursively into a single proof. So on you only pay the cost once and the cost will be amortized. >> That does that answers your question, Jonathan. >> Yeah. Yeah. Thank you for that. >> Okay. Um, anyone else got got sort of questions around requirements and and specifications or um uh the appropriity of of of the work. I guess I' I've got one and I don't I'll direct this at you Jesus but but um for anyone to take it. I mean the these three tools were prioritized. Were there others considered as well um within within the the the stream? You want to take it out? >> Um yeah, there were others but um yeah, we prioritized this one because we see the the highest value in this one and relatively low effort to do that. So one another interesting direction was to modify um these ZKVMs directly as as was mentioned by Powell. um for example to make the risk zero to produce BLS proofs directly or SP1 produce BLS proofs directly. This is very interesting direction but we kind of didn't take it because we saw there is um this this might be done by other teams. Okay, thanks Demetra. So, so I mean I we'll be sending around a questionnaire after this just to get everyone's feedback, but um I mean just a show of hands or or or sort of comments um sort of icons or or what have you. If this work was was put forward for implementation um in the next treasury cycle, would I mean would you know from the zero knowledge experts on the call would you know would there be sort of broad consensus and support for that um or or would anyone have any sort of objections or or sort of concerns. Okay. Okay. So, there's a sort of handful of um uh supporters. Um no no negative ones I see. Um okay. So, so I guess yeah, I guess that's a good good question, Raphael. So is is there any you know again the open question is there also anything um you know the people on the call would like to have tool-wise or or or guidance wise from a from a sort of zero knowledge perspective if you can't think of one now we can always uh put it in the questionnaire um okay and and I guess you know to to my question around implementation we, you know, as as we get into sort of the back end of the year, we we'll be looking to sort of um engage some some ecosystem labs about implementation and and handover as well. So, when the questionnaire does come around, please flag flag that if that's of interest to you. Um, okay. I unless anyone has any sort of final closing remarks, I'm I'm happy to to sort of leave the call there. Um uh yeah, we'll we'll we'll add you to the to the list, Pwell. So um uh yeah, thank thank you all for for your time. Um I hope I hope everyone on the call found that constructive and and thank you to the ARC team and and the presenters um Raphael, Jia, and and Demetro for your work. Um that was, you know, very clean, very sort of easy to understand. So, so thank thanks thanks to everyone on the call and enjoy your uh enjoy your Thursday evening. Hope it hope it cools down here a bit in in in Europe and uh and the UK. Have a good evening everyone. Thank you. >> Thanks everyone. >> Thank you. >> Bye everyone.