{"id":18409,"date":"2026-03-18T08:49:41","date_gmt":"2026-03-18T08:49:41","guid":{"rendered":"https:\/\/cryptoted.net\/index.php\/2026\/03\/18\/eth2-quick-update-no-4\/"},"modified":"2026-03-18T08:49:41","modified_gmt":"2026-03-18T08:49:41","slug":"eth2-quick-update-no-4","status":"publish","type":"post","link":"https:\/\/cryptoted.net\/index.php\/2026\/03\/18\/eth2-quick-update-no-4\/","title":{"rendered":"eth2 quick update no. 4"},"content":{"rendered":"<p> <br \/>\n<br \/><img decoding=\"async\" src=\"https:\/\/blog.ethereum.org\/images\/posts\/kumiko-background.jpg\" \/><\/p>\n<div id=\"\">\n<p class=\"chakra-text css-gi02ar\">Welcome to the fourth installment of <em class=\"chakra-text css-0\">eth2 quick update<\/em>. There are a lot of moving pieces to talk about this week. Other than the heroic eth2 client development going on, these are the highlights:<\/p>\n<p class=\"chakra-text css-gi02ar\">tldr;<\/p>\n<h2 class=\"chakra-heading group css-1kpzc4q\" id=\"differential-fuzzing-grant\" data-group=\"true\"><a class=\"chakra-link css-128fqrf\" aria-label=\"differential fuzzing grant permalink\" href=\"#differential-fuzzing-grant\"><svg viewbox=\"0 0 24 24\" focusable=\"false\" class=\"chakra-icon css-173jpr1\"><g fill=\"currentColor\"><path d=\"M10.458,18.374,7.721,21.11a2.853,2.853,0,0,1-3.942,0l-.892-.891a2.787,2.787,0,0,1,0-3.941l5.8-5.8a2.789,2.789,0,0,1,3.942,0l.893.892A1,1,0,0,0,14.94,9.952l-.893-.892a4.791,4.791,0,0,0-6.771,0l-5.8,5.8a4.787,4.787,0,0,0,0,6.77l.892.891a4.785,4.785,0,0,0,6.771,0l2.736-2.735a1,1,0,1,0-1.414-1.415Z\"\/><path d=\"M22.526,2.363l-.892-.892a4.8,4.8,0,0,0-6.77,0l-2.905,2.9a1,1,0,0,0,1.414,1.414l2.9-2.9a2.79,2.79,0,0,1,3.941,0l.893.893a2.786,2.786,0,0,1,0,3.942l-5.8,5.8a2.769,2.769,0,0,1-1.971.817h0a2.766,2.766,0,0,1-1.969-.816,1,1,0,1,0-1.415,1.412,4.751,4.751,0,0,0,3.384,1.4h0a4.752,4.752,0,0,0,3.385-1.4l5.8-5.8a4.786,4.786,0,0,0,0-6.771Z\"\/><\/g><\/svg><\/a>Differential fuzzing grant<\/h2>\n<p class=\"chakra-text css-gi02ar\">Sigma Prime has been awarded a grant to lead the <a target=\"_blank\" rel=\"noopener\" class=\"chakra-link css-vezwxf\" href=\"https:\/\/github.com\/sigp\/beacon-fuzz\/\">differential fuzzing effort<\/a> for eth2 clients. This effort is critical to the success of launching a multi-client network by aiding in catching consensus issues prior to mainnet.<\/p>\n<p class=\"chakra-text css-gi02ar\">The act of &#8220;fuzzing&#8221; is the act of throwing many random inputs at a piece of software to see how it reacts. When fuzzing a single piece of software, the goal is often to find inputs that lead to unexpected crashes. When we find such inputs, we then figure out what went wrong and harden the software to this type of input.<\/p>\n<p class=\"chakra-text css-gi02ar\"><em class=\"chakra-text css-0\">Differential<\/em> fuzzing is a bit different. Instead of explicitly looking for crashes, we look for instances in which different implementations of a protocol have a different output for the same input. In a blockchain context, we use differential fuzzing to find cases in which a series of blocks leads to a different resulting state on two different clients. Ideally in production there are no such cases.<\/p>\n<h2 class=\"chakra-heading group css-1kpzc4q\" id=\"light-client-task-force\" data-group=\"true\"><a class=\"chakra-link css-128fqrf\" aria-label=\"light client task force permalink\" href=\"#light-client-task-force\"><svg viewbox=\"0 0 24 24\" focusable=\"false\" class=\"chakra-icon css-173jpr1\"><g fill=\"currentColor\"><path d=\"M10.458,18.374,7.721,21.11a2.853,2.853,0,0,1-3.942,0l-.892-.891a2.787,2.787,0,0,1,0-3.941l5.8-5.8a2.789,2.789,0,0,1,3.942,0l.893.892A1,1,0,0,0,14.94,9.952l-.893-.892a4.791,4.791,0,0,0-6.771,0l-5.8,5.8a4.787,4.787,0,0,0,0,6.77l.892.891a4.785,4.785,0,0,0,6.771,0l2.736-2.735a1,1,0,1,0-1.414-1.415Z\"\/><path d=\"M22.526,2.363l-.892-.892a4.8,4.8,0,0,0-6.77,0l-2.905,2.9a1,1,0,0,0,1.414,1.414l2.9-2.9a2.79,2.79,0,0,1,3.941,0l.893.893a2.786,2.786,0,0,1,0,3.942l-5.8,5.8a2.769,2.769,0,0,1-1.971.817h0a2.766,2.766,0,0,1-1.969-.816,1,1,0,1,0-1.415,1.412,4.751,4.751,0,0,0,3.384,1.4h0a4.752,4.752,0,0,0,3.385-1.4l5.8-5.8a4.786,4.786,0,0,0,0-6.771Z\"\/><\/g><\/svg><\/a>Light client task force<\/h2>\n<p class=\"chakra-text css-gi02ar\">Chainsafe\/<a target=\"_blank\" rel=\"noopener\" class=\"chakra-link css-vezwxf\" href=\"https:\/\/github.com\/ChainSafe\/lodestar\">Lodestar<\/a>, the recipients of an Ethereum Foundation grant for research and development on eth2 light clients, has formed the <a target=\"_blank\" rel=\"noopener\" class=\"chakra-link css-vezwxf\" href=\"https:\/\/medium.com\/chainsafe-systems\/ethereum-light-client-task-force-go-99485011b095\">Light Client Task Force<\/a>. This group has tasked themselves with ensuring that light clients are first class citizens in eth2. To this end, they are hosting a <a target=\"_blank\" rel=\"noopener\" class=\"chakra-link css-vezwxf\" href=\"https:\/\/github.com\/ChainSafe\/lodestar\/issues\/555\">monthly call<\/a> aimed at driving light client research, standards, specs, and education.<\/p>\n<p class=\"chakra-text css-gi02ar\">The need for a rich ecosystem of light clients and light client servers is only amplified in a sharded protocol like eth2. Even if a client is syncing some subset of the protocol (e.g. just a couple of shards), a user will very often need to get information about accounts, contracts, and the general state of things on another shard. A client could inefficiently sync the entire additional shard, but more often than not, lightly requesting information about specific accounts on the shard with succinct proofs will be the way to go.<\/p>\n<p class=\"chakra-text css-gi02ar\">Tune in to the next <a target=\"_blank\" rel=\"noopener\" class=\"chakra-link css-vezwxf\" href=\"https:\/\/github.com\/ChainSafe\/lodestar\/issues\/555\">Light Client Task Force call<\/a> to stay up-to-date on all things light in eth2.<\/p>\n<h2 class=\"chakra-heading group css-1kpzc4q\" id=\"eth1---eth2\" data-group=\"true\"><a class=\"chakra-link css-128fqrf\" aria-label=\"eth1   eth2 permalink\" href=\"#eth1---eth2\"><svg viewbox=\"0 0 24 24\" focusable=\"false\" class=\"chakra-icon css-173jpr1\"><g fill=\"currentColor\"><path d=\"M10.458,18.374,7.721,21.11a2.853,2.853,0,0,1-3.942,0l-.892-.891a2.787,2.787,0,0,1,0-3.941l5.8-5.8a2.789,2.789,0,0,1,3.942,0l.893.892A1,1,0,0,0,14.94,9.952l-.893-.892a4.791,4.791,0,0,0-6.771,0l-5.8,5.8a4.787,4.787,0,0,0,0,6.77l.892.891a4.785,4.785,0,0,0,6.771,0l2.736-2.735a1,1,0,1,0-1.414-1.415Z\"\/><path d=\"M22.526,2.363l-.892-.892a4.8,4.8,0,0,0-6.77,0l-2.905,2.9a1,1,0,0,0,1.414,1.414l2.9-2.9a2.79,2.79,0,0,1,3.941,0l.893.893a2.786,2.786,0,0,1,0,3.942l-5.8,5.8a2.769,2.769,0,0,1-1.971.817h0a2.766,2.766,0,0,1-1.969-.816,1,1,0,1,0-1.415,1.412,4.751,4.751,0,0,0,3.384,1.4h0a4.752,4.752,0,0,0,3.385-1.4l5.8-5.8a4.786,4.786,0,0,0,0-6.771Z\"\/><\/g><\/svg><\/a>eth1 -&gt; eth2<\/h2>\n<p class=\"chakra-text css-gi02ar\">In the early days of eth2, the transfer of ether from the existing ethereum chain (eth1) into the new beacon chain (eth2) will be uni-directional. That is, the ether moved into staking on eth2 will not be transferable (to start) back to eth1. The choice of a single directional transfer into validation is in an effort to minimize the risk profile that eth2 induces upon eth1, and to allow for a quicker development cycle on eth2 without having to fork eth1 in the process. There is some movement around creating a bi-directional bridge, but I&#8217;ll save discussion of the bridge mechanics and the trade-offs for a later post. Today, I&#8217;d like to get more into <em class=\"chakra-text css-0\">how<\/em> this uni-directional transfer works and how it can be safely implemented without changing eth1.<\/p>\n<p class=\"chakra-text css-gi02ar\">On the existing ethereum PoW chain, we will deploy the <a target=\"_blank\" rel=\"noopener\" class=\"chakra-link css-vezwxf\" href=\"https:\/\/github.com\/ethereum\/eth2.0-specs\/blob\/master\/deposit_contract\/contracts\/validator_registration.v.py\">eth2 validator contract<\/a>. This contract has a single function called <span class=\"chakra-text css-ons8vw\">deposit<\/span> which takes in a number of parameters to initialize a new validator (e.g. public key, withdrawal credentials, an ETH deposit, etc). There is no <span class=\"chakra-text css-ons8vw\">withdrawal<\/span> function on this contract. Barring a fork to add in a bi-directional bridge, this deposited ETH now only exists in eth2 on the beacon chain.<\/p>\n<p class=\"chakra-text css-gi02ar\">It is then the validators&#8217; responsibility on the beacon chain to come to consensus on the state of this contract such that new deposits can be processed. This is done by eth2 block proposers embedding recent eth1 data into a beacon block field called <span class=\"chakra-text css-ons8vw\">eth1_data<\/span>. When enough block proposers during a voting period agree on recent <span class=\"chakra-text css-ons8vw\">eth1_data<\/span>, this data is enshrined in the beacon chain state allowing for new deposits to be processed.<\/p>\n<p class=\"chakra-text css-gi02ar\">An important note about this mechanism is that the <span class=\"chakra-text css-ons8vw\">eth1_data<\/span> is deep in the eth1 PoW chain &#8212; ~1000 blocks of &#8220;follow distance&#8221;. This follow distance induces a high latency in processing new validator deposits, but provides a high degree of safety in the coupling of these two systems. The eth1 chain would have to re-org deeper than 1000 blocks to break the link, and in such a case would require some manual intervention to overcome.<\/p>\n<p class=\"chakra-text css-gi02ar\">We are researching and prototyping the utilization of the beacon chain to finalize eth1 (i.e. the finality gadget). This would require eth1 to defer its fork choice ultimately to the beacon chain, gaining security from the PoS validators, and allowing for a much quicker eth1 to eth2 deposits. The finality gadget also opens up other fun things such as the bi-directional bridge and exposing the eth2 data-layer to eth1. More on all of this in a later post \ud83d\ude80.<\/p>\n<\/div>\n<p><br \/>\n<br \/><a href=\"https:\/\/blog.ethereum.org\/en\/2019\/11\/21\/eth2-quick-update-no-4\">Source link <\/a><\/p>\n","protected":false},"excerpt":{"rendered":"<p>Welcome to the fourth installment of eth2 quick update. There are a lot of moving pieces to talk about this week. Other than the heroic eth2 client development going on, these are the highlights: tldr; Differential fuzzing grant Sigma Prime has been awarded a grant to lead the differential fuzzing effort for eth2 clients. This [&hellip;]<\/p>\n","protected":false},"author":6,"featured_media":18195,"comment_status":"open","ping_status":"open","sticky":false,"template":"","format":"standard","meta":{"tdm_status":"","tdm_grid_status":"","footnotes":""},"categories":[24],"tags":[],"kronos_expire_date":[],"class_list":["post-18409","post","type-post","status-publish","format-standard","has-post-thumbnail","hentry","category-ethereum"],"_links":{"self":[{"href":"https:\/\/cryptoted.net\/index.php\/wp-json\/wp\/v2\/posts\/18409","targetHints":{"allow":["GET"]}}],"collection":[{"href":"https:\/\/cryptoted.net\/index.php\/wp-json\/wp\/v2\/posts"}],"about":[{"href":"https:\/\/cryptoted.net\/index.php\/wp-json\/wp\/v2\/types\/post"}],"author":[{"embeddable":true,"href":"https:\/\/cryptoted.net\/index.php\/wp-json\/wp\/v2\/users\/6"}],"replies":[{"embeddable":true,"href":"https:\/\/cryptoted.net\/index.php\/wp-json\/wp\/v2\/comments?post=18409"}],"version-history":[{"count":0,"href":"https:\/\/cryptoted.net\/index.php\/wp-json\/wp\/v2\/posts\/18409\/revisions"}],"wp:featuredmedia":[{"embeddable":true,"href":"https:\/\/cryptoted.net\/index.php\/wp-json\/wp\/v2\/media\/18195"}],"wp:attachment":[{"href":"https:\/\/cryptoted.net\/index.php\/wp-json\/wp\/v2\/media?parent=18409"}],"wp:term":[{"taxonomy":"category","embeddable":true,"href":"https:\/\/cryptoted.net\/index.php\/wp-json\/wp\/v2\/categories?post=18409"},{"taxonomy":"post_tag","embeddable":true,"href":"https:\/\/cryptoted.net\/index.php\/wp-json\/wp\/v2\/tags?post=18409"},{"taxonomy":"kronos_expire_date","embeddable":true,"href":"https:\/\/cryptoted.net\/index.php\/wp-json\/wp\/v2\/kronos_expire_date?post=18409"}],"curies":[{"name":"wp","href":"https:\/\/api.w.org\/{rel}","templated":true}]}}