DAPPCON 2024: Gnosis Chain - From Dencun To Pectra Via Shutter - Phillippe Schommers
DappCon 2024 · May 2024 · 21:57
Explores gnosis Chain - From Dencun To Pectra Via Shutter.
Speakers
Topics
From DappCon 2024, hosted by Dappcon Berlin.
Transcript
uh I'm going to be talking about nosis chain specifically but also a bit everything around ethereum as we are quite aligned so we start with a small recap of nosis chain go through dun the previous hardw Fork pectra the next one and then the shiz nosis uh Beacon chain uh so what is nosis chain so a few people still don't know here sadly what nois chain is and basically it's um well a blockchain very much uh like ethereum very similar to it we also have a beacon chain we go through the same heart Forex we have the same clients so we have NE mind Aragon gu on the execution layer um Lighthouse te load and ners on the
CL um and of course you also focus on decentralization few differences are that we uh were a proof of authority Network so we went through the merge and removed all of that to kind of get to the same stack as ethereum uh so now we are pretty much aligned uh our staking token is gno which is an erc20 token so it's uh not the native token as for ethereum which in our case is XD uh we have 5sec block times which is quite a bit faster than ethereum and 16 SLS per Epoch which is also half of ethereum so we have 2.4 time faster block times and 4.8 times faster finality and for blobs we have a bit less but um with block
times uh it basically well evens out with ethereum so for clients I want to give a short update because a lot of them had good updates uh in the past months or so so for example NE mind just released a whole new storage layout which is much more efficient and also enable snap sync server which is an awesome Tech we didn't have no chain before and allows um well nodes to be synced way way faster so we're talking less than an hour when previously it took around maybe a few days depending if it's noton or Aragon Aragon also just um released its final version two release uh or version uh and it's now fully focused on version three uh which
will also come with uh State sync so until now argon was forced to download all blocks and headers and then sync from scratch which of course took a long time and with the new version one of the objectives is to be able to just sync the states um very much like guest and Ne mind and then maybe for the most asude of you um I talked about gu in the previous slide which was until now not available for no chain but uh today I can probably say that uh it does actually work uh thanks to Gom who is sitting right here um so yeah uh guest caning from Genesis to tip it's actually already running on validators on nosis chain on
a few hundreds uh it also comes with snaping server so it will make the whole network uh faster once enough people adopt it it's not quite ready yet so there's a few things we are still working on internally of course you could still um already try it but uh the public release will be available by end of summer all right um so uh no of course went through a few hot Forks like ethereum so as you can see since uh the beacon chain initially started we did all the same H fors as ethereum and uh for each hard Fork uh we got kind of quicker at it um and until dun we were always a few months behind but for then
could we actually hard for two days prior to ethereum so we were technically the first mainnet um blockchain with Denon which is awesome and a huge Testament to our team and our ability to well stay in sync so I want to thank Aron and mind who did a fantastic job on this but of course none of this would have been possible without thef so big thanks to them as well so the next steps are uh the shutter Beacon chain shiz beon chain which is a no specific um platform I think Martin talked about this a bit earlier today um and Spectra which is the upcoming heart fork for ethereum but also nois chain uh so I
just want to go quickly through dun again which is obviously the last hardw um and the main feature was blops or War blobs um so as a quick reminder they are a firal data that is deleted after around 18 days that is not accessible by the evm so contracts cannot interact with the data but um for those caveats you get much much much cheaper data and interestingly enough uh blobs have a separate fee Market than transactions so even if transactions get more expensive assuming blobs are not um well used enough uh the price will actually stay quite low and right now they are still basically free um on ethereum even main
net so it's it basically doesn't cost anything um so I want to encourage you to kind of play with blobs uh and to that regard we launched a website that is blob. FM which is basically just a demo of what one can do with blobs so they are just arbitrary data so we kind of put r on chain they are 12 125 kiloby of space um on ethereum you have three per block on you have one but faster block so basically you can stream live audio on blobs which is quite interesting um so on blob FM you can listen to podcasts that are directly on chain basically in blubs you can upload memes and you can actually even do that straight from your browser so yeah I
just want to encourage everyone to play with blobs as they are still free even on my net of course the main use case for them are layer two chains but why not play with them a bit and have some fun all right so the next next hard Fork is spectra so this is the list of eips for now well not even really because last week basically they had the interrupt the EF so they changed everything so this might not be entirely accurate um but anyways I'm not going to go through most of them because they are I mean a lot of them are kind of optimization and things that are not really very important for the end user but I'm still going to go through or quickly talk about account
abstraction uh and eips or updates that are uh good for validators so well actually I'm going to kind of skip this one because again that's one of the ones that might uh change um but basically there is this idea of giving more um features to uh EAS um and so this was one of the prop proposals but it might be replaced by IP 7702 so I don't really know uh it's going to turn out I mean to be talked about maybe next Thursday on the all core devs um but if you want to learn more I'm sure the safe guys have more interesting things to say so feel free to go to Safe con sorry in uh two
days all right so going through the validator specific eips so uh EIP 7 02 which is execution layer triable exits whatever uh basically currently we have two different keys for validators so the withdrawal credentials uh which are technically the owner of the account it can be a smart contract in which case the smart contract defines who is the owner um but yeah so it's basically the one of the funds and then the active key uh which is used by uh validators to sign uh attestations and blocks and and all that all of that so currently only the active key can trigger exits meaning that if you have two different entities
for the owner and the node Runner so imagine you have some eth or gno and uh you give that to a staking provider uh then the staking provider is the only one who can actually exit your gno and to make it so you get or gno or e in this case and so you get can get your St back this is kind of problematic of course you already have to trust them quite a bit but giving the owner the opportunity to exit by themselves um makes it a bit more practical basically so this EIP gives this OPP opportunity uh so basically it's good if you have stying providers the next one I think is much more interesting uh even than that so it's EIP 7251 which aims to increase
the max effective balance So currently um if you want to validate on ethereum or no chain again it's pretty much the same thing you need 32 e uh if you have a multiple of that so let's say 3200 e then you need to run 100 separate keys and validators um of course you can run this on the same client but still they all have to sign attestations sign blocks transfer data uh on the P2P layer uh networking so it's quite inefficient and there's a lot of overheads and the second issue is that you need a multiple of this so imagine you have 63 e uh well you can only run one single validator so uh in total you only earn yield on maybe
a bit more than 50% on the total on the total amount of uh tokens sorry you own that's quite rigid and inefficient this EIP actually solves both of these issues u meaning that we will be able to consolidate multiple validators into one up to 64 validators for one single key so from 32 East to 248 or to 64 gno um so this will be much more efficient but also uh you can stake any amount in between so if you have 40 East then you can just stake 40 East and you will earn yield on those 40 E so it's um much more interesting and then you can
set at which point you actually get partial withdrawals so imagine you have 40 E but you can say Okay I want to accumulate up until 50 e so you don't get any like payments dividends kind of on the execution layer but it accumulates on the consensus layer and you own yield on that as well so it's kind of Auto compounding which I think is very uh interesting for solo node operators so uh let's move on to the shiz Beacon chain so as mentioned it's um no chain specific project in this Cas so not um well it's not an ethereum project unlike pectra and stun uh so the premise is that we need shielded mol I shielded me because um we want to
prevent me sandwiching front running all of that we want it to be decentralized this centralized so obviously uh we already have solutions for this like flash buts or M blocker but they are centralized so you still give them all your raw transactions and they can do whatever they want with it and we want it to be censorship resistant so why do we want it to be sensorship resistance well right now still I think 95% almost 95% of all blocks are built by the three biggest builders on ethereum which is actually quite a bit worse than last year because last year it was 90% for four Builders um and obviously well it's much easier to censor three Builders than the 1 million uh or maybe more than one
million validators that are currently active on ethereum um also like giving all your transactions to centralized Services is quite like it gives them a huge competitive Advantage because they have the transactions they can still sandwich you front run you whatever it's just that normal people kind of cannot do it uh so that's also not great uh and sandwiching and front running is still an issue for maybe New users who don't know what the slippage is and uh set data incorrectly basically so the general idea of the shiz Beacon chain um is that we basically want to encrypt transactions post them to a sequencer contract um and then validators that are shter enabled
so it's specific set of validators that is not I mean all validators are not compatible with it by default um they will be able to decrypt those transactions and then they have to put them at the very beginning of a block and in the right order given by the sequence of contract so they don't have a choice of front running or sandwiching they they cannot choose that they have to follow the spec and if not well then they get slashed or removed from the chain um so for this we have a decentralized key of um well set of Keepers which are um well they generate Keys basically decryption keys so you can see on this graph we have basically three entities so the user who encryp transactions the keepers who
generate the keys and the proposer which is a validator so a normal no chain validator but that is also shter enabled so you have to opt into that and then while the users encrypt Keys um received by the wellon they use Eon keys but basically I mean it doesn't really matter it's a bit too complex uh to explain right now but in the end uh you have fully encrypted transactions on chain and validators have uh to include them in the right order so uh to implement this right now uh as I said it's opt in so validators have to register their normal nosis chain validator to become shter enabled they might have to add some so that's not
quite defined yet but um additional stake or do reaking for them to be slash um but yeah we're building d r Beacon chain basically in step so right now that's not the case but it might be the case in the future so it comes with additional risks if you don't follow the the spec then you get slashed so that's why for now it's OB in um and to make it easy for now we also developed a proxy RPC server basically so you can replace this in your metamask and then that proxy will encrypt all your transactions U because of course I mean ideally we want wallets to adopt the technology it's not going to be the case
realistically in the near future um so that's why this proxy exists we are making one available to everyone today of course if you use it it's not much better than flash buts because it's still a centralized service that still has your um non-encrypted sign transactions but uh in opposite I mean contrary to flash BS you actually made this um software open source you can run it yourself so if you operate this node yourself and then replace it in metamask you have end to end encrypted transactions that are fully safe so this is a collaborative effort between nosis shutter and nine to spearheading the reference implementation all right so the current
state of it is that we have the dkg itself so that's by Sher they actually already use it for a few different products um we have a concrete specification so that's on the GitHub nosis chain specs repo we have deploy contracts we have the RPC server U so the encryption server I just talked about that is also um already deployed uh we have a working implementation by NE mind uh and we have work in progress on a decentralized application that will make it basically possible to encrypt transactions in your browser directly without having to use um encrypting RPC server or without having deps natively support um this technology so basically what we have
well is enough uh to launch a test so we we did basically and today you can actually already used um the shiz Beacon chain on Shi which is our test Nets um and for more information um well we have a workshop in two days at 2 p.m I think in the execution layer room uh in studio 2 so there you will uh learn how to well do encrypted transactions use the RPC solver uh maybe even how to spin up validators although that might take a bit more time that that we don't have so yeah I guess we will go through that but it might yeah not be fully functional at the end of the workshop um all right uh I think that's
it for me um here are a few useful links for nosis in general you can always find us on telegram Discord um Twitter whatever you can always hit me up also if you have any questions um and that's it for me thank you for listening so yeah I think we have some time for a few questions if anyone wants great and yeah we have time about five minutes for questions if anybody wants to ask them we go question thanks for the presentation very interesting um at launch will all execution clients support the shut I Beacon chain that's an excellent question and I'm afraid not
so for now only another mind has a reference implementation um one idea because implementing this in all clients might not be fully realistic but one idea is to have Builders um that are specifically sh enabled so you could Point any of your validators to one of those Builders of course this would be again centralized but of course we would also release this again uh open source so you could run your own builder which with your validator basically uh would then run with any clients thanks you have to go more great uh uh and any other questions yeah up in the front uh yeah with with shutter uh
clearly like nosis is uh trying to to go a bit independent compared to to ethereum uh which is which is a good thing because ethereum you know went through the the rollup Centric road map to say let's Foster Innovation on the L at the L2 level and kind of aify the the base chain at least that's the plan right first because the base CH the L1 at L1 we keep innovating and second L2 is having a hard time or maybe not a hard time but is um a bit shy about innovating and find itself locked out of uh the evm uh as other l2s would keep compatibility like 100% compatibility with the base chain and therefore yeah
there's a bit of uh um a chance that they they would lose market share this way um is does nosis is nosis you know interested in trying to keep innovating and maybe break the the full compatibility with with ethereum that's also an excellent question thank you um so we definitely want to innovate um this is one of those projects there is actually another one which uh lion D liion is going to present I think in half an hour or an hour I'm not quite sure in this room as well um but for other so we don't really want to break the spec for ethereum because that would be a ton of work to kind of fork off again so we had this
before uh with proof of authority which was a whole different thing so we really want to be to standardize basically nois chain to be identical to ethereum as much as possible uh so sh we actually built um as a kind of plug-in architecture because obviously this is in the consens side that would mean that if we kind of enshrined it in the protocol we would have to update all the consist clients we currently support four of them uh a fifth one should come soon so that would be like five different languages five different teams that Implement all of this in those clients so that would not be very realistic I would say um so for now we kind of build this as a plug-in
architecture without breaking anything um kind of like what IG layer is doing or yeah this type of project uh yeah so we don't want to break it expent very much want to stay in line at least for now while still innovating as much as we can Lely okay and we have time for one final quick question so up at the front here uh yeah fantastic talk so what's the point of blops Andes because the main for for ethereum it's like rollups but on GIS now I don't see any just case right well I mean the the objective is
the same right so um well blobs are on ethereum the objective was to have l2s uh but as mentioned with brother you can do any other type of um things or projects with it um but of course on this chain we will actually also have rollups um probably your third of nois pay which is uh well which will need a lot of transactions per second so they will launch rollups on nosis chain because they are in the nosis chain ecosystem uh but yeah in the end it's basically the same objectives on ethereum you have l2s for ethereum on no chain we would have l2s for no chain great um I think we should wrap it
there and we can take a two-minute break so yeah thank you philli thank you