New Ethereum talks, every Monday. The week's conference uploads by event, in your inbox.

Loading player…

EthCC 2: Greg Markou

Ethereum ParisWed, Oct 9, 2019, 12:00 AM

EthCC 2 EthCC, the Ethereum Community Conference is created by the community, for the community. It brings together great minds and forethinkers, and allows the community to grow. Follow us : @AssethFR https://ethcc.io

Transcript

um that being said yeah so basically this talks moving from side chains to pair chains i'll be using slides and doing as much as I can here I've got very pretty deep understanding regardless so we'll jump right on in [Music] yeah so chain safe real quick great introduction thank you basically as you said we're about 22 people base our on ou were mainly a dev shop and consultancy and do a lot of open source stuff for instance we do work on eath 2.0 which we call load starts JavaScript implementation go PR e we brought the Gourley test net we birth that at East Berlin back in September and our own personal bridge basically using some of the paradigms from the parity bridge that we've built ourselves so just quick lodestar is type strip implementation of the beacon chain we've built a bunch of custom modules for it simple serialize BOS and gossip sub and helping contribute to the p2p stack similarly for PR e though our for our work on polka dot which were basically building the go implementation of the polka dot runtime environment we're helping out the go lip to p2p stack which is great because we're also with our efforts in e 2.0 we're able to chat with those guys and help on it we're building life which is basically the wasum interpreter for the PR e stack and Grandpa which is basically the polka dot consensus algorithm our mechanism sorry and we'll be working on that within the PR ecosystem I'm and building the solid and go Gourley test net for those you that don't know it's just cross climbing proof of authority test net and it was the first of its kind and chain bridge as I said is basically a block chain bridge Rin and go that takes similar paradigms from the polka dots over the parity bridge basically looking for it's a piece of software that runs independently and listens for events from one chain and then into a deposit contract and then reflects that into another chain specified based on how the smart contracts are built and I'll jump into that a bit more as we talk about kind of like how kind of a theme of this moving from side chains to pair of chains basically over a year ago I changed save we D implemented our first side chain for one of our clients and that kind of started our revolution into getting into sort of like protocol level work and basically you know when you get a side chain what you do is you basically take traditionally take a fork of aetherium in our case we've done both parity and guess you know we make whatever changes we have to on the core on the chain to you know speed up transactions or you know instead of proof of work we use POA and then we create a bridge or use a bridge to basically allow the main net aetherium to communicate with our side chain inversely as well if we want to transfer assets arbitrary data tokens or native fuel essentially giving you like a rapt ether and so the idea behind bridging is you take basically we deploy to smart contracts and have a piece of software that listens to them both they have deposit and withdrawal functions that basically hold whatever you send in whatever data for an example if we use DRC 20 tokens or ether you could basically deposit ether into one of these test nuts into the bridge and get the it basically of event emits an event and then valid signers thou'rt signers would basically are on the bridge looking for these events and then transmit the data across onto your side chain big use case in this is from the XD chain for instance if you've seen that what happened in Denver they did that basically what the Exide does is that exactly it's it was basically a year ago year and a half ago this was like basically one of the best ways to essentially you know Slayer to kind of scale outwards before we start seeing a lot of plasma and state channels you know some examples of why we you know why we needed these type of things was let's say you wanted a local community governed by a blockchain you know they probably need a unique consensus algorithm interrupt ability to some degree so they can transfer assets back and forth maybe they want to basically post state from their sidechain back onto the main net etherium so that they can ensure that if anything does happen to theirs they have checkpoints of what their state looked like by basically creating like super Merkel headers of block routes so you know every it's called 50 blocks on your side chain you would then compose those into a super header and then post that onto the main chain and then that way you could prove it backwards to regenerate your state so if you had two high transactions per second obviously is like an important one you know yeah I'm kind of covered that already yeah and another one like interrupts ability of like actually the assets you know we can take essentially ether as osing wrap it turn it into a rapt ether and use this on the sidechain again like in a great example of this is how in the like eath denver they basically took real die they wrapped it into what they called ex die or essentially wrapped die which is a one to one conversion from maintenance I'd change that you can then go and use these assets in a faster environment you know it's still safe in the sense that if you're using poa then we continue to have proof of authority we continue to have the security there and yeah sorry I'm like I read these slides over like a few hours ago and I'm just like I keep on talking ahead right so what we did basically this project that was talking about earlier we ended up taking a fork of gas making a bunch of like modifications down on into the protocol layer we basically injected like an example of why we do this we basically injected a ran a Postgres instance alongside the blockchain so we could have quicker queries similar to like ether scan style quickness speed but basically what happened is as blocks are validating and getting sealed on the actual nodes themselves we were writing to this database and the other thing was they need we need transfer assets so we took the parity bridge and basically we're bridging them together and also as it says we're in the middle of getting audited but we also created like a modified proof of work in which it's like a authority based proof of work to basically scale them up until they have enough hash power to then switch back to the regular proof forward but you know through all this stuff in last year we realized there were a few issues consensus we need more modular consensus hot-swappable consensus within you know these side chains right now it's really difficult you have to implement your own like sort of swapping mechanism to if you want to implement a like change consensus halfway through and basically with that in mind if we can get that and achieve that then we're gonna get a you can have a block in that like works very you can have solutions that work for you very well so interruptible attestation network this is so I might have actually skipped ahead so basically another example of the side chain so this is actually the one client work that we've working on and basically we did a few things we needed the side chain because we were running a very expensive Merkle tree calculations in on the smart contract level so we basically had to implement our own Merkle tree opcode into get into schools see into solidity remix to make sure that we could actually run this opcode so like with that we were forced to go to a side chain simply so that we can make these proofs happen on chain versus having to do some sort of off chain relay or Oracle and basically we still needed to have like the the the support from the main net so we could actually move things around and basically that's why we still had to use bridges and that's when we came up with ash which is what I told you earlier which is basically it goes from kind of proof of work in which it's only a subset of minor addresses or a lot to actually sign and seal blocks as accepted within the network and then we can turn that off on demand down the when you know there's enough hash power actually being spun up on the network because proof of work was the chosen one for that use case and basically making it interoperable across multiple now I'm super important I'm gonna jump into polka dot all right so lessons learned from that one you know more modular blocks shame components were like really need because of the modifications we had to do the hybrid model was like kind of possible and we realize it actually can work you like a hybrid consensus and you know we did make some PRS which was nice for instance ctrl s to just recompile that was fun but basically anyway this is why we when we saw polka dot we were like ok this makes a lot sense because basically they have a vision for a heterogeneous multi-chain framework what that kind of means is we have this concept of pair chains basically we have this relay chain that has the main support and the security on the network and basically we the pair of chains run as underneath it and use the security of the relay chain so they kennel you know if they only have a few people run actually interacting out they don't have to worry about compromising the security of their chain a pair of chain is simply like a side chain as they're explaining but in the Polka Dot ecosystem it's connected back upwards which gives a ton of security back to your side chain your parrot rein sorry so there's this idea of like a theorem as a pair of chain basically like a truss tree bridge theorem and back again allowing you to put transactions you're allowed to basically you could deal with the idea of like routing transactions through pair of chains back into a theorem so this would be the same way as I was kind of talking about how you know we had all these issues where we needed to use a side chain but we wanted likes to still main the main net as like our main point of security with polka dot we can actually achieve that through pair chains because it's built for interrupts ability amongst chains right over the gate so basically there's a few like obviously structural issues around like how many how the validator is set up needs to be done within the consensus process but a proof of concept can be built following the model that kind of explained and and basically which is great is you you know you can be doing low throughput through this chain you can have like in theory not many validators actually running and if you want to think of like miners right in a traditional like side chain but because we're using the relay chain you benefit the security of the entire network right so that's why this is like so much better because we are forced to use something like proof of authority on these side chains where now we can use basically any consensus we want on our spare chain but still maintain security backup via the relay chain which to us was like a huge benefit for you know implementing the making a transition from going from constantly building side chains to moving into more in the power chain space another idea would be like a trust a trust free Bitcoin bridge you know like a two-way peg functionality that would basically allow you to there's like two possibilities here like with a threshold of signatures kind of POA style or you could alternatively do like an N of a multi signature Bitcoin account with SPV proofs and specialize fishermen to basically allow you to do transfers from like Bitcoin into like a pair of Shane polka-dot ecosystem right so basically to just cover a few like basic stuff here like is polka dot designed to replace you know etherium now that's not the goal here the goal here is to allow a framework so that like these new blocks can be created and so that you know existing ones can still benefit from the polka dot ecosystem and that's a big thing that there's like a lot of controversy around I find if you like you know you go to Reddit or other websites social media is you find people like making this complaint in reality you know they can work together like is it yeah it is like the token like designed to replace X cryptocurrency and it's now it's like similar thing like the all these are to work together and yeah okay sorry end a presentation slide wise so basically TLDR of basically what we're trying to get at here is we've been building the using side chains for clients a lot outside of our open source and basically we've every time we have to go implement we have to get really unique in our implementation because of the requirements of the client moving towards you know pair of chains and looking at the future of what pair of chains look like we start seeing that there's a lot more value in them because of how modular we can get this and we can build with them you know we can basically change all sorts of configurations not compromise security not have to worry about you know how many who are my authorities you know whose mining on this network of its POWs right we don't have to deal with like obscure you know centralized bridging mechanisms because ultimately like when people say hey we have a bridge from a theorem main to a side chain that bridge is technically centralized right we have there are a set of authorities but basically the set of private keys that are allowed to sign on behalf on the contracts on either side and they're the ones actually doing the transfer you have to so you have to put trust that these people the people running the Rindge bridge and maintaining them are actually acting in their best interest in your best interest and as we move to you know the idea of poccadot having these pair of chains you it's built in it's it's out of the box you have the messaging between them allows you to essentially you know pair of chains look like a tree structure I actually forgot to bring this up but basically like you know you have your relay chain at the top you can have like let's say two pair of chains and the two pair of chains can each have another two pair of chains connecting to them and they all benefit upwards and the idea is that these pair of chains can communicate with each other freely you know without kind of hiccups because that's the design of the polka dot eCos framework and the ecosystem which is a huge benefit because we don't need this centralized kind of bridge which is acting essentially as a real layer of the information back and forth thanks for taking the time I know I'm not Aidan and I hope I at least got some of his message across and we will be speaking I think on Thursday at the web 3 track I think and he'll definitely be giving a more in-depth version of kind of what I just gave you as well as we'll be doing some other stuff and talk about some other things yeah thank you again questions yes sorry I like they each I'd like BB the structural overview kind of look yes yes yep so there is one so the question was basically uh you know what I kind of described was like hey that looks a lot like plasma yes 100% caveat plasma does not support smart contracts naturally its transaction based I don't know if there's any you know future I'm not too sure about the plasmid research but I do know that essentially there is transactional base right now which means that you don't actually get the same benefit as a side chain you get the benefit of like high transaction throughput without the actual smart contract functionality of it that's where polka dot you get the pair of chains you actually get like a side chain that is yes kind of the structure looked at very similar to plasma some also say the structure looks kind of similar like in an e 2.0 in the sense because we have the beacon chain the beacon chain is kind of like a relay chain to a certain degree but it gets different as soon as a pair changes charge in yes relay chain is basically a class structure easiest way to think about it parent is real a chain and pair of chains are chat chains and basically the parent let's think of it as like a leash on the pair of chains knows what's going on and keeps them safe yeah side chains are no side chains are a concept within the etherium ecosystem at the end like ecosystem that we've been doing for a long time now sorry which basically the idea is we take like death change up a few parameters within it or parody for instance and we take a few change few parameters within them to suit whatever the needs are of that project and then we're basically running on aetherium chain just like in our own private ecosystem or public ecosystem for that matter yeah I mean you could bridge them one-to-one or you can do what I talked about earlier which is basically building super Merkel headers by basically collapsing like 50 blocks into a Merkel route and then posting that Merkel route via bridge back to the main net Miriam a to different ecosystems like pear chains polka dot sight like the notion of the side chain is still technically within a pair of chain the main difference is you know in the polkadot ecosystem when I talk we talk about side chains it's a pair of chain and this pair of chain basically benefits security off of the real a chain and the real a chain monitors all pair chains where is an you know a theorem mean that doesn't actually know what's going on in a side chain right for instance X day you know they don't know X diet it doesn't like main any theorem doesn't isn't aware of X day you know the real a chain is aware of the side chains of the pair chains we can talk more after yes yeah yes yeah well this is like sight like if you're to spin up a side chain they wouldn't now yeah so they get for example if I deploy some small contraband pouch and a and the own patch and B I wants to do send some transaction based on the state of our chain a yeah so we can do like message passing between para trans and so you could pass like via messages to the other pair train like what that state looks like yeah yeah so it's possible basically yes okay if I yeah I think I understood your question it's possible to do message passing pair of chains are able to communicate with each other yeah cool that's it thank you guys thank you thanks Greg so next we have Antoine he's coming all the way from Australia to give a talk on speckle OS and

Automatic transcript — names and jargon may be misspelled.