DAPPCON 2019: Workshop - Scalability on Eth 1.0 via Interoperability w/ Igor Barinov (POA Network)

DappCon 2019 · August 2019 · 1:19:32

At a DappCon 2019 workshop, POA Network founder Igor Barinov discusses scalability on Ethereum 1.0 through interoperability, drawing on POA Network's work building Ethereum-compatible sidechains. He covers how bridging assets and data between chains can relieve congestion on the Ethereum mainnet. The session gives developers a practical look at cross-chain approaches to scaling smart contract applications.

Speakers

Topics

From DappCon 2019, hosted by Dappcon Berlin.

Transcript

yeah so it's like not much hands-on Matthew I invite you to ginger on the bridge later on there are many components it's like quite it's quite a simple concept right bridging of tokens we have token on one chain and we want to bridge it usually it's like one-to-one right so but the concept is simple but usually underlying tech and services which we have there are not that simple so we can deploy we started bridges to achieve scalability right so the the POA concept itself is a parallel change with different consensus algorithms which can

be used by by depth depth to scale when if helium is not ready to scale right so when theorem is ready to scale for sure we would be happy if people will move to you know more scalable more secure solution so we think about boa tool as like temporary solution for scalability that's how I started in 2017 our first network is for PUA and after that we launched another called X diet maybe heard about this and the esta is also powered by X Division network is powered by the bridge right so without without the bridge network is not is not possible we have a network we'll have a

test net of P we also with some bridges and also : test net the net test network is also NP a consensus is also using bridges so this bridges bridges used by also by protocols outside of our how to say group of the group of networks right so there are networks like ocean protocol loop so our T's and some other IBM compatible networks which are using this token bridge to bridge different types of tokens for different reasons so that's that's the purpose of my talk today to show which types of bridges are you know how to basically launch it which components you need

and where to get them and you know many parts and sometimes it can be confusing and also I'd like to explain our new concept which is called arbitrary message bridging where one bridge and one set of Auditors can delay tokens different types so basically the bridge is a is a tool right set of tools to help users transfer assets from network to network right our bridge is mostly used between a theorem compatible network IBM compatible networks but also have some research how to breach tokens from a theorem to finance chain and now

we're researching how to how to bridge tokens to Libre because it's a it's quite interesting for for for scalability purposes basically how to have died on Libre and how to help tokens to get to finance chain and after get back right because a recommended solution to buy by Nance is just to move to balance and don't go back right so we have two main repositories so one is mono repo for for for everything but but contract and second is a is a repository for repository for all contracts right so I will open links and do some and we'll do something from my computer so

many repositories token bridge right but it's we caught mono repository but my contracts are not there so it's not yet fully mono repo but when we started the bridge he started from only from contracts and that's after we started to add different components right like monitoring UI Oracle's end-to-end tests and so forth and each component lived in their own repo and you know it's hard to maintain versions and it's hard to make end-to-end tests so that's why we decided to move everything into single mono repo okay some so some terminology I'm going

to use there like when we think about bridges we have usually we have two networks some in some in some setups they are known as like left and right main or other we call home and foreign so this this terminology actually and the concept of the bridge itself was started by parity technologies so home usually is is a network where validators of the bridge make affirmations of of events so usually this affirmations required transaction at least one transaction per validator and it's it's recommended to have home bridge home

network as an network where you have cheap or subsidized execution right if you if you want to have a bridge between a theorem and the side chain which chain will be home so generally film side chain will be home right even though we can bridge here let's say die to SH in right so side chain will be home for the bridge because it's it's cheaper and can be subsidized right so foreign chain it's a chain which only only used well it says like counterparty right so we can call them home and for it so

components of the bridge so the the most important component is set of contracts who have contracts on on on each side and smart contracts provide core functionality of the bridge basically working and unlocking funds also depending on the scenario meaning and burning tokens also some governance and administrative functions which is very important for this type of the bridge right so our bridges usually operating in a way like you can think about them as multi six right so to relay event from one

network to another network validators making group signature right so they agree on an event happened on network and after this agreement what we call affirmation is related to another network by validators using the Oracle software right so this Oracle software is basically watching events on one side and observing events and configured contracts and figures and deployed contracts and when event is happening with Oracle application can submit a transaction to another network right so what can go wrong with this how do you think any ideas like why this Oracle is like complex application let's say we

have a we have a Oracle and we're watching for an event on fearenside that user deposited died right and we need to relay this event to another chain like well by about datastore by home yeah so it's possible that that source of data can be you can became the sensors right for example this bridge can use for example view this RPC and a viewer might sensor it is it possible theoretically it's possible so it's good of this

