Wat is Proto-Danksharding?
Proto-danksharding is een Ethereum verbeteringsvoorstel (EIP) dat tijdelijke opslagruimte zal introduceren die laag twee (L2) rollups kunnen gebruiken om een hogere transactionele doorvoer te produceren.
Met proto-danksharding komt Ethereum in de tweede fase van zijn rollup-centrische roadmap, genaamd “The Surge”. In deze fase wil Ethereum prioriteit geven aan schaalbaarheid, d.w.z. een hoger transactievolume tegen lagere gaskosten.
Hoe verschilt proto-danksharding van danksharding? Dat gaan we uitzoeken.
Proto-Danksharding uitgelegd: EIP-4844
Proto-danksharding, of EIP-4844, werd in februari 2022 voorgesteld aan de Ethereumgemeenschap. Het is ontworpen om Ethereum te helpen schalen via rollups.
Hoe wordt het gedaan? Proto-danksharding introduceert tijdelijke “datablobs” in Ethereum-blokken. Rollups kunnen deze data blob gebruiken om extra data te verwerken en op te slaan, waardoor er meer transacties verwerkt kunnen worden.
Bovendien zullen de gegevens die in deze blobs zijn opgeslagen niet toegankelijk zijn voor de EVM, wat betekent dat de gemaakte gaskosten zullen afnemen omdat de EVM de gegevens in de blobs niet verwerkt.
De datablobs zullen automatisch worden verwijderd na een vaste periode van één tot drie maanden. Hierdoor kunnen Ethereum nodes slank blijven doordat er minder geïnvesteerd hoeft te worden in extra hardware om gegevens op te slaan naarmate het Ethereum netwerk groeit.
Is het OK om Blob Data te verwijderen?
Om de definitie van proto-danksharding volledig te leren kennen, is het cruciaal om de grondgedachte achter de tijdelijke datablobs te begrijpen. Hier is de stelling waarom het OK is om blob data na een bepaalde tijd te verwijderen.
Volgens Ethereum-ontwikkelaars bestaat een rollup uit twee delen:
- Gegevens
- Uitvoeringscontrole
De gegevens bestaan uit de transacties die verwerkt worden door de rollup, die ingediend worden bij het Ethereum L1. Ondertussen verwijst een uitvoeringscontrole naar het opnieuw uitvoeren van de transacties door eerlijke actoren om hun geldigheid te controleren.
EIP-4844 stelt dat het niet nodig is dat transactiedata eeuwig toegankelijk zijn.
In plaats daarvan zouden ze alleen beschikbaar moeten blijven voor een voldoende lange periode, zodat iedereen de transacties die op Ethereum zijn vastgelegd, kan controleren en valideren.
Volgens de officiële Ethereum blog post:
“Consensus client attestations tonen aan dat er voldoende gelegenheid was voor provers om de gegevens te verifiëren. De daadwerkelijke gegevens kunnen off-chain worden opgeslagen door rollup operators, gebruikers of anderen.”
Vooraanstaande Ethereum-ontwikkelaars, waaronder mede-oprichter Vitalik Buterin, geloven dat deze aanpak de last op het Ethereum-netwerk zal verminderen en in plaats daarvan de taak naar derden zal verschuiven om de volledige geschiedenis van transacties op te slaan.
Hoe worden Blob-gegevens geverifieerd in Proto-Danksharding?
Ethereum rollups verwerken transacties off-chain en post-executie data in de tijdelijke data blobs. Ze plaatsen ook een “commitment” voor de gegevens.
Een commitment is een cryptografische manier om verificatie van ingediende data mogelijk te maken. Stel je een scenario voor:
- Je plaatst een boek in een doos voordat je het naar je vriend verzendt.
- Als je het boek in de doos hebt gedaan, kun je het niet openen en de inhoud veranderen.
- Daarom dien je je verbintenis in.
- Iedereen met de sleutel van de doos kan controleren of je eerlijk bent geweest in je belofte of niet.
Ok, nu we dat uit de weg hebben. Een rollup doet een toezegging door een polynoom functie te passen op de blob data, die kan worden geëvalueerd door een “prover” op verschillende punten.
Bijvoorbeeld, een polynoom functie f(x)=2x-1 kan worden geëvalueerd voor x=1, x=2, en x=3, wat respectievelijk de resultaten 1, 3, en 5 oplevert.
Een verifieerder zal dezelfde functie gebruiken en deze op dezelfde punten evalueren om de vastlegging te verifiëren. Als er met de originele data geknoeid is, dan zullen de functie en de resultaten niet hetzelfde zijn.
Het moet opgemerkt worden dat cryptografische verbintenissen ingewikkelder zijn dan het vereenvoudigde voorbeeld hierboven.
Proto-danksharding is ingesteld om KZG polynomiale verbintenissen te gebruiken om de blob-gegevens te verifiëren.
“De toezegging evalueert de polynoom op een aantal geheime gegevenspunten. Een verifieerder past dezelfde polynoom op de gegevens en evalueert deze op dezelfde waarden, waarbij hij controleert of het resultaat hetzelfde is.”
Het verschil tussen Proto-Danksharding, Danksharding en Sharding
Nu we weten wat proto-danksharding betekent, is het belangrijk om de verschillen tussen proto-danksharding, danksharding en sharding te kennen.
Proto-Danksharding vs. Danksharding
Als The Surge een gebouw in aanbouw zou zijn, dan zou proto-danksharding de fundering van het bouwwerk zijn.
Danksharding zou het complete ontwerp van het bouwwerk zijn.
Ondertussen zou sharding het originele ontwerp zijn dat nu is weggegooid en vervangen door danksharding.
Het uiteindelijke doel van Ethereum tijdens The Surge is om volledige danksharding te bereiken. Echter, danksharding is nog “enkele jaren verwijderd” omdat er eerst meerdere netwerkupgrades – inclusief proposer-builder scheiding – geïmplementeerd moeten worden.
Proto-danksharding is daarom een opstapje in Ethereums zoektocht naar massale schaalbaarheid. Volgens Ethereum-ontwikkelaars zal het aantal datablobs toenemen van één per blok in proto-danksharding tot 64 in volledige danksharding.
Proto-Danksharding vs. Sharding
Sharding was het oorspronkelijke Ethereum schaalplan dat erop gericht was om de Ethereum keten op te splitsen in 64 shard ketens. Elke shardketen zou zijn eigen set validators hebben en transacties onafhankelijk verwerken en uitvoeren.
De sharding roadmap werd terzijde geschoven toen rollup technologie zichzelf bewees als een meer gedecentraliseerde en minder gecompliceerde manier om Ethereum te schalen. Proto-danksharding en danksharding werden geïntroduceerd als aanvulling op Ethereums rollup-gerichte roadmap.
Toen rollups zich echter ontwikkelden als de meest gebruikte manier om Ethereum te schalen, werd de roadmap voor sharding verlaten. De introductie van rollups verminderde de behoefte aan shard-ketens omdat transacties direct op de rollup-keten werden verwerkt.
Bovendien waren rollups minder ingewikkeld, meer gedecentraliseerd en beter beveiligd dan shard chains.
“Danksharding noch Proto-Danksharding volgen het traditionele “sharding” model dat erop gericht was om de blockchain in meerdere delen op te splitsen. Shard-ketens maken niet langer deel uit van de roadmap. In plaats daarvan gebruikt Danksharding gedistribueerde datasampling over blobs om Ethereum te schalen. Dit is veel eenvoudiger te implementeren. Dit model wordt ook wel “data-sharding” genoemd.
De conclusie
De Ethereum gemeenschap wacht met spanning op de implementatie van proto-danksharding.
In tegenstelling tot de laatste grote upgrade genaamd The Merge – waar Ethereum van proof-of-work (PoW) naar proof-of-stake (PoS) consensusmechanisme ging – wordt verwacht dat de Surge zal resulteren in verbeteringen die dagelijkse Ethereum gebruikers zullen ervaren in de vorm van lagere gaskosten.