{"id":"I4YDr6FPFJo","title":"Whiteboard Series with NEAR | Ep: 49 Kostas Chalkias, Co-Founder & Chief Cryptographer, Mysten Labs","description":"This episode of the Whiteboard Series dives into Sui, a blockchain built by Mysten Labs using the Move programming language. Illia Polosukhin, co-founder of NEAR, hosts Kostas Chalkias, Co-Founder & Chief Cryptographer at Mysten Labs. Kostas was previously a cryptographer at Facebook, working on Libra, encryption of WhatsApp, and more. \n\nMysten Labs was founded in 2021 by a team of ex-Facebook engineers. They are building Sui, a decentralized, delegated Proof-of-Stake blockchain with high throughput, low latency, and an asset-oriented programming model. Mysten are also working to accelerate adoption of Move, an open-source programming language for building smart contracts originally developed as part of the Libra project. \n\nTo learn more about Mysten Labs and Sui, check out:\nWebsite: https://mystenlabs.com \nTwitter:   / mysten_labs   \nBlog: https://tech.mystenlabs.com/ \nGithub: https://github.com/MystenLabs/sui \nDocs: https://docs.sui.io/build \nSui Website: https://sui.io\nSui Twitter:   / suinetwork  \n\nTo join NEAR’s community, visit:\nWebsite: https://near.org/\nReddit:   / nearprotocol  \nDiscord: https://near.chat/\nBlog: https://near.org/blog/\nTwitter:   / nearprotocol  \nGitHub: https://github.com/near  https://github.com/nearprotocol\nDocs: https://docs.near.org/","channel_name":"NEAR Protocol","published_at":"2022-12-23T00:00:00.000Z","thumbnail_url":"https://img.youtube.com/vi/I4YDr6FPFJo/hqdefault.jpg","transcript_text":"welcome everyone um to our new episode of whiteboard series I'm Ilya co-founder of near and I have Costas a chief cryptographer at mistin labs and previously at Facebook yeah and today we're going to be diving into all those things that mistin lab is working on thank you Leah so by the way yeah I'm also coming from Facebook as the whole Founders team five of us we used to be leaders there I was leading the cryptography part obviously while Libra was collapsing I was actually dealing with other staff including WhatsApp security and cryptography it eventually well left and we built uh actually and after a year now almost a year we recently launched testnet we had devnet for a while we're doing really well on testnet we have wave one now running and yeah any question that I can answer I'm open for for you yep so I mean let's dive in how sui is structured and then we can dive in right of course so obviously we all know the uh the basic Paradigm of how blockchains are built right you have uh transactions that are reaching some blocks eventually you're waiting until uh either some time or until you have enough transactions here you're going through some consensus and then these transactions via some housing and obviously someone will pick the transaction that will go into this block either by mining or by some proof of stake or any other method you will create a different blog with different transactions as they come here and then we said okay cool this was pretty much the the model that we used to have at Libra and most of the blockchains are built under this uh like pretty much the same construction but we said there are a few opportunities where we don't need to wait for blocks maybe we can have some parallelization native into the system and in fact you can you can still evolve into a block situation but before you build a block you might have other structures that you can avoid all of this blocking until you get enough transactions and maybe uh you cannot parallelize because now you need some sequencing here right all of the transactions should go with some order and we said okay we can we can avoid it so sui took a very different uh like approach of actually combining two schemes two mechanisms to have all of this agreement on the transactions and now we have transactions that can actually fly independently and unparallel tx1 tx2 and tx3 we don't need consensus you go through the validator set we are delegated proof of stake which means that people can actually give their with some weight they'll take to someone else who will vote on behalf of them like a regular democracy and these transactions will go on Parallel into uh you well you're having questions about democracy yeah regular democracy is a very broad definition but yeah off topic from this yeah I get it I get it let's assume there is a set of validators uh there are epochs of course like every few moments at the moment we have a day for the nipple katsui uh this can be rotated based on the stake and let's assume now that we are in an ebook and we have all of these transactions happening on Parallel and what will happen in this particular case I will assume like four or five situation you just go on this transaction to the validators and you ask a signal to your own parallel from all of the four out of five let's assume it literally five and you need four out of five for for bft you get the signature back and then this might be enough if you can construct now the user the difference between the other chains and three the user here is actually getting the transaction of the getting the signatures for this transaction they are forming a certificate and they're sending it back to the validators how does this help you do you understand what why this is actually useful well it's done blocking right so you don't block on waiting for other stuff and it's from the user's perspective so you can order your transactions any way you want exactly so there is a benefit here in the sense that these validators do not need to interact between them which usually introduces and then square or depending on the protocol it might be n-cube like communication cost now what we did is we have the user and the user is actually the driver of yeah I'm sending a transaction I'm going into the validators getting only signatures they don't communicate between them then I receive all of the uh signatures back we are using BLS and BLS in this particular case can actually aggregate the signature the signature the signature is aggregated on the usage side and I send it back to the validators so the validators they see um um a signature of like n to f plus one of them and they say okay if other people also sign and I also sign we have to have plus one I can accept this transaction without communicating with them it's in instead of having the validators actually communicating you have the user being the aggregator and in this two-step process which can happen on Parallel of course you can actually have the same thing as a consensus mechanism these is uh is taken from a protocol that Jordan Isis and some other people in our company Alberto as well uh have created back at Facebook it was called Fast pay so this is a method for fast payments without food consensus there is no full consensus here yeah and um you can have parallel transactions obviously there is a caveat here right I mean you cannot do it forward when you don't have order yes exactly now you don't care about the order what are some like examples that this works can you give me a few applications where you don't need ordering well given your client pay probably you mean payment yeah you're right okay so you go to Starbucks and uh by the time you go there you buy a coffee and then obviously they they're ready to prepare your coffee to to serve you they don't need to wait for the block you just send the signatures uh I mean the request signature for to the validators you don't need to wait three five ten seconds until the block is formed and you are getting these uh signatures by yourself and you're giving them directly to um to Starbucks and Starbucks now knows that this certificate will one day go to a Blog now they can serve you the coffee so what happens if you don't have the money on your balance well it's your object right I will explain how the object models work uh but at this time I mean you can get the certificate Starbucks will check the signatures but the validators when they send the transaction they check that you had the balance to actually pay for this element and because the or the in order to shine obviously they take the correctness of the transaction but this is what they do they didn't communicate with other validators as the trick they do the execution they do the Locking of the object and they take that you have enough balance to pay for this so there is a state transition that happens when you receive the kind of transaction first time you have changed the state Somehow Here yes exactly there is there is a state change but the small difference between other account based systems and our system yeah we're somewhere between account based and utxo based yeah so sui is not utxo based like completely it's not even an account based well you have an account so we can uh let's finish with this stuff and then I can explain why the object model in our case is very useful for fast paid fast pay wouldn't work in a purely account based system of ethereum for example uh the idea is that you have like imagine this transaction is using only one utxo this might be the object that I'm sending you it might be five dollars right it's these five dollars that will change state of course and what what's the change of the state I'm changing the owner I'm just sending you a particular object so imagine all of them as being like nfts yes but it's fungible right it can be fungible it can be mutated but it doesn't matter it has an owner so the balances are not under accounts anymore and they're not under contract like internal data structures they live uh independently so I'm sending you this and this is why I can make the state change without affecting anything else on the network I'm only affecting the state of this particular object um and this is how you are getting all of this benefit on payments some other examples that are very interesting okay let's go and listen right payments obviously you can have confidential payments because there is no there is no huge difference between sending real uh like visible integers or sending competitions yeah I mean you can do whatever you want this can also be objects what you can do is you can even build like your personal webpage it's something that you own every single time you're mutating your page nobody else is affected if you know how to do your ordering by yourself it can be unparalleled you don't need blocks anymore the same thing is for Twitter We call we have this example on three we call it sweeter what is a tweet it's an nft so in practice when I'm sending something to you I'm creating an nft and I'm sending you to the network I'm the owner then uh in this nft I might even have a reference if it's ready to eat if it's a like or it's something else and in practice everything lives as an nft in in theory you can imagine surya's yes we have the file we have the nft world we have all of these uh like history and we learn from the goods and like bad things of of the past and we build a system where everything can be considered an NFD yeah it's just I mean it's an object store right where every single thing has an owner which can exactly mutated exactly and anything that you can imagine that it's objects that you control nobody else can touch it's only you that actually can Define the order can be built with this fast pay model uh some other examples are even things that you cannot imagine it is possible to do with single owner we call them single owner objects yeah because they have a single owner can you imagine of something that you believe that it would require some locking but I can avoid it well I think the most interesting thing is uniswap uniswab you cannot do you got me here okay so with unissue app and the transactions for which you need some people actually to agree on the order yes on some ordering yeah you can do different things one is in this one transaction you can probably have a transaction that gets two transactions as an input we both sign this transaction and we submitted a section so we agreed on the ordering together uh like uh beforehand there is an issue here however in some applications it might be tolerable that the other player might at the same time send the same object that they locked in the same transaction somewhere else and it might be an equivocation yeah so there is a race will they succeed or the other transaction will succeed and there is another race maybe this transaction will succeed on 50 of the validators yeah and the other on the other 50 and then you you have a problem yes you need to resolve it yeah and then the resolution I guess you're going to ask how do you resolve this right the resolution can happen even the same user can do a mistake without an atomic Swap and try to send an object yeah for some reason I have two services that are running on Parallel I have two servers and this is the same object if you are sending the same object so what we can do is we're resolving this at depot level debug level you can do it and there is because the book level you can actually say if you didn't receive the transactions can actually Define the ebook that they want to be executed if you didn't receive it on time just throw it and then you can start the game what share ebook Links at the moment it's one day well this is something that we will play with that but there is an extra proposal left there is uh koias who is one of the like he's a like a great author on consensus schemes he's working on and freezing uh like I can provide an Evidence right I have a transaction that has 50 percent of value of signatures and the same object another 50 unlock it I provided an Evidence so you can do it so there is there is a fast and freeze um but it's not only those examples that I explained here there are more examples well defy as you said uni swap is more complicated you can do it with this way however with a multi-agent transaction while working on the multi-agent it's not there yet um but there is also a lot there is imagine if we have a giveaway where in this giveaway you have a car right you're giving away a car people are participating and obviously if you imagine a lottery in your head you will say no no this requires a certain object I mean we cannot participate in the same Lottery where people are locking money this money should go to some counter to some balance that it always goes up and up and up there is a way to avoid it and the way to avoid it is I can buy tickets independently on Parallel I pay five dollars in this payment I pay the owner of the giveaway let's say it's an organization um so I pay five dollars to buy a ticket it dependently we all pay five dollars there is no limit right because the the total profit eventually the reward is not dependent on the on the ticket on the number of tickets it's only a car you will win a car which means that you buy tickets independently and in this particular case you can have the fast pay approach I just buy tickets but how is the winner defined now I have the problem you need to define a winner so the winner can be defined by the fact that you can use fraud proofs we can use the do you know algorithms certification algorithm where they do the leader election thing yeah so very quickly let's assume that we find a way to have the the lottery Big on I will erase this if if that's okay so we're now on the lottery example right and in this Lottery example we're a lottery we have nfts which are the tickets one ticket two blah blah ticket and eventually on some uh we Define when this ticket issuing will finish let's assume Epoch seven um ebook seven you start from Epoch one until epic seven you can buy tickets that's fine and then eventually you have a list of tickets and let's assume MoneyPak 8 we have the big one the Bitcoin is defined on duplicate how do we Define the I mean all of them are independent right you don't know you cannot even sort them you cannot do anything however the users can have access on these tickets because it's a blockchain they can go offline they can uh let's assume that it's a very basic function of hash of a Bitcoin comma ticket everyone is producing The House of the big comma ticket and the smallest one wins like the house that starts with many zero's wins so only the winner is the one that will go and have a second object now all of the tickets 99.99 of the transactions are fast paid and only the winner will use a certain object something for which you need consensus and what the winner will do will say I won you will wait if nobody complains you want if someone comes to you it's like arbit room yeah then you keep you keep going yes you keep going down until there is only one winner nobody complains and then you're definitely the winner or the winner didn't report it but everyone can report it right even if you are not the winner you know how to provide the ticket as evidence as a fraud proof and this is very similar actually it's a good way to have fraudproof some sweet not necessarily A fraudible by executing the whole state it's a special uh case fraud proof there are more there are more applications yeah yeah so how does the consensus in like the Bitcoin are you just saying that you're waiting for another Epoch to for everyone to present and whoever is small yes let's assume we're using d-round right or any any Bitcoin yeah and we say on Epoch a there will be some random because you don't know it by the time you register because you registered until seven so when this Bitcoin is published now we're going to do all of the classes offline and the winner will just report it but that's what I'm saying like I mean there's some code somewhere that will be then reassigning the ownership of the car for example um this is all published right so how's that exactly so at the very beginning I'm just publishing an object of this hash right it's a great it's a great question at the very beginning the organizer Define the third object this is a object now that is not single owned yeah it's uh like a data structure or it's something that the organizer actually has sent one car nft here yeah and obviously there was like on Epoch eight we have to get the beacon and if someone executes a transaction we have to wait I don't know for for two epochs for the fraud proof so this one it's a third object created at the initiation in the beginning yeah yes and then the winner will come to this object to request the car so what's the interaction when when I'm like because I did for me this transaction is is my object right it's just an input it's an input it's just an input to the uh to this particular so so I mean here you were explaining how you interact with your object so how you interact with somebody else's objects okay that's great so a nice thing by using object-based like model for three if smart contracts can get as inputs object from other smart contracts now you can literally have um raising this now you can literally have um an object that is having a reference to another object or a function under the lottery contract you have a function that takes as an input some object type X and this one might be your your ticket so you will provide the ticket the ticket with this ticket type can only be created by this marketer you cannot create it by another smart contract so the winner will just send to this faction that lives under the third object an object that has been created somewhere else I mean where are your bank tickets and it can it can understand that this is object Type X and it knows oh it's definitely a ticket that I issued it was issued by my particular smart contract so I actually say this Lottery contract has like you know function by ticket right yeah and so ticket has you know the owner field which will be yeah and probably the lottery ID there might be a lottery idea as well so you know this is a ticket for this Lottery right yeah maybe you need it well if this multi-lot yes if it's a multi-lottery one and I will explain why multilateral is possible on three easier than ethereum and so so then when this is when you present this here right it then does a hashing with the beacon exactly and there's like like let's say ticket ID yes and if it's smaller than the previously smallest one you register it and you wait until the fraud proof expires and so you still need another method which is like you know actually declare winner or yeah something like distribute or whatever exactly okay and so distribute Returns the car in this case to the winner to the winner yeah so as you can as you can see there are protocols indeed or applications where we can use Just For Speed payments Twitter um like Mass nft minting you're meeting nfts and pilot I mean nothing is stopping you from ordering your own your own meaning but but you like let's say I mean it's an object that means nfts too right like in this case it's buy ticket will be an object so then I can in parallel this function means nft yeah so but you can call it as a single loan I mean you are not touching anything on this stage no I whoa so that's the question is like no when I ride the code for this object right I just specify that this is not this buy ticket could even live outside this object okay in this module it can accept any module type here that's why we have the composability and show you that you cannot easily get on ethereum on The Theory of Everything is a u 256. how do you know it has how do you know it's a number how other contracts know the type that you represent internally in your in your own contract well in our case they are like strictly typed you know exactly what this is like of this type and we if you also need to use some like genetics we also have this object type T you know it's a from this Lottery uh and this is why we allow this composibility and I guess one example that you will see with three is people who are running independent contracts then I can go and create a new contract that they can input some object that you created on your own contract and maybe you can Define like many complex structures here of different contracts communicating with other contracts and different types of objects and evolution we can even evolve now if you don't like your contract anymore you can just create another contract that takes as inputs types of your previous contract and you know exactly the type of of the expected like inputs of the function so that's a benefit or I think it's is it clear at least yeah sorry at the high level yeah I think probably worse same pretty much that the the object that's stored on kind of on chain right which which are you know there's owner kind of and some let's just this is some Global idea I'm assuming right yeah that's used and then the code is living separately yes and the code yeah can refer to any of the object types exactly right and so through that only which might be single owner or uh like a set owner what is assert owner yeah right what is a cell phone okay I'm erasing this again and ah so I think yeah you have a contract on ethereum let's take a contract on ethereum we have some uh like what is the name for structome ethereum we use track but anyway you have you have a contract this contract has internally usually a map right where you have the owner comma some whatever is this U1 uid or something yeah whatever it is you have a map this one because everyone can go and write on this one it's a set object of course yeah right and it's actually helped us like some data structure internally to the smart contract yes if it belongs to the smart contract with high probability it will be a shared object but now you can even have objects that do not live as I said like data structure it's it's like a single thing you have an nft that has as ownership a user it's still coded inside this module but it's not part of some data structure and this is where you're getting all of this single owner and those that are not single owner so everything that you see in in ethereum Sparkle drug where it's usually a map of things everyone can go there and write places are the set objects and anything else is so how that let's say this is owned by some by some user but a third user wants to modify it they cannot so but let's say there's a give me an example uh we're playing a video game I'm I'm doing damage to your character the smart contract would modify the health points on your if you need to access it you need to go to the third object model if you need to modify it without me giving you the permission you need you need to use this but not all of the games are required but if you require this property I do agree with you you need full consensus you need to go through a certain object and maybe you can find the pattern like I don't want to be like uh blind here on the sense that when we say something it's only possible with certain objects yeah because you've seen before in the lockdown yeah you can turn things maybe you can define a model where you can literally do some updates in my character maybe you have my character well yeah you can have another object which which references this guy which is a game which is a game yes game object which has like how much HP deal etc exactly or you might even have an escrow which is a game engine yeah where you divide yeah the game studio is actually having all of the mutable stuff and then you're doing all of the things that they cannot touch yeah so that's the idea so so but but this is like so in module there is internal like you can have it you can have affiliate modules we have vectors now we're going to introduce um even limits on how big the this objects can be generally we don't want to allow like huge objects on ethereum because they have the has uh you know the references they can do whatever they want with the sizes but in our cases because you can actually remove things from this uh object you can you can you can create like a very interesting data structures maybe you can even have a map and this map gets up to an element and if you need more you're just creating an extra attention object on this that can can move on or you can even have a tree structure so you have pointers and you're creating multiple objects that are owned by this object and now that I mentioned this we have the concept of parent and children so you can have um you can have an object that owns other objects so when we say this nft is owned by the user it might be owned by an object and this object might be owned by the user so you can have all of this uh like interim structure of so if I modify this let's say let's say there is a structure right there is another object like house points objectives nft by a user I can modify that yes you as the user need to provide all of the path okay you provide the password and it knows that eventually this signature is required so in in the in the transactions yeah okay uh there is a way uh actually it was a good question there is a way to provide the parent object now and actually it can resolve all of the children of the or the children that you want internally to the execution maybe you say that's expensive now it can be a bit well it depends maybe you can find good good ways to do it like some prefixes or some references internally you just need a byte and you know that if you see this byte it's this object ID don't provide the whole object ID and yeah this concept actually exists it's very useful actually I can explain why it's useful imagine you have an account now in ethereum and and this account owns nfts in multiple smart contracts you're a company and eventually you want to sell your company to another bigger company what do you do you use near and yes it is near and accounts actually transferable yeah of course yeah you can do it but on ethereum you cannot do this right you cannot you did not set it up exactly so pretty much like you and in our case what you can do is you can have a main object or multiple objects and you you just total of the ownership under this object and you just change the ownership of this particular theorem you would do the same you would have a smart contract and then you would this would be yes but now all of these have uh literally types right you can do whatever you want now yeah because if you if you have a smart contact in ethereum maybe you don't have the the ability to have all of this abstraction and put whatever you want there here you literally can put anything as a children yeah and here you can actually Swap this the account itself is a contract yeah but you cannot have parallelization because of this well you paralyze on account level every account is independent and I agree but you have this account logically you need to split your account logically you cannot now because you can change it you cannot have the fast-pay model obviously because imagine in one transaction you are changing the account and in the other you are doing a transfer you need to have the order on who is the who is the owner at the time of transaction you need to synchronize online exactly we don't have this ability because of parallelization so obviously you lose something and you get something yeah uh but we're working on it by the way there might be solutions for this as well so I guess just to go back a little bit to this yeah so when I'm when I'm changing the state of this right you're saying uh this will wait until end of the ebook like to no if you change no no if you change the state and it's a set object you will not get the fast pay yeah but you have you have uh oh no no we have we have consensus okay okay so let's go let's go to this now right because we only mentioned one type of the consensus it's not full consensus but a way of like it's like a broadcasting exactly so what is the life cycle of a transaction right I only explained like part of it so we have a transaction and this transaction will go fast like let's assume in the fast pay world where the validators will give you to f plus one signatures and this is like for locking the the objects because here you will have object inputs object one blah blah blah so you're looking this uh actually you're getting all of these signatures back that that the validator say I lock this object yeah and then you return back the certificate this is a certificate now you're the aggregator you send this back and then the validators again will provide a 12 signature I executed it and uh this if if it's fast pay right if it's fast pay it will go through this model and this certificate of um the certificate after the execution that the effect certificate it's enough to go to uh yeah but if it's not fast pay then after the locking mechanism after this uh one round trip you can actually send it to narwhal and Bulls Ark and this is literally um one of the fastest this one doesn't even require a leader election so previously if you see all of our documents we had tasks and then it's pretty much the same team that actually created both tasks in Bulls Arc but task requires some random Beacon for fairness and other things and bullshark it can help if you have around the big one but it's not a huge requirement here and now you're not going through fast pay now you're going through this and here you have to wait for a block and after you have these blocks obviously you have okay some are with effect certificates some are with narwool what do you do we have another model uh where these fast pay executed transaction they can also go through a number eventually and all of these snorkels now this and this nargo again they go through the checkpoints and this is the part where Sue is a blockchain checkpoints evolve into yes yes but these are enough as evidences for uh like I don't know if you have a delivery versus payment you you see the payment and you deliver the object how frequently are the checkpoints so we're working on the checkpoints um it might be seconds uh I think we had an example with six to ten seconds if I remember correctly I don't know what the number will be on mainnet because now we're working on like uh synchronizing this part of synchronizing to to checkpoint and how long does this actually usually take like getting certificate or certificate this happens in parallel don't forget that the user no I know but it's still latency right like it's two we have two routers yeah so like a second it's it's less I mean it can be like usually it's the worst case it's 2.2 to 250 milliseconds or something yes you can get it in half a second okay um obviously depends on topology and and other things yeah right but but in theory you can do it but you can and it can happen on Parallel there is a huge benefit with I mean if we get this route yeah this is like uh horizontally paralyzable yeah yeah what does this mean right unlike other blocks exactly we can just build workers yeah and actually there are workers on algor and bullshark anyway but this is uh for exit optimization here on the consensus scheme this is this yeah so I will want to go deeper into this but yeah let's yeah but but but this one is actually narble yeah is um the mempool and we have mempool and this mempool is actually plugable and can work with both tasks and and we've seen some companies actually using this for rather you know their own uh their own systems but yeah that's that's the whole idea uh George is the best person actually to ask all of these questions um I can go a bit like I mean I think high level will be probably good to highlighters because you have workers here right I mean you can have workers and it is possible that they put narwhal um uh packets that they so just yeah just so narrow wall so let's say you have all those validators right yes so you assign some of them to be like well yeah like so the transaction like comes in yes but all of them they are forming different different uh let's say blocks small blocks yeah and it is possible that one block is having I mean this blog is having tx1 this also has the X1 they have different blocks yeah and then they're starting proposing this yeah and if you see a transaction that was already included in a different block I mean it was already included there is some duplication here yeah but this is what gives you the the speed right I mean some transactions are indeed in different blocks however it doesn't really matter right you just need one of them to include it and it's a dug you get a duck in bull shark and eventually you have you know multiple uh like objects multiple blocks being proposed some of them might be overlapped not fully overlapped and then you go back to check if uh like a transaction was already included you don't include it we have some hashmobs internally and all of this so so like will every node need to receive blocks from everybody else there is all of them can actually propose blocks well they propose but then they will need to receive it to to identify if it wasn't yes you need to have plus one signatures right if you receive 12 even if you didn't receive something but you receive an Evidence the 12 plus one has signed if you accept it yeah that's the idea well you will see a few systems that actually are down and only two f plus one are live yeah eventually you need to sync up yeah you have to have plus one signals you assume that the system is running correctly holds but all of them can propose that's the thing and there is a difference because it's a dug Mev is slightly different on how you do attacks you know you know right it's more complicated yeah let's not go and maybe it is whole separate I'm just like just so for clarity right so let's say I am as a user right uh in this case like because I already have the certificate that they saw the transaction if you go through yes yes like even if this is a look this is right even if I'm not going through this okay even if I'm not going through so I'll just pay I still send the transaction first to all the the first one to get the lock the transaction that I locked the objects for for now yes you are sending it even to another world yeah and so and so so I send it to everyone or you can you can send you can send to some of them you don't need to send to it and so they propagate it with blocks right yes and so that's part of narul the propagation of locks and the bull shark is a way to resolve all of this into it exactly in theory you can even send it to one but you have the risk that this one will not for yeah so you can actually pick a bit more like this number uh I don't remember if George has a real number we were testing this number but it will be obviously if you send it to f plus one yeah it's enough that someone will will propose it yeah okay so then then everybody proposes a Blog they probably and then they start sending their blocks to the other violators right and so so I'm from my from a single validity point right I have my blog that I proposed and then I received some other uh there's no time stamping right so they come all it at the moment we don't have timestamps you can have timestamps in theory so it's you cannot have timestamps here it's more difficult yeah because this is on Parallel but here you cannot aggregate all the time but here you can have timestamps in theory you can have like the block proposal here to have a timestamp well but I'm just saying like just in general it doesn't it doesn't matter at which like that you receive oh no no it's at that time right yeah so they just point at like what was the last thing they saw exactly uh and but they point at all of the things they saw right or what like how how are they determining the referencing well you have you have transactions that they refer to previous object versions We have versions from the object and obviously you know you know where to reference if this has been signed by 12 plus one yeah it's it's fine I mean you can reference you can just reference that yeah okay and so then then within here you have like this transaction one it's transaction one here like at which like at some point you build pretty much an ordering right of transactions yeah like how this is happening and this is what we're working now in the checkpoint okay so this is like kind of as this all gets aggregated then you're like okay now we know like we saw two f plus one up to here so we can run this this order exactly this exactly and the checkpoint can also have a timestamp yeah well and it's up to the application to say okay do I trust this time if if we if we don't have time yeah I'm not here but we can have here which is more like fine grain there is sequence of blocks well here in the dark it's very difficult to have a good time yeah uh but yeah that's the whole idea of like the the basic protocol what people can understand on on this one is definitely you need one round trip to get a locking on the objects yeah some certificate objects and then you get to two routes why do you need to lock the object if you go into this oh this is uh I have a feeling I'm not 100 sure on this but I have a feeling because we want to actually have one flow independently on if you are going to here it looks the same yeah yeah it looks the same the user I mean it's as easy as possible for the user they don't even need to know where they're sending data section this is happening everything on the background so that's a general way of of how sui works right and we explain a few examples there is also a move in the game yep and in move um some of the hints that we gave already is everything is object yep like it's it's uh strictly typed there is also some capabilities like the object can have capabilities like drop this is droppable it has key it has store it has there is another one as well uh but all of the idea is when you define an object you you say has dropped yes key has stored uh whatever you can you can actually have on this one and these are used I copy I think it's also copy so there's a standard runtime level yes exactly and if it's a copy you can copy it you if you are not having like a copy you cannot even copy it on the code we will stop you uh the same thing is for key the same thing is for store what is key key key in store have to do with is it an nft a real nft or it's like uh you have an object that references to another object it can be a key to another object uh and drop if it's droppable so user is a key object yeah account is a key yeah it can be yeah so so that's the idea we have this let's assume abilities capabilities right yeah well let's let's yeah it can be cool right but it's also it's also abilities that they have um so some is working on some very interesting uh like even extra some is our CTO um extra things that we might have here and uh Todd novaki uh who's leading like the move team and there is another thing that we have to know about three so we explained all of this what we didn't explain is transaction costs storage and this kind of stuff Auto economics is very interesting right what is usually the the cost for a transaction why do you pay the validators where do you pay gas for two things execution and Storage right you need execution yep yep you have you have questions no no I said yes execution starts you pay for this and also this is the cost of the validators pay right I mean a validator has to execute transaction but at the same time they need hard disks they need all of this stuff to maintain the network and the state uh what we do is we split the gas between these two and we have a storage fund what is a storage fund when you pay for this transaction let's assume that this is the TX cost part of this well there is there is there are some functions uh from Alonso our uh like economist go to a storage fund and this storage fund is actually giving the opportunity for the users if in the future you want to delete this nft the storage that takes you will get some rebuttal you get the return yeah yes you get some return and it also gives an advantage to the validators are we good with the time are we good with the time okay okay cool um and the storage fund is reinvested yes and there is a benefit for this right imagine you're a validator and you come on here later yeah you need to maintain State you didn't get a thing right in a single sense you're not paid for the transactions exactly but you need to store all this you have the students funded we can pay you obviously you are not going to get as a user all of this I mean if you you deleted you're not getting everything back yeah like the battle is sorter uh but at least you're getting something some people might use it to have like I'm storing objects and then if the market goes up in practice I I can even make money in theory but let's assume that this is not the the reason the reason is if your business goes I mean you dissolve your business you can get something back right you don't need the nfts anymore why do you need to pay so that's that's another difference I don't know how how you are doing it on here do you have a different yeah so we lock near itself and if you really delete the storage we get back you get back near okay and then and then developers you can split it between execution and storage so we your gas is on the execution and then you pay near for storage oh I see so storage is like it's called storage taking but it's very similar to this model okay so there is a different token for the gas it's not different it's just it's it's it's it's two parameters it's two parameters okay but this has a price as well or it's me yeah it has it has a price that fluctuates with like okay how expensive computation is and this is fixed price fixed per byte yeah I see because like storage doesn't change right like yeah in fact the fact that more people want to use stuff so that's that's another thing that we're doing there is another uh like part of sweet so I mean just like on the search fan like yeah so this is actually reinvested or like how is that managed so there is some function on how we Define all of these parameters in this storage fund what do you mean by reinvested well it's like it was just it's just a bunch of story sitting yes it's there and there are some functions giving money to the Valdez and to the users for the battles I see because then we might not be solving if we didn't right you can invest it in theory you can you can do a lot of things uh but this is something that will be defined in the smart contract level not outside the the smart contract right I mean everything will be transparent if something happens to this one yeah but in practice you need to have all of the money to return back to the users if they deliver if they want to free everything yes if they want to free anything so that's one part um the other thing that is interesting with us is crypto agility I'm going into my territory now so uh what do we have right we do have API internally from the uh from the STD API on growth 16 like we have zero knowledge proofs yeah I mean some the smart contracts can literally uh execute zero knowledge proofs by just calling the graphics dot verify only verification unit on the blockchain we we made like some improvements on artworks I don't know if you write rust you know that the result Works RS and this one is okay it's it's like the um all of the structure of our chords is great but we made some additions by adding a blst which is a BLS library for um uh like faster uh proving uh sorry faster operations on the BLS care and now we are like two two times more faster than the the original lock works so we have very very fast verifiers on Google 16. um we also have obviously we have the BLS verification even internally to the contracts we do have I mean the regular cdsa did you did you speed up BLS because you say we're using the plst but we're working you will see in a couple of weeks another optimization of the aggregation on top of the dampone paper um we we managed to make a way where because it's a validators keys if you're using BLS mostly you need it for validator signatures what you can do is you can have different ways of aggregating by even avoiding proof of possession of the case you don't you might not need proof of possession anymore usually you need to to prove because you're doing aggregation that hey it's my key to avoid the kind of attack called wrong key attack so I because you're aggregating somehow I know some other validators keys and I create my key in a way that I take advantage of your keys and then I can omit your signature and somehow the people who believe you signed yeah we found some ways to make it a bit faster so we call it so there is a version of BLS let's see if we are going to to have it already because the bill is the implementation and the aggregation is really fast now I think we're the first company that we have we have a library called Fast crypto foreign so this is popular enough now I mean even fans are using it um that have uh the fastest implementation we find just we make all of the adjustments obviously we use them on Suey but this one is like published independently and everyone can use it we have Graphics team there we have BLS we have vcdsa we have EDSA with some improvements yeah to five five nineteen I personally found many attacks on all of the implementations like great yeah and it's two months ago three months oh no it was July when I think all of the implementations were broken could be broken okay could be broken and there was even treasure and some other wallets that they had an exposed API where someone if they were not careful they could expose a private key treasure was lucky and he didn't have the like this vulnerability being exploited yeah but someone could do it accidentally now they fixed it I mean they were super fast to fix these things and it's in fast crypto you have yes we have already fast crypto and what we do in move so we have moved and provide all that energy and in move you can have rust I mean uh libraries libraries and then obviously you can have binaries and we execute this as a native function move now okay so we actually implement the the algorithms in Rust and then move here some like recompilations first yes it exposes the API um it's it's all of this and there is also another about Pederson commitments this is for um like confidential transactions and other things that you can do yep um generally you will see a very rich API on cryptography we even have dran support native drill and support so literally you can you can you can use their Durant committee internally to show it today we also have some other protocols that we implemented like some optimistic Satoshi dies for uh for lotteries even multi-party so you can even avoid vrfs we're working on others examples right on top we do have examples obviously we're not providing confidential like payment now but the the functionality is there that if someone has the license to do it they can do it um so these are like parts of the uh signatures and like all of the fast crypto part but we have another thing as well it's what the user can use to sign do I don't remember if near are you crypto agile on what types of signatures people can use we have ccdsa and adults and curve yeah we can add more and and EDSA or yeah okay so you have these two yeah okay you can add more like exactly and I guess you have K1 right the the ethereum curve yeah so we now work on the R1 as well there is a benefit there is benefit yes what does it means yeah yes mobile enclaves so we're having this and obviously we're making because they're not good implementation of R1 unfortunately you will realize it as well this is faster this is faster because the Bitcoin World actually made it faster yeah and this one is faster because we also contributed on this no no generally this one is way faster than it is it is but but even our team actually contributed a lot to making this a lot faster even on battery verification if you go we even have half aggregation here you can literally aggregate without an interaction in the DSA signatures to have half of the size we publish this on RSA conference like two years ago while at Facebook uh but yes R1 and we're going to even have BLS in the user side because in BLS you can have very like efficient threshold schemes without going into this because we have some of the same implementation for this but yeah it's like is it deterministic yeah it's painful exactly and then we said okay yeah BLS let's use BLS it's a bit more expensive by the way you can see all of the benchmarks in the fast crypto Library we have diagrams you can see like how the performance scales yeah sweet points about 42. that's the answer it's yeah it's it's 14 times more expensive so yeah so that's we were actually planning to use BLS for our validator but you have to ah for validators yes well we end up doing this because at that point if you're using uh it's too expensive how many validators do you have like 100 plus 200 okay and then BLS BLS will perform better download fast crypto and you can use it literally I mean we did a lot of good work there to to make this as fast as possible to be comparable but obviously we have less then there is a point to to compare between the size of the signature because the size also plays a role yeah and the execution cost uh and you can do some other batching and parallelization we also did some parallelization here um so this is one uh this is the other part on on cryptography and and a very interesting uh like signature scheme is coming I cannot unfortunately cannot we really because we didn't have we don't have yet the security proof but this one will be um I think one of the best ideas in the space on how you can authorize users without Smart contracts um so that's that's the main idea behind behind sui um I don't know if you want to ask any other deeper question I mean like you can even go to transparency and other things so today is the day that you know that I publish something it's very interesting right I mean I was going to be published a bit later right so yeah yeah you will publish it later but the idea is uh I played like a big role in the past personally like as my personal goal you know while working at Libra we had to work with Regulators so I was involved in this meeting sometimes and I had all of the input from Auditors Regulators like regular Auditors not only governmental Auditors and Libra literally it wasn't technical the issue that didn't work right it was other things outside our territory that didn't allow it to to to be able to be a product however we did a lot of work on solvency we had very good economies even Dalia from chain link now and Christian catalini like the economies that we have now in Syria Alonso de cortari myself as a cryptographer who is now on a16z and some other cryptographers like around the world in Visa research in Cornell University Panos and Yan we worked a lot on finding okay even if we want to have solvents it's not easy it's very very difficult how you have a centralized exchange or even in decentralized exchange if it uses some of the assets outside the blockchain how do you even verify that what they are liable for they have the exact same assets or even more srps and then some companies after FTX started to offer like reserves and proof of liabilities and proof of solvency so the most common thing is you are putting four liabilities you are putting all of the user balances As Leaves yeah and then numericalize it and you michaelize it exactly you are going into and then you let users go and check that they're exactly what's this what's the the proof of liabilities this is a decentralized uh probabilistic random sampling yeah that's what it is we call it personal liabilities but this is exactly just like you need to rely on users to actually go check which yes but even in the regular there is no other solution and I can explain to you why there is no other solution this is for sex right sex of the centralized exchange not the other sex um uh no no you remember vitalik's recent post how to have a safe sex this was the the title literally but obviously we mean about uh like centralized exchanges the problem is first they have issues with privacy yeah and the other thing if if you have like the values here 5 10 12 I mean people who do inclusion proofs they can see the neighbors if you hide them you need an auditor and the auditor can obviously see them but the users can only take inclusion and they have to blindly trust the auditor this is one of the things that we mentioned in uh like binance now but some other exchanges that they're also using the same algorithm like Kraken and others and something that they always do I don't know why people are doing it is so instead of using 32 bytes they're only using for example eight bytes for leaves and this is very dangerous why it's dangerous because someone cannot find collisions of chain here you're using also some salt per user you can just play with the salt until you find two balances you report the lower balance to the auditor you report the real balance to the user and the auditor will do the sum and we'll see some very small value even zero in theory and the user will say no no my balance was there but this is completely wrong and this is I don't know I feel the mistake is based on the fact that traditional Auditors have implemented the original Maxwell approach it was Greg Maxwell from from the Bitcoin like space like a great scientist um he didn't he didn't propose this but the first auditor actually did it for ux Citizens they didn't want the people to see like Imaging right and then you see some numbers here and they say okay let's truncate it but this truncation is actually uh vulnerable because now eight bytes and if you go to four bytes for a collision attack this is two in the power of 32 I can do it in seconds like and uh we identified this issue we identified other issues regarding the summation uh vitalik Stakes now a leading corollon trying to propose even a standard and there is the communities at Cape roof and many cryptographers that we literally want all of this yes to be zero knowledge proof so you don't need to provide the pairs yeah we do have a paper it's called Depot Plus and actually this year was in the top 10 Innovations of 2021 in one of the biggest I think uh Innovation contests in the world see so and this one works really well with proven security and all of this vitalik now is proposing another scheme where instead of using this let's like snark everything and by snarking everything probably we can have a faster verification proofs and other things however this works in my opinion we should start with this at least to ensure that it's better than the medical tree approaches and I'm uh like all ears to see vitalik coming with real with with snark to use yeah do we need a trusted setup go to the regulators and convince them that we need addresses set up there are all of these things that snarks sadly yeah it's still it gets very close yeah while this one is using bulletproof it doesn't require a trusted setup okay so we say let's start with this thing we have proof of liabilities how do you solve proof of assets there it's difficult right with centralized exchanges that might have liquid semi-liquid illiquid assets yeah what do you do you need both Auditors and oracles but also like yeah I mean they can be like investing in that's part of the strategy right exactly investing contain is probably traceable but investing right yes and and this is where the problem starts sometimes I don't know about the FTX situation right I mean nobody knows the the correct number but the idea is even if they were and something was in liquid in practice you're not solving I mean if someone tries to withdraw the money you're not solvent and it's very tricky how to define so yeah like well this is where it is the question of defining some limits and exactly and lenders of lust Resort something that I realized in the past this was Deloitte in this particular case we found attacks on on the Lloyd as well two years ago right very similar attacks that we found now on binance uh Banos by the way super uh transparent at least on me and they told me that they will check everything they're they're open and I give them yeah I give it to them like this is like they just didn't know right it's the auditor offering something and if you don't have I don't know crazy cryptographers in your team you just accept what the auditor is giving you yeah and they said they will fix it so I feel confident they will do it but even back then um one of the issues that we have is sometimes synchronicity how do you synchronize the input you get from the proof of assets with the proof of solvency in the millisecond level because because you know what can happen you know there is an audit yeah like a moments ago you move the assets here and then you're removing them back again or there are in-flight transactions of the user right I mean we need to snapshot at a point yes but let's assume at the time like one millisecond before the uh like the deadline I'm sending money but you will see the transaction on your report when whenever the sex decides yeah and there is a thing right they can play in this late moment uh transactions they can play and Deloitte told me that we give a five percent uh you know threshold yeah because of all of these things that can happen but we realized that most of them had the one to three percent Surplus if they were ah like secure so all of this is happening now we are trying to even us miss them and I guess all of the other companies will help with their cryptographers we need the standard yeah because something that can happen is bitmex if I remember correctly published something literally today just hours before my announcement on the binance vulnerabilities with a different scheme and then balance is going to propose a different scheme and then vitalik is proposing another one I say let's start with this and we can go to Italian we cannot have 10 Solutions yeah right it's very important to go with cryptographers with Auditors sitting on the same table with exchanges with l1s and people who want to help it's also proof of assets as we said see together and have a standard okay yeah sounds good well thank you I mean thank you thanks so much yeah for deep dying the story and uh yeah subscribe comment check out the papers and reports and we'll see you next time thanks again","transcript_synced_at":"2026-11-04T03:54:29.217Z","segments":[{"start_seconds":3,"text":"welcome everyone um to our new episode of whiteboard series I'm Ilya co-founder of near and I have Costas a chief cryptographer at","url":"https://www.youtube.com/watch?v=I4YDr6FPFJo&t=3s"},{"start_seconds":12,"text":"mistin labs and previously at Facebook yeah and today we're going to be diving into all those things that mistin lab is working on","url":"https://www.youtube.com/watch?v=I4YDr6FPFJo&t=12s"},{"start_seconds":20,"text":"thank you Leah so by the way yeah I'm also coming from Facebook as the whole Founders team five","url":"https://www.youtube.com/watch?v=I4YDr6FPFJo&t=20s"},{"start_seconds":27,"text":"of us we used to be leaders there I was leading the cryptography part obviously while Libra was collapsing I was","url":"https://www.youtube.com/watch?v=I4YDr6FPFJo&t=27s"},{"start_seconds":35,"text":"actually dealing with other staff including WhatsApp security and cryptography it eventually well left and we built uh actually and after a year","url":"https://www.youtube.com/watch?v=I4YDr6FPFJo&t=35s"},{"start_seconds":43,"text":"now almost a year we recently launched testnet we had devnet for a while we're doing really well on testnet we have","url":"https://www.youtube.com/watch?v=I4YDr6FPFJo&t=43s"},{"start_seconds":50,"text":"wave one now running and yeah any question that I can answer I'm open for for you yep so I mean let's dive in how","url":"https://www.youtube.com/watch?v=I4YDr6FPFJo&t=50s"},{"start_seconds":58,"text":"sui is structured and then we can dive in right of course so obviously we all know the uh the basic Paradigm of how","url":"https://www.youtube.com/watch?v=I4YDr6FPFJo&t=58s"},{"start_seconds":66,"text":"blockchains are built right you have uh transactions that are reaching some blocks eventually you're waiting","url":"https://www.youtube.com/watch?v=I4YDr6FPFJo&t=66s"},{"start_seconds":75,"text":"until uh either some time or until you have enough transactions here you're","url":"https://www.youtube.com/watch?v=I4YDr6FPFJo&t=75s"},{"start_seconds":81,"text":"going through some consensus and then these transactions via some housing and obviously someone will pick","url":"https://www.youtube.com/watch?v=I4YDr6FPFJo&t=81s"},{"start_seconds":90,"text":"the transaction that will go into this block either by mining or by some proof of stake or any other method you will create a different blog with different","url":"https://www.youtube.com/watch?v=I4YDr6FPFJo&t=90s"},{"start_seconds":98,"text":"transactions as they come here and then we said okay cool this was pretty much the the model that we used to have at Libra and most of the","url":"https://www.youtube.com/watch?v=I4YDr6FPFJo&t=98s"},{"start_seconds":107,"text":"blockchains are built under this uh like pretty much the same construction but we said there are a few opportunities where we don't need to wait for blocks maybe","url":"https://www.youtube.com/watch?v=I4YDr6FPFJo&t=107s"},{"start_seconds":115,"text":"we can have some parallelization native into the system and in fact you can you can still evolve into a block situation but before you","url":"https://www.youtube.com/watch?v=I4YDr6FPFJo&t=115s"},{"start_seconds":124,"text":"build a block you might have other structures that you can avoid all of this blocking until you get enough transactions and maybe uh you cannot","url":"https://www.youtube.com/watch?v=I4YDr6FPFJo&t=124s"},{"start_seconds":132,"text":"parallelize because now you need some sequencing here right all of the transactions should go with some order and we said okay we can we can avoid it","url":"https://www.youtube.com/watch?v=I4YDr6FPFJo&t=132s"},{"start_seconds":139,"text":"so sui took a very different uh like approach of actually combining two schemes two mechanisms to have all of","url":"https://www.youtube.com/watch?v=I4YDr6FPFJo&t=139s"},{"start_seconds":148,"text":"this agreement on the transactions and now we have transactions that can actually fly independently and","url":"https://www.youtube.com/watch?v=I4YDr6FPFJo&t=148s"},{"start_seconds":156,"text":"unparallel tx1 tx2 and tx3 we don't need consensus you go through the validator set we are","url":"https://www.youtube.com/watch?v=I4YDr6FPFJo&t=156s"},{"start_seconds":165,"text":"delegated proof of stake which means that people can actually give their with some weight they'll take to someone else","url":"https://www.youtube.com/watch?v=I4YDr6FPFJo&t=165s"},{"start_seconds":172,"text":"who will vote on behalf of them like a regular democracy and these transactions will go on Parallel into uh you well","url":"https://www.youtube.com/watch?v=I4YDr6FPFJo&t=172s"},{"start_seconds":181,"text":"you're having questions about democracy yeah regular democracy is a very broad definition but yeah off topic from this yeah I get it I get it let's assume","url":"https://www.youtube.com/watch?v=I4YDr6FPFJo&t=181s"},{"start_seconds":189,"text":"there is a set of validators uh there are epochs of course like every few moments at the moment we have a day for","url":"https://www.youtube.com/watch?v=I4YDr6FPFJo&t=189s"},{"start_seconds":196,"text":"the nipple katsui uh this can be rotated based on the stake and let's assume now that we are in an ebook and we have all of these transactions happening on","url":"https://www.youtube.com/watch?v=I4YDr6FPFJo&t=196s"},{"start_seconds":205,"text":"Parallel and what will happen in this particular case I will assume like four or five situation you just go on this transaction to the validators and you","url":"https://www.youtube.com/watch?v=I4YDr6FPFJo&t=205s"},{"start_seconds":213,"text":"ask a signal to your own parallel from all of the four out of five let's assume it literally five and you need four out of","url":"https://www.youtube.com/watch?v=I4YDr6FPFJo&t=213s"},{"start_seconds":221,"text":"five for for bft you get the signature back and then this might be enough if you can construct now the user the","url":"https://www.youtube.com/watch?v=I4YDr6FPFJo&t=221s"},{"start_seconds":228,"text":"difference between the other chains and three the user here is actually getting the transaction of the getting the","url":"https://www.youtube.com/watch?v=I4YDr6FPFJo&t=228s"},{"start_seconds":236,"text":"signatures for this transaction they are forming a certificate and they're sending it back to the validators how does this help you do you understand","url":"https://www.youtube.com/watch?v=I4YDr6FPFJo&t=236s"},{"start_seconds":245,"text":"what why this is actually useful well it's done blocking right so you don't block on waiting for other stuff and it's from the user's perspective so","url":"https://www.youtube.com/watch?v=I4YDr6FPFJo&t=245s"},{"start_seconds":254,"text":"you can order your transactions any way you want exactly so there is a benefit here in the sense that these validators do not need to interact between them","url":"https://www.youtube.com/watch?v=I4YDr6FPFJo&t=254s"},{"start_seconds":262,"text":"which usually introduces and then square or depending on the protocol it might be n-cube like communication cost now what","url":"https://www.youtube.com/watch?v=I4YDr6FPFJo&t=262s"},{"start_seconds":269,"text":"we did is we have the user and the user is actually the driver of yeah I'm sending a transaction I'm going into the validators getting only","url":"https://www.youtube.com/watch?v=I4YDr6FPFJo&t=269s"},{"start_seconds":277,"text":"signatures they don't communicate between them then I receive all of the uh signatures back we are using BLS and","url":"https://www.youtube.com/watch?v=I4YDr6FPFJo&t=277s"},{"start_seconds":285,"text":"BLS in this particular case can actually aggregate the signature the signature the signature is aggregated on the usage side and I send it back to the","url":"https://www.youtube.com/watch?v=I4YDr6FPFJo&t=285s"},{"start_seconds":293,"text":"validators so the validators they see um um a signature of like n to f plus one","url":"https://www.youtube.com/watch?v=I4YDr6FPFJo&t=293s"},{"start_seconds":302,"text":"of them and they say okay if other people also sign and I also sign we have to have plus one I can accept this transaction without communicating with","url":"https://www.youtube.com/watch?v=I4YDr6FPFJo&t=302s"},{"start_seconds":310,"text":"them it's in instead of having the validators actually communicating you have the user being the aggregator and in this two-step process which can","url":"https://www.youtube.com/watch?v=I4YDr6FPFJo&t=310s"},{"start_seconds":319,"text":"happen on Parallel of course you can actually have the same thing as a consensus mechanism these is uh is taken from a protocol that Jordan Isis and","url":"https://www.youtube.com/watch?v=I4YDr6FPFJo&t=319s"},{"start_seconds":327,"text":"some other people in our company Alberto as well uh have created back at Facebook it was called Fast pay","url":"https://www.youtube.com/watch?v=I4YDr6FPFJo&t=327s"},{"start_seconds":335,"text":"so this is a method for fast payments without food consensus there is no full consensus here yeah and","url":"https://www.youtube.com/watch?v=I4YDr6FPFJo&t=335s"},{"start_seconds":342,"text":"um you can have parallel transactions obviously there is a caveat here right I mean you cannot do it forward when you don't have order yes exactly now you","url":"https://www.youtube.com/watch?v=I4YDr6FPFJo&t=342s"},{"start_seconds":349,"text":"don't care about the order what are some like examples that this works can you give me a few applications where you don't need ordering well given your","url":"https://www.youtube.com/watch?v=I4YDr6FPFJo&t=349s"},{"start_seconds":358,"text":"client pay probably you mean payment yeah you're right okay so you go to Starbucks and uh by the time you go","url":"https://www.youtube.com/watch?v=I4YDr6FPFJo&t=358s"},{"start_seconds":366,"text":"there you buy a coffee and then obviously they they're ready to prepare your coffee to to serve you they don't need to wait for the block","url":"https://www.youtube.com/watch?v=I4YDr6FPFJo&t=366s"},{"start_seconds":374,"text":"you just send the signatures uh I mean the request signature for to the validators you don't need to wait three five ten seconds until the block is","url":"https://www.youtube.com/watch?v=I4YDr6FPFJo&t=374s"},{"start_seconds":382,"text":"formed and you are getting these uh signatures by yourself and you're giving them directly to um to Starbucks and Starbucks now knows","url":"https://www.youtube.com/watch?v=I4YDr6FPFJo&t=382s"},{"start_seconds":390,"text":"that this certificate will one day go to a Blog now they can serve you the coffee so what happens if you don't have the money on your balance","url":"https://www.youtube.com/watch?v=I4YDr6FPFJo&t=390s"},{"start_seconds":399,"text":"well it's your object right I will explain how the object models work uh but at this time I mean you can get the","url":"https://www.youtube.com/watch?v=I4YDr6FPFJo&t=399s"},{"start_seconds":406,"text":"certificate Starbucks will check the signatures but the validators when they send the transaction they check that you had the balance to actually pay for this","url":"https://www.youtube.com/watch?v=I4YDr6FPFJo&t=406s"},{"start_seconds":414,"text":"element and because the or the in order to shine obviously they take the correctness of the transaction but this is what they do they didn't communicate","url":"https://www.youtube.com/watch?v=I4YDr6FPFJo&t=414s"},{"start_seconds":422,"text":"with other validators as the trick they do the execution they do the Locking of the object and they take that you have enough balance to pay for this so there","url":"https://www.youtube.com/watch?v=I4YDr6FPFJo&t=422s"},{"start_seconds":431,"text":"is a state transition that happens when you receive the kind of transaction first time you have changed the state","url":"https://www.youtube.com/watch?v=I4YDr6FPFJo&t=431s"},{"start_seconds":438,"text":"Somehow Here yes exactly there is there is a state change but the small difference between other account based","url":"https://www.youtube.com/watch?v=I4YDr6FPFJo&t=438s"},{"start_seconds":445,"text":"systems and our system yeah we're somewhere between account based and utxo based yeah so sui is not utxo based like","url":"https://www.youtube.com/watch?v=I4YDr6FPFJo&t=445s"},{"start_seconds":453,"text":"completely it's not even an account based well you have an account so we can uh let's finish with this","url":"https://www.youtube.com/watch?v=I4YDr6FPFJo&t=453s"},{"start_seconds":460,"text":"stuff and then I can explain why the object model in our case is very useful for fast paid fast pay wouldn't work in a purely account based system of","url":"https://www.youtube.com/watch?v=I4YDr6FPFJo&t=460s"},{"start_seconds":469,"text":"ethereum for example uh the idea is that you have like imagine this transaction is using only one utxo","url":"https://www.youtube.com/watch?v=I4YDr6FPFJo&t=469s"},{"start_seconds":476,"text":"this might be the object that I'm sending you it might be five dollars right it's these five dollars that will change state of course and what what's","url":"https://www.youtube.com/watch?v=I4YDr6FPFJo&t=476s"},{"start_seconds":484,"text":"the change of the state I'm changing the owner I'm just sending you a particular object so imagine all of them as being","url":"https://www.youtube.com/watch?v=I4YDr6FPFJo&t=484s"},{"start_seconds":493,"text":"like nfts yes but it's fungible right it can be fungible it can be mutated but it doesn't matter it has an owner so the","url":"https://www.youtube.com/watch?v=I4YDr6FPFJo&t=493s"},{"start_seconds":502,"text":"balances are not under accounts anymore and they're not under contract like internal data structures they live uh","url":"https://www.youtube.com/watch?v=I4YDr6FPFJo&t=502s"},{"start_seconds":510,"text":"independently so I'm sending you this and this is why I can make the state change without affecting anything else on the network I'm only affecting the","url":"https://www.youtube.com/watch?v=I4YDr6FPFJo&t=510s"},{"start_seconds":517,"text":"state of this particular object um and this is how you are getting all of this benefit on payments some other","url":"https://www.youtube.com/watch?v=I4YDr6FPFJo&t=517s"},{"start_seconds":526,"text":"examples that are very interesting okay let's go and listen right payments obviously you can have confidential payments","url":"https://www.youtube.com/watch?v=I4YDr6FPFJo&t=526s"},{"start_seconds":534,"text":"because there is no there is no huge difference between sending real uh like visible integers or sending competitions","url":"https://www.youtube.com/watch?v=I4YDr6FPFJo&t=534s"},{"start_seconds":542,"text":"yeah I mean you can do whatever you want this can also be objects what you can do is you can even build like your personal webpage","url":"https://www.youtube.com/watch?v=I4YDr6FPFJo&t=542s"},{"start_seconds":550,"text":"it's something that you own every single time you're mutating your page nobody else is affected if you know how to do your ordering by yourself it can be","url":"https://www.youtube.com/watch?v=I4YDr6FPFJo&t=550s"},{"start_seconds":559,"text":"unparalleled you don't need blocks anymore the same thing is for Twitter We call we have this example on three we call it sweeter what is a tweet it's an","url":"https://www.youtube.com/watch?v=I4YDr6FPFJo&t=559s"},{"start_seconds":568,"text":"nft so in practice when I'm sending something to you I'm creating an nft and I'm sending you to the network I'm","url":"https://www.youtube.com/watch?v=I4YDr6FPFJo&t=568s"},{"start_seconds":575,"text":"the owner then uh in this nft I might even have a reference if it's ready to eat if it's a like or it's something else and in practice everything lives as","url":"https://www.youtube.com/watch?v=I4YDr6FPFJo&t=575s"},{"start_seconds":584,"text":"an nft in in theory you can imagine surya's yes we have the file we have the nft world we have all of these uh like","url":"https://www.youtube.com/watch?v=I4YDr6FPFJo&t=584s"},{"start_seconds":592,"text":"history and we learn from the goods and like bad things of of the past and we build a system where everything can be","url":"https://www.youtube.com/watch?v=I4YDr6FPFJo&t=592s"},{"start_seconds":599,"text":"considered an NFD yeah it's just I mean it's an object store right where every single thing has an owner which can exactly mutated exactly and anything","url":"https://www.youtube.com/watch?v=I4YDr6FPFJo&t=599s"},{"start_seconds":608,"text":"that you can imagine that it's objects that you control nobody else can touch it's only you that actually can Define the order","url":"https://www.youtube.com/watch?v=I4YDr6FPFJo&t=608s"},{"start_seconds":617,"text":"can be built with this fast pay model uh some other examples are even things that you cannot imagine it is possible to do","url":"https://www.youtube.com/watch?v=I4YDr6FPFJo&t=617s"},{"start_seconds":624,"text":"with single owner we call them single owner objects yeah because they have a single owner can you imagine of something","url":"https://www.youtube.com/watch?v=I4YDr6FPFJo&t=624s"},{"start_seconds":632,"text":"that you believe that it would require some locking but I can avoid it well I think the most interesting thing","url":"https://www.youtube.com/watch?v=I4YDr6FPFJo&t=632s"},{"start_seconds":640,"text":"is uniswap uniswab you cannot do you got me here okay so with unissue app","url":"https://www.youtube.com/watch?v=I4YDr6FPFJo&t=640s"},{"start_seconds":648,"text":"and the transactions for which you need some people actually to agree on the order yes on some ordering yeah you can do different things one is in this one","url":"https://www.youtube.com/watch?v=I4YDr6FPFJo&t=648s"},{"start_seconds":657,"text":"transaction you can probably have a transaction that gets two transactions as an input we both sign this transaction and we submitted a section","url":"https://www.youtube.com/watch?v=I4YDr6FPFJo&t=657s"},{"start_seconds":664,"text":"so we agreed on the ordering together uh like uh beforehand there is an issue here however in some applications it might be tolerable","url":"https://www.youtube.com/watch?v=I4YDr6FPFJo&t=664s"},{"start_seconds":672,"text":"that the other player might at the same time send the same object that they locked in the same transaction somewhere else and it might be an equivocation","url":"https://www.youtube.com/watch?v=I4YDr6FPFJo&t=672s"},{"start_seconds":679,"text":"yeah so there is a race will they succeed or the other transaction will succeed and there is another race maybe","url":"https://www.youtube.com/watch?v=I4YDr6FPFJo&t=679s"},{"start_seconds":686,"text":"this transaction will succeed on 50 of the validators yeah and the other on the other 50 and then you you have a problem","url":"https://www.youtube.com/watch?v=I4YDr6FPFJo&t=686s"},{"start_seconds":694,"text":"yes you need to resolve it yeah and then the resolution I guess you're going to ask how do you resolve this right the resolution can happen even the same user","url":"https://www.youtube.com/watch?v=I4YDr6FPFJo&t=694s"},{"start_seconds":702,"text":"can do a mistake without an atomic Swap and try to send an object yeah for some reason I have two services that are running on Parallel I have two servers","url":"https://www.youtube.com/watch?v=I4YDr6FPFJo&t=702s"},{"start_seconds":709,"text":"and this is the same object if you are sending the same object so what we can do is we're resolving this at depot level debug level you can do it and","url":"https://www.youtube.com/watch?v=I4YDr6FPFJo&t=709s"},{"start_seconds":718,"text":"there is because the book level you can actually say if you didn't receive the transactions can actually Define the ebook that they want to be executed if","url":"https://www.youtube.com/watch?v=I4YDr6FPFJo&t=718s"},{"start_seconds":727,"text":"you didn't receive it on time just throw it and then you can start the game what share ebook Links at the moment it's one day well this is something that we will","url":"https://www.youtube.com/watch?v=I4YDr6FPFJo&t=727s"},{"start_seconds":734,"text":"play with that but there is an extra proposal left there is uh koias who is one of the like he's a like a great","url":"https://www.youtube.com/watch?v=I4YDr6FPFJo&t=734s"},{"start_seconds":743,"text":"author on consensus schemes he's working on and freezing uh like I can provide an Evidence right I have a transaction that","url":"https://www.youtube.com/watch?v=I4YDr6FPFJo&t=743s"},{"start_seconds":750,"text":"has 50 percent of value of signatures and the same object another 50 unlock it I provided an Evidence so you can do it","url":"https://www.youtube.com/watch?v=I4YDr6FPFJo&t=750s"},{"start_seconds":758,"text":"so there is there is a fast and freeze um but it's not only those examples that I explained here there are more examples","url":"https://www.youtube.com/watch?v=I4YDr6FPFJo&t=758s"},{"start_seconds":766,"text":"well defy as you said uni swap is more complicated you can do it with this way however with a multi-agent transaction","url":"https://www.youtube.com/watch?v=I4YDr6FPFJo&t=766s"},{"start_seconds":774,"text":"while working on the multi-agent it's not there yet um but there is also a lot there is imagine if we have a giveaway","url":"https://www.youtube.com/watch?v=I4YDr6FPFJo&t=774s"},{"start_seconds":781,"text":"where in this giveaway you have a car right you're giving away a car people are participating and obviously if you","url":"https://www.youtube.com/watch?v=I4YDr6FPFJo&t=781s"},{"start_seconds":789,"text":"imagine a lottery in your head you will say no no this requires a certain object I mean we cannot participate in the same Lottery where people are locking money","url":"https://www.youtube.com/watch?v=I4YDr6FPFJo&t=789s"},{"start_seconds":797,"text":"this money should go to some counter to some balance that it always goes up and up and up there is a way to avoid it and","url":"https://www.youtube.com/watch?v=I4YDr6FPFJo&t=797s"},{"start_seconds":803,"text":"the way to avoid it is I can buy tickets independently on Parallel I pay five dollars in this payment I pay the owner","url":"https://www.youtube.com/watch?v=I4YDr6FPFJo&t=803s"},{"start_seconds":813,"text":"of the giveaway let's say it's an organization um so I pay five dollars to buy a ticket it dependently we all pay five dollars","url":"https://www.youtube.com/watch?v=I4YDr6FPFJo&t=813s"},{"start_seconds":820,"text":"there is no limit right because the the total profit eventually the reward is not dependent on the on the ticket on","url":"https://www.youtube.com/watch?v=I4YDr6FPFJo&t=820s"},{"start_seconds":828,"text":"the number of tickets it's only a car you will win a car which means that you buy tickets independently and in this particular case you can have the fast pay approach","url":"https://www.youtube.com/watch?v=I4YDr6FPFJo&t=828s"},{"start_seconds":837,"text":"I just buy tickets but how is the winner defined now I have the problem you need to define a winner so the winner can be","url":"https://www.youtube.com/watch?v=I4YDr6FPFJo&t=837s"},{"start_seconds":845,"text":"defined by the fact that you can use fraud proofs we can use the do you know algorithms certification algorithm where they do the leader election thing yeah","url":"https://www.youtube.com/watch?v=I4YDr6FPFJo&t=845s"},{"start_seconds":854,"text":"so very quickly let's assume that we find a way to have the the lottery Big on I will erase this","url":"https://www.youtube.com/watch?v=I4YDr6FPFJo&t=854s"},{"start_seconds":861,"text":"if if that's okay so we're now on the lottery example right and in this Lottery example we're a lottery","url":"https://www.youtube.com/watch?v=I4YDr6FPFJo&t=861s"},{"start_seconds":870,"text":"we have nfts which are the tickets one","url":"https://www.youtube.com/watch?v=I4YDr6FPFJo&t=870s"},{"start_seconds":876,"text":"ticket two blah blah ticket and eventually on some uh we Define when","url":"https://www.youtube.com/watch?v=I4YDr6FPFJo&t=876s"},{"start_seconds":883,"text":"this ticket issuing will finish let's assume Epoch seven um ebook seven","url":"https://www.youtube.com/watch?v=I4YDr6FPFJo&t=883s"},{"start_seconds":891,"text":"you start from Epoch one until epic seven you can buy tickets that's fine and then eventually you have a list of tickets and let's assume MoneyPak 8 we","url":"https://www.youtube.com/watch?v=I4YDr6FPFJo&t=891s"},{"start_seconds":898,"text":"have the big one the Bitcoin is defined on duplicate how do we Define the I mean all of them are independent right you don't know you","url":"https://www.youtube.com/watch?v=I4YDr6FPFJo&t=898s"},{"start_seconds":907,"text":"cannot even sort them you cannot do anything however the users can have access on these tickets because it's a blockchain they can go offline they can","url":"https://www.youtube.com/watch?v=I4YDr6FPFJo&t=907s"},{"start_seconds":915,"text":"uh let's assume that it's a very basic function of hash of a Bitcoin comma ticket everyone is producing The House of the","url":"https://www.youtube.com/watch?v=I4YDr6FPFJo&t=915s"},{"start_seconds":923,"text":"big comma ticket and the smallest one wins like the house that starts with many zero's wins so only the winner is the","url":"https://www.youtube.com/watch?v=I4YDr6FPFJo&t=923s"},{"start_seconds":931,"text":"one that will go and have a second object now all of the tickets 99.99 of the transactions are fast paid and only","url":"https://www.youtube.com/watch?v=I4YDr6FPFJo&t=931s"},{"start_seconds":939,"text":"the winner will use a certain object something for which you need consensus and what the winner will do will say I won you will wait if nobody complains you","url":"https://www.youtube.com/watch?v=I4YDr6FPFJo&t=939s"},{"start_seconds":947,"text":"want if someone comes to you it's like arbit room yeah then you keep you keep going yes you keep going down until there is only one winner nobody","url":"https://www.youtube.com/watch?v=I4YDr6FPFJo&t=947s"},{"start_seconds":955,"text":"complains and then you're definitely the winner or the winner didn't report it but everyone can report it right even if you are not the winner you know how to","url":"https://www.youtube.com/watch?v=I4YDr6FPFJo&t=955s"},{"start_seconds":962,"text":"provide the ticket as evidence as a fraud proof and this is very similar actually it's a good way to have fraudproof some sweet not necessarily A","url":"https://www.youtube.com/watch?v=I4YDr6FPFJo&t=962s"},{"start_seconds":971,"text":"fraudible by executing the whole state it's a special uh case fraud proof there are more there are more","url":"https://www.youtube.com/watch?v=I4YDr6FPFJo&t=971s"},{"start_seconds":978,"text":"applications yeah yeah so how does the consensus in like the Bitcoin are you just saying that you're waiting for another Epoch to for everyone to present","url":"https://www.youtube.com/watch?v=I4YDr6FPFJo&t=978s"},{"start_seconds":988,"text":"and whoever is small yes let's assume we're using d-round right or any any Bitcoin yeah and we say on Epoch a there will be some random because you don't","url":"https://www.youtube.com/watch?v=I4YDr6FPFJo&t=988s"},{"start_seconds":995,"text":"know it by the time you register because you registered until seven so when this Bitcoin is published now we're going to do all of the classes offline and the","url":"https://www.youtube.com/watch?v=I4YDr6FPFJo&t=995s"},{"start_seconds":1003,"text":"winner will just report it but that's what I'm saying like I mean there's some code somewhere that will be then reassigning the ownership of the car for","url":"https://www.youtube.com/watch?v=I4YDr6FPFJo&t=1003s"},{"start_seconds":1011,"text":"example um this is all published right so how's that exactly so at the very beginning I'm just publishing an object of this hash right it's a great it's a","url":"https://www.youtube.com/watch?v=I4YDr6FPFJo&t=1011s"},{"start_seconds":1020,"text":"great question at the very beginning the organizer","url":"https://www.youtube.com/watch?v=I4YDr6FPFJo&t=1020s"},{"start_seconds":1029,"text":"Define the third object this is a object now that is not single owned yeah it's uh like a data structure or it's something that the organizer actually","url":"https://www.youtube.com/watch?v=I4YDr6FPFJo&t=1029s"},{"start_seconds":1038,"text":"has sent one car nft here yeah and obviously there was like on Epoch eight we have to get the beacon","url":"https://www.youtube.com/watch?v=I4YDr6FPFJo&t=1038s"},{"start_seconds":1047,"text":"and if someone executes a transaction we have to wait I don't know for for two epochs for the fraud proof","url":"https://www.youtube.com/watch?v=I4YDr6FPFJo&t=1047s"},{"start_seconds":1055,"text":"so this one it's a third object created at the initiation in the beginning yeah yes and","url":"https://www.youtube.com/watch?v=I4YDr6FPFJo&t=1055s"},{"start_seconds":1063,"text":"then the winner will come to this object to request the car so what's the interaction when when I'm","url":"https://www.youtube.com/watch?v=I4YDr6FPFJo&t=1063s"},{"start_seconds":1069,"text":"like because I did for me this transaction is is my object right it's just an input it's an input it's","url":"https://www.youtube.com/watch?v=I4YDr6FPFJo&t=1069s"},{"start_seconds":1078,"text":"just an input to the uh to this particular so so I mean here you were explaining how you interact with your object so how you interact with somebody","url":"https://www.youtube.com/watch?v=I4YDr6FPFJo&t=1078s"},{"start_seconds":1086,"text":"else's objects okay that's great so a nice thing by using object-based like model for three","url":"https://www.youtube.com/watch?v=I4YDr6FPFJo&t=1086s"},{"start_seconds":1094,"text":"if smart contracts can get as inputs object from other smart contracts now you can literally have","url":"https://www.youtube.com/watch?v=I4YDr6FPFJo&t=1094s"},{"start_seconds":1101,"text":"um raising this now you can literally have um an object that is having a reference to","url":"https://www.youtube.com/watch?v=I4YDr6FPFJo&t=1101s"},{"start_seconds":1110,"text":"another object or a function under the lottery contract","url":"https://www.youtube.com/watch?v=I4YDr6FPFJo&t=1110s"},{"start_seconds":1119,"text":"you have a function that takes as an input some object type","url":"https://www.youtube.com/watch?v=I4YDr6FPFJo&t=1119s"},{"start_seconds":1126,"text":"X and this one might be your your ticket so you will provide the ticket the","url":"https://www.youtube.com/watch?v=I4YDr6FPFJo&t=1126s"},{"start_seconds":1134,"text":"ticket with this ticket type can only be created by this marketer you cannot create it by another smart contract so the winner will just send to this faction that lives under the third","url":"https://www.youtube.com/watch?v=I4YDr6FPFJo&t=1134s"},{"start_seconds":1142,"text":"object an object that has been created somewhere else I mean where are your bank tickets and it can it can understand that this","url":"https://www.youtube.com/watch?v=I4YDr6FPFJo&t=1142s"},{"start_seconds":1150,"text":"is object Type X and it knows oh it's definitely a ticket that I issued it was issued by my particular smart contract so I actually say this Lottery contract","url":"https://www.youtube.com/watch?v=I4YDr6FPFJo&t=1150s"},{"start_seconds":1158,"text":"has like you know function by ticket right yeah","url":"https://www.youtube.com/watch?v=I4YDr6FPFJo&t=1158s"},{"start_seconds":1171,"text":"and so ticket has you know the owner field which will be yeah and probably the lottery ID there might be a lottery idea as well so you know this is a","url":"https://www.youtube.com/watch?v=I4YDr6FPFJo&t=1171s"},{"start_seconds":1178,"text":"ticket for this Lottery right yeah maybe you need it well if this multi-lot yes if it's a multi-lottery one and I will explain why multilateral is possible on","url":"https://www.youtube.com/watch?v=I4YDr6FPFJo&t=1178s"},{"start_seconds":1187,"text":"three easier than ethereum and so so then when this is when you present this here right it then does a hashing with","url":"https://www.youtube.com/watch?v=I4YDr6FPFJo&t=1187s"},{"start_seconds":1195,"text":"the beacon exactly and there's like like let's say ticket ID yes and if it's smaller than the previously","url":"https://www.youtube.com/watch?v=I4YDr6FPFJo&t=1195s"},{"start_seconds":1204,"text":"smallest one you register it and you wait until the fraud proof expires and so you still need another method which is like you know actually declare winner","url":"https://www.youtube.com/watch?v=I4YDr6FPFJo&t=1204s"},{"start_seconds":1211,"text":"or yeah something like distribute or whatever exactly okay and so distribute Returns the car in","url":"https://www.youtube.com/watch?v=I4YDr6FPFJo&t=1211s"},{"start_seconds":1219,"text":"this case to the winner to the winner yeah so as you can as you can see there are protocols indeed or applications where","url":"https://www.youtube.com/watch?v=I4YDr6FPFJo&t=1219s"},{"start_seconds":1228,"text":"we can use Just For Speed payments Twitter um like Mass nft minting you're meeting","url":"https://www.youtube.com/watch?v=I4YDr6FPFJo&t=1228s"},{"start_seconds":1235,"text":"nfts and pilot I mean nothing is stopping you from ordering your own your own meaning but but you like let's say I mean it's an object that means nfts too","url":"https://www.youtube.com/watch?v=I4YDr6FPFJo&t=1235s"},{"start_seconds":1244,"text":"right like in this case it's buy ticket will be an object so then I can in parallel this function means nft yeah so but you can call it as a single loan I","url":"https://www.youtube.com/watch?v=I4YDr6FPFJo&t=1244s"},{"start_seconds":1252,"text":"mean you are not touching anything on this stage no I whoa so that's the question is like no when I ride the code for this object right I","url":"https://www.youtube.com/watch?v=I4YDr6FPFJo&t=1252s"},{"start_seconds":1261,"text":"just specify that this is not this buy ticket could even live outside this object okay in this module it can accept","url":"https://www.youtube.com/watch?v=I4YDr6FPFJo&t=1261s"},{"start_seconds":1268,"text":"any module type here that's why we have the composability and show you that you cannot easily get on ethereum on The Theory of Everything is a u","url":"https://www.youtube.com/watch?v=I4YDr6FPFJo&t=1268s"},{"start_seconds":1276,"text":"256. how do you know it has how do you know it's a number how other contracts know the type that you represent internally in your in your own contract","url":"https://www.youtube.com/watch?v=I4YDr6FPFJo&t=1276s"},{"start_seconds":1284,"text":"well in our case they are like strictly typed you know exactly what this is like of this type and we if you also need to","url":"https://www.youtube.com/watch?v=I4YDr6FPFJo&t=1284s"},{"start_seconds":1292,"text":"use some like genetics we also have this object type T you know it's a from this Lottery uh and this is why we allow this","url":"https://www.youtube.com/watch?v=I4YDr6FPFJo&t=1292s"},{"start_seconds":1300,"text":"composibility and I guess one example that you will see with three is people who are running independent contracts then I can go and create a new","url":"https://www.youtube.com/watch?v=I4YDr6FPFJo&t=1300s"},{"start_seconds":1309,"text":"contract that they can input some object that you created on your own contract and maybe you can Define like many complex structures here of different","url":"https://www.youtube.com/watch?v=I4YDr6FPFJo&t=1309s"},{"start_seconds":1316,"text":"contracts communicating with other contracts and different types of objects and evolution we can even evolve now if you don't like your contract anymore you","url":"https://www.youtube.com/watch?v=I4YDr6FPFJo&t=1316s"},{"start_seconds":1325,"text":"can just create another contract that takes as inputs types of your previous contract and you know exactly the type of of the expected","url":"https://www.youtube.com/watch?v=I4YDr6FPFJo&t=1325s"},{"start_seconds":1333,"text":"like inputs of the function so that's a benefit or I think it's is it clear at least yeah sorry at the high","url":"https://www.youtube.com/watch?v=I4YDr6FPFJo&t=1333s"},{"start_seconds":1341,"text":"level yeah I think probably worse same pretty much that the the object that's stored on kind of on chain","url":"https://www.youtube.com/watch?v=I4YDr6FPFJo&t=1341s"},{"start_seconds":1347,"text":"right which which are you know there's owner kind of and some let's just this is some Global idea I'm assuming right","url":"https://www.youtube.com/watch?v=I4YDr6FPFJo&t=1347s"},{"start_seconds":1355,"text":"yeah that's used and then the code is living separately yes and the code yeah can refer to any of the object types","url":"https://www.youtube.com/watch?v=I4YDr6FPFJo&t=1355s"},{"start_seconds":1364,"text":"exactly right and so through that only which might be single owner or uh like a set owner what is assert owner yeah","url":"https://www.youtube.com/watch?v=I4YDr6FPFJo&t=1364s"},{"start_seconds":1373,"text":"right what is a cell phone okay I'm erasing this again and ah","url":"https://www.youtube.com/watch?v=I4YDr6FPFJo&t=1373s"},{"start_seconds":1382,"text":"so I think yeah you have a contract on ethereum let's take a contract on ethereum we have some uh like what is the name for structome","url":"https://www.youtube.com/watch?v=I4YDr6FPFJo&t=1382s"},{"start_seconds":1390,"text":"ethereum we use track but anyway you have you have a contract this contract has internally usually a","url":"https://www.youtube.com/watch?v=I4YDr6FPFJo&t=1390s"},{"start_seconds":1397,"text":"map right where you have the owner comma some whatever is this U1 uid or","url":"https://www.youtube.com/watch?v=I4YDr6FPFJo&t=1397s"},{"start_seconds":1405,"text":"something yeah whatever it is you have a map this one because everyone can go and write on this one it's a set object of course yeah right and it's actually","url":"https://www.youtube.com/watch?v=I4YDr6FPFJo&t=1405s"},{"start_seconds":1414,"text":"helped us like some data structure internally to the smart contract yes if it belongs to the smart contract with high probability it will be a shared","url":"https://www.youtube.com/watch?v=I4YDr6FPFJo&t=1414s"},{"start_seconds":1421,"text":"object but now you can even have objects that do not live as I said like data structure it's it's like a single thing","url":"https://www.youtube.com/watch?v=I4YDr6FPFJo&t=1421s"},{"start_seconds":1429,"text":"you have an nft that has as ownership a user it's still coded inside this module","url":"https://www.youtube.com/watch?v=I4YDr6FPFJo&t=1429s"},{"start_seconds":1436,"text":"but it's not part of some data structure and this is where you're getting all of this single owner and those that are not single owner so everything that you see","url":"https://www.youtube.com/watch?v=I4YDr6FPFJo&t=1436s"},{"start_seconds":1444,"text":"in in ethereum Sparkle drug where it's usually a map of things everyone can go there and write places are the set objects and anything else is so how that let's","url":"https://www.youtube.com/watch?v=I4YDr6FPFJo&t=1444s"},{"start_seconds":1454,"text":"say this is owned by some by some user but a third user wants to modify it they cannot so but let's say there's a give","url":"https://www.youtube.com/watch?v=I4YDr6FPFJo&t=1454s"},{"start_seconds":1463,"text":"me an example uh we're playing a video game I'm I'm doing damage to your character the smart","url":"https://www.youtube.com/watch?v=I4YDr6FPFJo&t=1463s"},{"start_seconds":1470,"text":"contract would modify the health points on your if you need to access it you need to go to the third object model if","url":"https://www.youtube.com/watch?v=I4YDr6FPFJo&t=1470s"},{"start_seconds":1477,"text":"you need to modify it without me giving you the permission you need you need to use this but not all of the games are required but if you require this","url":"https://www.youtube.com/watch?v=I4YDr6FPFJo&t=1477s"},{"start_seconds":1485,"text":"property I do agree with you you need full consensus you need to go through a certain object and maybe you can find the pattern like I don't want to be like","url":"https://www.youtube.com/watch?v=I4YDr6FPFJo&t=1485s"},{"start_seconds":1493,"text":"uh blind here on the sense that when we say something it's only possible with certain objects yeah because you've seen before in the lockdown yeah you can turn things maybe you can define a model","url":"https://www.youtube.com/watch?v=I4YDr6FPFJo&t=1493s"},{"start_seconds":1501,"text":"where you can literally do some updates in my character maybe you have my character well yeah you can have another object which which references this guy","url":"https://www.youtube.com/watch?v=I4YDr6FPFJo&t=1501s"},{"start_seconds":1510,"text":"which is a game which is a game yes game object which has like how much HP deal etc exactly or you might even have an","url":"https://www.youtube.com/watch?v=I4YDr6FPFJo&t=1510s"},{"start_seconds":1517,"text":"escrow which is a game engine yeah where you divide yeah the game studio is actually having all of the mutable stuff and then you're doing all of the things","url":"https://www.youtube.com/watch?v=I4YDr6FPFJo&t=1517s"},{"start_seconds":1525,"text":"that they cannot touch yeah so that's the idea so so but but this is like so in module there is internal like you can","url":"https://www.youtube.com/watch?v=I4YDr6FPFJo&t=1525s"},{"start_seconds":1533,"text":"have it you can have affiliate modules we have vectors now we're going to introduce um even limits on how big the this objects can be generally we don't want","url":"https://www.youtube.com/watch?v=I4YDr6FPFJo&t=1533s"},{"start_seconds":1542,"text":"to allow like huge objects on ethereum because they have the has uh you know the references they can do whatever they want with the sizes but in our cases","url":"https://www.youtube.com/watch?v=I4YDr6FPFJo&t=1542s"},{"start_seconds":1551,"text":"because you can actually remove things from this uh object you can you can you can create like a very interesting data structures maybe you can even have a map","url":"https://www.youtube.com/watch?v=I4YDr6FPFJo&t=1551s"},{"start_seconds":1558,"text":"and this map gets up to an element and if you need more you're just creating an extra attention","url":"https://www.youtube.com/watch?v=I4YDr6FPFJo&t=1558s"},{"start_seconds":1566,"text":"object on this that can can move on or you can even have a tree structure so you have pointers and you're creating multiple objects that are owned by this","url":"https://www.youtube.com/watch?v=I4YDr6FPFJo&t=1566s"},{"start_seconds":1574,"text":"object and now that I mentioned this we have the concept of parent and children so you can have","url":"https://www.youtube.com/watch?v=I4YDr6FPFJo&t=1574s"},{"start_seconds":1582,"text":"um you can have an object that owns other objects so when we say this nft is owned by the user it might be owned by","url":"https://www.youtube.com/watch?v=I4YDr6FPFJo&t=1582s"},{"start_seconds":1590,"text":"an object and this object might be owned by the user so you can have all of this uh like interim structure of so if I","url":"https://www.youtube.com/watch?v=I4YDr6FPFJo&t=1590s"},{"start_seconds":1597,"text":"modify this let's say let's say there is a structure right there is another object like house points objectives nft","url":"https://www.youtube.com/watch?v=I4YDr6FPFJo&t=1597s"},{"start_seconds":1605,"text":"by a user I can modify that yes you as the user need to provide all of the path okay you provide the password and it","url":"https://www.youtube.com/watch?v=I4YDr6FPFJo&t=1605s"},{"start_seconds":1612,"text":"knows that eventually this signature is required so in in the in the transactions yeah okay uh there is a way","url":"https://www.youtube.com/watch?v=I4YDr6FPFJo&t=1612s"},{"start_seconds":1620,"text":"uh actually it was a good question there is a way to provide the parent object now and actually it can resolve all of the children of the or the children that","url":"https://www.youtube.com/watch?v=I4YDr6FPFJo&t=1620s"},{"start_seconds":1627,"text":"you want internally to the execution maybe you say that's expensive now it can be a bit well it depends maybe you","url":"https://www.youtube.com/watch?v=I4YDr6FPFJo&t=1627s"},{"start_seconds":1634,"text":"can find good good ways to do it like some prefixes or some references internally you just need a byte and you","url":"https://www.youtube.com/watch?v=I4YDr6FPFJo&t=1634s"},{"start_seconds":1642,"text":"know that if you see this byte it's this object ID don't provide the whole object ID and yeah this concept actually exists it's very useful actually I can explain","url":"https://www.youtube.com/watch?v=I4YDr6FPFJo&t=1642s"},{"start_seconds":1651,"text":"why it's useful imagine you have an account now in ethereum and and this account owns nfts in","url":"https://www.youtube.com/watch?v=I4YDr6FPFJo&t=1651s"},{"start_seconds":1658,"text":"multiple smart contracts you're a company and eventually you want to sell your company to another bigger company what do you do","url":"https://www.youtube.com/watch?v=I4YDr6FPFJo&t=1658s"},{"start_seconds":1665,"text":"you use near and yes it is near and accounts actually transferable yeah of course yeah you can do it but on ethereum you cannot do this right you","url":"https://www.youtube.com/watch?v=I4YDr6FPFJo&t=1665s"},{"start_seconds":1674,"text":"cannot you did not set it up exactly so pretty much like you and in our case what you can do is you can have a main object or multiple objects and you you","url":"https://www.youtube.com/watch?v=I4YDr6FPFJo&t=1674s"},{"start_seconds":1683,"text":"just total of the ownership under this object and you just change the ownership of this particular theorem you would do the same you would have a smart contract","url":"https://www.youtube.com/watch?v=I4YDr6FPFJo&t=1683s"},{"start_seconds":1690,"text":"and then you would this would be yes but now all of these have uh literally types right you can do whatever you want now yeah because if you if you have a smart","url":"https://www.youtube.com/watch?v=I4YDr6FPFJo&t=1690s"},{"start_seconds":1699,"text":"contact in ethereum maybe you don't have the the ability to have all of this abstraction and put whatever you want there here you literally can put","url":"https://www.youtube.com/watch?v=I4YDr6FPFJo&t=1699s"},{"start_seconds":1706,"text":"anything as a children yeah and here you can actually Swap this","url":"https://www.youtube.com/watch?v=I4YDr6FPFJo&t=1706s"},{"start_seconds":1713,"text":"the account itself is a contract yeah but you cannot have parallelization because of this well you paralyze on account level every account is","url":"https://www.youtube.com/watch?v=I4YDr6FPFJo&t=1713s"},{"start_seconds":1721,"text":"independent and I agree but you have this account logically you need to split your account logically you cannot now","url":"https://www.youtube.com/watch?v=I4YDr6FPFJo&t=1721s"},{"start_seconds":1727,"text":"because you can change it you cannot have the fast-pay model obviously because imagine in one transaction you","url":"https://www.youtube.com/watch?v=I4YDr6FPFJo&t=1727s"},{"start_seconds":1735,"text":"are changing the account and in the other you are doing a transfer you need to have the order on who is the who is the owner at the time of transaction you","url":"https://www.youtube.com/watch?v=I4YDr6FPFJo&t=1735s"},{"start_seconds":1742,"text":"need to synchronize online exactly we don't have this ability because of parallelization so obviously you lose something and you get something yeah uh but we're working","url":"https://www.youtube.com/watch?v=I4YDr6FPFJo&t=1742s"},{"start_seconds":1751,"text":"on it by the way there might be solutions for this as well so I guess just to go back a little bit to this yeah so when I'm when I'm changing the","url":"https://www.youtube.com/watch?v=I4YDr6FPFJo&t=1751s"},{"start_seconds":1759,"text":"state of this right you're saying uh this will wait until end of the ebook like to no if you change no no if you","url":"https://www.youtube.com/watch?v=I4YDr6FPFJo&t=1759s"},{"start_seconds":1768,"text":"change the state and it's a set object you will not get the fast pay yeah but you have you have uh oh no no we have we","url":"https://www.youtube.com/watch?v=I4YDr6FPFJo&t=1768s"},{"start_seconds":1775,"text":"have consensus okay okay so let's go let's go to this now right because we only mentioned one type of the consensus it's not full consensus","url":"https://www.youtube.com/watch?v=I4YDr6FPFJo&t=1775s"},{"start_seconds":1783,"text":"but a way of like it's like a broadcasting exactly so what is the life cycle of a","url":"https://www.youtube.com/watch?v=I4YDr6FPFJo&t=1783s"},{"start_seconds":1790,"text":"transaction right I only explained like part of it so we have a transaction and this transaction will go fast like let's assume in the fast pay world where the","url":"https://www.youtube.com/watch?v=I4YDr6FPFJo&t=1790s"},{"start_seconds":1799,"text":"validators will give you to f plus one signatures and this is like for locking the the objects because here you will","url":"https://www.youtube.com/watch?v=I4YDr6FPFJo&t=1799s"},{"start_seconds":1806,"text":"have object inputs object one blah blah blah so you're looking this uh actually","url":"https://www.youtube.com/watch?v=I4YDr6FPFJo&t=1806s"},{"start_seconds":1814,"text":"you're getting all of these signatures back that that the validator say I lock this object yeah and then you return back the","url":"https://www.youtube.com/watch?v=I4YDr6FPFJo&t=1814s"},{"start_seconds":1822,"text":"certificate this is a certificate now you're the aggregator you send this back and then the validators again will","url":"https://www.youtube.com/watch?v=I4YDr6FPFJo&t=1822s"},{"start_seconds":1830,"text":"provide a 12 signature I executed it and uh this if if it's fast pay right if","url":"https://www.youtube.com/watch?v=I4YDr6FPFJo&t=1830s"},{"start_seconds":1839,"text":"it's fast pay it will go through this model and this certificate of","url":"https://www.youtube.com/watch?v=I4YDr6FPFJo&t=1839s"},{"start_seconds":1846,"text":"um the certificate after the execution that the effect certificate it's enough to go to uh yeah","url":"https://www.youtube.com/watch?v=I4YDr6FPFJo&t=1846s"},{"start_seconds":1856,"text":"but if it's not fast pay then after the locking mechanism after this uh one round trip you can actually","url":"https://www.youtube.com/watch?v=I4YDr6FPFJo&t=1856s"},{"start_seconds":1863,"text":"send it to narwhal and Bulls Ark and this is literally","url":"https://www.youtube.com/watch?v=I4YDr6FPFJo&t=1863s"},{"start_seconds":1871,"text":"um one of the fastest this one doesn't even require a leader election so previously if you see all of our documents we had","url":"https://www.youtube.com/watch?v=I4YDr6FPFJo&t=1871s"},{"start_seconds":1880,"text":"tasks and then it's pretty much the same team that actually created both tasks in Bulls Arc but task requires some random","url":"https://www.youtube.com/watch?v=I4YDr6FPFJo&t=1880s"},{"start_seconds":1887,"text":"Beacon for fairness and other things and bullshark it can help if you have around the big one but it's not a huge requirement here and now you're not","url":"https://www.youtube.com/watch?v=I4YDr6FPFJo&t=1887s"},{"start_seconds":1895,"text":"going through fast pay now you're going through this and here you have to wait for a block and after you have these blocks obviously you have okay some are","url":"https://www.youtube.com/watch?v=I4YDr6FPFJo&t=1895s"},{"start_seconds":1903,"text":"with effect certificates some are with narwool what do you do we have another model uh where","url":"https://www.youtube.com/watch?v=I4YDr6FPFJo&t=1903s"},{"start_seconds":1911,"text":"these fast pay executed transaction they can also go through a number eventually","url":"https://www.youtube.com/watch?v=I4YDr6FPFJo&t=1911s"},{"start_seconds":1917,"text":"and all of these snorkels now this and this nargo again they go through the checkpoints and this is the part where Sue is a","url":"https://www.youtube.com/watch?v=I4YDr6FPFJo&t=1917s"},{"start_seconds":1927,"text":"blockchain checkpoints evolve into yes yes but these are enough as evidences","url":"https://www.youtube.com/watch?v=I4YDr6FPFJo&t=1927s"},{"start_seconds":1934,"text":"for uh like I don't know if you have a delivery versus payment you you see the payment and you deliver the object","url":"https://www.youtube.com/watch?v=I4YDr6FPFJo&t=1934s"},{"start_seconds":1942,"text":"how frequently are the checkpoints so we're working on the checkpoints um it might be seconds uh I think we had an example with six to","url":"https://www.youtube.com/watch?v=I4YDr6FPFJo&t=1942s"},{"start_seconds":1950,"text":"ten seconds if I remember correctly I don't know what the number will be on mainnet because now we're working on like uh synchronizing this part of","url":"https://www.youtube.com/watch?v=I4YDr6FPFJo&t=1950s"},{"start_seconds":1959,"text":"synchronizing to to checkpoint and how long does this actually usually take like getting certificate or certificate","url":"https://www.youtube.com/watch?v=I4YDr6FPFJo&t=1959s"},{"start_seconds":1966,"text":"this happens in parallel don't forget that the user no I know but it's still latency right like it's two we have two routers","url":"https://www.youtube.com/watch?v=I4YDr6FPFJo&t=1966s"},{"start_seconds":1974,"text":"yeah so like a second it's it's less I mean it can be like usually it's the","url":"https://www.youtube.com/watch?v=I4YDr6FPFJo&t=1974s"},{"start_seconds":1980,"text":"worst case it's 2.2 to 250 milliseconds or something yes you can get it in half a second okay","url":"https://www.youtube.com/watch?v=I4YDr6FPFJo&t=1980s"},{"start_seconds":1988,"text":"um obviously depends on topology and and other things yeah right but but in theory you can do it but you can and it","url":"https://www.youtube.com/watch?v=I4YDr6FPFJo&t=1988s"},{"start_seconds":1996,"text":"can happen on Parallel there is a huge benefit with I mean if we get this route yeah this is like uh horizontally","url":"https://www.youtube.com/watch?v=I4YDr6FPFJo&t=1996s"},{"start_seconds":2003,"text":"paralyzable yeah yeah what does this mean right unlike other blocks exactly we can just build workers yeah and","url":"https://www.youtube.com/watch?v=I4YDr6FPFJo&t=2003s"},{"start_seconds":2012,"text":"actually there are workers on algor and bullshark anyway but this is uh for exit optimization here on the consensus scheme this is this yeah so I will want","url":"https://www.youtube.com/watch?v=I4YDr6FPFJo&t=2012s"},{"start_seconds":2021,"text":"to go deeper into this but yeah let's yeah but but but this one is actually narble yeah is um the mempool","url":"https://www.youtube.com/watch?v=I4YDr6FPFJo&t=2021s"},{"start_seconds":2031,"text":"and we have mempool and this mempool is actually plugable and can work with both tasks and and we've seen some companies actually using this for rather you know","url":"https://www.youtube.com/watch?v=I4YDr6FPFJo&t=2031s"},{"start_seconds":2039,"text":"their own uh their own systems but yeah that's that's the whole idea uh George is the best person actually to ask all of these questions","url":"https://www.youtube.com/watch?v=I4YDr6FPFJo&t=2039s"},{"start_seconds":2047,"text":"um I can go a bit like I mean I think high level will be probably good to highlighters because you have workers here right I mean you can have workers","url":"https://www.youtube.com/watch?v=I4YDr6FPFJo&t=2047s"},{"start_seconds":2055,"text":"and it is possible that they put narwhal um uh packets that they so just yeah just so narrow wall so let's say you","url":"https://www.youtube.com/watch?v=I4YDr6FPFJo&t=2055s"},{"start_seconds":2063,"text":"have all those validators right yes so you assign some of them to be like well yeah like so the transaction like comes","url":"https://www.youtube.com/watch?v=I4YDr6FPFJo&t=2063s"},{"start_seconds":2071,"text":"in yes but all of them they are forming different different uh let's say blocks small blocks yeah and it is possible","url":"https://www.youtube.com/watch?v=I4YDr6FPFJo&t=2071s"},{"start_seconds":2079,"text":"that one block is having I mean this blog is having tx1 this also has the X1 they have different blocks yeah and then they're starting","url":"https://www.youtube.com/watch?v=I4YDr6FPFJo&t=2079s"},{"start_seconds":2086,"text":"proposing this yeah and if you see a transaction that was already included in a different block I mean it was already included there is some duplication here","url":"https://www.youtube.com/watch?v=I4YDr6FPFJo&t=2086s"},{"start_seconds":2095,"text":"yeah but this is what gives you the the speed right I mean some transactions are indeed in different blocks however it doesn't really matter right you just","url":"https://www.youtube.com/watch?v=I4YDr6FPFJo&t=2095s"},{"start_seconds":2103,"text":"need one of them to include it and it's a dug you get a duck in bull shark and eventually you have you know multiple","url":"https://www.youtube.com/watch?v=I4YDr6FPFJo&t=2103s"},{"start_seconds":2110,"text":"uh like objects multiple blocks being proposed some of them might be overlapped not fully overlapped and then","url":"https://www.youtube.com/watch?v=I4YDr6FPFJo&t=2110s"},{"start_seconds":2117,"text":"you go back to check if uh like a transaction was already included you don't include it we have some hashmobs internally and all of this so so like","url":"https://www.youtube.com/watch?v=I4YDr6FPFJo&t=2117s"},{"start_seconds":2125,"text":"will every node need to receive blocks from everybody else there is all of them can actually propose blocks well they propose but then they will need to","url":"https://www.youtube.com/watch?v=I4YDr6FPFJo&t=2125s"},{"start_seconds":2132,"text":"receive it to to identify if it wasn't yes you need to have plus one signatures right if you receive 12 even if you didn't receive something but you receive an Evidence the 12 plus one has signed","url":"https://www.youtube.com/watch?v=I4YDr6FPFJo&t=2132s"},{"start_seconds":2141,"text":"if you accept it yeah that's the idea well you will see a few systems that actually are down and only two f plus one are live yeah eventually you need to","url":"https://www.youtube.com/watch?v=I4YDr6FPFJo&t=2141s"},{"start_seconds":2149,"text":"sync up yeah you have to have plus one signals you assume that the system is running correctly holds but all of them can propose that's","url":"https://www.youtube.com/watch?v=I4YDr6FPFJo&t=2149s"},{"start_seconds":2158,"text":"the thing and there is a difference because it's a dug Mev is slightly different on how you do attacks you know you know right it's more complicated","url":"https://www.youtube.com/watch?v=I4YDr6FPFJo&t=2158s"},{"start_seconds":2166,"text":"yeah let's not go and maybe it is whole separate I'm just like just so for clarity right so let's say I am as a","url":"https://www.youtube.com/watch?v=I4YDr6FPFJo&t=2166s"},{"start_seconds":2173,"text":"user right uh in this case like because I already have the certificate that they saw the transaction if you go through","url":"https://www.youtube.com/watch?v=I4YDr6FPFJo&t=2173s"},{"start_seconds":2182,"text":"yes yes like even if this is a look this is right even if I'm not going through this okay even if I'm not going through","url":"https://www.youtube.com/watch?v=I4YDr6FPFJo&t=2182s"},{"start_seconds":2189,"text":"so I'll just pay I still send the transaction first to all the the first one to get the lock the transaction that I locked the objects for for now yes you","url":"https://www.youtube.com/watch?v=I4YDr6FPFJo&t=2189s"},{"start_seconds":2198,"text":"are sending it even to another world yeah and so and so so I send it to everyone or you can you can send you can send to some of them you","url":"https://www.youtube.com/watch?v=I4YDr6FPFJo&t=2198s"},{"start_seconds":2207,"text":"don't need to send to it and so they propagate it with blocks right yes and so that's part of narul the propagation of locks and the bull shark is a way to","url":"https://www.youtube.com/watch?v=I4YDr6FPFJo&t=2207s"},{"start_seconds":2215,"text":"resolve all of this into it exactly in theory you can even send it to one but you have the risk that this one will not for yeah so you can actually pick a bit","url":"https://www.youtube.com/watch?v=I4YDr6FPFJo&t=2215s"},{"start_seconds":2223,"text":"more like this number uh I don't remember if George has a real number we were testing this number but it will be obviously if you send it to f plus one","url":"https://www.youtube.com/watch?v=I4YDr6FPFJo&t=2223s"},{"start_seconds":2231,"text":"yeah it's enough that someone will will propose it yeah okay so then then everybody proposes a Blog they probably","url":"https://www.youtube.com/watch?v=I4YDr6FPFJo&t=2231s"},{"start_seconds":2238,"text":"and then they start sending their blocks to the other violators right and so so I'm from my from a single validity point","url":"https://www.youtube.com/watch?v=I4YDr6FPFJo&t=2238s"},{"start_seconds":2247,"text":"right I have my blog that I proposed and then I received some other uh there's no time stamping right so they come all it at the moment we don't","url":"https://www.youtube.com/watch?v=I4YDr6FPFJo&t=2247s"},{"start_seconds":2255,"text":"have timestamps you can have timestamps in theory so it's you cannot have timestamps here it's more difficult yeah because this is on Parallel","url":"https://www.youtube.com/watch?v=I4YDr6FPFJo&t=2255s"},{"start_seconds":2262,"text":"but here you cannot aggregate all the time but here you can have timestamps in theory you can have like the block proposal here to have a timestamp well","url":"https://www.youtube.com/watch?v=I4YDr6FPFJo&t=2262s"},{"start_seconds":2270,"text":"but I'm just saying like just in general it doesn't it doesn't matter at which like that you receive oh no no it's at that time right yeah so","url":"https://www.youtube.com/watch?v=I4YDr6FPFJo&t=2270s"},{"start_seconds":2278,"text":"they just point at like what was the last thing they saw exactly uh and but they point at all of the things they saw right or what like how how are they","url":"https://www.youtube.com/watch?v=I4YDr6FPFJo&t=2278s"},{"start_seconds":2287,"text":"determining the referencing well you have you have transactions that they refer to previous object versions We have versions from the object and","url":"https://www.youtube.com/watch?v=I4YDr6FPFJo&t=2287s"},{"start_seconds":2294,"text":"obviously you know you know where to reference if this has been signed by 12 plus one yeah it's it's fine I mean you can reference you can just reference","url":"https://www.youtube.com/watch?v=I4YDr6FPFJo&t=2294s"},{"start_seconds":2301,"text":"that yeah okay and so then then within here you have like this transaction one it's transaction one here like at which like at some point you build pretty much","url":"https://www.youtube.com/watch?v=I4YDr6FPFJo&t=2301s"},{"start_seconds":2311,"text":"an ordering right of transactions yeah like how this is happening and this is what we're working now in the checkpoint","url":"https://www.youtube.com/watch?v=I4YDr6FPFJo&t=2311s"},{"start_seconds":2318,"text":"okay so this is like kind of as this all gets aggregated then you're like okay now we know like we saw two f plus one","url":"https://www.youtube.com/watch?v=I4YDr6FPFJo&t=2318s"},{"start_seconds":2325,"text":"up to here so we can run this this order exactly this exactly and the checkpoint can also have a timestamp yeah well and","url":"https://www.youtube.com/watch?v=I4YDr6FPFJo&t=2325s"},{"start_seconds":2333,"text":"it's up to the application to say okay do I trust this time if if we if we don't have time yeah I'm not here but we can have here which is more like fine","url":"https://www.youtube.com/watch?v=I4YDr6FPFJo&t=2333s"},{"start_seconds":2340,"text":"grain there is sequence of blocks well here in the dark it's very difficult to have a good time yeah uh but yeah that's the whole idea of","url":"https://www.youtube.com/watch?v=I4YDr6FPFJo&t=2340s"},{"start_seconds":2349,"text":"like the the basic protocol what people can understand on on this one is definitely you need one round trip to get a locking on the objects yeah some","url":"https://www.youtube.com/watch?v=I4YDr6FPFJo&t=2349s"},{"start_seconds":2357,"text":"certificate objects and then you get to two routes why do you need to lock the object if you go into this oh this is uh","url":"https://www.youtube.com/watch?v=I4YDr6FPFJo&t=2357s"},{"start_seconds":2364,"text":"I have a feeling I'm not 100 sure on this but I have a feeling because we want to actually have one flow independently on if you are going to here","url":"https://www.youtube.com/watch?v=I4YDr6FPFJo&t=2364s"},{"start_seconds":2372,"text":"it looks the same yeah yeah it looks the same the user I mean it's as easy as possible for the user they don't even need to know where they're sending data","url":"https://www.youtube.com/watch?v=I4YDr6FPFJo&t=2372s"},{"start_seconds":2380,"text":"section this is happening everything on the background so that's a general way of of how sui works right and we explain a few","url":"https://www.youtube.com/watch?v=I4YDr6FPFJo&t=2380s"},{"start_seconds":2390,"text":"examples there is also a move in the game yep and in move um some of the hints that we gave","url":"https://www.youtube.com/watch?v=I4YDr6FPFJo&t=2390s"},{"start_seconds":2399,"text":"already is everything is object yep like it's it's uh strictly typed there is also some capabilities like the object","url":"https://www.youtube.com/watch?v=I4YDr6FPFJo&t=2399s"},{"start_seconds":2407,"text":"can have capabilities like drop this is droppable it has key it has store it has there is another one as well","url":"https://www.youtube.com/watch?v=I4YDr6FPFJo&t=2407s"},{"start_seconds":2416,"text":"uh but all of the idea is when you define an object you you say has dropped yes key has stored uh whatever you can","url":"https://www.youtube.com/watch?v=I4YDr6FPFJo&t=2416s"},{"start_seconds":2424,"text":"you can actually have on this one and these are used I copy I think it's also copy so there's a standard runtime level","url":"https://www.youtube.com/watch?v=I4YDr6FPFJo&t=2424s"},{"start_seconds":2432,"text":"yes exactly and if it's a copy you can copy it you if you are not having like a copy you cannot even copy it on the code","url":"https://www.youtube.com/watch?v=I4YDr6FPFJo&t=2432s"},{"start_seconds":2439,"text":"we will stop you uh the same thing is for key the same thing is for store what is key key key in store have to do with","url":"https://www.youtube.com/watch?v=I4YDr6FPFJo&t=2439s"},{"start_seconds":2447,"text":"is it an nft a real nft or it's like uh you have an object that references to another object it can be a key to another object","url":"https://www.youtube.com/watch?v=I4YDr6FPFJo&t=2447s"},{"start_seconds":2456,"text":"uh and drop if it's droppable so user is a key object yeah account is a key yeah it can be yeah","url":"https://www.youtube.com/watch?v=I4YDr6FPFJo&t=2456s"},{"start_seconds":2463,"text":"so so that's the idea we have this let's assume abilities capabilities right yeah well let's let's yeah it can","url":"https://www.youtube.com/watch?v=I4YDr6FPFJo&t=2463s"},{"start_seconds":2471,"text":"be cool right but it's also it's also abilities that they have um so some is working on some very interesting uh like even extra some is","url":"https://www.youtube.com/watch?v=I4YDr6FPFJo&t=2471s"},{"start_seconds":2479,"text":"our CTO um extra things that we might have here and uh Todd novaki uh who's leading like","url":"https://www.youtube.com/watch?v=I4YDr6FPFJo&t=2479s"},{"start_seconds":2486,"text":"the move team and there is another thing that we have to know about three so we explained all of this what we didn't","url":"https://www.youtube.com/watch?v=I4YDr6FPFJo&t=2486s"},{"start_seconds":2493,"text":"explain is transaction costs storage and this kind of stuff Auto economics is very interesting","url":"https://www.youtube.com/watch?v=I4YDr6FPFJo&t=2493s"},{"start_seconds":2500,"text":"right what is usually the the cost for a transaction why do you pay the validators where do you pay gas","url":"https://www.youtube.com/watch?v=I4YDr6FPFJo&t=2500s"},{"start_seconds":2507,"text":"for two things execution and Storage right you need execution yep yep","url":"https://www.youtube.com/watch?v=I4YDr6FPFJo&t=2507s"},{"start_seconds":2514,"text":"you have you have questions no no I said yes execution starts you pay for this and also this is the cost of the validators pay right I mean a validator","url":"https://www.youtube.com/watch?v=I4YDr6FPFJo&t=2514s"},{"start_seconds":2523,"text":"has to execute transaction but at the same time they need hard disks they need all of this stuff to maintain the network and the state uh what we do is we split the gas","url":"https://www.youtube.com/watch?v=I4YDr6FPFJo&t=2523s"},{"start_seconds":2531,"text":"between these two and we have a storage fund what is a storage fund","url":"https://www.youtube.com/watch?v=I4YDr6FPFJo&t=2531s"},{"start_seconds":2540,"text":"when you pay for this transaction let's assume that this is the TX cost part of this","url":"https://www.youtube.com/watch?v=I4YDr6FPFJo&t=2540s"},{"start_seconds":2548,"text":"well there is there is there are some functions uh from Alonso our uh like economist go to a storage fund and this storage","url":"https://www.youtube.com/watch?v=I4YDr6FPFJo&t=2548s"},{"start_seconds":2557,"text":"fund is actually giving the opportunity for the users if in the future you want to delete this nft the storage that takes you will get","url":"https://www.youtube.com/watch?v=I4YDr6FPFJo&t=2557s"},{"start_seconds":2565,"text":"some rebuttal you get the return yeah yes you get some return and it also gives an advantage to the validators are we good with the time","url":"https://www.youtube.com/watch?v=I4YDr6FPFJo&t=2565s"},{"start_seconds":2572,"text":"are we good with the time okay okay cool um and the storage fund is reinvested","url":"https://www.youtube.com/watch?v=I4YDr6FPFJo&t=2572s"},{"start_seconds":2581,"text":"yes and there is a benefit for this right imagine you're a validator and you come on here later yeah you need to maintain State you didn't get a thing","url":"https://www.youtube.com/watch?v=I4YDr6FPFJo&t=2581s"},{"start_seconds":2590,"text":"right in a single sense you're not paid for the transactions exactly but you need to store all this you have the students funded we can pay you obviously you are not going to get as a user all","url":"https://www.youtube.com/watch?v=I4YDr6FPFJo&t=2590s"},{"start_seconds":2598,"text":"of this I mean if you you deleted you're not getting everything back yeah like the battle is sorter uh but at least you're getting something some people","url":"https://www.youtube.com/watch?v=I4YDr6FPFJo&t=2598s"},{"start_seconds":2607,"text":"might use it to have like I'm storing objects and then if the market goes up in","url":"https://www.youtube.com/watch?v=I4YDr6FPFJo&t=2607s"},{"start_seconds":2614,"text":"practice I I can even make money in theory but let's assume that this is not the the reason the reason is if your business goes I mean you dissolve your","url":"https://www.youtube.com/watch?v=I4YDr6FPFJo&t=2614s"},{"start_seconds":2622,"text":"business you can get something back right you don't need the nfts anymore why do you need to pay so that's that's another difference I don't know how how you are doing it on","url":"https://www.youtube.com/watch?v=I4YDr6FPFJo&t=2622s"},{"start_seconds":2630,"text":"here do you have a different yeah so we lock near itself and if you really delete the storage we get back you get","url":"https://www.youtube.com/watch?v=I4YDr6FPFJo&t=2630s"},{"start_seconds":2637,"text":"back near okay and then and then developers you can split it between execution and storage so we your gas is on the execution and then you pay near","url":"https://www.youtube.com/watch?v=I4YDr6FPFJo&t=2637s"},{"start_seconds":2645,"text":"for storage oh I see so storage is like it's called storage taking but it's very similar to this model okay so there is a different token","url":"https://www.youtube.com/watch?v=I4YDr6FPFJo&t=2645s"},{"start_seconds":2654,"text":"for the gas it's not different it's just it's it's it's it's two parameters it's two parameters okay but this has a price as well or it's me yeah it has it has a","url":"https://www.youtube.com/watch?v=I4YDr6FPFJo&t=2654s"},{"start_seconds":2663,"text":"price that fluctuates with like okay how expensive computation is and this is fixed price fixed per byte yeah I see because like","url":"https://www.youtube.com/watch?v=I4YDr6FPFJo&t=2663s"},{"start_seconds":2672,"text":"storage doesn't change right like yeah in fact the fact that more people want to use stuff so that's that's another thing that","url":"https://www.youtube.com/watch?v=I4YDr6FPFJo&t=2672s"},{"start_seconds":2680,"text":"we're doing there is another uh like part of sweet so I mean just like on the search fan like yeah so this is actually reinvested or like how is","url":"https://www.youtube.com/watch?v=I4YDr6FPFJo&t=2680s"},{"start_seconds":2688,"text":"that managed so there is some function on how we Define all of these parameters in this storage fund what do you mean by","url":"https://www.youtube.com/watch?v=I4YDr6FPFJo&t=2688s"},{"start_seconds":2696,"text":"reinvested well it's like it was just it's just a bunch of story sitting yes it's there and there are some functions giving money to the Valdez and to the","url":"https://www.youtube.com/watch?v=I4YDr6FPFJo&t=2696s"},{"start_seconds":2704,"text":"users for the battles I see because then we might not be solving if we didn't right you can invest it in theory you","url":"https://www.youtube.com/watch?v=I4YDr6FPFJo&t=2704s"},{"start_seconds":2711,"text":"can you can do a lot of things uh but this is something that will be defined in the smart contract level not outside the the smart contract right I mean","url":"https://www.youtube.com/watch?v=I4YDr6FPFJo&t=2711s"},{"start_seconds":2719,"text":"everything will be transparent if something happens to this one yeah but in practice you need to have all of the money to return back to the users if they deliver if they want to free","url":"https://www.youtube.com/watch?v=I4YDr6FPFJo&t=2719s"},{"start_seconds":2727,"text":"everything yes if they want to free anything so that's one part um the other thing that is interesting with us is crypto agility I'm going into","url":"https://www.youtube.com/watch?v=I4YDr6FPFJo&t=2727s"},{"start_seconds":2735,"text":"my territory now so uh what do we have right we do have API internally from the","url":"https://www.youtube.com/watch?v=I4YDr6FPFJo&t=2735s"},{"start_seconds":2743,"text":"uh from the STD API on growth 16 like we have zero knowledge proofs yeah I mean","url":"https://www.youtube.com/watch?v=I4YDr6FPFJo&t=2743s"},{"start_seconds":2751,"text":"some the smart contracts can literally uh execute zero knowledge proofs by just calling the graphics dot verify only","url":"https://www.youtube.com/watch?v=I4YDr6FPFJo&t=2751s"},{"start_seconds":2758,"text":"verification unit on the blockchain we we made like some improvements on artworks I don't know if you write rust","url":"https://www.youtube.com/watch?v=I4YDr6FPFJo&t=2758s"},{"start_seconds":2765,"text":"you know that the result Works RS and this one is okay it's it's like the um all of the structure of our chords is","url":"https://www.youtube.com/watch?v=I4YDr6FPFJo&t=2765s"},{"start_seconds":2774,"text":"great but we made some additions by adding a blst which is a BLS library for um","url":"https://www.youtube.com/watch?v=I4YDr6FPFJo&t=2774s"},{"start_seconds":2782,"text":"uh like faster uh proving uh sorry faster operations on the BLS care and now we are like two two times more","url":"https://www.youtube.com/watch?v=I4YDr6FPFJo&t=2782s"},{"start_seconds":2790,"text":"faster than the the original lock works so we have very very fast verifiers on Google 16.","url":"https://www.youtube.com/watch?v=I4YDr6FPFJo&t=2790s"},{"start_seconds":2795,"text":"um we also have obviously we have the BLS verification even internally to the contracts we do have I mean the regular","url":"https://www.youtube.com/watch?v=I4YDr6FPFJo&t=2795s"},{"start_seconds":2802,"text":"cdsa did you did you speed up BLS because you say we're using the plst but we're working you will see in a couple","url":"https://www.youtube.com/watch?v=I4YDr6FPFJo&t=2802s"},{"start_seconds":2810,"text":"of weeks another optimization of the aggregation on top of the dampone paper um we we managed to make a way where","url":"https://www.youtube.com/watch?v=I4YDr6FPFJo&t=2810s"},{"start_seconds":2819,"text":"because it's a validators keys if you're using BLS mostly you need it for validator signatures what you can do is you can have different ways of","url":"https://www.youtube.com/watch?v=I4YDr6FPFJo&t=2819s"},{"start_seconds":2826,"text":"aggregating by even avoiding proof of possession of the case you don't you might not need proof of possession anymore usually you","url":"https://www.youtube.com/watch?v=I4YDr6FPFJo&t=2826s"},{"start_seconds":2834,"text":"need to to prove because you're doing aggregation that hey it's my key to avoid the kind of attack called wrong key attack so I because you're","url":"https://www.youtube.com/watch?v=I4YDr6FPFJo&t=2834s"},{"start_seconds":2841,"text":"aggregating somehow I know some other validators keys and I create my key in a way that I take advantage of your keys and then I can omit your signature and","url":"https://www.youtube.com/watch?v=I4YDr6FPFJo&t=2841s"},{"start_seconds":2850,"text":"somehow the people who believe you signed yeah we found some ways to make it a bit faster so we call it","url":"https://www.youtube.com/watch?v=I4YDr6FPFJo&t=2850s"},{"start_seconds":2862,"text":"so there is a version of BLS let's see if we are going to to have it already because the bill is the implementation and the aggregation is really fast now I","url":"https://www.youtube.com/watch?v=I4YDr6FPFJo&t=2862s"},{"start_seconds":2871,"text":"think we're the first company that we have we have a library called Fast crypto foreign so this is popular enough now I mean","url":"https://www.youtube.com/watch?v=I4YDr6FPFJo&t=2871s"},{"start_seconds":2880,"text":"even fans are using it um that have uh the fastest implementation we find just we make all of the adjustments obviously we use them","url":"https://www.youtube.com/watch?v=I4YDr6FPFJo&t=2880s"},{"start_seconds":2889,"text":"on Suey but this one is like published independently and everyone can use it we have Graphics team there we have BLS we have vcdsa we have EDSA with some","url":"https://www.youtube.com/watch?v=I4YDr6FPFJo&t=2889s"},{"start_seconds":2897,"text":"improvements yeah to five five nineteen I personally found many attacks on all of the implementations like great yeah","url":"https://www.youtube.com/watch?v=I4YDr6FPFJo&t=2897s"},{"start_seconds":2906,"text":"and it's two months ago three months oh no it was July when I think all of the implementations were broken could be broken okay could","url":"https://www.youtube.com/watch?v=I4YDr6FPFJo&t=2906s"},{"start_seconds":2914,"text":"be broken and there was even treasure and some other wallets that they had an exposed API where someone if they were","url":"https://www.youtube.com/watch?v=I4YDr6FPFJo&t=2914s"},{"start_seconds":2922,"text":"not careful they could expose a private key treasure was lucky and he didn't have the like this vulnerability being","url":"https://www.youtube.com/watch?v=I4YDr6FPFJo&t=2922s"},{"start_seconds":2929,"text":"exploited yeah but someone could do it accidentally now they fixed it I mean they were super fast to fix these things and it's in fast crypto you have yes we","url":"https://www.youtube.com/watch?v=I4YDr6FPFJo&t=2929s"},{"start_seconds":2937,"text":"have already fast crypto and what we do in move so we have moved and provide all that energy and in move you can have","url":"https://www.youtube.com/watch?v=I4YDr6FPFJo&t=2937s"},{"start_seconds":2944,"text":"rust I mean uh libraries libraries and then obviously you can have binaries and we execute this as a native function","url":"https://www.youtube.com/watch?v=I4YDr6FPFJo&t=2944s"},{"start_seconds":2952,"text":"move now okay so we actually implement the the algorithms in Rust and then move here some like recompilations first yes","url":"https://www.youtube.com/watch?v=I4YDr6FPFJo&t=2952s"},{"start_seconds":2960,"text":"it exposes the API um it's it's all of this and there is also another about Pederson commitments","url":"https://www.youtube.com/watch?v=I4YDr6FPFJo&t=2960s"},{"start_seconds":2968,"text":"this is for um like confidential transactions and other things that you can do yep um generally you will see a very rich","url":"https://www.youtube.com/watch?v=I4YDr6FPFJo&t=2968s"},{"start_seconds":2978,"text":"API on cryptography we even have dran support native drill and support so literally you can you can you can use","url":"https://www.youtube.com/watch?v=I4YDr6FPFJo&t=2978s"},{"start_seconds":2985,"text":"their Durant committee internally to show it today we also have some other protocols that we implemented like some optimistic","url":"https://www.youtube.com/watch?v=I4YDr6FPFJo&t=2985s"},{"start_seconds":2993,"text":"Satoshi dies for uh for lotteries even multi-party so you can even avoid vrfs we're working on others examples right","url":"https://www.youtube.com/watch?v=I4YDr6FPFJo&t=2993s"},{"start_seconds":3001,"text":"on top we do have examples obviously we're not providing confidential like payment now but the the functionality is","url":"https://www.youtube.com/watch?v=I4YDr6FPFJo&t=3001s"},{"start_seconds":3008,"text":"there that if someone has the license to do it they can do it um so these are like parts of the uh signatures and like all of the fast","url":"https://www.youtube.com/watch?v=I4YDr6FPFJo&t=3008s"},{"start_seconds":3017,"text":"crypto part but we have another thing as well it's what the user can use to sign do I don't remember if near are you crypto","url":"https://www.youtube.com/watch?v=I4YDr6FPFJo&t=3017s"},{"start_seconds":3026,"text":"agile on what types of signatures people can use we have ccdsa and adults and curve yeah we can add more","url":"https://www.youtube.com/watch?v=I4YDr6FPFJo&t=3026s"},{"start_seconds":3034,"text":"and and EDSA or yeah okay so you have these two yeah okay you","url":"https://www.youtube.com/watch?v=I4YDr6FPFJo&t=3034s"},{"start_seconds":3040,"text":"can add more like exactly and I guess you have K1 right the the ethereum curve yeah so","url":"https://www.youtube.com/watch?v=I4YDr6FPFJo&t=3040s"},{"start_seconds":3048,"text":"we now work on the R1 as well there is a benefit there is benefit yes what does it means","url":"https://www.youtube.com/watch?v=I4YDr6FPFJo&t=3048s"},{"start_seconds":3055,"text":"yeah yes mobile enclaves so we're having this and obviously we're making because they're not good implementation of R1 unfortunately you will realize it as","url":"https://www.youtube.com/watch?v=I4YDr6FPFJo&t=3055s"},{"start_seconds":3064,"text":"well this is faster this is faster because the Bitcoin World actually made it faster yeah and this one is faster because we also contributed on this no","url":"https://www.youtube.com/watch?v=I4YDr6FPFJo&t=3064s"},{"start_seconds":3072,"text":"no generally this one is way faster than it is it is but but even our team actually contributed a lot to making this a lot faster even on battery","url":"https://www.youtube.com/watch?v=I4YDr6FPFJo&t=3072s"},{"start_seconds":3079,"text":"verification if you go we even have half aggregation here you can literally aggregate without","url":"https://www.youtube.com/watch?v=I4YDr6FPFJo&t=3079s"},{"start_seconds":3086,"text":"an interaction in the DSA signatures to have half of the size we publish this on RSA conference like two years ago while","url":"https://www.youtube.com/watch?v=I4YDr6FPFJo&t=3086s"},{"start_seconds":3094,"text":"at Facebook uh but yes R1 and we're going to even have BLS in the user side because in BLS you can have very like efficient","url":"https://www.youtube.com/watch?v=I4YDr6FPFJo&t=3094s"},{"start_seconds":3103,"text":"threshold schemes without going into this because we have some of the same implementation for this but yeah it's like is it","url":"https://www.youtube.com/watch?v=I4YDr6FPFJo&t=3103s"},{"start_seconds":3112,"text":"deterministic yeah it's painful exactly and then we said okay yeah BLS let's use BLS it's a","url":"https://www.youtube.com/watch?v=I4YDr6FPFJo&t=3112s"},{"start_seconds":3120,"text":"bit more expensive by the way you can see all of the benchmarks in the fast crypto Library we have diagrams you can see like how the performance scales yeah sweet points about 42.","url":"https://www.youtube.com/watch?v=I4YDr6FPFJo&t=3120s"},{"start_seconds":3131,"text":"that's the answer it's yeah it's it's 14 times more expensive so yeah so that's we were actually","url":"https://www.youtube.com/watch?v=I4YDr6FPFJo&t=3131s"},{"start_seconds":3139,"text":"planning to use BLS for our validator but you have to ah for validators yes well we end up doing this because at that point if you're using uh it's too","url":"https://www.youtube.com/watch?v=I4YDr6FPFJo&t=3139s"},{"start_seconds":3148,"text":"expensive how many validators do you have like 100 plus 200 okay and then BLS BLS will perform better","url":"https://www.youtube.com/watch?v=I4YDr6FPFJo&t=3148s"},{"start_seconds":3155,"text":"download fast crypto and you can use it literally I mean we did a lot of good work there to to make this as fast as possible to be comparable but obviously","url":"https://www.youtube.com/watch?v=I4YDr6FPFJo&t=3155s"},{"start_seconds":3164,"text":"we have less then there is a point to to compare between the size of the signature because the size also plays a role yeah","url":"https://www.youtube.com/watch?v=I4YDr6FPFJo&t=3164s"},{"start_seconds":3171,"text":"and the execution cost uh and you can do some other batching and parallelization we also did some parallelization here","url":"https://www.youtube.com/watch?v=I4YDr6FPFJo&t=3171s"},{"start_seconds":3180,"text":"um so this is one uh this is the other part on on cryptography and and a very interesting uh like signature","url":"https://www.youtube.com/watch?v=I4YDr6FPFJo&t=3180s"},{"start_seconds":3188,"text":"scheme is coming I cannot unfortunately cannot we really because we didn't have we don't have yet the security proof but","url":"https://www.youtube.com/watch?v=I4YDr6FPFJo&t=3188s"},{"start_seconds":3196,"text":"this one will be um I think one of the best ideas in the space on how you can authorize users without Smart contracts","url":"https://www.youtube.com/watch?v=I4YDr6FPFJo&t=3196s"},{"start_seconds":3205,"text":"um so that's that's the main idea behind behind sui um I don't know if you want to ask any other deeper question","url":"https://www.youtube.com/watch?v=I4YDr6FPFJo&t=3205s"},{"start_seconds":3213,"text":"I mean like you can even go to transparency and other things so today is the day that you know that I","url":"https://www.youtube.com/watch?v=I4YDr6FPFJo&t=3213s"},{"start_seconds":3223,"text":"publish something it's very interesting right I mean I was going to be published a bit later right so yeah yeah you will publish it later","url":"https://www.youtube.com/watch?v=I4YDr6FPFJo&t=3223s"},{"start_seconds":3231,"text":"but the idea is uh I played like a big role in the past personally like as my personal goal","url":"https://www.youtube.com/watch?v=I4YDr6FPFJo&t=3231s"},{"start_seconds":3238,"text":"you know while working at Libra we had to work with Regulators so I was involved in this meeting sometimes and I had all of the input from Auditors","url":"https://www.youtube.com/watch?v=I4YDr6FPFJo&t=3238s"},{"start_seconds":3246,"text":"Regulators like regular Auditors not only governmental Auditors and Libra literally it wasn't technical the issue that didn't work right it was other","url":"https://www.youtube.com/watch?v=I4YDr6FPFJo&t=3246s"},{"start_seconds":3255,"text":"things outside our territory that didn't allow it to to to be able to be a product however we did a lot of work on","url":"https://www.youtube.com/watch?v=I4YDr6FPFJo&t=3255s"},{"start_seconds":3263,"text":"solvency we had very good economies even Dalia from chain link now and Christian catalini like the economies that we have","url":"https://www.youtube.com/watch?v=I4YDr6FPFJo&t=3263s"},{"start_seconds":3270,"text":"now in Syria Alonso de cortari myself as a cryptographer who is now on a16z and some other","url":"https://www.youtube.com/watch?v=I4YDr6FPFJo&t=3270s"},{"start_seconds":3280,"text":"cryptographers like around the world in Visa research in Cornell University Panos and Yan we worked a lot on finding","url":"https://www.youtube.com/watch?v=I4YDr6FPFJo&t=3280s"},{"start_seconds":3288,"text":"okay even if we want to have solvents it's not easy it's very very difficult how you have a centralized exchange or even in decentralized exchange if it","url":"https://www.youtube.com/watch?v=I4YDr6FPFJo&t=3288s"},{"start_seconds":3296,"text":"uses some of the assets outside the blockchain how do you even verify that what they are liable for they have the","url":"https://www.youtube.com/watch?v=I4YDr6FPFJo&t=3296s"},{"start_seconds":3303,"text":"exact same assets or even more srps and then some companies after FTX started to offer like reserves and proof of","url":"https://www.youtube.com/watch?v=I4YDr6FPFJo&t=3303s"},{"start_seconds":3313,"text":"liabilities and proof of solvency so the most common thing is you are putting four liabilities you are putting all of the user balances As Leaves yeah and","url":"https://www.youtube.com/watch?v=I4YDr6FPFJo&t=3313s"},{"start_seconds":3321,"text":"then numericalize it and you michaelize it exactly you are going into and then you let users go and check that they're exactly what's this what's the the proof","url":"https://www.youtube.com/watch?v=I4YDr6FPFJo&t=3321s"},{"start_seconds":3330,"text":"of liabilities this is a decentralized uh probabilistic random sampling yeah that's what it is we call it personal","url":"https://www.youtube.com/watch?v=I4YDr6FPFJo&t=3330s"},{"start_seconds":3338,"text":"liabilities but this is exactly just like you need to rely on users to actually go check which yes but even in the regular there is no other solution and I can explain to you why there is no","url":"https://www.youtube.com/watch?v=I4YDr6FPFJo&t=3338s"},{"start_seconds":3347,"text":"other solution this is for sex right sex of the centralized exchange not the other sex","url":"https://www.youtube.com/watch?v=I4YDr6FPFJo&t=3347s"},{"start_seconds":3354,"text":"um uh no no you remember vitalik's recent post how to have a safe sex this was the the title literally but","url":"https://www.youtube.com/watch?v=I4YDr6FPFJo&t=3354s"},{"start_seconds":3362,"text":"obviously we mean about uh like centralized exchanges the problem is first they have issues with privacy yeah and the other thing if if you have like","url":"https://www.youtube.com/watch?v=I4YDr6FPFJo&t=3362s"},{"start_seconds":3370,"text":"the values here 5 10 12 I mean people who do inclusion proofs they can see the neighbors if you hide them you need an auditor","url":"https://www.youtube.com/watch?v=I4YDr6FPFJo&t=3370s"},{"start_seconds":3379,"text":"and the auditor can obviously see them but the users can only take inclusion and they have to blindly trust the auditor this is one of the things that","url":"https://www.youtube.com/watch?v=I4YDr6FPFJo&t=3379s"},{"start_seconds":3387,"text":"we mentioned in uh like binance now but some other exchanges that they're also using the same algorithm like Kraken and others","url":"https://www.youtube.com/watch?v=I4YDr6FPFJo&t=3387s"},{"start_seconds":3394,"text":"and something that they always do I don't know why people are doing it is so instead of using 32 bytes they're","url":"https://www.youtube.com/watch?v=I4YDr6FPFJo&t=3394s"},{"start_seconds":3403,"text":"only using for example eight bytes for leaves and this is very dangerous why it's dangerous because someone","url":"https://www.youtube.com/watch?v=I4YDr6FPFJo&t=3403s"},{"start_seconds":3411,"text":"cannot find collisions of chain here you're using also some salt per user you can just play with the salt until you find two balances","url":"https://www.youtube.com/watch?v=I4YDr6FPFJo&t=3411s"},{"start_seconds":3419,"text":"you report the lower balance to the auditor you report the real balance to the user and the auditor will do the sum","url":"https://www.youtube.com/watch?v=I4YDr6FPFJo&t=3419s"},{"start_seconds":3426,"text":"and we'll see some very small value even zero in theory and the user will say no no my balance was there but this is completely wrong and this is I don't","url":"https://www.youtube.com/watch?v=I4YDr6FPFJo&t=3426s"},{"start_seconds":3434,"text":"know I feel the mistake is based on the fact that traditional Auditors have implemented the original Maxwell approach it was Greg Maxwell from from","url":"https://www.youtube.com/watch?v=I4YDr6FPFJo&t=3434s"},{"start_seconds":3441,"text":"the Bitcoin like space like a great scientist um he didn't he didn't propose this but the","url":"https://www.youtube.com/watch?v=I4YDr6FPFJo&t=3441s"},{"start_seconds":3448,"text":"first auditor actually did it for ux Citizens they didn't want the people to see like Imaging","url":"https://www.youtube.com/watch?v=I4YDr6FPFJo&t=3448s"},{"start_seconds":3455,"text":"right and then you see some numbers here and they say okay let's truncate it but this truncation is actually uh","url":"https://www.youtube.com/watch?v=I4YDr6FPFJo&t=3455s"},{"start_seconds":3463,"text":"vulnerable because now eight bytes and if you go to four bytes for a collision attack this is two in the power of 32 I can do","url":"https://www.youtube.com/watch?v=I4YDr6FPFJo&t=3463s"},{"start_seconds":3472,"text":"it in seconds like and uh we identified this issue we identified other issues regarding the summation uh vitalik","url":"https://www.youtube.com/watch?v=I4YDr6FPFJo&t=3472s"},{"start_seconds":3481,"text":"Stakes now a leading corollon trying to propose even a standard and there is the communities at Cape roof and many","url":"https://www.youtube.com/watch?v=I4YDr6FPFJo&t=3481s"},{"start_seconds":3488,"text":"cryptographers that we literally want all of this yes to be zero knowledge proof so you don't need to provide the pairs yeah we","url":"https://www.youtube.com/watch?v=I4YDr6FPFJo&t=3488s"},{"start_seconds":3498,"text":"do have a paper it's called Depot Plus and actually this year was in the top 10 Innovations of 2021 in one of the","url":"https://www.youtube.com/watch?v=I4YDr6FPFJo&t=3498s"},{"start_seconds":3505,"text":"biggest I think uh Innovation contests in the world see so and this one works really well with","url":"https://www.youtube.com/watch?v=I4YDr6FPFJo&t=3505s"},{"start_seconds":3513,"text":"proven security and all of this vitalik now is proposing another scheme where instead of using this let's like snark everything and by snarking","url":"https://www.youtube.com/watch?v=I4YDr6FPFJo&t=3513s"},{"start_seconds":3522,"text":"everything probably we can have a faster verification proofs and other things however this works in my opinion we should start with this at least to","url":"https://www.youtube.com/watch?v=I4YDr6FPFJo&t=3522s"},{"start_seconds":3531,"text":"ensure that it's better than the medical tree approaches and I'm uh like all ears to see vitalik coming with real with","url":"https://www.youtube.com/watch?v=I4YDr6FPFJo&t=3531s"},{"start_seconds":3540,"text":"with snark to use yeah do we need a trusted setup go to the regulators and convince them that we need addresses set up there are all of these things that","url":"https://www.youtube.com/watch?v=I4YDr6FPFJo&t=3540s"},{"start_seconds":3547,"text":"snarks sadly yeah it's still it gets very close yeah while this one is using bulletproof it doesn't require a trusted setup okay so we say let's start with","url":"https://www.youtube.com/watch?v=I4YDr6FPFJo&t=3547s"},{"start_seconds":3555,"text":"this thing we have proof of liabilities how do you solve proof of assets there it's difficult right with centralized exchanges that might have","url":"https://www.youtube.com/watch?v=I4YDr6FPFJo&t=3555s"},{"start_seconds":3563,"text":"liquid semi-liquid illiquid assets yeah what do you do you need both Auditors and oracles but also like yeah I mean they","url":"https://www.youtube.com/watch?v=I4YDr6FPFJo&t=3563s"},{"start_seconds":3571,"text":"can be like investing in that's part of the strategy right exactly investing contain is probably traceable but investing","url":"https://www.youtube.com/watch?v=I4YDr6FPFJo&t=3571s"},{"start_seconds":3578,"text":"right yes and and this is where the problem starts sometimes I don't know about the FTX situation right I mean","url":"https://www.youtube.com/watch?v=I4YDr6FPFJo&t=3578s"},{"start_seconds":3586,"text":"nobody knows the the correct number but the idea is even if they were and something was in","url":"https://www.youtube.com/watch?v=I4YDr6FPFJo&t=3586s"},{"start_seconds":3595,"text":"liquid in practice you're not solving I mean if someone tries to withdraw the money you're not solvent and it's very tricky how to define so yeah like well","url":"https://www.youtube.com/watch?v=I4YDr6FPFJo&t=3595s"},{"start_seconds":3603,"text":"this is where it is the question of defining some limits and exactly and lenders of lust Resort something that I","url":"https://www.youtube.com/watch?v=I4YDr6FPFJo&t=3603s"},{"start_seconds":3610,"text":"realized in the past this was Deloitte in this particular case we found attacks on on the Lloyd as well two years ago right very similar attacks that we found","url":"https://www.youtube.com/watch?v=I4YDr6FPFJo&t=3610s"},{"start_seconds":3618,"text":"now on binance uh Banos by the way super uh transparent at least on me and they told me that they will check everything","url":"https://www.youtube.com/watch?v=I4YDr6FPFJo&t=3618s"},{"start_seconds":3625,"text":"they're they're open and I give them yeah I give it to them like this is like they just didn't know right it's the auditor offering something and if you","url":"https://www.youtube.com/watch?v=I4YDr6FPFJo&t=3625s"},{"start_seconds":3633,"text":"don't have I don't know crazy cryptographers in your team you just accept what the auditor is giving you yeah and they said they will fix it so I feel confident they will do it but even","url":"https://www.youtube.com/watch?v=I4YDr6FPFJo&t=3633s"},{"start_seconds":3641,"text":"back then um one of the issues that we have is sometimes synchronicity how do you synchronize the input you get from the proof of assets with the proof of","url":"https://www.youtube.com/watch?v=I4YDr6FPFJo&t=3641s"},{"start_seconds":3649,"text":"solvency in the millisecond level because because you know what can happen you know there is an audit yeah like a moments ago you move the assets here and","url":"https://www.youtube.com/watch?v=I4YDr6FPFJo&t=3649s"},{"start_seconds":3658,"text":"then you're removing them back again or there are in-flight transactions of the user right I mean we need to snapshot at a point yes but let's assume at the time","url":"https://www.youtube.com/watch?v=I4YDr6FPFJo&t=3658s"},{"start_seconds":3667,"text":"like one millisecond before the uh like the deadline I'm sending money but you will see the transaction on your report","url":"https://www.youtube.com/watch?v=I4YDr6FPFJo&t=3667s"},{"start_seconds":3674,"text":"when whenever the sex decides yeah and there is a thing right they can play in this late moment uh transactions they","url":"https://www.youtube.com/watch?v=I4YDr6FPFJo&t=3674s"},{"start_seconds":3682,"text":"can play and Deloitte told me that we give a five percent uh you know threshold yeah because of all of these","url":"https://www.youtube.com/watch?v=I4YDr6FPFJo&t=3682s"},{"start_seconds":3689,"text":"things that can happen but we realized that most of them had the one to three percent Surplus if they were","url":"https://www.youtube.com/watch?v=I4YDr6FPFJo&t=3689s"},{"start_seconds":3696,"text":"ah like secure so all of this is happening now we are trying to even us miss them and I guess all of the other companies will help with their","url":"https://www.youtube.com/watch?v=I4YDr6FPFJo&t=3696s"},{"start_seconds":3704,"text":"cryptographers we need the standard yeah because something that can happen is bitmex if I remember correctly published","url":"https://www.youtube.com/watch?v=I4YDr6FPFJo&t=3704s"},{"start_seconds":3712,"text":"something literally today just hours before my announcement on the binance vulnerabilities with a different scheme and then balance is going to","url":"https://www.youtube.com/watch?v=I4YDr6FPFJo&t=3712s"},{"start_seconds":3721,"text":"propose a different scheme and then vitalik is proposing another one I say let's start with this and we can go to Italian we cannot have 10 Solutions yeah","url":"https://www.youtube.com/watch?v=I4YDr6FPFJo&t=3721s"},{"start_seconds":3729,"text":"right it's very important to go with cryptographers with Auditors sitting on the same table with exchanges with l1s","url":"https://www.youtube.com/watch?v=I4YDr6FPFJo&t=3729s"},{"start_seconds":3738,"text":"and people who want to help it's also proof of assets as we said see together and have a standard okay yeah sounds","url":"https://www.youtube.com/watch?v=I4YDr6FPFJo&t=3738s"},{"start_seconds":3745,"text":"good well thank you I mean thank you thanks so much yeah for deep dying the story and uh yeah subscribe comment","url":"https://www.youtube.com/watch?v=I4YDr6FPFJo&t=3745s"},{"start_seconds":3752,"text":"check out the papers and reports and we'll see you next time thanks again","url":"https://www.youtube.com/watch?v=I4YDr6FPFJo&t=3752s"}],"youtube_url":"https://youtube.com/watch?v=I4YDr6FPFJo","url":"https://near-pedia.xyz/videos/I4YDr6FPFJo"}