Zircuit Workshop - ETHGlobal Bangkok 2024
ETHGlobal·Thu, Oct 9, 2025, 12:00 AM
Join us for a Zircuit workshop with Donato from Zircuit. In this hands-on workshop, you’ll learn how to build a decentralized application (DApp) on Zircuit, a Layer 2 zk-rollup blockchain featuring Sequencer Level Security. We'll walk through the basics of zk-rollups, explore Zircuit's architecture, and demonstrate how to implement a sample application. By the end, you’ll be equipped to start building secure and scalable applications using Zircuit. ----------------- Follow us: https://x.com/ethglobal Check us out: https://ethglobal.com/ Email us at: hello@ethglobal.com
Transcript
[Music] so hi everyone I'm Donato pelo from zit I'm a blockchain generalist and today I will explain what zit is very very briefly and how to build an application on zuit but let's start from the architecture of a roll up uh of a general rollup this is the architecture of rollups based on optimism we are based on optimism uh but it's a very common architecture for many other rollups too uh a rollup is the network over up looks very very much like an ethereum Network it's made of an of nodes and every node has an execution node that is just like ethereum G uh slightly modified depending on the needs of uh every rollup a consensus node and an L1 node the L1 node is needed for the uh information that come from from from the from the layer one you need to see that someone wants to deposit or you need to use it for other reasons that we're going to explore soon uh one of these nodes is the sequencer the sequencer is a node of the Network that has all of the part all all of the parts I already mentioned in addition to this it also has a Batcher and a proposer rollups rely on the layer one for data availability and state transition verification or validation uh the beter service is the service that updates the L1 with the the new transaction data coming from the L2 and the proposer is the service that provides the new state routs that the L2 constructs after executing all the transactions that have been submitted uh there are a set of smart contracts the most important probably is the bridge the bridge allows you to deposit and withdraw uh any kind of asset or General transactions uh there's a state transitions manager connected to the bridge to validate withdrawals that receives States from the proposer and there is a verifier or challenge contract rollups divide themselves nowadays in optimistic and zero knowledge rollups they both try to solve the same problem which is communicating to the L1 that a certain um uh State transition is correct optimistic LS optimistically consider a state transition correct if it has not been challenged before a week time with zero knowledge raps exploit zero knowledge proofs to verify the validity in a very very small set of instructions that are run on chain and that cryptographically assure you that the transition is correct but what is zit zit is a a security focused zero knowledge R laap what I mean by security focused I mean that um we do a strong research on security continuously we um designed our architecture uh Security First and we also provide tools for users and product and uh developers uh to keep their applications more secure and zuit our security stack includes a secure native Bridge monitoring of transactions for their safety uh simulation of the transactions as well as quarantining for the malicious transactions and we also provide support for Developers and uh users regarding their security setup the main feature that it distinguishes from the rest of the ecosystem is the sequencer level security the sequencer level security is um um a fure that works thanks to an AI Oracle connected to the sequencer the sequencer asks to this Oracle for every transaction it receives from nodes or or users if the transaction is secure or not and um thei the AI Oracle answers saying yes or no uh this keeps the the chain safe from scams rug pools hacks not only the chain but also our own smart contracts it's powered by a very very big data set of blockchain data collected on the past five years of many evm chains and it improves ux for everybody it is totally transparent and a user or a developer using ciruit doesn't need to know anything about sequencer level Security even though it's there and it's protecting users uh we are a fork of optimism we took optimism we removed challenge proofs and we included the we we we added to optimism zero knowledge proofs and um our ZK stack is based on hotu which is uh used also by the PSC team scroll Tao and it gives us a lot of advantages we are able to uh aggregate very well we have a dedicated GPU optimization that can be built into the pipeline with this uh and many other things this is our architecture as I say we have a sequencer that takes transactions from dl1 and dl2 nodes of the network uh and users it's connected to the AI powered analysis it generates blocks that are given to the provs that generate the cryptographic artifact to submit to uh the verifier on chain to check the validity of the state transition and um the state proposer that is the service that as I said before continuously update L1 with the new state of the L2 a very important part of this architecture is the security through research we do a ton of research on zuit on infrastructure on Smart contract security and on many other topics and um it always affects our development and progress but let's get right into it how do you build your own application in zuit we're going to see tools Network parameters Network contracts etc etc how do you do it have you ever built on ethereum it's just the same thing the only thing you should remember is that there is a two seconds block time ethereum currently has an average of 13 up uh zit and optimis based rollups in general have two precise Seconds of block time which tools can you use it's really straightforward z.com is where you can go to understand everything you need we have an Explorer everything can be reached from z.com uh we have a bridge we have a documentation that it's really useful if you are hacking today we have a testet even more useful if you're hacking today you can just add testet in the middle of the of the URL to get the to get to the Explorer or the bridge but you find the links on the website too here's a here's a an example of what you can find on the docs the the you can find the all the RPC parameters and alike uh we have testet contract addresses and Main net contract addresses you can find these things on the docs and you can use them to operate to to use the bridge uh as a user or as a a developer you can use any tool you want I personally use fundry and hard that they work on ethereum they work on Zid anything that work on ethereum works on zuit as well so just use whatever you're already using there and you will be fine so let's try the standard Bridge the standard Bridge has three has two main functions one is to bridge it and the other one is to bridge erc20 we are going to see what happens when you just send it to the contact so with the receive function and what happens when you just want to bridge it c2s let's get right into the code so let me Zoom a little bit okay here is how simple it is to deposit ethereum on zuit from sepolia um I have set up this project you can see I just installed contracts to have the erc20 ABI to set up some M variables and hard hat I use this in this case I set up in hard hat two Network sepolia and zit test net let's check out how to deposit it you just get your signer uh and then you literally just send a transaction to the bridge in this case the bridge address is uh this you can find it in documentation it's really simple to find I'm sending for example one ethereum and that's it you just send this transaction and ethereum will appear on uh deposit it th there you go anything will appear on the network so let me just see how much itats I have right now we are on sepolia and I have eight it and we should see it become seven I had 22 if I'm not wrong on zit and there you go so now the transaction is being sent to sepolia it's being used in the in the bridge it went through the sequencer level security and uh here it's seven and we should see on zuit test net the increase to the 23 and we have we have now ethereum on circuit and you can use them for whatever you want you can send them you can use them for gas etc etc the way to bridge ethereum sorry ER c20s it's as simple almost as simple you just needs to have the AI and the the address of the bridge everything can be found through the oh sorry I have to zoom a little bit everything can be found through the website and through the Explorer for example an iter scan for the abis uh and you need the contract erc20 so you just need to approve the spending of a certain amount of erc20 tokens on the bridge and then just send a transaction to the bridge we are calling Bridger C20 we are saying what's the local token and the remote token you can find this information on the Explorer as well and the amount we want to bridge so at the moment I have uh where is it 73 usdt on seia now this is zit I have 121 usdt let's just run the transaction deposit C20 okay so we are going to see that the transaction is sent still to zolia in this case it's just an approval so it's not going to go through the sequenc level security because it's um L1 transaction only but the second one does go through the sequencer level security if it wasn't hack it would have been uh blocked and there you go so now we should see a decrease of um USD here and there you go we just Bridge ERC 20 how do you withdraw the exact same way so let me get you to the withdraw erc20 example but the withdraw e example it's as simple you just need a different address in this case it's a pre- deploy and uh the same ABI will work and uh you just call the same exact function on the bridge and uh you don't need an approval because the rc20 we use for these kind of things on uh uh on zit already know that the bridge is a trusted contract and we we were just withdrawing in this case just one usdt and let's just try it uh testing it in this case it's just one transaction this transaction goes directly through the sequencer level security and yeah gets checked for safety and there you go we just withdrew uh okay I was not on tesate but here I am yeah anyway this number it decreased okay once you have done this it's not finished for withdrawals you need also to prove transactions and to finalize them I did already some trials so you can do this also through sdks you can use the optimis SDK uh or other tools that are being developed right now to interact with the chain otherwise you can just prove them on the on the Explorer it's really simple you just get to the blockchain and L2 L1 transactions I'm on a specific page because I needed this one so you just execute this transaction on your um uh um there you go and in this case you proved to the con to the optimism portal that uh your transa your withdrawal is valid then there is a little finalization period to wait for let's wait for the transaction to be confirmed and there you go okay voila and uh that was the proving um transaction let reload it for a little bit and we can also finalize transaction and this is the actual transaction that gives you the usdt in this case just one because it's what I was bridging before and we have uh 111 usdt at the moment and if we execute this transaction we should see uh another USD appearing on my balance there you go we have now 112 usdt okay so this was how to deposit and Bridge if you're looking into hacking today on zit you can do something that you want to do you do not need to use only uh ER c20s or 721s the standard Bridge allows you to bridge any kind of um sorry erc20 or 721s um you can even uh deposit or withdraw your own ec2s and 721s if you just create them on the opposite chain depending on where you want to have your native token to you can make Native Native tokens leave on cirquit or on on um on L1 and uh you can use this two minable contracts to deploy the counterpart on the other chain you can use the these things for this kind of stuff otherwise if you want to implement your own logic you can send normal transactions to dl1 and to dl2 uh by using the custom main messenger or the optimis portal on dl1 and the l221 standard um uh uh l221 message passer on the L2 these ones allow you to uh Implement your own logic it might not be an year C20 or year 721 whatever you want you can you can deploy so we have a built to earn program you can get technical and um uh financial support if you need and if you are looking into deploying something on on the zint main net we have uh a liquidity Hub we uh you can stake on circuit and you can get some rewards such as staking yield protocol tokens points and Future air drops we have a bunch of Partners you can see them here we do liquid restating and liquid staking um at the same time we have more than 26 assets you can deposit and withdraw your stake whenever you want there is no lock up and we even support some BTC asset at the moment we have a te we are a team of jiga brains we have uh um a very very security Focus team that does a lot of research on infrastructure Security on bridge security rollup Security on Smart contract security and uh on cryptography a ton of research on cryptography for the proving of the zero knowledge proofs and that's it thank you so much check out our Twitter handles and I hope you will have a great time hacking on zuit and if there's any question if we have time for question no we don't have time for questions so no questions sorry thank you [Music]
Automatic transcript — names and jargon may be misspelled.