Oracle can connect to our PC or the IPC right so to a local node or to remote so what else can go wrong how they think like when we submit transactions we need as an Oracle we need to know what is like guest price for this right for this network we need to calculate yes price so basically Oracle as a form of client right also when when we submitting transactions we need to resolve situations when when I will have problems with nonces right if you can be a problem also what's about phonology is if you instantly final may not know know how many how many blacks should we wait till touchy

finality what yeah but what do you think like how many yeah yeah ten well I think yeah in a film there is probabilistic finality this is no instant finality I can tender mint right so yeah but so my Oracle's when when Oracle observed an event or someone deposited I in the in the contract what Oracle should do yeah just just keep this stage with a couple of works watch again and if it's the same right the same state then submit

the transaction right whatever it's different state semi transactional not yeah just yeah just some somehow those result this situation so this Oracle has this kinda complex logic what to do in different situation but also it should be simple as okay observe this event if this event actually happened I should send transaction with the information provided by by event on one chain right so Oracle is a standalone application you can think about this as a as a specialized client right which is relying events between networks so UI UI is important most bridges are working

the way that you can send a asset into a smart contract and smart contract will emit an event and after validators will observe this event a relay this event and smart conscious on the other side will recreate the state so you don't need a UI but in reality users usually use your right and we provide our basic interface which can be also configured to support different networks different token types and and so forth all right so monitor why do we need monitor how do you think like yeah yes yeah yeah how do you know that something

is going wrong with the bridge if you don't have any any monitoring and alerts probably you can learn from Twitter right or a coin disk lets and usually and usually we don't want to have this right situation we would want to know what's actually is is happening with the bridge and in monitoring tool what is important to understand like what is the like most important metric how do you think yeah so the balancers locked and the balances minted all the same right it's

very important what else what well the life it is it's hard to say right life or because it's what you can see that there is a well if breach is used you always will have that balance differences right why because when something has locked while they just can can wait you know eight ten blocks and the balance will be on one on the foreign giant can be larger than balancing on the home side right so you have this balance differences so it's good to understand how many actually balance how many transactions happened

right under to understand this threshold what else what's about validators yeah what do we know what yeah what what what what would what we would like to know about what deters well activates it it's it's also hard to say because nodes of this Oracle node we basically listening to to to change right and they submitting transactions to decentralized peer-to-peer network so you don't know are they active or not most likely they don't have any incoming connections so you cannot ping them I can good scenario nodes are totally closed on incoming connections right they just operate with

with state which is replicated on their machines right basically reading and writing two nodes to two nodes well you that's but that's important but this you know you will see bye-bye balance differences whether what how do you think what is the like most common reason where they're not processing transactions yeah the the the most common reason is because they so first it was a miscalculation of gas price right

because gas price Oracle can return wrong confirmation a second possible that validators will run out of ether right and they're not using meta transactions and they just sent regular transactions so each valve data has some balance right and when balance ran out while daters are not doing events good thing here that anyone like any user of the bridge can fund validators right basically put something but also here are some possible attacks like if let's say if we have very very small amount of coins that we can transfer right the attackers can consent many transactions

between chains right and basically make denial of service of own fans of validators is it possible and deployment this is a very important component to be sure that auditors are running software with recommended settings they can deploy all the components themselves so there is no need for for for valve datas to use this deployment playbooks but it's good to use because they have automatic update settings enabled for for critical updates not our critical updates but system critical updates synchronizing with with different with

different times say time server settings also firewall rules and some other things right which is important which are important for deployment well in contrast themselves the contracts is a is a component okay so we have contracts on each side and these contracts can lock on lock funds mint and burn friends do we need any other contracts how do you think what do you think - for the bridge to operate any ideas like if you need to if you if you want to design it from scratch which other functionality are

you going to add to the bridge besides you know locking unlocking and meeting can burn link no there is no ugh so model so that when when funds are locked and unlocked they basically pulled within the bridge and when they minted and burn at the sent to two users right so there is no accounting model or EXO model in the bridge so we we call like governance or management features so it's important to have to have instruments how can we resolve problems with the bridge right and yeah is it possible that like validators of the

bridge can be hacked how do you think yes that's right so there is a validator set type of contract where there is a basically a list of validators and it's initiated when the bridge is deployed but after can be altered by the one of the roles so we have three rows on each side and each role represented by multi-sig so it can be connected to any like general genetic down mechanism right so technically it's possible to connect this rose to erect one down right order stack maybe it was some

