Igor Barinov ~ Creating xDai and Using the Open Source Tools From POA
Ethereum Denver·Wed, Oct 9, 2019, 12:00 AM
Speaker
Transcript
foreign [Music] so let's start um today we're going to talk about uh xdi and the tools of poe which we used to launch this network i hope you guys enjoyed buffy coin buffet day and enjoyed you know this fast transactions seamless payment and uh fast settlement and also it's quite easy to use right so several technologies used to build the infrastructure and for sure a lot of technologies used to build the wallet i'm going to talk about infrastructure and how it was possible to make this network and which tools we used for it so for for you guys who are hiking i'd like to say that we have 5 000 usd worth of die for the top 10 dapps deployed on poi network or xday plus one special price for the best zero dollar solution for poa or xdi so criteria is very easy you have to deploy an ethereum dap on one of these networks or contribute to one of poe products like black scout which is open source blockchain explorer or token bridge which is our interoperability solution or to burn reward by austin griffith so quite easy right just deploy an app and you can participate in our bound team so if less than 10 apps will be deployed then um these depths will get more share of this uh stake okay so what do you need for hacking um you can use our blockchain explorer which is full featured watching explorer for poa our ex day and today our friends from black sea started an instance of black sea analytics for ex-day so it's also cool to use you can use faucets to get free coins on our test net and we have uh multiple links with uh resources all of them are located on poa forum um so you go to forum.poi.network and you can see what everything you need to deploy your dap on poa or xdi right rpc endpoint uh web services endpoint full archive node if you need spec files if you would like to run your node no all other stuff so today it's all about x-day xda is a first-ever usda stable usd stable site chain with uh dye as a native token right so it started uh uh as a project as a hack project on east berlin and um today we have it live and it's used for uh payments so that's kind of cool right what's uh different uh within the x-day from technological perspective some words can be new and i will explain them later so xda itself is a side chain of ethereum 1.0 so it's a new network based on existing protocol but with different security model different economic model and different state the idea of this network is that there is a validator set like some authorities who can modify this list of authorities using on-chain governance right this is a consensus algorithm of this network and it's these consensus made it possible to make it cheap scalable fast efficient so the native token on this side chain is x-die what is x-die it's bridge token so token which is locked on ethereum site and minted on the xdi chain side so this process is known as hardspoon when emission of one token is spread across multiple networks i think exedy is one of the first hard spoon in production and the great thing about this type of hard spoon that the token is stable right so one die is always equals to one x die when you lock one die on the etherium side you'll get one x die on x day side when you want to get back exit from the side chain you burn your ex die and the network will unlock one day for you to make it possible the mechanism called plug reward which is usually responsible for emission of a network is hooked to token bridge which is our interoperability solution uh between mainnet and ethereum so consensus of x-digi started without pre-mine so it started with zero tokens and also it started with a zero emission curve it means that uh inflation is if this network equals zero right so like each blocks each block a new block which is created created without block reward and it will be from the beginning till the let's say end of this network in in most chains there is some form of block reward and emission curve but in a in a in x chain emission curve is empty it's uh we think that x day chain is a irresistible to use i read this term in the marketing book but i like it very much because when you try it and you can see that you can have a familiar platform with a stable user balances with uh stable user fees that brings so many opportunities especially with real-world applications right people who receive their ex diet today will have the same amount of eggs diet tomorrow if they don't spend them right and the good thing about using of dye is that there is a massive available equity liquidity of die on ethereum net so one can take this die and bring it to x die and increase market cap of x day now market cap of x day is eight thousand dollars which is one of the smallest blockchain in public space right but we can see that it's it's used and can be used for scalable real-world applications so it's fast and most blocks are with empty capacity before we use the word empty but i think empty is not it's not a good word because when you think empty like no one's using it here it's a bit different when you have empty capacity it means that network is ready to accept your transactions and execution is very inexpensive it's possible to make it's free at all and replace uh with a different model like transaction fees on exit from the bridge but this small gas fee is good to have possible mitigation of denial of service attacks also interesting about this small but real and public network is that it's a self-governed dao it's a it's not a network created by poe it's not a network owned by poe it's a network owned by dao this dao is a exclusive form of dao not anyone can participate but people who are endowed can invite new members to this organization and each of them has equal right to invite new members to the dao so stamp stats i don't know well if you um i'd say that uh xdi chain is not ideal yet right because um uh from our perspective it's decentralized but it's what we call minimum viable decentralization so it's decentralized enough to comply with uh regulation and uh and uh enable on-chain governance and uh this uh form of dao but it's not as decentralized as uh some other chains uh the very important thing that when you think about volatility of platform usage uh in ethereum you have a volatile token price and volatile gas price uh in poi core our first side chain we made a native token uh ex platform execution stable so it costs guest prices stable and um can be changed by on-chain governance but uh validators you know not not increasing it uh for like a year and uh and three months so it's like good stable uh guest price looking back but in xd chain the native token price is also stable so if you design your let's say game with some economic parameters um it will be stable and you can plan ahead platform usage uh this is not from a marketing book but i'd like to add that it's irresistible to scale if one would like to scale the system it's uh scalable both uh vertically and horizontally so vertical scalability is uh is interesting and i think it's underrated in our ecosystem there are some public chains with a hundred million gas per block and they exist for uh let's say for for a year and it means that uh we can simply upgrade we as validators can simply upgrade and tune parameters of this network and uh if we see more usage then likely validators will upgrade this protocol and when you have let's say four validators or ten validators and uh they are responsible for the uh small dab chain it's it's more more likely that they will agree on the upgrading parameters of this chain to bring more users uh so second type of scalability is horizontal scalability that's what we sometimes is called like is sharding right and um it's relatively easy to launch xdi chain for die token or for another token and at least two projects already launched same type of environment but with different uh erc20 token which act as a native token and when i think about this i like the idea of world of warcraft realms when world of warcraft started you had to select on which chart you gonna play and uh if you let's say uh unlucky enough to to be on a shirt with where most players are from a different language group it was kind of problem right and also it was not possible to migrate from shard to shard but later on world of warcraft created this system where you can transfer your character basically non-fungible token from realm to realm and now if you open their um website with uh you know status of the of the game you can see that there are you know so many shots available uh with uh different settings you can play against other people you can play against uh like pvp or pve you know like it's it's much more capacity than players right so world of warcraft is ready to accept more players and ready to accept these players immediately but back in days it was different so they what they changed they added more shards they they made their shards specific to what players need and they need to have different language groups they want to have some different play game rules like pvp or pve and they added more charts and it's enough right so right now they don't need more shards and this is working and this is a good example how dub chains can scale horizontally so now we'll i will show you some um uh underlying technologies uh for for uh for x day so let's start for from governance because it's uh the most important part of our consensus uh the main question people asked when we launched xdi who are validators so this information is available using adapt or requiring smart contracts and this information available from from the chain so there is no like database between this dap and uh and the public rpc so all the information public from public rpc um you can see that uh at xd there are four validators giveth uh poa maker dao and protofire and it's it's possible to add more validators each validator from on this network can propose a new validator and the majority of validators are required to onboard new validator or remove file data from the network we can see some past governance decision how validators voted for for governance decisions so the the last one was a change of uh implementation of uh reward by block contract we proposed it to mitigate one bug in in parity implementation which was possible to solve using a different implementation of smart contract validators voted for it and this implementation can be automatically enforced on chain so it's enforceable on chain governance managed by independent validators right here you can see that first of all they agreed to deploy new proxy storage contract and before they removed some extra validators that left from initial ceremony of this network and all governance decisions are available on chain and anyone can independently cross-validate who voted for for this governance decisions who initiated them and get all stats about this governance when we attend some conferences and we hear about on-chain governance sometimes people talking about you know this enforceable on chain governance here we have this enforceable engine governance for for the second year and uh it works well and if we switch from from xdi to another network to poe core where we have much more validators uh 22 i think we can see that there are ballots with you know 16 votes for uh out of 22 well data 22 validators um so governance mechanism not only working but it uh it working well on scale so when we have more validators the governance process is also is also working scalably right so third part of governance is actually a proposal of new validators and for this i have to have a special key what we call voting key and any validator can propose a ballot to for example add new validator remove existing validator or swap key or file data and in this governance app you can see current thresholds for example to add new validators to xday three validators should vote for and um and there are some thresholds to prevent uh to prevent this governance mechanism from abuse of let's say malicious validators right which is also possible so this model is working for poa core but also working for xdi it's scalable you take it deploy on your side chain and you get the same security model as poi index i have and when we think about proof-of-work networks or of proof-of-stake networks it's relatively hard to copy security model to new instances of chains right if proof of work that if we want to copy security model to proof of work of proof of work system we have to deploy new mining hardware and it's a scarce resource and you know very expensive with proof of stake we need to get initial valuation of the stake somewhere and with this type of consensus this model can be scalable so many shards so second part of the um second part of the uh of the of the x-day model which uh and that's a part of our development tools is a token bridge it's an interoperability solution for tokens on ethereum network uh it works with in different modes and uh for uh for x-die there is a mode where tokens can be locked and unlocked on ethereum site and the new tokens can be minted on xdi chainside and these tokens are connected to consensus of the sidechain but this breach can be used to breach ec20 to ear c-20 for example one can take dye on the ethereum site and mint representation of this dye on let's say ethereum classic site right it's it's it's possibly it's possible right now uh and this bridge is in production since uh may 2018 and that bridged tens of millions of tokens cross chain uh and uh let's check stats for um uh for for them for implementation for uh dye bridge so for thai bridge this stats is uh generated from public rpc we can see that uh totally minted by bridge is a something that is a uh is it it is a market cap of x day so market cap is 8 000 but people bridged back and forth 40 000 die so they deposited returned back so that the the economy of this bridge since the beginning and we can see that almost 500 users use this dab to bridge tokens back and forth and it's quite interesting so these users are the same users on both sides because our bridge supports only self transfers cell transfers means that users can send funds only to themselves and this allows to make a bridge which can be considered as let's say decentralized breach and uh and it is not required to have money service business license uh to send tokens between networks uh for users likely doesn't require i'm not a lawyer right but we have legal opinion on this topic um and this bridge works in uh in production you can see that uh if i want to convert some x die to die i can send let's say 10x die when i press transfer my x die is burnt and an event is emitted on the ex-day chain side and the three or four validators of this breach observe this event and after they see the same event um after a threshold of blocks which is eight for for this network and uh this threshold is required to to to make sure that the network is final and that not reworked or forked and after eight confirmations uh validators will relay this event from xday to ethereum mainnet and uh they will unlock 10 die for my account you can do the same in burner wallet or and it's uh and it's even easier on on burner wallet um because you can make it on the go with your with your phone and without having meta mask installed so it's quite easy to use okay let's see so now it's uh it's a slow part because now we need to submit transaction to mainnet and the mainnet not always have free capacity and sometimes our transaction is waiting for to be included in the block okay very fine transaction so as i said the bridge it's a it's a quite complex solution it consists of five different parts and there are smart contracts on on both sides of the bridge there is an oracle service and this oracle replicated for oracle service replicated for for all validators there is a ui applications which we just used for uh to transfer tokens there is a bridge monitor when we can see and put on monitoring that balances of validators are not empty and also that there is no differences in the locked dye and the printed eggs die so this is good for audits um and i can show you that's uh yeah this um this information is um you can see in the bridge ui you can see number of validators and the number of required signatures so to relay transaction from from xdi to ethereum three signatures from four validators are required uh to uh to relay this event and you can think about this as a 304 multisig which is quite secure if validators are independent from each other if they host on their own hardware and yeah they use this software as it's designed okay so let's let's see if if we got our now it's still we're still waiting for mainnet okay the third part which is important to uh to make sidechains usable is a open source blockchain explorer uh we have uh open source blockchain sport called black scout it's a fully featured explorer friendly to test nets private networks side chains open source and free um funded by us sponsored by ethereum foundation and the bitcoin bounties we built it because uh either scan was not available to test nets and um it was kind of hard to add a new functionality for example on xdi you can see that uh uh that you know there are validators right and uh on explorer we might like to see who created blocks like here right like point network created blocks keyword created box protofire and on either scan let's say if either scan will host xdi there is no way for us to too much to propose these changes and uh implement them right because it's not open source let's see by the way um yeah you can see the problem on gordly testnet which is a new ethereum testnet on either scan all validators like you know zero zero right and uh you know how to how to put names here let's go to black scout and switch to worldly and here we can see that you know consensus is about data poi parity prism labs so you know who created your blog right and um yeah that's the beauty of open source software right um yeah like uh it supports uh all features we need to do to develop applications and when you think about site chains if you deploy a new sidechain and you don't have a explorer for it like full featured explorer it's kind of hard to develop applications right so that's three things uh which made xdi possible uh first thing is uh fast and efficient consensus with uh with a scalable model uh second part is a interoperability protocol which allowed us to experiment with a new type of emission and a new type of creation of supply and third part is uh developing tools that's what made possible from our side right and also it's great that community like this idea and built burner world on top of it and made this thing with uh electronic peer-to-peer cash system which we use today a real thing right still very fine okay um today uh black seed.info also indexed uh this um x day chain and they have interesting analytics so if you if you deploy an app you can uh get some you can see who is the biggest token holder of buffet dye you know total supply and all this data okay it's time to ask questions questions questions questions how many transactions were done today um what is it i think it's transferred with data that's what they use because uh when you when you when you purchase meal you put like meal in in a message so that's i think like uh 940 purchases of meal during the lunch which is great right and uh what i like about uh sidechains and uh and exedy especially that when you look into um market cap and total transactions and number of wallets you can see how how this economy is like a real economy is working right it's not something like pumped on uh on open market like you know with uh some some chains where you can see tens or hundreds of millions of dollars uh and um but no real usage right here you can see people breached eight thousand eight thousand text die and uh created thirty six thousand transactions and uh you make you can make sense about these transactions by using analytics like bloxy and this is a great example of application specific sidechain like this sidechain is designed for payments right programmable money uh different side chains can be designed for um for different use cases so your question um yeah so um about block block scout uh it's gone forward i noticed that the features have now like the contract verification um can you actually look into like um some content in there and another question like is the block scout like if i clone the repo is it so so i could say you know run some ganache instance and uh have this thing in uh index that and browse around kind of is it so lightweight that i could try looking into what's happening if you would like to run black scout on your laptop yeah it's it's it's totally feasible uh but don't index mainnet because it will take three terabytes of black scout data plus two terabytes of parity data so it's like no i was more thinking like if i run like whatever uh dev setup um on on like ganache like some local he says it's often kind of hard to look into what's actually going on in there so this would be great uh have you tried like running a block scout and like local ganaches yeah that's yeah okay it's possible is there like a tutorial on that or oh yeah whatever i'll just try it out yeah you can try it out it it it's it doesn't support uh all uh rpc as parity client especially some problems with traces as far as i remember with ganache yeah but yeah you definitely can run it but yeah maybe better to run local parity note and uh does it seem yeah last question no questions um so i don't know yeah it's okay yeah uh [Music] any questions so it's one next day who wants to take it yeah just you know first guy we'll get it anyone free money free free did anyone guess now it's my next day next will be five okay did i get it now yeah i think it's it's a link encoded here so you need to open it no okay yeah yeah someone took it okay [Music] five one more okay did anyone get it okay last one last one first one okay one second one second the next day it's a battle royale okay guys 10 next day did anyone get it yeah people yeah people don't want to you know now claiming yeah okay guys yeah someone was faster yeah someone was faster ok thank you guys i hope you enjoyed
Automatic transcript — names and jargon may be misspelled.