Grunderna i Web3- och DApp-utveckling · Lektion

Rollups

Optimistiska och ZK-baserade

Lektion 2 av 413 steg

Rollups är en gratis lektion i Grunderna i Web3- och DApp-utveckling på CoddyKit. Detta är lektion 2 av 4. Du kan läsa vilka 3 lektioner som helst i den här lärvägen kostnadsfritt i sin helhet – därefter låser CoddyKit PRO upp alla lektioner, plus praktisk övning med en inbyggd kodredigerare och en AI-lärare dygnet runt. Den ingår i lärvägen för Grunderna i Web3- och DApp-utveckling, och Era framsteg synkroniseras mellan webben och CoddyKit-appen. Kursen i Grunderna i Web3- och DApp-utveckling innehåller totalt 4 lektioner.

Vad är en rollup?

En rollup utför transaktioner på en Layer 2 och publicerar transaktionsdatan (samt ett state commitment) tillbaka till Layer 1.

L1 lagrar tillräckligt med information för att återskapa och verifiera L2:s tillstånd, vilket ger rollups deras säkerhet.

Två huvudtyper

Det finns två dominerande rollup-familjer:

  • Optimistic Rollups — antar att transaktionerna är giltiga och tillåter invändningar
  • ZK Rollups — bevisar giltighet med kryptografiska bevis

De skiljer sig åt i hur de övertygar L1 om att L2:s tillstånd är korrekt.

Optimistic Rollups

Optimistic rollups antar som standard att varje batch är giltig — därav namnet optimistic.

De publicerar det nya tillståndet på L1 utan att bevisa det direkt, och förlitar sig på hotet om fraud proofs för att hålla operatörerna ärliga.

Fraud proofs och invändningsperioden

Efter att en batch har publicerats börjar en invändningsperiod (ofta cirka 7 dagar). Vem som helst kan lämna in ett fraud proof som visar att batchen var ogiltig.

Om en giltig invändning godkänns återställs den felaktiga batchen och den oärliga operatören straffas.

post batch -> 7-day challenge window
  no valid challenge -> finalized
  valid fraud proof  -> batch reverted

Fördröjda uttag

Invändningsperioden innebär att det tar tid att ta ut tillgångar från en optimistic rollup tillbaka till L1 (ofta en vecka).

Likviditetsleverantörer erbjuder omedelbara uttag mot en avgift genom att lägga ut pengarna under väntetiden.

ZK Rollups

ZK rollups genererar ett kryptografiskt validity proof (ett zero-knowledge proof) för varje batch.

L1 verifierar beviset matematiskt, så det finns inget behov av att lita på operatören eller vänta på en invändningsperiod.

Validity proofs

Ett validity proof (till exempel ett SNARK eller STARK) visar att det nya tillståndet beräknades korrekt utifrån det gamla tillståndet och transaktionerna.

Om beviset verifieras är tillståndet definitivt korrekt — inga invändningar behövs.

proof = prove(oldState, txs, newState)
L1.verify(proof) == true
-> newState accepted instantly

Snabbare finalitet med ZK

Eftersom ZK-bevis verifieras omedelbart erbjuder ZK rollups snabb finalitet och snabba uttag.

Nackdelen är att det kräver mycket beräkningskraft att generera bevis, och att detta historiskt har varit svårare för generella smarta kontrakt.

Avvägningar mellan Optimistic och ZK

Om vi jämför dem:

  • Optimistic: EVM-kompatibla, billigare bevisgenerering, långsamma uttag
  • ZK: omedelbar finalitet, snabba uttag, komplex bevisgenerering

Båda publicerar data på L1 och ärver därför Ethereums säkerhet.

Datatillgänglighet

Rollups måste publicera transaktionsdata så att vem som helst kan återskapa tillståndet — detta kallas datatillgänglighet.

Att publicera data på L1 (calldata eller blobs) är en stor kostnad; innovationer som EIP-4844:s blobs har gjort det betydligt billigare.

Att knyta ihop det

Rollups utför transaktioner off-chain och slutreglerar dem på L1. Optimistic rollups antar att transaktionerna är giltiga och använder fraud proofs, medan ZK rollups bevisar giltigheten kryptografiskt. Datatillgängligheten förankrar deras säkerhet.

Nästa avsnitt handlar om att flytta tillgångar mellan lager med bridges.

Snabbtest

Testa era kunskaper om rollups.

Sammanfattning: Rollups

Ni har lärt er att:

  • Rollups utför transaktioner off-chain och slutreglerar data på L1
  • Optimistic rollups använder fraud proofs och en invändningsperiod
  • ZK rollups använder validity proofs för omedelbar finalitet
  • Datatillgänglighet på L1 förankrar säkerheten

Nästa avsnitt: att föra tillgångar mellan lager.

Gratis att börja

Lär dig Grunderna i Web3- och DApp-utveckling med en AI-lärare – gratis

Skriv och kör riktig kod i webbläsaren, få omedelbar hjälp av en AI-lärare dygnet runt och fortsätt där du slutade – på webben eller i appen.

Kurser
29
Lektioner
105

Vanliga frågor

Är lektionen ”Rollups” gratis?

Ja – du kan läsa vilka 3 lektioner som helst i lärvägen Grunderna i Web3- och DApp-utveckling, inklusive ”Rollups”, kostnadsfritt i sin helhet här på webben. Därefter låser CoddyKit PRO upp alla lektioner, plus interaktiv övning med en inbyggd kodredigerare och en AI-lärare dygnet runt. Kursen i Grunderna i Web3- och DApp-utveckling innehåller totalt 4 lektioner.

Vad lär jag mig i ”Rollups”?

Optimistiska och ZK-baserade Ni övar på Grunderna i Web3- och DApp-utveckling med praktisk kod som körs direkt i webbläsaren, medan en AI-handledare som är tillgänglig dygnet runt svarar på Era frågor under lektionen.

Behöver jag någon erfarenhet för att börja lära mig Grunderna i Web3- och DApp-utveckling?

Du behöver inga förkunskaper. Utbildningen i Grunderna i Web3- och DApp-utveckling på CoddyKit är upplagd för allt från nybörjare till avancerade elever, så att du kan börja här eller från början och gå fram i din egen takt. Detta är lektion 2 av 4.

Hur lång tid tar lektionen ”Rollups”?

De flesta CoddyKit-lektioner tar cirka 5–10 minuter. Varje lektion är kort och interaktiv, så att du gör stadiga framsteg och kan fortsätta precis där du slutade – på webben eller i appen.

Kan jag skriva och köra kod i den här Grunderna i Web3- och DApp-utveckling-lektionen?

Ja. Varje Grunderna i Web3- och DApp-utveckling-lektion innehåller en inbyggd kodredigerare, så att du kan skriva och köra riktig kod direkt i webbläsaren och få omedelbar AI-feedback – utan lokal installation.

Alla lektioner i den här kursen

  1. Varför Layer 2
  2. Rollups
  3. Brygga tillgångar
  4. Välja en Layer 2-lösning
← Tillbaka till Grunderna i Web3- och DApp-utveckling