other this one I know that it's possible to connect so one role is responsible for managing 12 dataset right whoever auditors and why there are world leaders is designed is described by this role right so this role can send a message from the from the motive and usually the this role is managed by by different like governance body right so validators a one group of say guys right and whoever can manage them as a different group so this is one great so if we need to increase security we can add more

validators right if we want to have more censorship resistance we will add more about details so second role is managing climates and quarters why do we need limits how do you think yeah limits per day how many tokens can be can be sent per day yeah let's say an instance of of a bridge is operating right bridge as a as a as a as a multiple services working together all

right but validators are hacked right and the attacker knows all private keys from all of our daters of the bridge or from majority so what the attacker will do or steal money right first and second he'll he'll mint coins on another site or unlock right so basically steal money from from both networks so to mitigate this to mitigate this limits can be decreased and let's say if we have a hundred percent of funds limit can be like ten percent of funds and we know that in worst case in area ten percent will be well twenty percent will be compromised and the rest

can be somehow protected by this limit if we have monitoring and we observe this and and we can react and we can find what is like what is the best solution to do but the first best solution that I I see here is to decrease limit to zero right if limit is zero no one can transact over the bridge and basically this is a way for for censorship of this bridge for this governance role so a third role can upgrade the smart contract of the bridge and change implementation so this is like super admin role it should be kept enough in cold storage by some you know

additional governance body so this is per one instance of the bridge right and we think that each instance of the bridge should be secure independent autonomous decentralized censorship resistant and so forth we believe that people should be able to run their own bridges on premise for themselves and not use you know our solution if they want to have their own bridges they should be able to run them for their token pairs customize them add them and so forth like this like this guy from artist project they have their own bridge to bridge the native token

from their if am side change to a human it and this is a now we are going to explore modes of operation like which modes bridge can work and the first mode which we actually started from it's a native to ear seed William so in this mode native tokens can be locked and unlocked all right so we lock and unlock native tokens on sidechain and bridge can elevate these tokens in a wrapped form in you see 20 form on a few minute or another gene why do we need it like

we have a token native token on a side chain why do we need to wrap this token on magnet any ideas yeah let's let's say we have we have a token of a Seiichi in Peru a token and we want to wait to have wrapped token on a video magnet what why why should why do we need it now like why do we need the same token to be on multiple chains that to bring it to another chain and usually people are interested in bringing tokens to what liquidity yeah

cool I should yeah that's that that's right liquidity usually we bring tokens to two main net for liquidity and liquidity means what exchanges right trading speculation and speculation is very important for any volatile token right arbitrage right I'll be trash okay swapping like units walk with curves right blending right you can lend your citrine tokens and listings on exchanges if you try if you have a side chain and you try to waste it on on a major

exchange it's it's it's very expensive and if you want if you have easy train tokens if you want to listed on an exchange it's also very expensive but less expensive why it's less expensive to list your Savannah token what yeah it's very easy for the exchange to list to this ESC 20 tokens and native tokens are hard to list right and also when you when you have native tokens as an exchange you have to have some infrastructure right you have to have some secure world cold storage

you know node connection with the dev team follow hard Forks respond to security incidents you know and all these things and you know their exchanges are not very interesting to do this for small chains right and what if someone created a small chain but with good you know ideas something that is important how to get on good exchanges yeah the only ways to like to to raise funds only to pay to the bigger exchanges that's we figure out that we needed to to have this bridge to bridge native tokens into the into the reptilians and here I can I can start to

show some like how this bridge is working right and so this bridge is on I will show this this bridge was deployed in in May 2000 18 right so I'll go to either scan and will search for this bridge token right okey wait when you so this token is a is a bridge token so it's wrapped token where abrupt right so on on key theorem main net and lock transfer this token are located on Seiichi right it's on a side chain and yeah if you have any questions

especially here you can you can stop me and ask so it's our it's our open source blocking Explorer which we provide for any IBM compatible network it's called black scout yeah ok so on the on the sidechain this bridge is represented by a smart contract and the smart contract holds tokens of people who used this bridge it's actually a token holder number three on this chain right so it holds these tokens and you can see that you know people are using it and sending

funds from chain to chain it's so hot here maybe we can let open some windows can we open windows maybe maybe a door yeah yeah let's let's let's keep let's keep it open yeah yeah sure so smart contracts are on two networks so smart contracts are on here network and on sachin network right so on on a

