Chronicle Workshop Powering DApps with Data from Oracles - ETHGlobal Bangkok 2024
ETHGlobal·Thu, Oct 9, 2025, 12:00 AM
Join us for a workshop with Bianca Buzea from Chronicle Protocol titled, "Chronicle Workshop Powering DApps with Data from Oracles." In this workshop, participants will discover how easy it is to integrate Chronicle’s decentralized, verifiable oracles to power their DApps with data. Attendees will learn the fundamentals of Chronicle Oracles, explore key integration steps, and gain hands-on experience to seamlessly power their decentralized applications with data. This workshops took place at ETHGlobal Bangkok, a 3-day hackathon held November 15 to 17 2024, that brought together the most skilled web3 developers, designers and product builders from all around the globe for a weekend-long adventure to advance the Ethereum ecosystem! ----------------- Follow us: https://x.com/ethglobal Check us out: https://ethglobal.com/ Email us at: hello@ethglobal.com
Transcript
[Music] hi everyone welcome to the chronicle Workshop we'll be talking about powering the apps with data from oracles a few words about myself my name is Bianca buza I'm L devel at Chronicle you can find my social media links I'm always more than happy to to chat answer any questions I'm also going to be at The Chronic boot you can find it uh in on the left side here uh we'll be here until Sunday answering questions helping you um work on your projects and yeah please come by uh we're happy to to chat and help you find uh teammates and ideas to to work on in terms of uh agenda we're going to look at uh oracles what are oracles then uh what we prepared at Chronicle for E Global Bangkok then we're going to look at why Chronicle because you might have seen there are multiple oracles at this hackaton so we want to show you what differentiates us and then uh we're going to have a brief handson of uh building with Chronicle so first of all what are uh web free oracles I like to explain oracles by using this very simple yet powerful analogy I would say so if you think about your mobile phone your mobile phone is powerful because it allows you to interact with all these different applications but in order to do that there is an exchange of uh data between these applications and your phone now when you think uh when you put your phone on play mode all of the sudden this transfer of data doesn't happen anymore so very soon your your phone becomes pretty much useless you can't do much with a phone on uh airplane mode similarly to that um oracles need data if you think about uh the blockchain the blockchain is like a big sandbox that doesn't know anything about the outside world however in order to build useful applications on the blockchain you need data so using oracles which are the middleware we take data and we put it on chain for smart contracts and from there different applications can read from those smart contracts and use that data for various use cases we're going to see in a bit uh what use cases you can build with chronic oracles now a few words about chronicle chronicle has been around since 2017 an interesting fact actually is the very first Oracle on ethereum last year it span out of uh maker Dao under the brand of uh Chronicle and now the protocol it's open for everyone and it Powers other uh DFS as well in terms of TVs or total value secure there are around 9 billion ion of aets so not only that it has been running uh for so many years but also it has been securing a a great uh deal of Assets Now what is special about our oracles is uh our Chronicle scribe this is an extremely gas efficient uh Oracle using aggregated schnor signatures schnor signatures have been around for a while uh since the 1990s they even are used in Bitcoin however this is the first time when we use snore signatures in the context of uh web free oracles now we're going to see what are the specific characteristics that set apart Chronicles cribe oracles uh so we're going to talk about the decentralization verifiability and scalability the first one is decentralization so Chronicle is powered by a decentralized network of validators you can see here are some of the most reputable protocols in the web free space like uh maker da eer scan IFI saor it Global and many others and the idea here it's simple basically these validators are staking their own reputation when they're putting and signing data uh to get on chain the next property is verifiability and I want to run here a short demo to show you how how you can trace end to endend our Oracle so here I'm on the chronical dashboard at chronical labs. org dashboard and you can see here all all the oracles I can go ahead and select one of the oracles let's say the etsd one it's a popular one and I can see all the validators that have uh Taken part if I select one of the validators let's say I don't know nosis I can see the different data sources that have been used used by uh that validators as you can see it's a combination of onchain and offchain um data sources I can even do um take it one step further and I can verify in the browser the the signature for this validator and basically I can prove that even the tiniest change uh will result into uh making the signature uh invalid so here is like the unmodified version and if I go ahead and do even the slightest change and delete a zero it's uh going to say that the signature is not valid anymore similarly I can verify the schnore signature this is actually the data that gets pushed on chain so same same con concept here so this is about the end to end verifiability part let's go back to the presentation scalability so using optimistic schnor signatures we are able to um reduce the gas fees over 60% or on layer one and over 68% on layer twos and why is this important not only that you will have um a lower bill in in terms of gas cost but also what is very interesting is that it allows you to decouple the gas cost from the number of validat what doesn't mean is that you can add as many validators uh as you want without uh having inflating uh your your gas cost so now you can achieve actual uh decentralization because you have more validators which also results into better security now uh I'm sure you're here for building this weekend so let's uh have a look at the different bounties Chronicle is offering this uh weekend uh 10K in bounties for it Global uh Bangkok um if you want to scan the QR code please go ahead that it's going to take you to a page with all the resources for the hackaton and all the important links so uh please make sure to to scan that uh we have one track for the best integration of chronical oracles uh we're keeping it quite open as you can see you can inte integrate any of our oracles from the dashboard on any of the 10 chains where we're live for your favorite uh use case some example here these are only to get you inspired but please um go ahead and build whatever you're passionate about um some examples are a game with Dynamic prices a reput um a reputation system an analytics dashboard an AI optimization for dowo treasury management Etc we also have a prize pool where any valid submission uh gets a share of the prize pool so if you're submitting something this weekend for chronicle uh you at least get qualified for the price pool if you don't get uh one of the prizes in the integration track okay looks like everyone shared the scan the QR code next uh what sort of data can I use for the chronical track at e Global Bangkok mentioned earlier anything from our dashboard you have there the link from our dashboard any sort of Oracle integration um is valid one of the requirements though is to make uh a stand State change so Chronicle is also blockchain agnostic you can see here the 10 chains where uh it's currently live this number continuously um increases over time so this weekend you're free to use any of these chains uh some of these chains are also offering uh bounties so you might want to uh to look into one of those something to keep in mind please always make sure to to check the the correct addresses for that chain because the both the oracles and the self kisser contract that we're going to talk uh in a bit for white listing have different addresses for different chains so always make sure uh to have the right address now the fun part how do I use a chronical Oracle I have that QR code over there that I invite you to scan it's going to take you uh to a guide uh that shows you how to integrate uh chronical oracles but before of that I want to explain you the overall concept so chronical oracles are R protected by a white list what does it mean it means that in order to read from the oracles you need to be white listed now the good part is that on tested networks you can Whit list yourself uh we have a self kisser smart contract and using that you can uh do the white listing uh yourself on on mayet you need to come and talk to us but uh that's that's a story for another day we're here at the hackaton using the the test net so that that should be fine here I have uh the process of what you need to keep in mind when you're reading from uh chronical Oracle the first step is you select the chain that you want I showed you the the 10 chains where it's available you make sure to get the address of one of the oracles you want to uh use and then uh you get for the same chain that you selected you you find the address of the self kisser now that you have the two addresses the self kisser and the Oracle you can use the self kisser to WID list uh the address that you're going to use to read from the oracle something to keep in mind here the white listing process is the right operation so make sure to have funds uh to cover for the gas costs okay time for a brief demonstration so here uh if you remember the QR code that you scanned earlier maybe I go for one more second to it this QR code here where going to uh see live uh what's happening an example okay so basically here I have a let me see if I'm on the the right one I have uh the contract for for the Oracle uh reader it's a it's quite a simple contract uh first I Define an instance Chronicle of type uh I chronical interface and I pointed to this address this address is the address of uh it USD on seoa network then similarly I Define an instance self kisser of type I I self kisser interface and I point it to this address this address corresponds as you can see here in the comments uh to the self Kisser on seoa as well so always make sure to match uh the networks and then in the construction in the Constructor I do uh the self kiss the wh listing uh part where I wh list the address uh for that Oracle something to note here if you're using multiple uh Oracle make sure to WID list the address for every single Oracle so for example if you have like 8usd and Bitcoin USD let's say you need to Wi list yourself for each of these feeds then we have like the the read function which basically returns uh the value and the age the value represents uh the value returned by the Oracle and the age represents the uni Tim stamp since uh the latest uh update of the Oracle so you can see basically how old is the value that you got from the Oracle and here uh NE next I just have like from the interfaces um the functions uh that are relevant you can see here I think I have where do I have I had the interface I wanted to here here is the I chronical interface as you can see it's it's quite light and in most of the cases you will want to use use one of these two functions either the r function that returns only the value of the Oracle or the read with age function this one Returns the value of the Oracle and also um when was the last time the Oracle was updated okay so we have our instance we can compile our Oracle and deploy it I'm I'm making sure to select Oracle and not the interface and let's see if the internet uh is in our favor today okay so we have here an instance of the contract here we're going to have uh the address of the Oracle we're going to have the uh the the read function you can see here the value return looks quite a big number I know we're in a bull market but we're not there yet so what is happening here uh chronical oracles operate with uh 18 decimal places so every time you get the return value from uh the Oracle make sure to to keep that in mind that there are 18 decimal places and the other uh is the age as I mentioned this is like the Unix uh time stamp if you go to a converter you're going to uh get the get the date all right uh let's go back to the presentation so we talked about these um we also have a scaffold Oracle reader for those of you familiar with um uh with uh Biddle Guild Austin Griffith and the scaffold eat uh we also have uh such a such a repo to allow you like to to build very fast during the hackaton and only focused on the parts of the project that uh differentiated so this is a great resource and let me show you briefly uh the page for the hackaton because I think this is the most important um page uh you're going to have here the the contracts um you can see the the contracts for our oracles either on the dashboard if you to go here oh not here uh the dashboard sorry here make sure to toggle the the dev mode for for testet you can find here all all the oracles or we also have like in our um in our documentation but I recommend getting the addresses uh directly uh from the dashboard then here it's a note about the white listing process that I just uh explained you have an overview of the bounties and the different resources uh we have the scaffold Oracle reader built on scaffold E2 uh there is also an example here about creating a token vendor so you can get inspired by that and also there is a an example here about Integra integrating cesi rollups with the chronical Oracle built by uh Community member yeah and you also have like some RPC um rpcs and some common pit pitfalls to uh to keep in mind and as mentioned at the beginning uh make sure to to come by the boot ask us um any questions and yeah if you need help iterating find finding a team or just finding a an idea more than happy to support with that do have any questions yes can one sec can we get a second mic for the [Music] questions there is a mic here yeah so I got to what question was um regarding to to read like The the Aral you don't pay fees it's only like when you request into the smart contract like to get the the price I mean maybe my question was not clear I mean here for instance I have a front end and I want to kind of read you know like um the USD value of some HS um we using chronical I'm not going to pay fees for that right yes so uh you can read uh you you don't need to have like uh anything to read from the Oracle you just do the white listing process and your read uh from um from the oracles at least on test net on on mayet yes usually like you need to come talk to us and like if you're a big protocol there is like there are some steps to go for the integration but from the point of view of the user yeah you can just go read from the Oracle and you're good to go you just like for the wide listing it's yourself you need to make sure that's just like a right operation you need to wide list yourself and you need to have like a bit of gas to do the wide listing okay so but that's very low okay so my understanding is like it would be the protocol that going to pay for the kind of Oracle mechanisms right not the users yes it's it's on the protocols yes okay um and yeah I also got a question regarding like um more about the slashing mechanisms because um currently we have like a bunch of Oracle that can provide price especially offchain and I was wondering like how um yeah how the slashing works because if one provider just give a wrong price how how it is managed yes that's a great question uh you mean for the validators right like if one validator puts like a bad price uh indeed we have that uh process where basically anyone can challenge um data that is not valid so if if the signature is not valid like any one uh can do that and they even get like a a small Bounty like if you manage to find someone who acted maliciously or just like they they did a mistake if if you find bad bad data uh basically uh you're going to get the reward the validator gets removed and the data of course doesn't get included so besides like the the mechanism of having reputable protocols we also have this extra guard rails like not only that they don't have the incentives because their their reputation is at stake but also we have like actually implemented this in the code and this happens like automatically triggered by smart contracts and also like um I mean do you do like the average of uh 10 different providers I'm just thinking about maybe one scenario where maybe one provider is going to have an issue internally and get maybe a price of zero you know and so I was wondering like do you do maybe an average or something like that or um so in terms of data aggregation uh average when it comes to oracles average is not really good because if you have outliers those are going to affect negatively um a better way to do it and what we also use are medians in our case is median of medians so we remove the outliers and then we do the median okay got it thank you no worries any more questions why do we have to whitelist the address that's basically because like on on mayet uh that's our business model if you want um uh on on mayet uh we do that and there is like an integration fee but on testet we want to replicate as much as possible the the process uh for mayet but it's just like for free on on test net yeah it's just part of the business model and also some sort of security for the oracles because otherwise like you you can get like a lot of uh people that can potentially exploit so loud in here any more questions okay looks that there's a wrap see the chronicle uh Boot and best of luck with your builds don't don't forget if you're submitting for the chronical tra come come uh we would love to see you in person present if if it's possible of course if not also like a short video works [Music]
Automatic transcript — names and jargon may be misspelled.