Lighthouse: Final Sprint for the Eth2 Phase 0 Launch

EDCON 2020 · 10 Aug 2020 · 15:12

Paul Hauner reviews Lighthouse’s preparation for the Eth2 Phase 0 launch, distinguishing confidence in the design from remaining operational work. He discusses Medalla stability, audits, validator education and the deposit interface, then outlines code-freeze plans and a graphical interface aimed at making staking software easier to use.

Speakers

Topics

From EDCON 2020, hosted by EDCON.

Transcript

[Music] hello ed connors thanks for joining and tuning into my video on lighthouse the final sprint for f2 phase zero launch i'm coming to you from eastern the east coast of australia i hope you are somewhere safe during these crazy times i'm sorry i couldn't be there in person with you so my name is paul howard i'm a co-founder and director of sigma prime i'm an f2 implementer i work for lighthouse implement the f2 specification the roth programming language done about a quarter of a million lines of that so far and i don't intend on stopping i've been contributing to f2 since its inception and i think i have about a countless

number of contributions to the specification i hope uh those are mostly positive i think so um so i work for sigma prime established in 2016 team of about 14 people we work in blockchain security so we do information information security analysis and audits of ethereum applications and smart contracts as well as other protocols implementations um like near and far coin we also do security critical engineering like lighthouse and we have deep experience and interest in the ethereum space been around for quite a while um so today i want to start by giving you a few points of things that i'm confident about f2

and things that i am optimistic about so um i'm not the oracle of truth about f2 but i can give you uh my views on it at the moment so the first thing i'm confident about is that staking is coming so some people doubted it for a while but we've come so far we're so close now we're going to be staking on f2 that's just there's no if if butzo wants about it so i'm also confident the lighthouse is going to be one of the first clients that's available at launch so we will be there the front line i'm waiting to serve you're taking needs from genesis onwards um i'm also confident that uh hobbyists are going to be able to stay in f do not just programmers and you know the technical elite or institutions but also

people that if they're willing to invest some time into learning that they're going to be able to run their own staking setups on fairly cheap home hardware so now some things i'm optimistic about i'm not quite as confident about these things as i was the previous things but i like to err on the side of optimism so the first one is that the beacon chain is going to launch in 2020 so i know there's a strong demand from the community for this to happen in 2020 and i think that we can get it across the line now i've been wrong before in f2 deadlines but hopefully i've learned my lesson and that i'm accurate with this one but i think we can get it across the line this year um my second thing that i'm optimistic about is that medela becomes stable

within a month so medela was uh well launched uh last night from when i'm recording this and it didn't go so well to start because it's not really properly incentivized people don't have money on the liars they didn't start their software early enough but once we got everyone to kind of woke them up and said hey you know start your software it's launched um then it regained finality and started charging forward like nothing happened so it's doing well now and i like to think that we can observe it to be stable within a month now i've included a little qr code here which is a link you can click or scan to to get to some documentation on how to

join medela with a bunch of different clients if you're going to be staking f2 on mainnet i really recommend you get involved with these test nets because you can learn a lot about the software and how it works and save yourself some stress and perhaps some penalties when it comes to genesis so um really get involved even if you're not going to stay you're just interested just get involved in the test dance we try to make it as easy as you can so the third thing i'm optimistic optimistic about is that people will be able to stake on a raspberry pi 4. i mention this because we get constant interest in it and a lot of the surveys indicate that that's what people want to stake on um so i'm at this point i'm optimistic that you'll be able to do it i mean we have them running on test nets

now i have one next to me that's staking uh but before i make the call that um it's safe to do it i would just like to observe them in kind of real work conditions a bit more but i'm i'm optimistic now that we're going to be able to stake on on hardware that is like such so cheap that it matches the raspberry pi 4 level um perhaps not much more below that though so we've come a long way this is really exciting yeah to everyone involved yet of the team yeah to the community um this is really cool so now we're on the final sprint uh we can see what it's like to to run networks we can see what a running beacon chain looks like and now we just need to take it from this beta phase test net phase into

mainnet phase um so it's worth pointing out that the final sprint i'm talking about now is final for phase zero so f2 is split into phases they won't go into it phase zero just involves a beacon chain and and staking but not necessarily transactions and user functionality so what i'm talking about in this talk is what's immediately in front of us and that's launching the beacon chain and getting phase zero eth-staking going so throughout this talk i'm going to use these three components i'm going to talk about what's happening now i'm going to talk about excuse me i'm going to talk about the f2 launch and the things that we want to see in in order to

have a successful launch and then i want to talk about the final sprint the things we need to do between now and the f2 launch so i'm going to talk about each of these components i'm going to talk about it from a wider view of the ethereum 2 and also from a narrow view of lighthouse so just remember this kind of graphic i'll go back to it so let's start with the bird's eye view now with ethereum we have multiple implementations in multiple different languages this is great it makes the network resilient multiple implementations aren't um as vulnerable to a single bug it also means that people institutions can get involved the languages that they prefer so we're seeing some of these implementations participating in stable short-lived test nets

even some of them operating for months um on single client test nets um we're also seeing that some of these clients are majority complete lighthouse i think falls into this category we have all the basics that we need to be a blockchain we just need to work on polishing the apis and interoperability and security reviews um the ef launch pad is live right now so this is the user interface that people eventually use to [Music] become validators and submit their deposits it's live now from medela i'll have a link to it next so you can check it out um we have a tech net attack nets i have a link to those next as well so these are networks that are like prism lighthouse and and tecus separate networks where um the ef encourages you to come along