chain side the smartphone size can lock/unlock funds right because on this side there is no way for the bridge to mint native tokens and usually native tokens are not mean table right when we think about native to ensure not mean there are some where some networks were native to insurmountable like X day and this is a operation of the bridge which I will show next but usually we can only lock and unlock native coins right so native coins of Seiichi can be locked and unlocked within smartphone charts so user sends his fans to a smart contract of the bridge on stage inside fans are locked and the smartphone check of the

bridge creates an event with tech transaction ID amount and in the user account user address and this event is delayed by auditors to another chain on P waiters lock unlock contract and on main net its mint and burn contract because this wrapped token is FC Twente token can be minted and burnt on the sidechain side and on my net side on well on any side for for the new token this type of the bridge working this way so it's native token work on lock and grab token mint and burn sometimes we

cannot mint and burn you see 20 tokens for example when we use someone else yes it went ok right when we want to move die from chain to chain we work on lock yes it went again and mint and burn representation of this token analogy right so usually it's the transfer is like signing a transaction and this is a second limit that I wanted to show you so the to prevent denial of service Tech on the bridge it's possible to specify minimum limit per transaction so here is like 300 of these coins and yeah

this also can can be different on different chains so if you have minimum limit on on one side is X and on another side ten X and you understand how people can move from one network but you understand that within daily limit they cannot move back with all the supply right and you can use it to limit more people can enter and exit for example this is also yeah sure the for for me for meeting of minds what the auditors are paying okay so why auditors are paying for meeting it's a it's a it's a

it's a it can be we can set it up differently can be in subsidized mode and validators are incentivized to make this flow of tokens because in our scenarios what it as a subset of auditors of of the network so they're the interested in paying for it also there is a fee manager within the bridge so you can specify your fee and yeah basically we will have it an W et Cie bridge so in WTC which is the film classic to film a net bridge which is

the same type of bridge as pure bridge right or as classic so here I have 0.48 EGC on etc' side right and some wrapped WTC on WTCC side okay right so when I when I when I chat probably so easily so when I transfer 0.1 you can see that there is a fee 0.2 which will go to validators and validate ins can define this fee but this fee is it's not decided by validate that it's

affecting call validators so fee manager contract if we have one body to distribute to one valid if I have to just split into half and distribute each for later half of this field now this is how it works can be entered for free and exit for fee this is a working cryptic panel you can remodel right you you like let's say if you go to psyche and facilitate users to use side chains it's free you generate usage of this network and after users want to exit let's say died on side chain back to main net to get liquidity you have to pay for it right something like this so this can be

specified on the protocol by the protocol of the bridge alright so in this bridge we don't have we don't have any fees it's our first bridge we deployed it in May 2000 18 and still life not hacked yet in production working 24/7 between two chains in basically hostile environment rate of open Internet smart conscious anyone can query all methods of this smart conscious and submit transactions to the smart conscious right so and you know there are some funds for them so this

bridge holds a $200,000 worth of tokens on one side and basically the same amount on the other side so when when we send a some amount of tokens more than the minimum limit then we submit transaction now this funds are locked in this mark contract and now the u.s. well-well deters are waiting for finality of QE right so when we transfer from P way to maintenance to achieve this phonology it's less time because sidechain is faster when we move from maintenance or sidechain we'll have to wait more when

we move from classic we have to wait for at least how many blocks who knows what is what was the deep reward deepness of on classic during the 51% attack like 50 blocks or 49 or something yeah so one classic will have to wait 50 blocks so or at least yeah that means certain but also it can be can be you can you can specify it for okay yeah so it will be enjoy

yeah this is a while we're waiting this for for the transaction on my internet so this is a component of monitoring rate and here we can see that we have differences in supply and EFC to any token right so it means here that 40 something die are locked on one side and not minted yet on another side so there is a withdrawal differences so people who withdrew X die to die they burnt the Rex died but they not received die yet so you can see that there is a

withdrawal differences with four deposits on the next day side and they did not receive die yet okay so let's raise our yeah here okay so we send tokens like thousand lark 2000 PE tokens and should have receive thousands of gear see 20 tokens right you can see them yes 20 on PUA right like $14 something why do we need this start to showcase how liquidity is working cross

chain so we just had a native token on a side chain right which we cannot convert to if here more to die without centralized party like finance or some other changes which are listing this native tokens so if we go to may not go to uni swap right let's see if we can sell this wrapped token for the for another Trojan right so we can go to I don't know if you is here okay it's this rapid tokens here we can see a balance of this token and I want to convert it to die get some die right so let's swap 1000 of dy 20 into a

