 Alright, hi everybody. Thank you for coming. My name is Martin. I'm from Quantstamp I'm a senior research engineer and the head of new initiatives and I will be telling you about the properties of bridges that I really like So before I do that, we should all understand what a bridge really is, right? So let me do that. So when I say a bridge I kind of sort of want you to understand this type of an architecture We have two chains my mother chain for now all intended purposes This will be Ethereum and then we have another chain and we want to get our assets from one chain to the other chain So for this purpose, we have something that I call a custodian This is where me will lock some assets some ether then we have an off-chain component called a communicator that is going to be watching what I have locked in the custodian and it's going to instruct some liquidity pool on the other chain to Send me the assets that I want to have bridged the way how this really happens differs case by case Some bridges issue some debt tokens some bridges work with real liquidity pool on the other chain and just send me the assets Then this was the deposit on the withdrawal the process is exactly the opposite So the communicator is actually going to be watching the debt issuer where I will be burning my tokens the debt tokens and That then is going to instruct the custodian to send me back to eat that I want to have a bridge back Okay, so this is the mental model that I want you to maintain when I speak about bridges So now I'm going to give you the properties the menu of the properties that I like About bridges when they have them. So first of all, we develop bridges because we have other chains Many of the other chains are sort of trying to speed up Ethereum, right? But you know if the bridge takes ages to bridge my assets from one chain to the other one Then this is not really the user experience that I want to have so what I really want from a bridge is the speed Then the next thing that I really want is finality That means that once the assets are bridged from one side to the other one or from the other side back This is final. Nobody is going to reorg. Nobody is going to bring those assets back. They are just not going to disappear The next thing next thing that I really appreciate is Atomicity so that would mean that there is no moment in time where I do not hold the assets I have them on one chain and then as soon as this bridging happens atomically. I suddenly have them on the other chain There's nothing in between what a world could stop where an asteroid could hit the earth and I could lose my assets because you know I have nobody to call or something like that, but this is actually really hard There is something called atomic swaps, but you know, that's a really really complicated protocol So, you know atomicity is something that I long for but it's really hard to accomplish Then you know very obviously I want my bridges to be secure Because nobody really likes losing assets if you do please talk to me after the talk You must be a very special kind of a human being But we usually want the bridges to be secure Then what we long for in general in the web 3 space is censorship resistance That means that anybody should be able to use the bridge Then we certainly also want availability Meaning that it doesn't matter whether it's 10 a.m. Or 10 p.m. Or 1 a.m. Or whatever I should be able to use the bridge right now if I wish to do so Then I also want liveness Liveness means that if I instruct the bridge to move the asses from one chain to the other chain at some point This is going to happen the bridging will never get stuck On the other hand sometimes we also want possibility Because if one of the chains is in troubles, you know There is a hack there or the bridge itself has problems Then sometimes it really helps when we can stop the time when we can freeze everything and do some crisis Resolution or something like that, right? Next thing that I really want is liquidity. So, you know, I might be a very rich person I might choose to today bridge 100 million dollars And if I choose to do so I would really like to be able to do so and that can happen only if the bridge is sufficiently liquid The next thing that I like to have is what I call expressive power So I want to be able to bridge my native assets That means ether but I also want to be able to bridge bunch of stable coins and other tokens, right? Maybe NFTs. So all the ERC 20s ERC 721s ERC 1155s What I'm really saying here. I want the bridge to actually be able to perform cross-chain smart contract calls Then I want my bridges to be cost efficient because you know, I don't like to spend money on gas, right? But sometimes we don't really have the option to do anything about that because we're interact interacting with two chains The transactions have to be paid for on both the chains, right? But it would be nice if the bridges were not adding any additional cost overhead to that Then privacy is also often desired imagine a mixer Where you know, I send money in on one chain and they magically show up on the other chain in a different account And nobody can connect the transactions together and then last thing that I really like is transparency on the stability That means that if I'm watching the bridge at any point of time I can convince myself that bridges actually function properly that it is not, you know Sending money around without any reason without it being instructed to do so So this was the menu now the main point of this lightning talk is this is actually really hard There are always conflicts between all these properties that we would like to have for example speed and finality They are conflicting if I want my bridge to be final or the bridging process to be final Then the finality has to be reached on two chains independently, right? But that's probably not going to be path a fast Similarly, if I'm talking about availability and pausing well once a bridge gets paused It's not really available, right? It's not accepting any transactions. I cannot bridge at this moment Same thing with security and liquidity sometimes You know bridges are really liquid But we don't really like to have all the assets sitting in some smart contract that Potentially could be exploited on one or the other chain, right? So therefore bridge operators very often limit the liquidity they take the assets They move them into some escrow's cold wallets and similar things So there are always a bunch of trade-offs you have to pick and choose what you are going to implement This slide is actually, you know screaming with QR codes So this QR code leads to our talk from each Denver about security incidents in bridges and this particular QR code leads to a paper about security hacks and incidents and bridges That's everything I had to say if you want to talk to me during Defcon or anytime later This is my telegram. Thank you