Wanneer je een fan van Ethereum (ETH) bent, hoor je veel over projecten rondom dit netwerk. Het lijkt wel alsof er iedere dag een nieuwe applicatie of oplossing wordt gelanceerd op of voor het netwerk van Ethereum.
Je hebt dan waarschijnlijk ook gemerkt dat Ethereum tegen verschillende problemen is aangelopen. Het grootste probleem, in ieder geval voor de gebruikers, zijn de oplopende transactiekosten. Het kan soms honderden dollars kosten om een transactie uit te voeren op de blockchain van Ethereum.
Dit probleem heeft alles te maken met de schaalbaarheid van Ethereum. Doordat het netwerk steeds vaker wordt gebruikt, moeten er ook steeds meer resources beschikbaar zijn om de druk aan te kunnen. Dit kun je vergelijken met een snelweg waar te veel auto's op rijden. Op den duur zal er een file ontstaan, en moet de snelweg verbreed worden om het verkeer aan te kunnen.
Gelukkig zijn ontwikkelaars bezig met het vinden van oplossingen voor dit probleem. Een van de mogelijke oplossingen is Optimistic Rollups (ORs). In dit artikel leg ik je stap voor stap uit wat Optimistic Rollups is, en hoe dit protocol werkt.
Bekijk snel
Wat zijn Layer 2 Solutions?
Voordat we duiken in Optimistic Rollups, is het verstandig om nog eens dieper te duiken in het begrip Layer 2 Solutions. De kans is groot dat je deze term vaker bent tegengekomen, omdat veel blockchains hiermee te maken hebben. Er zijn namelijk niet alleen Layer 2 Solutions voor Ethereum, maar ook voor andere blockchains.
Simpel gezegd geven blockchains layers de soort oplossing aan. Met Layer 2 Solutions bedoelen we alle oplossingen die te maken hebben met het oplossen van problemen omtrent de schaalbaarheid van het netwerk. Denk bijvoorbeeld aan het verwerken van transacties buiten de main-chain (dit is Layer 1). Traditioneel gezien worden alle transacties van Ethereum afgehandeld op Layer 1, wat als de basis kan worden gezien.
Het Lightning Network is een bekende Layer 2 Solution, welke is ontwikkeld voor Bitcoin (BTC). Met deze oplossing kon de blockchain van Bitcoin (en Litecoin) sneller transacties verwerken. Dit komt doordat de transacties kleiner werden gemaakt, waardoor er meer ruimte was. Ook kregen gebruikers meer privacy met deze oplossing.
Wil je meer te weten komen over Layer 2? Dan raad ik je aan om dit artikel van AllesOverCrypto over Layer 2 blockchain solutions te lezen.
Het kan vrij lastig zijn om te begrijpen wat Layer 2 Solutions zijn, en hoe ze werken. Het kan daarom nooit onverstandig zijn om onderstaande video te bekijken, waar stap voor stap wordt uitgelegd wat Layer 2 Solutions zijn.
Wat is Optimistic Rollups (ORs)?
Er wordt steeds vaker gebruik gemaakt van het netwerk van Ethereum. Dit komt voornamelijk doordat het mogelijk is om gedecentraliseerde applicaties (dApps) te laten draaien op Ethereum. Veel ontwikkelaars kiezen er namelijk voor om hun applicatie te laten draaien op Ethereum, gezien dit veel voordelen biedt voor zowel ontwikkelaar als gebruiker.
Hierdoor wordt het netwerk van Ethereum echter veel vaker overbelast. Het netwerk kan niet alle transacties tegelijk verwerken, waardoor transacties in een wachtrij worden geplaatst. Op hetzelfde moment betaal je ook nog eens torenhoge transactiekosten. Want wanneer er meer vraag dan aanbod is, stijgt de prijs...
Gelukkig worden er steeds meer Layer 2 Solutions ontwikkeld waarmee geprobeerd wordt om de druk van het netwerk af te halen. Dit soort oplossingen doen dat door transacties buiten de main-chain te verwerken. Hierdoor zullen ook de transactiekosten voor Ethereum gaan dalen.
In onderstaande video wordt meer uitgelegd over rollups.
Optimistic Rollups
Optimistic Rollups zijn één van de verschillende Layer 2 Solutions die het probleem omtrent schaalbaarheid moet oplossen. Hierdoor is het mogelijk om smart contracts op grote schaal uit te voeren, terwijl ze op hetzelfde moment nog steeds worden beveiligd door Ethereum.
De manier waarop dat gebeurt is te vergelijken met Plasma. Echter, in dit geval wordt de oneindige schaalbaarheid van Plasma gebruikt om een virtual machine te laten draaien die compatibel is met EVM (Ethereum Virtual Machine), genaamd OVM (Optimistic Virtual Machine). Dit zorgt ervoor dat vrijwel alles dat op Ethereum gedraaid kan worden, ook op de Optimistic Rollups kan worden gedraaid.
De naam van deze oplossing komt voort uit de werking ervan. Aggregators sturen alleen de minimaal-nodige informatie door waar geen bewijs voor nodig is. Ze gaan ervan uit dat deelnemers geen fraude of iets dergelijks plegen. Alleen wanneer iemand denkt dat er fraude is gepleegd, wordt er bewijs geleverd. Dat is dus een vrij optimistische kijk op de werking van deze aggregators.
Hoe werken Optimistic Rollups?
Net zoals we vaker zien bij Layer 2 Solutions, worden de fondsen op de Optimistic Rollups opgeslagen in een smart contract op Ethereum. Gebruikers kunnen hier fondsen naar toe sturen, aggregators melden zich hier aan en bewijs van fraude wordt hier ingeleverd. Er kan dus op verschillende manieren gebruik worden gemaakt van deze oplossing.
Eerst stuurt een gebruiker een transactie van een smart contract die uitgevoerd moet worden naar een off-chain aggregator. Een aggregator is degene die in dit geval een nieuw blok maakt en toevoegt aan de blockchain. Deze aggregator zal de transactie vervolgens uitvoeren, waarmee een nieuw smart contract wordt gemaakt. Het is voor iedereen mogelijk om een aggregator te worden, zolang je maar geld vastzet in een smart contract.
Vervolgens zal de aggregator de nieuwe root-status (wat ook wel de merkle-root wordt genoemd) berekenen. Deze root-status wordt vervolgens toegevoegd aan een transactie op de Layer 1 blockchain van Ethereum.
Op het moment dat een gebruiker denkt of ziet dat er een ongeldige root-state wordt toegevoegd aan de blockchain, kan deze gebruiker de aggregator 'aanklagen'. Hiervoor zal de gebruiker wel bewijs moeten aanleveren, alsook de juiste root-status.
Nu zou zich echter wel een groot probleem kunnen voordoen. Wat als er al nieuwe blokken zijn toegevoegd na een frauduleus blok? In dat geval kan Layer 2 chain worden teruggedraaid naar het moment vóór het frauduleus blok. Je kunt dit dus vergelijken met een soort back-up die wordt teruggezet.
In onderstaande video wordt meer uitleg gegeven over hoe Optimistic Rollups werken.
Gebruiksvriendelijkheid
Er zullen veel cryptofanaten zijn die vinden dat Ethereum niet bepaald gebruiksvriendelijk is. Dit komt natuurlijk mede door de hoge transactiekosten die gebruikers van Ethereum moeten betalen.
Met de gebruiksvriendelijkheid van Optimistic Rollups zit het wel goed. Zo biedt deze oplossing kostenvrije transacties, en kunnen gebruikers betalen door middel van ERC-20 tokens. Ook is het mogelijk om vrijwel directe transacties uit te voeren.
Problemen met de veiligheid
In het verleden zijn er al verschillende problemen geweest met de veiligheid van smart contracts. Door fouten in Solidity, de programmeertaal van Ethereum-dApps, waren hackers in staat om verschillende kwetsbaarheden uit te voeren. Het is daarom belangrijk dat een Layer 2 Solution als deze veilig genoeg is.
Ondanks dat deze oplossing er veelbelovend uitziet, zijn er wel een paar problemen omtrent de veiligheid. Deze oplossing werkt goed, mits er een goede balans is tussen de verschillende deelnemers. Er moeten namelijk genoeg validators en ten minste één aggregator zijn die geen transacties tegenhoudt.
Het probleem is dat er een situatie kan ontstaan waarbij deze oplossing niet werkt. Om volledige veiligheid te kunnen bieden, wil je liever geen als-als-situatie.
De voordelen van Optimistic Rollups
- Toename in schaalbaarheid. Met deze oplossing kunnen er 200 tot 2000 transacties per seconde (TPS) verwerkt worden, terwijl Ethereum Layer 1 momenteel 10 transacties per seconde kan verwerken.
- Deze oplossing is gebruiksvriendelijker.
- De data blijft op de main-chain, waardoor de data veilig blijft (de data gaat immers nergens anders heen).
- De oplossing is volledig compatibel met EVM's, waardoor bijna alles dat op Layer 1 uitgevoerd kan worden ook op deze Layer 2 Solution uitgevoerd kan worden.
De nadelen van Optimistic Rollups
- Er zijn in het verleden al enkele kwetsbaarheden naar boven gekomen, waardoor het vertrouwen in deze oplossing deels is gedaald.
- Beperkte stroom van data, vergeleken met andere Layer 2 Solutions zoals ZK Rollups en Plasma.
Wat is het verschil tussen rollups en sidechains?
Rollups en sidechains zijn twee veelgebruikte Layer 2 Solutions. Ze lossen beiden het schaalbaarheidsprobleem van blockchains op. Het is daarom niet gek dat je deze twee oplossingen door elkaar haalt.
Laten we eens gaan kijken naar wat een sidechain is, en wat het verschil is met rollups.
Wat is een sidechain?
Een sidechain is een extra blockchain die parallel loopt aan de main-chain. Zo'n sidechain heeft zijn eigen miners/validators/operators en consensus algoritme, maar ook een eigen brug naar de main-chain. Je kunt het dus zien als een 'eigen' blockchain, die wel is verbonden aan een andere main-chain.
Wanneer je gebruik wil maken van een sidechain, zul je jouw activa moeten vastzetten in een smart contracts op de main-chain. Op het moment dat gebruikers weer terug gaan naar Ethereum (de main-chain), geven gebruikers dit aan op de sidechain, waarna ze bewijs aanleveren dat ze weg zijn uit de sidechain. Hierna kunnen ze weer bij de activa die ze in het smart contract hebben bewaard.
Een sidechain is een veelgebruikte methode om de schaalbaarheid van een blockchain te vergroten. Het is namelijk mogelijk om handelingen, zoals het verwerken van transacties, uit te laten voeren op een sidechain, waardoor de druk van de main-chain af wordt gehaald.
Je zult dit misschien beter begrijpen met onderstaand voorbeeld.
Stel dat je een snelweg hebt met 5 rijbanen. De auto's kunnen allemaal zonder enige problemen doorrijden. Echter, om 8 uur in de ochtend gaat iedereen naar zijn werk, waardoor er een file ontstaat op de snelweg. Alle 5 de rijbanen staan helemaal dicht.
Nu zou de overheid ervoor kunnen kiezen om een 2 extra rijbanen aan te kunnen leggen, zodat het verkeer verder doorstroomt. Binnen een blockchain zou dit hetzelfde zijn als het verkleinen van de transacties.
Na onderzoek blijkt dat vooral vrachtwagens voor problemen zorgen (binnen een blockchain is dit het verwerken van de transacties). De overheid besluit om een aparte snelweg aan te maken met twee rijbanen, die parallel naast de oorspronkelijke snelweg ligt. Deze nieuwe snelweg is echter alleen voor vrachtwagens, en de normale auto's mogen op de oude snelweg blijven rijden.
Dit is precies wat er gebeurt met een sidechain. Eén onderdeel dat voor problemen zorgt wordt weggehaald uit de main-chain, en verwerkt op de nieuwe sidechain.
Rollups vs. Sidechains
Nu je weet wat een sidechain is, kunnen we gaan kijken naar het verschil met rollups.
Een sidechain is een aparte blockchain, welke parallel loopt aan de main-chain. Deze sidechain heeft zijn eigen consensus algoritme, eigen miners, etc. Dit betekent dat de sidechain niet gebruik maakt van de resources van de main-chain.
Dat laatste doet een rollup wel. Een rollup is geen aparte blockchain die zelfstandig draait. Het is een protocol dat op een Layer 2 draait, en dus ook afhankelijk is van de resources van de main-chain. Zo maakt de Optimistic Rollup bijvoorbeeld gebruik van het consensus algoritme van Ethereum, als ook van het gehele netwerk.
Onderstaande video is ontzettend interessant wanneer je meer te weten wilt komen over het verschil tussen Plasma, ZK Rollups en Optimistic Rollups.
Conclusie
Het mag duidelijk zijn dat er een oplossing moet komen voor de schaalbaarheidsproblemen van verschillende blockchains, waaronder Ethereum. Optimistic Rollups is één van de Layer 2 Solutions die dit probleem misschien op gaat lossen.
Ondanks dat het vrij lastig is om te begrijpen hoe zo'n oplossing werkt, hoop ik dat je na het lezen van dit artikel meer te weten bent gekomen over de technische werking van Optimistic Rollups.
Wil je na het lezen van dit artikel nog meer weten over een Optimistic Rollups, of andere Layer 2 scaling solutions? Stel dan je vragen in onze AllesOverCrypto Facebookgroep en dan beantwoorden onze experts al jouw vragen.
Heb je andere crypto gerelateerde vragen? Het makkelijkste is om jouw vraag in onze FAQ op te zoeken. Wat je ook kan doen, is dat je jouw vraag + "AllesOverCrypto" googelt. Je zult dan snel uitkomen bij één van onze andere artikelen die over dat onderwerp gaan, zodat je weer snel meer kunt leren over dat onderwerp.