fourteen-day okay should be okay so we we had need we had native token on a side she moved it via bridge into a rep talkin saw this token to someone on a liquidity provider on unit swap and will receive die token for this thing right you can imagine that we can buy w ET c and move it to ET c and all this all these transactions are without custodian so no one like there is no

single party who can stop these transactions between chains so it's easy to imagine flows where tokens from change the change can move and it's like already here and you can use it and you can deploy these bridges for different tokens between different networks it's already here okay so let's let's go well while we're waiting for a min tank of die let's go to the second mode it's it's easy 22 native so you see 22 native is when tokens on what a main that side right on main net which are already

there here C 2 n tokens can be bridged to another network and be native tokens on this network right so for EF C 20 tokens that walk on lock and for for for native token it's mint and verb why do we need mint and burg for native tokens many ideas yeah yeah like mint and bird for native tokens but yeah I mean meat for native tokens for a for like platform tokens well you usually consensus not allowing you to to mint to meet new native tokens

burn okay yeah burning is for you you can burn any native token right by changing to like random address or sending to some special address or so forth wait but meaning usually it's it's it's it's it's a part of the concern so certainly you cannot just say okay Bitcoin please meet me 1 million bitcoins right you can do this but your block will not be accept same with a theorem right so why do we need them to mint new native tokens by the bridge but like why do we need this like which

use kissed this can enable yeah yeah that's that's actually important for many protocols from like 2017 you remember right like ECU 8 million gas and the like thousands of projects you know promising to deliver their apps for the whole world on this if you don't change right so many of them are only were able to deploy years into intelligence right and basically service here c2 intelligence it's good right because projects raised funds and uh and also created a lot of interest for for for cryptocurrencies but what's next

right you have platform usage token but you cannot use it on the platform where you created this token so you have to bridge it somewhere let's say you breached it to a side chain and if sidechain with another token you still have to use another talking like on the theorem but you have more skill right let's say you breached your ears it when you token to a native token right and it's your own autonomous chain and you can deploy your own contracts and embed usage of this native token into the economy cryptic one right more people are using smartphones are more you know gas used of our token we can burn it and you know

and basically create this loop where token holders can get benefits from usage is it possible in a theorem it's possible for if but not possible for for other tokens there are layer two solutions like the layers meta transactions for free candy written different tokens but there is it still someone else infrastructure right just cloud just someone else computer meta transactions is just someone else computer which is doing something for you and some projects are interested in having this side chains with their own tokens the use case which we figure out last year on East Berlin

hackathon was breached died into the new side chain and with side chains was started without any initial supply and without emission curve so it was like empty Network with like no reward and this allowed to create a first stable chain and then the stable chain all platform fees all account balances are indict and we all last day right in the world of stable currencies for like day-to-day transactions and platform usage and and so forth right so X day is the only usage for for for this type of the bridge that we know there are some

there are some experiments were well but we know like more most people know like were interested in Bridgend there are some bridges by ocean protocol Colo and fuse which did the mechanic where they locked easy to enter cannons and created native tokens of their platform using this type of the bridge so it's easy to enter native lock and lock of easy 20 token of maintenance and mint and burn of native token on the site inside right so to make it happen this bridge should be connected into consensus of the side chain and it's kind of unusual that

consensus can get some external events in non deterministic system for this for the consensus right another system can be deterministic like a theorem but Forex day it's not not deterministic because there is no state of a feeling within the X die right so this bridge when it's accepting these messages to create X day is relying on security model that validators who are valid data in smart conscious on both sides right that there the signatures from them collected and collected from the keys were like public keys corresponding public keys are

located within deterministic system of of this Seiichi right because there is no way no way to change state and sachin without like breaking consensus if it's like not not authorized change right okay I think it's the effect additional consensus basically it's it's like a DEP I think about this as a dowel I just specific down which is a there's a doubt which is managing set of validators right and validators basically calling transactions and this dowel which is managing set of all data's if someone is like not not not changing transaction

can remove this well auditors from the from the the state of this dowel and it's like application specifics Dow X Daiichi in itself is also down because set of validators was managing validator set of this chain is a Dow managed by existing validators you know how oh no it's it's Dow well X day chain right it's managed by validators now there are ten validators right if for example I want to add another and we have we have a candidate here from from from which

company will you apply as a as a as a validator from any block yes like we have a candidate any block they want to be a validator on on on X day right so they will apply on a forum but say we're you know in infinite space you know we're doing this and that were interesting to provide security and any of the existing validators like now the return body this can propose about to add them and there is a threshold required to vote them in and you know if threshold is reached there in let's say if they don't want to be validators later on they can ask okay we want to remove ourselves and they can