attack these networks and disclose how you might have caused some failures and perhaps earn some bounties in the scales of of uh several thousands of dollars so we're also seeing implementations being audited by paid security professionals not just boundaries people are being engaged to review the software um the protocols as well are being reviewed and audited by formal verification companies and other security companies and we've also seen differential fuzzing has started so this is these are investments in long-term security infrastructure to try and detect regressions and differences in in clients and crashes and things like this there's a lot going on right now these

are links i promised here's the launch pad it's really fun to check out i recommend everyone checking that out and then we also have the attack nets if you want to get involved do some ethical hacking and some bounties i recommend going there so now let's look at the final sprint what's in between now and launch for f2 in general so we start it now next thing we need to wait for medela to become stable so once modeller is stable this indicates to us that the clients the ecosystem is ready to progress towards production so once we are comfortable that medela is running stably we launched a deposit contract um i'm not in charge of launching it this is just how i think things will go um so once we launch a deposit contract we're actually locking

in people's money and we've committed to to f2 and then we're just barreling towards a beacon chain launch um so this is obviously quite simplifier but i think these are the main checkpoints you should watch out for as we progress towards launch along the way we also need to look at interop make sure the clients work together you can jump between them if you're a validator we need to make sure people are educated they're comfortable with the risks they're taking they're comfortable with the software um and we also need to um complete audits of the protocols and the software so these are a few of the things along the way that we need to deficit so now let's look at what a successful f2 launch looks like for the wider

community so i think three or more clients is is successful for us um two is acceptable uh in my opinion one fine is not acceptable we need to launch with two three or more is ideal um this helps distribute like to decentralize the network distribute the network we want to have smooth valid onboarding so we don't want people losing money as they try and make deposits making mistakes um we want it to be easy enough for the hobbyist whilst being robust enough for institutions we want to have our users educated so we want people to understand what they're doing the software they're running the risk they're taking the rewards they're going to get and we think that all of these should come together and we'll see a stable networks this is

the ultimate goal for f2 is just a stable network comes out the other end of it so we're close but we do need your help so we've done a lot we're getting there but anything that you can do now will help improve what we have at launch so if you want to contribute to software run one software and report bugs or write blogs or do anything we'd love to get your help just click the links throughout this presentation so let's look at the final sprint for lighthouse specifically we've looked at the broader view for f2 so lighthouse specifically what we have now is we have stable state transition functions and database things and we're quite stable from a core f2

perspective now we're working on the outer shell so it's very exciting to become stable on the inside um we've participated in all the multi-client test nets so far some of our own single client test nets so we're you know staying up there with the leading clients we can scale to thousands of validators on the single machine i don't necessarily recommend that um it's probably good to have some redundancy but i think at this stage i'm comfortable to say that we can probably handle more validators than you can afford to throw at it which is great um we can run on cheap hardware we're always constantly optimizing reducing our hardware needs um we've gone through a month of fuzzing and security analysis we're hardening ourselves um every day

we're partially audited soon to be fully audited um and we're growing our team size so that we can um come at the main at launch in later phases with a strong team strong confident team and may death do happen we're committed so these are few of the bits of software that we maintain i recommend everyone checking out lighthouse the big link on the left um from here you can find that discord find lots of resources run our software and then on the right we have some of these libraries that we maintain underneath lighthouse so the top two just v5 rustling pdp and these are about networking we main we founded and maintained this v5 and we contribute to rusted p2p we have beacon fuzz which is our

security fuzzer very interesting for the security folk and we have a bls which is our pure rust crypto implementation of bls cryptography the backing on top of the milagro library so if you're interested in any of these things or getting involved please just click the links and and and we're happy to help so let's look at the final sprint for lighthouse so of course it starts in now uh and the next big step for us is to add all the features get everything ready so we can code freeze for the trail of bits second audit that's scheduled for september 1 at this point and this will complete our first

third-party security security review after that we implement the fix the files and implement the things that they found then we go to a second company which will get a second pair of eyes across the software and then after that we're going to say that we and after we've implanted their recommendations of course we're ready for launch so this is roughly our schedule how it looks for us so along the way of course there's it's more complicated than this but we really want to focus on ux making things easy for people um i think we can improve here we're currently focused a little bit more towards enterprise employment but we'll make it more friendly for the everyday user

we're building a slasher to detect malicious activity on the network and earn rewards for validators and we're also working on improving our documentation so that we can hold people's hand and not have any unexpected surprises for people or have as little as possible so for us to launch um we want to see that we have a stable comprehensive api standards compliant would have clear documentation um we want it to be easy to use thoroughly reviewed we want to have continuous security analysis high up time the low resource usage to ensure you have the best returns um on your on your staking dollar so i'm sort of running out of time here but let me just quickly go through the

graphical user interface we have planned so we've engaged a product design team and a front end team to build a super slick researched [Music] staking interface to help hobbyist stake is get involved um and help secure the the network so you can see some screenshots here we've got a lot more coming development starts in the coming weeks um and along with this process we've also been working on a bit of a visual identity for lighthouse um so the people can get involved and you know feel feel a part of lighthouse and as people come into ethereum they can see that you know we have these like professional looking established bits of software that that they can trust with with their stake and

and to build their applications on so great work to a keel from empire and also the team from flextaps and what they've been doing so far so that kind of sums it up for me thank you for your time really appreciate it look forward to seeing you on the test dance thank you