[Music] Hello everyone, welcome welcome to our chain link workshop. Here my me planning to teach you how to create the crosschain tokens using the CCT standard. I wish to really code with you uh in 20 minutes is a bit hard. So I give you all the overview and we can code it together in the booth later. Okay.
This is me. You can call me so I am a dev manager chaining clubs. This is are all my contacts my previous talks on is on they are on my website. This will be useful for you uh during the hackathon as well. And this is the most important slide for you because all the links there are a lot of links inside and everything is here.
Oh, good. Yes. Let's go. So first of all talking about chaining talk about oracles oracles imagine that the blockchain it's like an Iceland a isolated place how can I connect this place with everything that we have outside of the blockchain so this is the concept of the oracle oracle is the way that we can do this kind of connection but when we talk about oracles it's so important to have a decentralized Oracle network because imagine you could have some device in the middle of the external world and the blockchain. But if this is only one node this can be compromised but if I have a decentralized oracle network I can really trust on that because we have a consensus on that.
Um when I talk about this blockchain is not a blockchain chain it's a set of services that they are deployed in many many blockchains and you can use these services in order to create better projects connecting with the real world. This is our goal and talking about the services the over there we have some services related to data and especially codes and numbers. So these are the data feeds and data streams. We can get codes from the real world in a decentralized way with the average uh volume based of some code. For example, I'd like to the price of eating USD.
But if I get in one exchange uh it's it to be centralized or the other one even if even if it it's a decentralized exchange um I should trust this in a way that I'm not uh really using only one place and this is what you can get with data fits data streams the difference between them data fits you get the last time that the oracle was updated data streams you get the the value in that moment that block that you ask that okay this is the difference between them also we have a proof of reserves the imagine that we you'd like to do something on Ethereum using his service that are on Bitcoin network you'd like to prove this reserve to create a stable coin something like that or to have real USD in some bank account to create another stable coin you can have the proof of reserve of that. Okay, other one uh CCIP will be the last one because we are talking a bit more about this functions. Imagine that you can use any web to API. You have an API that is not on blockchain. You'd like to use this inside your smartatch content.
This is chain link functions. You can have a JavaScript code inside your solidity smart contract and then using this you can have uh any information from the web to word inside the blockchain. This one it's so cool. Also we have the automation. Why I need automation?
The smart content cannot call itself. It we need to have something else external to call the smart content. Can be your account can be any kind of bot. Uh or you can use automation that is a decentralized service that can call functions inside your smart content with the rules that you'd like to have. You define the condition and you define what function you'd like to call.
This is automation. Also, VRF is for you to generate random numbers in a way that you are not trusting nothing that inside the blockchain. Uh you have the handlements outside the blockchain. Okay, let's go to the CCIP one and everything that we have. Before that, these are our prices.
So, you can use the first one. I will start to explain now related to CCIP and CCT and the chain link word is all the services that I explained it until now. Any of these services you can use important you should use the service in a way that you are really doing some transaction some change state. Okay, this is important and we have the care code without all the bounty that you can find in the it global page and also because remember chain link is not a blockchain we are a set of services all of these other partners they are here too so you can use a chain link and some of them make a project using all of them not all because it be hard to present but you can have more bounties if if you do something like that and okay interoperability you know that blockchain needs a isolated system how can I communicate between the blockchain this is the concept of the interoperability and this is the concept of CCIP so the CCIP we should start on this side I have here you the Cersei blockchain You have some application over there and you'd like to communicate with other blockchain. What kind of communication you could do?
You can do for example sending tokens like a bridge but we have more security or you can send a message. The message can be a hello New York but can be call some uh function in a smart content that it's in another blockchain. For example, I'd like to call the mint function in a smart content that is in another blockchain. I can do that. And okay, in the source blockchain, I define my message and what is the destination chain.
The chain link outer. This is a smart content inside of uh this first blockchain. We will handle this to the offchain part. Here we have three networks that take care of this part offchain. Then we go to the other side.
We have a hotter over there that you receive the message and a handle to your smart contract or if it's only tokens can go directly to you to the user. Okay. So like I said I can transfer tokens, messages or do both. What is do both? Imagine that you send a token to another blockchain and I already said say something.
Okay, when this token arrive, I'd like I'd like to lend something. I'd like to do a swap. We have an example for that we use to swap uh using unis swap uh depends of the price of token using the graph to get the behavior of the token. I just use it three different things here. we have this example done for you.
So talking more about tokens and what why we have the CCT the token the crosschain uh token because this is a normal token but uh the token you'll be ready to be crosschain and you can create your token here and your token can be crosschain. This is our goal. So uh the flow the workflow is something like that you saw before here we have more details. So let's come back here again. You are the sender again the smart contract.
Now I have all the data and the tokens. Go to the outer here I have a token pool to manage how I'm using that token. Okay. I can lock the token. If uh I'm not the owner of that token, I should lock the token.
But if I am the owner, I can burn the token in one blockchain and mint in the other one. So but imagine that you would like to do something with Bitcoin and the representation of Bitcoin another blockchain. I cannot burn Bitcoin. So I should lock the Bitcoin and then over there I can mint the representation. Okay, this is the three set of nodes that is the uh offchain part and make CCIP so secure for you.
We have a set of nodes that commit the transaction. We have the risk management network that be sure that what you try to do in the destination blockchain really is good. Uh and we have it in the Cersei blockchain. We'd like to be sure that same amount semi transactions that nothing is wrong. And then we have another the third uh network that is really really executing the transaction over there.
Okay. So the segregation of roles makes this really secure. Okay. Then we are in the destination blockchain over there. You know that I send a token here and depends of my strategy could be here I'm unlocking tokens that I have it here or I'm minting the representation of a token over there as well.
Okay, same go to the outer go to the receiver. Okay, and this can be your token. You can create a token here. How can you do this? Using the token manager.
The token manager can help you to deploy the token. This is an interface. You can do like the smart contract itself, but in the interface it's easy. You can deploy can enable the crosschain part can set the token pools that you s token pools and then you can man manage the adming of this. So a bit more about the token pool.
What is the token pool that you saw over there? It's a kind of container uh that we should have with the tokens. This is important to enable the crosschain transfer. H and they can configurate it to lock and unlock or mint and burn in the way that we saw before. Okay, another cool thing that we have is the the the limit the capability.
You can say something okay I can do crosschain only uh uh 100 tokens per block or per second something like X. So you can configurate this the rate limit in your token manager as well and I will not explain this is so complicated now but this is with more details how you have how you are running all of this okay um so thinking about the test net uh you can do projects on mainet here it's fine but if you are doing on test net it's fine as Well, we love to see things on testn net. And by the way, what kind of project chain link you'd like to see in the hackon? Any project. I'd like to be different things wherever you are building.
It's important to me. Uh only thing that you really makes me happy if you are using chain. This is the point. I like to see the best projects using chain link. Okay.
And uh when I'm doing this using the token manager is important to you that we have these four steps for each chain. So deploy the token and the pool, accept the role, accept the token ownership, accept the pool ownership. This can be in the token manager. Okay. Uh this is like to do live uh at least eight steps here.
I didn't. Okay. But by the way, I we have this tutorial exactly teaching you how to do this. It's in our presentation. I you share the care code again.
Okay. Um more references. Another point we know that when we are crosschain sometimes takes time to go from one place one blockchain to another blockchain because of the finality of this blockchain to be sure that this will be secured. But you are in the hackathon. You don't have time to wait.
So we have the chain link local for you. So what is this? It's uh the way that we can solve all of this. You don't need to think about faucets and tokens because you are deploying everything local. You are not waiting transactions or no gas spikes and uh not wait because you are doing everything locally and you can have your pro proto so fast.
And after that uh when you are really migrating to a the real blockchain it's uh really easy to do that because you are only changing the names of the networks the configuration of the network. Okay. And we have this the chain link local for hard hat foundry and even you can use it directly on remix. And this is all the information that you need related to the chain link local and this is the care code over there as well. I mean the care code of the presentation without the other care codes I will be shared at the end again.
Okay. don't or if you didn't get all of them. Okay, I mean almost in the end. So we are good on that. So this is the developer hubby.
Especially when I talk about the other chaining services, the developer hubby is the place where you can go to the documentation, go to some example, go to some already used cases that we have uh you need some inspiration sometimes. So this is the best place to help you on this way. It's a good guide for you. This is the presentation. So I can stay more time here for you and also if you'd like to have any question I can start to answer your questions.
Yes.
Is it possible to do custom links instead of building a external world.
Um,
I think you are you are mixing something because uh when you talk about external links you are talking about chain link functions not the CCIP one that will be between the blockchains. Okay. But you could do um something. Yeah, you could do using chaining functions bring some parameter that you can call an external API with using these parameters. This is cool.
This is easy to do.
Yeah. Yes.
Okay.
Can I do something with say katana for example? redirect the user's tokens so that it's earning interest in like urine or something.
Yes, you could do something like that. But uh imagine that if you go to the to the token uh token manager uh I must get the the right to address. Uh but if you go to to the token manager, you can see which networks we are supporting because it depends on that. If you'd like to do something in a network that we are not supporting, you can try to do using the chaining functions to send something external. But you are not really using all the infrastructure.
Okay. But I think we have it. You should see uh check over there because I think we have it. Okay. Uh check the uh the documentation on CCIP.
We have all the supported networks over there. I don't have it out on my mind now. token managers where I would specify the token.
Exactly. Exactly. Yes. That
Yes. With the token manager, you can uh really set up if you are creating a token over there in that moment, you can already set up which networks else you'd like to have the token all of them even. Oh, okay. Now I'm creating three networks and I'd like to have it two more tomorrow. I can do that.
Okay. say that our network is Ethereum.
Okay.
We have to bridge like USDC.
Yes.
USDC. I can earn 10% interest on and then that
Yes.
Can I build a bridge using this technology that allows me to do that?
Yes.
My bridge will
Yes, you can. Exactly. You are not the token owner on this case, but we support USDC. So we could do that as well.
Yes. Yeah, you you can do that. More questions.
Yes.
No problem.
What is it? certified or you know basically trustable that entire process what's the cost of doing something like that you say is it just extending a function down uh yes I I cannot talk about the costs itself because depends of the gas as well and depends of the complexity of your call uh but my recommendation for you now is starting on test net to try it out it I don't think that for the hackathon you should be so focused on like the cost but in the idea like bring your idea to here to be real this is the difference for you and yes you can do this like I said before using chain link function you can edit this parameters you'll be cool it's a good idea what else do we have time 1 minute last question so everyone uh good luck to our few uh we are Uh, normally I stay here until 1:00 a.m., but we have other people that stay like Derby is over there. At the end, if you have more questions, we will be outside.
I have D, I have Tip as well that uh each of at least one of us, you'll be in our table all the time. Okay? And I know that sometimes you'll be so tired, so go over there. We will try to help you. Matos, it's another uh person in our group that is helping.
And I have Nikki in some place here as well from chain link. And I think is this. Thank you so much. See you around. Good luck.
[Applause] [Music]
Automatic transcript — names and jargon may be misspelled.