create a ballot to remove themselves and the other body the skin vote to remove them and there is no like central party who can say okay games ended let's just remove everyone right its own only while datas can add or remove all daters themselves so it's a form of that yeah this is a this is configurable now what's that's open is watching it let's open the bridge UI some die bridge UI they all this information is from its function

yeah three signatures from four validators and you can see daily the daily limit like hundred key dye can be breached per day it's less than oh it's more than available day on on the side chain but it's blessed and all available day right so it's a if yeah yeah there is a system smart contract and parity client called block reward

block reward with him yeah block reward regime is a developer of this basically of this emission model and connection of bridge into the consensus and what when block reward mint new coins so basically when block reward meeting new coins consensus engine at this points to user bounces [Music] that's right that's right for them yeah yeah so this is a blocker word contract right yeah he that's right

so we we use block reward also in people Network for self-sustainability mission so it's very it's very interesting instrument but here this block reward contract is integrated with external source of data so this is external source of data let's yep can you exit yeah let me let me first yeah I hear I want I want to show that

they say Union swap swap right so this bridge token was swapped in today so we had cross chain transaction way tonight and now I can take this dye and convert it to X day right and the by converting to Thursday I will go to another chain and we'll use another bridge okay well your question so you liked your day right but father it does not create a text die for you yeah is it possible yeah likely it's possible see well well you trust the protocol but not like you trust the consensus of this validators but not not

none of them can deny you your transfer right but group of them can can can deny so yeah but it's it's for any consensus algorithm right just it's just a matter of Oh hum-hum how much money they need right to basically to collude for example right but if we think about validators of of BOE Bridge subset of Auditors of pure network so the same if if you use purine you already trust the consensus of of validators but you don't need to trust any individual validator right and

even if I did like you know hate you or you know incentivize to do something bad for you he can do nothing right one body only collusion of majority of our daters but it's applicable to any consensus algorithm the question is like the difference is like public permissions and permission less is okay what if the group the group of validators is under some right for example from state-level regulator who think okay you cannot use bridge to bridge day none of them can use if validators are a part of exclusive group and no they only can

take advantages themselves it's possible that all of them will stop to do this right if I get this kind a message from you know Department of Justice don't do any validation on the bridge I will stop right and most likely other validators was top and there is no way crypt economic way to replace validators with different validator so that's why we need protocols like proof of stake right and proof of work to have this inclusive set of validators right so that's and and the ex dies is moving towards delegated proof of stake and also validators of the briefs likely all be managed by by the same type of model

okay so now we have died we can breathe his diet to ex die right and and used to bridges and move from working native to minting repped years it when swapping it to another years t20 and after the swap years it when you will use the means you native how crazy it is yeah that's for me when I think about this it's you know it's internet of mine you already write and not know custodians here no one can stop right here let's let's let's use this bridge die so we have to go so this 15 it was 14 something right then was she lets a 14.5

let's convert this 14.5 die 2x died right so now we will lock this die right so basically change ownership from my account to the bridge account and bridge pool of the bridge will increase right and after achieving finality this message will be a relate to X day past the block reward and block reward will create new XD yeah they validators validators will watch for events on my

net site and they will make their affirmation on home site and homeless here is X day why Excise home because it's cheap to aggregate signatures and even even even even more contracts of of the bridge whitelisted on the protocol level so validators are paying zero gas for aggregating these signatures and also it's good to solve exit problem if validators run out of one okay native coins received on oxygen I should have have some yeah the let's go to my yeah my balance increased from

well increased to 10x died here so we moved from one native coin into another native Korean right through with it without cosmos and Portland I mean that one like only by by software you can deploy it like yourself basically right one on X they say on the protocol level yes there is a what's the name permission in contract right yeah there

is a permission in contract or you can specify smart contracts and say that he this much contracts will accept zero gas so it's a it's a part of these features were created by organization known as energy web foundation we we were clients of parity and they created this for their own chain which is Volta voltage chain not many people are like know about this and and later on some project started to utilize this extensibility of

if you don't protocol by this by this contract so basically if you can define set of validators rewards and permissions you can build many interesting combinations right my hex day it's based on parity client and we also have support from dotnet client called nevermind so another mine client also supports with consensus both like underline consensus and this zebra control before dataset and all government contracts like black award commissioning so it's an into clients which is good because if you have only one client and we know

