Vi har alla mycket att vara tacksamma för den här semesterperioden, från den första födelsedagen för beaconkedjan, till de framgångsrika uppgraderingarna under det senaste året och de otroliga framstegen över hela Ethereums ekosystem.
När ett mycket produktivt år går mot sitt slut, finns det några sista gåvor att leverera i form av uppdateringar från många (15+!!) EF-stödda team som alltid arbetar för att förbättra nätverket. Och det finns mycket av väsentligt material här, så ta dig tid att sortera igenom innehållsförteckningen och gräv i!
Som alltid fokuserar denna sammanfattningsserie på EF-stödda team vars medlemmar arbetar för att växa och förbättra Ethereum som helhet. Inkluderat i den här utgåvan är uppdateringar från många team som markerats i den tidigare rapporten, och andra nya och roterande grupper.
Njut av! 🦄
Författare av Hsiao-Wei Wang
Under andra halvåret i år inkluderade milstolparna i Ethereums konsensus FoU:
Levererade den första beacon chain hårdgaffeln Altair den 27 oktober. Huvudfunktionerna är:
Levererade The Merge
konsensuslagerspecifikationer för interops och testnät:
För att anpassa oss till The Great Renameing flyttade vi komponenter till "Consensus Layer" från "Eth2" för tydligare kommunikation på lång sikt.
I början av 2022 kommer vårt team att fokusera på att hjälpa till att leverera "The Merge", den viktigaste uppgraderingen av konsensusprotokollet någonsin. Lyckligtvis har vi stort stöd från kundteam och andra i samhället som arbetar för att göra detta till verklighet! Under tiden kommer vi att fortsätta vårt forskningsarbete om datatillgänglighet, L1-skalning och funktionerna i "clean up"-gaffeln efter The Merge.
Författare av ESP Team
Vi publicerade vår Q2 Allocation Update med anslag på totalt $7 794 000 för kvartalet - och Q3 kommer snart! Du kan också kolla in de senaste månadsöversikterna här och här för mer detaljerade framstegsuppdateringar från några av våra fantastiska bidragstagare.
Bakom kulisserna arbetar vi med en större översyn av webbplatsen som borde göra det enklare än någonsin att förstå ESP:s uppdrag och prioriteringar, och för berättigade byggare att ansöka om finansiering eller annat stöd. Vi kan inte vänta med att lansera den nya webbplatsen i början av 2022!
Författare av Sam Richards
För att göra vårt arbete mer tillgängligt och för att främja mer samhällssamarbete publicerar vårt team en översikt över våra kvartalsvisa färdplansmål. Se vår produktkarta för Q4 här.
Trevlig helg till alla från ethereum.org-teamet 😀🎄 Som alltid är vår vision med ethereum.org att skapa den bästa portalen för Ethereums växande community och att fungera som ytterdörren till Ethereum för miljontals nya besökare varje månad.
Ethereum rör sig snabbt! Förutom att uppdatera hundratals sidor för att säkerställa att vårt innehåll förblir uppdaterat och korrekt, har vi också släppt ett gäng nytt innehåll:
Ethereum.org existerar tack vare hundratals innehålls- och kodbidragsgivare från gemenskapen. Under Q3/Q4 lade vi tonvikt på sätt att öka bidragen och erkänna samhället för det arbete de gjorde:
Sedan vi anställde vår nya översättningsledare i juli har översättningsprogrammet ökat rejält!
Vi stödjer en clr.fund-runda på Layer 2! Efter över 6 månaders bidrag till clr.funds kvadratiska finansieringsstack har vi slagit samman våra ändringar till uppströmsrepo, som lägger till L2-nätverksstöd och en mängd webbappsförbättringar.
clr.fund planerar att distribuera en finansieringsrunda på Arbitrum One inriktad på insatsekosystemet i januari, och EF är glada över att kunna erbjuda matchande medel till rundan. Vi hoppas att du deltar! Håll ögonen öppna för detaljer. Jaja offentliga nyttigheter!
Vi har byggt på jättarnas axlar. Tack till clr.fund-teamet, MACI-teamet och clr.funds gemenskap av bidragsgivare som fortsätter att driva innovationer inom ZKP och kvadratisk finansiering.
Vi uppskattar feedback på vår färdplan. Våra vägledande principer är baserade på att leverera det mesta värdet på kortast tid, så om det är något du tycker att vi bör arbeta med, vänligen meddela oss! Vi välkomnar idéer och bidrag från alla i samhället.
Mer om att bidra
Författare av Alex Beregszaszi
Vi har skapat en teamwebbplats för att ge en tydlig beskrivning och för att heltäckande lista vårt nuvarande och tidigare arbete.
Det är lätt att avgöra från följande rubriker att under andra halvan av året fokuserade teamet mest på EVM. Det är också viktigt att nämna att vi har samarbetat med Geth-teamet för att förbättra prestandan hos EVM-tolken.
Det första steget mot detta, EIP-3541, gick live med London och vi har genomfört en undersökning över många testnät och EVM-kedjor för att hitta ett passande prefix för EOF.
Fortsatta förtydliganden gjordes till EIP-3540 (inklusive det valda prefixet), och vi föreslog också ytterligare arbete som bygger på det:
JUMPDEST
opcodes med en JUMPDEST-tabellRJUMP
och RJUMPI
, vilket underlättar statiska hoppUnder oktober presenterade vi EOF på Liscon (slider här, men inspelningen är inte tillgänglig) och på Ethereum Meetup i Berlin (bilder, inspelning).
Ett av våra gamla förslag, EIP-2681, accepterades under ACD#120. Det kodifierar en begränsning, som redan (delvis) implementerades i praktiken hos de flesta klienter. Efter godkännande har vi utökat Ethereum State Tests-sviten och justerat geth-implementeringen.
EIP-3855 föreslår att införa en PUSH0
instruktion som trycker 0 på stapeln. Detta är en ofta använd funktion, som oftast uppnås idag via ineffektiva eller återanvända instruktioner.
Vår analys visade att betydande resurser kunde ha sparats med denna opcode:
För att sätta "avfallet" i perspektiv, på befintliga konton slösas 340 557 331 byte på PUSH1 00-instruktioner, vilket innebär att 68 111 466 200 gas har spenderats för att distribuera dem.
EIP-3860 är ett förslag om att sätta en gräns och införa mätning för initcode. Detta skulle möjliggöra mer optimerad analys och exekvering, eftersom implementeringar skulle behöva hantera mindre okända saker.
Som ett samarbete med Geth-teamet började vi arbeta med att mäta och förbättra prestandan hos EVM-tolken i geth.
På analyssidan är två rapporter anmärkningsvärda:
Baserat på dessa initiala resultat har vi undersökt profilering och slutligen bidragit med flera förbättringar av kodbasen, varav de flesta redan har slagits samman. En icke heltäckande lista över relevanta PR:23952, 23970, 23974, 23977, 24017, 24026, 24031, 24120.
Följ den här länken för att se alla PR. Vi planerar att fortsätta detta arbete under nästa kvartal.
Två buggfixutgåvor av evmone gjordes:0.8.1 och 0.8.2.
Teamet har också ett C++ ethash/keccak256-bibliotek, som används av evmone och Silkworm.
Den senaste versionen av 0.8.0 introducerar en ny metod för att verifiera de sista Ethash-hasharna mot blocksvårigheten. Detta är både en användbarhets- och hastighetsförbättring. Metoden har lagts ut på Ethresear.ch.
Dessutom har ProgPoW fasats ut i biblioteket.
Teamet deltog även i Wasm in Web3-konferensen under september. Vi höll två presentationer:
Författare av Leo Alt
Under andra halvåret fortsatte FV-teamet att fokusera på våra befintliga verktyg:
Agera:
Hevm:
SMTChecker:
msg.value
skickas till och från de analyserade kontrakten.samtal
fungera som ett osäkert externt samtal.block.*
, medd.*
och tx.*
värden som är viktiga för misslyckade verifieringsmål.Författare av Felix Lange
Under andra halvan av 2021 publicerade vi 9 geth-utgåvor. Som vanligt har vår tid delats mellan EIP-granskning/implementering, klientoptimering/underhåll och granskning av kodändringar som föreslagits av communityn.
I juli aktiverades Londons hårdgaffel, som inkluderade EIP-1559. Det nya prissättningsschemat för gas som definieras av detta EIP krävde många förändringar i alla delsystem av geth. Vi upptäcker och åtgärdar fortfarande hörnfallsproblem relaterade till EIP-1559 nu, sex månader efter introduktionen.
Två säkerhetsbrister har upptäckts under de senaste sex månaderna. För dem båda följde vi vår säkerhetsrådgivningspolicy:vi tilldelade omedelbart ett CVE-nummer till problemet och publicerade en snabbkorrigeringsversion. Tekniska detaljer om sårbarheten publicerades 6-8 veckor senare.
Under det sista kvartalet 2021 har vårt arbete mestadels skiftat mot implementering och testning av The Merge . Vi är på väg att förvandla get till "exekveringslagerklienten" för de sammanslagna exekverings-+konsensus-lagren (fmr. "eth1+eth2"). Som förberedelse för The Merge har vi skrivit om mycket av synkroniseringskoden för att fungera under kontroll av konsensuslagret. Geth deltar också i Merge-testnät.
Dessutom har geth-teamet arbetat med flera långsiktiga projekt, såsom implementering av Verkle Trees, en beacon chain light-klient och ett nytt databaslagringssystem för Ethereum-staten.
Författare av Holger Drewes
Under de två sista kvartalen av 2021 var förberedelserna för "de stora övergångarna" på Ethereum-nätverket ett starkt fokus i vårt arbete. Vi deltog i Merge Interop i Grekland och släppte de första Merge-testnet-klara versionerna av vår klient, VM och relaterade bibliotek (se t.ex. EthereumJS-klienten v0.2-versionen). Vi började också på ett spännande experiment med Go-Ethereum Verkle/Stateless-teamet för att inbyggt testa tillståndslös blockexekvering baserat på ett verkle-bevis som serveras längs en modifierad blockrubrik via devp2p inom vår klient. Om du är intresserad kan du se följande spårningsproblem för att se våra framsteg.
Lite mer tillämpligt för slutanvändaren just nu :stödet från våra bibliotek för de framväxande L2-nätverken som Polygon, Arbitrum eller Optimism har förbättrats. Dessa och några andra nätverk kan nu direkt refereras till t.ex. skicka en transaktion till ett visst L2-nätverk. Se t.ex. Common v2.6.0-versionen för den senaste Optimism L2-nätverksintegrationen.
Och sist men inte minst:det finns en VM ArrowGlacier-version tillgänglig och på Ethers.js-fronten. Richard har precis lagt upp en spännande översikt över de kommande Ethers.js v6-biblioteksändringarna och uppdateringarna på sin blogg.
Författare av Thore Hildebrandt
Privacy &Scaling Explorations-teamet arbetar för att överbrygga klyftan mellan spetsforskning inom nollkunskapsbevis och applikationsutveckling på Ethereum.
Målet med zkEVM är att köra smarta kontrakt i en zk-rollup. Tyvärr var EVM inte designad för att köras i en zk-krets vilket gör det till en utmaning. Vi vill implementera hela uppsättningen EVM-opkoder direkt i zk-kretsarna så att ett smart kontrakt som körs på L1 kan distribueras till L2 med minimala modifieringar. Detta kommer att möjliggöra full kompatibilitet med befintliga verktyg och göra det möjligt för oss att dra nytta av kunskapen om EVM som ekosystemet har byggt upp under de senaste åren. Vi gör goda framsteg när det gäller specifikation av opkoder och implementering av kretsarna, och vi har tidiga riktmärken och ett viktigt mål framöver för att få ner provningstiden.
ZKOPRU (zk-optimistic-rollup) är en lager-2-skalningslösning för privata transaktioner med zk-SNARK och optimistisk rollup. Den stöder privata överföringar och privata atombyten inom lager-2-nätverket mellan ETH, ERC20 och ERC721. Det ger också omedelbara uttag med funktioner för att betala i förskott och kompatibilitet med efterlevnad med utgiftsnyckel och visningsnycklar. ZKOPRU har nyligen lanserats på testnet - fortsätt och kolla in det. Vi arbetar med att förbättra synkroniseringstider och på en privat utbytesfunktion.
UniRep är ett privat och icke-avvisbart ryktesystem. Användare kan få positivt och negativt rykte från intygare och frivilligt bevisa att de har åtminstone ett visst rykte utan att avslöja det exakta beloppet. Dessutom kan användare inte vägra att ta emot rykte från en attester. Vi använder Unirep för att bygga Unirep Social:en Reddit-liknande plattform som tillåter användare att privat ackumulera karma. Att bygga Unirep Social-webbplatsen var vårt fokus under de senaste månaderna. Bevis i Unirep indexeras nu så att de kan remitteras många gånger och förhindrar att ett bevis skickas in två gånger. Unirep kan nu hantera ett första rykte-airdrop och användartillståndsövergång. Vi förbättrar också effektiviteten i att generera användartillstånd och Unirep-tillstånd.
Grundläggande funktioner, frontend-design, frontend och backend av Unirep Social är kompletta, och vi planerar en sluten pre-alpha release. Kolla in det här blogginlägget om du vill veta mer.
Målet med projektet är att göra det enkelt för alla samhällen att köra sin egen CLR-runda med clr.fund. Det här projektet har varit mycket upptaget. Du kan nu distribuera din egen kvadratiska finansieringsansökan med clr.fund Deployer. Ge ditt samhälle möjlighet att välja och finansiera sin egen framtid, på ett helt decentraliserat sätt. Kolla in vår subgraf och dokumentation.
Rykte är nyckeln till förtroende. Människor lägger år på att bygga upp sitt rykte på centraliserade sociala plattformar, men de måste börja från ingenting när de börjar använda en ny app. InterRep syftar till att göra rykte portabelt för att utöka de sammansatta fördelarna med pålitliga mänskliga interaktioner över webben. Kolla in det här blogginlägget för det första tillkännagivandet och repan. Under det senaste kvartalet har vi utökat utbudet av sociala beviskällor, till POAP och e-post och har kurerat grupper:on-chain och off-chain via en Telegram-bot. Vi gör en omdesign av användargränssnittet, förbättrar interaktionen med klientapplikationer och förbereder oss för en livelansering.
Semaphore är en gadget med noll kunskap som tillåter användare att bevisa sitt medlemskap i en uppsättning utan att avslöja sin ursprungliga identitet. Samtidigt tillåter det användare att signalera att de godkänner en godtycklig sträng. Det är utformat för att vara ett enkelt och generiskt integritetslager för Ethereum dApps. Användningsfall inkluderar privat röstning, whistleblowing, mixers och anonym autentisering. Med ZK-Keeper fokuserar vi på att hålla Semaphore uppdaterad med de senaste zk-verktygen och integrera den med andra projekt som InterRep. Vi har nya libs för hantering av semaforbevis och identiteter. Implementeringen görs nu ovanpå Halo2 och vi förbereder den för att användas i webbläsaren.
RLN (Rate Limiting Nullifier) är en konstruktion baserad på noll-kunskapsbevis som möjliggör skräppostförebyggande för decentraliserade, anonyma miljöer. I anonyma miljöer är enheternas identitet okänd. Vi har nyligen publicerat ett förklarande blogginlägg för att få fler människor entusiastiska över idén. Vi har avslutat forskning kring "Förbarhetsanalys för ETH2 Validator-integritet med RLN". Vi arbetar med att produktionsalisera projektet "Privat chattapp med RLN och Interrep". Vi hjälper också till med att integrera ZK-Keeper-pluginet i RLN-projekten.
Författare av Tim Beiko
Protocol Support (PS)-teamet bildades 2021 för att öka antalet sätt som teamen som bygger eller interagerar med Ethereum-basskiktet stöds. Teamets huvudfokus är att göra det möjligt för kärnutvecklare att skicka nätverksuppgraderingar på Ethereums exekveringslager.
För detta ändamål utplacerades Berlin, London och Arrow Glacier i år. Utöver dessa har PS lagt ned betydande ansträngningar på att arbeta för sammanslagning, först med Rayonism, sedan Amphora-verkstaden och nu Kintsugi Deevnet!
Denna accelererande takt och omfattning av förändringar har krävt mer uppsökande till Ethereum-gemenskapen, vilket ledde till att vårt team organiserade frekventa gemenskapssamtal. Under dessa bjöds applikations-, infrastruktur- och verktygsutvecklare in för att diskutera hur man bäst stödjer protokolluppgraderingar och ger en smidig övergång för sina användare. Vid sidan av dessa samtal har teamet hållit flera föredrag och publicerat flera inlägg om den föränderliga Ethereum-färdplanen, som den senaste uppdateringen av alla kärnutvecklare, det här inlägget i Bankless och det här senaste inlägget om Merge och applikationslagret i EF-bloggen.
Utöver protokolluppgraderingar har PS-teamet tagit två stora initiativ för att säkerställa att kundteamen får bra stöd. Först tillkännagavs ett klientincitamentsprogram för att ge team Ethereum-anpassade långsiktiga incitament. Programmet förser klientteam med en uppsättning av 144 validerare som de måste köra med sin programvara. Förutsatt att team fortsätter att uppfylla vissa prestandariktmärken på mainnet, tilldelas dessa validerare gradvis till teamen, som är fria att antingen likvidera dem eller hålla dem igång för att samla in belöningar och avgifter. Det här programmet anpassar teamen till Ethereum, säkerställer att de "dogfoodar" sina kunder på mainnet och att de fortsätter att leverera effektiv programvara.
För det andra lanserades ett Core Developer Apprenticeship Program. Detta program gav stipendier och mentorskap till självstyrda individer som ville dyka djupt in i protokollutveckling. CDAP lanserades som ett experiment som visade sig vara otroligt framgångsrikt! Två kohorter kördes, med över 25 deltagare. Av dessa arbetar nu minst 5 heltid i ekosystemet. Dessa inledande kohorter har lärt oss mycket om vad som var bra och vad som kunde förbättras med programmet. Räkna med en förnyad CDAP 2022!
Slutligen experimenterade teamet med att tillhandahålla infrastruktur till kundteamen och en bredare gemenskap. För det ändamålet skickades crawler.ethereum.org med öppen källkod. Vi hoppas att en ytterligare sökrobot igång och tillgänglig för communityn att förbättra, modifiera eller dela upp hjälper till att ge bättre överblick över nätverkets topologi.
Författare av Rob Stupay
Under de senaste 6 månaderna har Remix-teamet skruvat loss baksidan av vår app för att göra en omfattande omkoppling. Först bland dessa förändringar var det fortsatta arbetet med att flytta vår kod till React. Vi utökade också vår räckvidd genom att ringa in några effektiva kanaler till nya gemenskaper och ta in nya användare med en "rundtur" av vår IDE. Vi har kopplat in projekt i vår "upplevelse", integrerat Slither och Hardhat, samt uppdaterat Remix VSCode-tillägget.
Och, om det inte räcker, har vi fastnat på några verktyg för samarbetskodning, förbättring av decentraliserad GIT och integrering av Github. Sist men inte minst har vi uppdaterat våra befintliga plugins. Kort sagt, vi har maxat det till 11.
Se mer information i vår artikel.
Författare av Barnabe Monnot
RIG (Robust Incentives Group) välkomnade nya teammedlemmar och deltog i många viktiga milstolpar för Ethereum-protokollet. För en snabb uppdatering om vad RIG är och vad vi bryr oss om, kan du kolla in Protocol cryptoeconomics with the RIG, presenterad av Barnabé på EthCC i juli.
På Proof-of-Stake-konsensussidan hittade Caspar, som anslöt sig som forskare på heltid tidigare i år, ett problem med det nuvarande gaffelvalet, skrivet som Tre attacker på Proof-of-Stake Ethereum. Lyckligtvis finns det en stark kandidatfix som nyligen slogs samman i konsensusspecifikationerna, efter många produktiva diskussioner med Stanfords Tse Lab, som var medförfattare till tidningen "Three attacks". Caspar och andra föreslog också en annan begränsning ("förslagsställare sammanslagning"), som fortfarande är under forskning. Kolla in Caspar på Liscon som presenterar sina resultat!
Shyam, som kom till oss först som forskarpraktikant förra sommaren och nu är forskningsassistent vid RIG, släppte en serie anteckningsböcker som utforskar beaconkedjans statistik från många unika vinklar, inklusive oceaniska spel och ojämlikhet. Shyam har också arbetat på en förlängning av vår Beacon runner PoS-simuleringsmotor som inkluderar förstärkningsinlärning. Kolla in hans föredrag på EDCON!
Block 12 965 000, 5 augusti, 12:33:42 UTC, var ett viktigt datum för oss:Londons hårdgaffel aktiverades och med den EIP-1559. Under det senaste året har vi släppt en serie bärbara datorer som presenterar olika simuleringar av den nya avgiftsmarknadsmekanismen, vilket satte scenen för ytterligare analys efter lanseringen. Barnabé rapporterade några resultat tidigt efter, och skrev tillsammans med medförfattare (inklusive Shyam) en längre uppsats, Transaction Fees on a Honeymoon:Ethereums EIP-1559 One Month Later. Uppsatsen är motiverad av beteendet hos uppdateringsregeln 1559 i den verkliga världen och öppnar nya forskningsriktlinjer för förbättringar av regeln.
RIG arbetade också i nära samarbete med cadCAD Edu-teamet för att förbereda en onlinemästarklass i valideringsekonomi, med stöd av en helt utbyggbar modell av Ethereum-ekonomi (i Python).
Författare av Keri Clowes
Under andra halvan av 2021 slutförde Snake Charmers-teamet de förändringar som behövdes över hela ekosystemet för att stödja Londons hårdgaffel. Detta innebar omfattande, grundläggande förändringar i hela vår stack, särskilt i Py-EVM, Ethereum Tester, Web3.py och eth-account. Det fanns också två buggar som har åtgärdats för Py-EVM. Vi har ökat ansträngningarna för att skapa utbildningsinnehåll och lagt större vikt vid utvecklarrelationer. Och som alltid finns det pågående communitysupport, problemutredning och buggklämning i våra Python-verktyg.
Författare av Grant Wuerker
Under de senaste 6 månaderna har Fe-teamet minskat följande utgåvor:
0.11.0-alfa "Karlite" (2021-12-02)
v0.10.0-alpha "Jade" (2021-10-32)
v0.9.0-alfa "Iridium" (2021-9-29)
v0.8.0-alpha "Haxonite" (2021-8-31)
0.7.0-alfa "Galaxite" (2021-07-27)
0.6.0-alfa "Feldspat" (2021-06-10)
Om du vill veta mer om våra framsteg under de senaste 6 månaderna kan du kolla in följande resurser:
Författare av Piper Merriam
Det här året har varit ett stort år för Portalnätverket. Vi började i år med en idé och bara en lös plan för hur man bygger ett peer-to-peer-nätverk som skulle kunna leverera lättåtkomst till Ethereum-protokollet. Vi har nu tre oberoende team och implementeringar och är på god väg med att lansera det första testnätet som bör utvecklas till ett fullt fungerande nätverk i slutet av 2022.
EF Portal-teamet har arbetat hårt på Trin, en portalklient skriven i Rust. EF Javascript-teamet har också arbetat med Ultralight, en portalklient skriven i Typescript som syftar till att kunna köras i webbläsaren. Teamet från Status.im har också arbetat på Fluffy, en portalklient avsedd för integration med Status ethereum-klienten och plånbokslösningarna.
Under detta år har vi löst det tidigare olösta problemet med hur man distribuerar den nuvarande Ethereum-staten på ett sätt som främjar effektiv lagring och hämtning. Vi etablerade Portal Wire Protocol, ett utbyggbart basprotokoll som är grunden för alla nätverk som utgör Portal Network. Vi hade också nöjet att arbeta med flera deltagare i Core Developer Apprenticeship Program som använde Portal Network-projekten som en startpunkt för att komma in i Core Protocol-utveckling.
Författare av säkerhetsteamet (säkerhets-/konsensustest)
På säkerhets- och testsidan har mycket uppmärksamhet ägnats London-uppgraderingen och den kommande sammanslagningen. Vi har gjort uppdateringar om verktyg för testförfattande och fortsatt att förbättra referenstesterna.
Författare av Franziska Heintel
Under andra halvåret i år släppte vi Solidity-versionerna 0.8.8, 0.8.9, 0.8.10 och 0.8.11:
Moreover, several Solidity team members presented at ETHGlobal’s Developer Tool Summit:
The Solidity documentation got a few upgrades, most notably, we…
Lastly, we launched our yearly Solidity Developer Survey. If you are a Solidity developer, please take 10 minutes to share your feedback and take part in the survey here. The survey will be open until 31st of December 2021.
Oh and we’re hiring! Have a look at our C++ Engineer Solidity opening.
Authored by Thibaut Schaeffer
In the second half of 2021, ZoKrates advanced on different fronts:
For a full list of the changes, check out the changelog