 I'm Mamie Radzim-Bazafi. I've been working on Ethereum since two years ago, and first on Ethereum 1, and now Ethereum 2. And I'm part of Status, the Nimbus team. So most of you know Status as, for free things, the messenger, the web-free browser, and also the browser, and the wallet on mobile. But we're also involving in core infrastructure as we eat new challenges within the Ethereum ecosystem. So the main one I will be talking today is Ethereum 2. So at first, for this talk, I had a big plan, secret plan, to come like Steve Jobs with the new iPhone and show you Ethereum 2 and Raspberry Pi. There is another one behind. But this was revealed one month ago during the interop in Canada, and all the Twitter sphere was all over the place with this plus what happened at the interop. So instead of talking about that, I want to take a step back and explain why this is important for Ethereum, for blockchain, and also for society. So the real program today is, while running on the Pi is significant, some experiments and outcomes, future and unknowns. So the main focus will be on sustainability and energy consumption, which was one of the main critic of blockchain and especially proof of work. So we heard from Verado, if you were this morning at the introduction talk by Vitalik, we talked about Byzantine fault tolerance and this paper from Lamport in 1982, which presented the Byzantine general problem, which was about how to reach consensus between if you all are generals of an army, you have to attack a city and maybe you have to communicate so that not half of you attack the city while half of the other retreat and you come to a strong decision despite spies, maybe messenger dying or fleeing. And one of the main advancement of Bitcoin was using proof of costly resources, work, to help solve this general problem. So here you have, I suppose, one of the first mail that introduced Satoshi's work with an example of attacking, I don't know, maybe a company through and trying to crack the crypto hashes and consulting many attackers for that. The main point is that you need a lot of compute so a lot of energy to do that. And to introduce more context, I want to talk about externalities and also sustainability. So externality is an economic term that explains, that tells you it's a cost or a benefit that affects a party who did not choose to incur that cost or benefit. So to give you a concrete example, suppose there is a factory somewhere that pumps in clean water and exhausts dirty water downstream. People downstream didn't choose to have dirty water and they are not paid to clean it. So this is a negative externality. On the other hand, a positive externality will be the same factory is building a road where they were known before and all the villages and the city along those road benefit for much better transportation. So this is a positive externality. And sustainability, I guess, now everyone is familiar with the term. So the idea is that it's meeting the need of the present without compromising the ability of future generation to meet their needs. How does that play in Ephraim? So the public opinion is that a lot of the proof of work is a waste of energy. And that's an issue. There is this EU blockchain observatory report that was sent to the European Commission that said that proof of work consumes as much energy per day as the country of Singapore. It's not shown in the slide, but they said that there are lots of work in progress to improve that. And that thankfully the blockchain community is aware of the energy consumption and wants to tackle that. Another paper was in the magazine Nature and that said that blockchain might contribute to global warming by two degrees Celsius. The paper is, the code behind the paper is actually public, which is a very good thing. And if you want, you can check out how they arrive to those estimates. You can also do your own. You can criticize it, put a PR or an issue. But I'm not here to talk about if it's two degree or 1.5 or maybe one or maybe three. I want it to be zero or maybe even negative. Like if we have more efficient carbon market with the blockchain, another negative externality is the space used. So this is an image of Iceland, US Air Force base that was completely transformed into a Bitcoin farm. And I guess space today is at a premium with many countries like Japan who are struggling to get space either for food or for people. So just to not be always negative, there are also positive externalities in the blockchain space. So we have all these permissionless, trustless, decentralized, transparent and social system that everyone knows. But also, who heard about formal verification before hearing about blockchain here? Oh, there's one. Well, blockchain is also driving all the innovation in formal verification for software. Formal verification has been used by Intel, for example, for the past 20 years for hardware, but this is very new and thanks to blockchain, that formal verification is used for software and there are others like Game Theory, Cryptography that are being driven by blockchain. So now let's go back to Ethereum 2. Ethereum 2, we change the proof of work, the wasteful algorithm, like the public may want to call it, to either itself. So now we can run it on that, something that can fit into my hand. We go from a big data center to this small thing. I've been running tests in the past months on Raspberry Pi 4. So this one is Raspberry Pi 3 and Raspberry Pi 4 was out in June, I think, a bit more powerful, two gigabytes of RAM. I use the default distribution so that people can reproduce it. And Nimbus, the Ethereum 2 client, called Nimbicon Chain. The configuration I used was called Minimal. This is what we used for Interop. We also have a Mainnet one. I used Minimal because unfortunately, we're not yet at the stage, we're missing a bit of extra step to get to Mainnet performance. But I did try to make it harder than Minimal. So instead of Interop, which was using 16 validators, I used 192, which means 992 times 32 if staked on this. 64 shards, eight slots per epoch. So one thing is that you might think that Minimal is really a dumb-down version. But an epoch, so if you're not aware of the Ethereum 2 terminology, a slot is six seconds. It's how fast we create new blocks on the blockchain and an epoch is a group of blocks, a group of slots that make sense together and we will have special processing after each epoch. And so that brings each epoch to 48 seconds instead of six minutes and so. And when I say epoch processing is costly, this is a list of what we do. Justification, finalization, so this means making sure that the blockchain cannot go back in time. Cross links, rewards and penalties, slashing validators, inducing new validators, removing those that are bad, and updating balances. Also, what I wanted to do was giving you very precise power consumption figures. And it happened that I had an issue, electrical issue at home a week ago. So about this fancy equipment, but I couldn't use it because I needed a cable with different electricity in and different electricity out. So I'm sorry. Now, for the actual demo. This is the output live from the Raspberry Pi that is behind you. And it showed you, it has been running for 40 minutes now. And it showed you that first it didn't crash and it's also running and you have the output of three nodes. So it's a bit fast. And this was a video backup that I used just in case the live demo didn't work. Now, some key figures about running Ethereum, Nimbus on the Raspberry Pi. Raspberry Pi maximum power consumption for draw is 7.6 watts. To give you an idea for a typical laptop nowadays, it's about 30 watts. So it's four to five times less power consumed. And also a Raspberry Pi is about 10 times slower than an entry level CPU for a desktop. So this means that it runs, Ethereum 2 runs perfectly on this kind of CPU. So if we can get two, three times more performance, we will be okay for maintenance. And also, if people were worrying because they have 10,000 ETH to stake and they didn't know what kind of hardware they needed, well, it's easy. So in summary, outcomes of those experiments. It runs even unoptimized on a representative workload. You don't need a power plant in your backyard just to ensure that you always have electricity and you don't black out the whole district. And we also have clear targets because as Danny said this morning, the main blocker and most of the time is spent on cryptography. And the cryptography that we use on Ethereum 2 is very young. It was developed by Dan Bonnet at Stanford, but there is no either hardware or software optimization yet. And everyone also the Ethereum 2 team currently have unoptimized and very young library, but as the ecosystem mature, it will get much better. Also, there's an effort to standardize across many blockchain like Ethereum, Ccash, Ficon, Algorithm, Definiti, Chia Network, I guess one or two other I forget. So there is an incentive across all blockchain to collaborate and get something really strong. It's a bad. So as I said, we can run minimal, we cannot run mainnet. And well, processing takes over six seconds, maybe 10 or something. We need to get twice faster. The ugly. I'm sorry, but if you wanted to hit your home in the winter, you will not be able to do it with proof of stake. So you will have to stay with Bitcoin or something else. Now, some ideas I have for the future to optimize this. So Raspberry Pi default distribution is running 32-bit mode, but cryptography in 64-bit is much faster. We had no multi-threading yet. Even though this has four cores, we only used one. And as I said before, we have no optimized crypto library like Bitcoin has for the curve called secp256k1. Also at Nimbus, even though we are one of the team targeting low-powered devices, there is another team, Loadstar, who's trying to run the Ethereum 2 on the browser, on Chrome or Firefox. So they also have huge challenges ahead. So it's kind of a team effort. Also what's coming next, Raspberry Pi 5, so maybe it's twice Pfizer and we can sit and do nothing. And for use cases for people, I don't expect actually for people to run that on the Raspberry Pi, maybe they will rent an instance like they rent WordPress today and people will be able to just launch some kind of OS with Ethereum installed and everything will be done for them and the consumption, the CPU that will be rented will be just powerful enough to run Ethereum. So, regarding the unknowns for Ethereum 2 performance in the future. As I said, verifying validator's attestation is quite costly, this is cryptography, it's about 30 to 50% of the time spent in that. If you read prismatic lab news from a week ago, apparently they spent 99% of the time on BLS signature and now it's only 20%. So we can get lots of improvement. Another issue is when we scale to 100,000 validators, we have an aggregation protocol still in research. We have no need to connect to every peer. So, a lot of optimizations there as well. So, for me, the big unknowns are phase one and phase two, the execution layer, which is equivalent to EVM and what Solidity compiles to. I don't know how heavy it will be. So, key takeaways after this talk. There are a couple of teams that have a vested interest to make Ethereum 2 as efficient as possible. Also, it will be a significant upgrade in terms of carbon footprint, so no one will be able to say anymore blockchain is wasting energy, even though we know that it's used for securing censorship resistance, permission less and stuff. The consensus layer is quite solid. We need only just a focused effort and the unknowns that I talked about. Synergy aggregation, phase one and phase two. Thank you very much.