that parity is building polka dot right so they very busy on so yeah we moved from chain to chain here so this is our so what this is in the last last mode of oh thank you thank you thank you last mode of operations of the bridge that we are working on right now it's very exciting idea of EMV bridge in B it's an arbitrary message pigeon right it means that bridge instead of relying

tokens specified by governance of this bridge can relay messages with arbitrary metadata specified by any user so users can deploy their own Nazi proxies for this bridge and this process will generate well split let's say structures into structures that Val did in Italy in one transaction and after this proxies on the on the other side of the bridge can recreate the structure and make responding transaction on the site

inside so we can have for example you see seven to one token with lot of metadata send this metadata into a proxy proxy was splitted into messages but it as well really each individual message and combine this metadata on search inside without without any any customization of the bridge so one bridge one set of validators can relay any any token standards created in future to again standards and we have already implementation of this proxy for well the bridge is deployed between test

nets and we have implementation of proxy for EFC seven to one token so already first NFT Bridget using this using the same AMD bridge I would we're building yes it when a proxy on ourselves and likely will use South Africa like we deported between a corner in our test net and I in one day and the regime another thing called dipp'd the created you see seven to one token minted it and move to using MB bridge and there is no like this bridge

doesn't know anything about this EFC seven to one talk right it's only the link messages so this is very exciting you can with one bridge you can relate any messages between define a change and this way we can pull security which is a which is quite good because each bridge with like existing existing way we deployed each bridge requires all those components right UI or across smart conscious those multi six your hands monitoring deployment remembering all differences in settings because each

bridge has hundreds of different settings here you validators can deploy like one set of contracts one set of Oracle's and it will work between one set of chains which is very exciting do you have any ideas what can be like very late and for well one use case what time very interesting to have is to have open see instance on a side chain or you can make very fast treat and if GCS and then settlement let's say you have a

conference right and and and you want to enable some mechanics not only when where people can get these tokens from organizers but also you want to enable some auctioning game we can expect what people can exchange and so forth you can you can you can have a marketplace like open C deploy it on a side chain and after people made their trades on a side chain they want to convert to something more liquid so they want to make settlement and settlement will be from sidechain to a main net and then let's say opens you on minded so second idea that I have is to - that's it - take unions Bob deploy it on a side chain

talk with like propose to the top five years see 20 tokens to deploy proxies and allow alternative market for for for unions hope on on a side chain so it will facilitate arbitrage what also trot you know decrease fees it was fees on side she had much lower right that's the second idea and so it's very interesting to to see what people can build using this bridge as for us for us it's we understand that if we don't have this interoperability between chains for side chains its dead end

right they cannot survive by saying okay developers just the redeploy right yeah that's not going to happen it's very hard sometimes it's it's sometimes it's working but you have to work directly with projects or to be like Ron we give you know 100 thousands of dollars to each the hostages to deploy something and I'll just throw money into into projects right and after it like yeah that's that's how Tron is with some like top depth right there just sake move and we had this kind of story that they like offered projects already migrated from what's a magnet to a side chain they offered them to migrate from side chain to thrown and offers grants to migrate just to migrate form Anjum so we think that interactive

ability is going to work when we have a way how you can join and exit you know that something can go wrong great party this can include like many different things can happen but it's this type of attacks that type of like Black Swan type of attacks right and when we're looking to attacks on the day on the field on protocol some attacks were resolved by the protocol or upgrades of the protocol but some attacks were resolved by subjective resolution that's why we have um classic and what other stuff so protocol were not able to resolve it right so we had

to have hard work and censorship and so forth yeah I think that it's possible that bridge can be hacked if it breaches hacked smartphone shots can be hacked that's why we are making audits all the time things like all 10-10-10 security in firms order that smart contracts so we already think them like ongoing cords I can I can I can show you some some of these teams yeah let's well let's let's that's at the end that look what is like what is a stuff like how to how to use it right actually if you want to tinker on it so

actually this mana Reapers we have a end-to-end testing for all components so all contracts are you know covered by tests their integration tests between Oracle and contracts so you can basically clone it and yes all yeah all yeah that's right that's Gordon time well not according but yeah so you're in it will ya in it will will install all components compile

contracts you know basically download everything for you it's not who have some problems with node.js version 12 because a script is not compiling but you know if you have yeah and this will basically download and install and compile everything you need and that's what you have to deploy contracts and deploying contracts is also like one command all deployment within prepared talker image so you deploy it and after

you have two contracts deploy it right but before you deploy it you have to specify many parameters of those contracts who are representing each role where do you have our PC and poins what is V and so forth so many parameters you have to so it's it's not it's not it's technically it's easy to press a button right and deploy but to define all the parameters you have to spend these let's say right so that's why I think it's it's it's it it will be important to have this bridge deployed for everyone with a MBA and after projects will

deploy their own proxies which is like way easier to deploy I think we'll have multiple several AMD bridges with like different fee structures maybe with grunts limits like one bridge is like without any limits but you have to pay for it and one bridge with some quarters per account it's nothing interesting any questions while my computer is hitting like do you need bridges like any like do you have any tokens you want

to bridge oh it's downloaded everything compiled binaries now compiling contracts and yeah we're done can deploy okay what else

Oh about the death of the bridge don't have voting power at all so that all the well consensus is you think about bleachers adapt right so it can be same same physical people's valve auditors of the bridge and validators of the consensus I select two separate applications right yeah about details of the consensus yeah

equal rights they equal rates well almost so we have a special validator and we called master of ceremonies so this validators with restricted governance rights so a person who is bootstrapping new network cannot vote for proposals to add validators or remove because usually this person has some a creator rate of this network or a founder some you can call it like this because when i bootstrapped first pure network i had some power like to select first for validators and after they started to select new world leaders themselves right but no no this what it was technically still at the rating but

i cannot create proposals i cannot vote i can just be a part of state machine replication basically and getting some reward so we use this validate for technical purposes just to test update or some stress testing con on life networks right the same but with what x day we remove moisture servants right yeah well next day i was not favored the live auditor who would save the network okay let's to the to the Consensus wait so there is a Deb

so you can deploy this depth on on your computer you need to rely on okay so it's a nice day so this is a this is a ballot previous birth to vote in GG did you this is a ballot about you vote in your validator talk to X day you can see here right so leptin is a cooperative that guys from

from Austria they have their own sidechain the they applied to be a validator on next day and I created a proposal to to vote them in and you know three other body has voted for and that threshold was reached and the consensus onboard them went to the set of Auditors if I want to unboard someone someone new right I can I can go to a create new ballot and you hold it right just I want to add a key like mining key right and and here I specify mining key this is

new voting key so each one data has 403 different keys one key is to create works one key is to participate in governance and one key to key to get payout from the network right why three keys are not one because one is on the node second in the meta mask and third is ledger so if one of the system is compromised and you know less chances of other systems will be compromised so I can pair that's it right I specify a date let's say for a week right I press add bad I cannot edit why because I don't have my voting key for for Forex day I don't keep you know on the

computer I had traveled with so yeah so I don't have this key with me but if if I have this key should be just signed transaction proposals created and they will have a tool where while data's can subscribe to notifications in credit decentralized fashion some way basically listen to events of this type and when event is happening they get email so there is no way to talk to anyone to stop from receiving these notifications right yes it's important part of governance because it's possible that governance is happening but you don't know about it okay like you know I don't know what's going on and dick yeah

for example someone let's say I'm about it and someone wants to kick me out right and they can just silently create this ballot not telling other people create a small group you know let's say I don't know how many keys are let's see yeah the threshold here is three out of ten required to to vote in anybody including myself so to kick out or Edna validate three votes are required yeah this governance is working since 2017 it's actually Italy if you're interested in unchain governance like real stuff

right not what people you know think about you can switch to POA Network and just like read all the drama's that you know view a world leaders had like I think we're moving validate as distributing reward because POA is is based on governance so it's a part of the consensus like you know know governance no consensus it's okay yeah I think we covered most most topics about bridges that II so as I said everything is prepared it's a mono repo it's just no clone it innit yarn

and you have all the things you need to deploy any of these three types of bridges 4mb breeze you have to switch to some deaf branch but because it's not released yet all contracts you can find audits of the contrast if you're interested in in releases we're not auditing each release but you know if it's a if it's audited I'd say this one audited twenty four days ago there is a link but you know who audited it like you can like fine what what was there yeah so I thought it was twenty four days ago something going

on yeah then you're like last question did you do you have a question you're experienced user of the bridge yeah it's not in production we don't have ordered for it but we have it deployed between our test net and colon and there is already proxy deployed for 87 to 1 so the bridge is up and running you can use it we are subsidizing all messages now actually two teams are planning to use this AMD bridge during the hackathon which is called yep if you have

questions like how to deploy the bridge now please join our Geetha or forum or discworld happy to answer questions there if you need us as well details on your bridge we are happy to be audited so what else last last questions now okay DEFCON is officially over [Applause]