Een gerichte acyclische graaf, of DAG (van het Engelse "directed acyclic graph"), is een instrument om data te modelleren en te ordenen dat vaak in cryptovaluta wordt gebruikt.
Anders dan een blockchain, die uit blokken bestaat, is een gerichte acyclische graaf opgebouwd uit knopen (vertices) en verbindingen (edges). Cryptotransacties worden dus als knopen vastgelegd en bovenop elkaar gestapeld. Net als bij een blockchain komen transacties echter via nodes in de DAG terecht. Om een transactie te kunnen indienen, moet een node proof-of-work-taken (PoW) uitvoeren.
Kort gezegd: waar een blockchainsysteem eruitziet als een ketting, lijkt een DAG-systeem meer op een graaf. Vanwege de efficiëntie bij dataopslag en het afhandelen van online transacties wordt het DAG-model in de sector gezien als mogelijke opvolger van de blockchain.
Het DAG-model wordt ook gezien als een mogelijk antwoord op het huidige decentralisatieprobleem in crypto. Bij dit model hoeven miners niet meer te concurreren om nieuwe blokken die aan de keten worden toegevoegd.
Doordat knopen tegelijk ontstaan, kunnen transacties ook sneller worden verwerkt. Ontwikkelaars zien DAG als een betere, veiligere oplossing die de bruikbaarheid van een netwerk kan verbeteren zodra het beter schaalt.
Hoe werkt een DAG?
Zoals gezegd gaat een gerichte acyclische graaf efficiënter om met dataopslag. De structuur lijkt op een boom, met onderling verbonden nodes als 'takken'.
Omdat elke knoop meer dan één bovenliggende wortel kan hebben, maakt het model het mogelijk om meer transacties tegelijk goed te keuren. Gebruikers hoeven namelijk niet te wachten tot een transactie klaar is voordat ze een volgende verwerken.
In een gerichte acyclische graaf moet elke nieuwe transactie dus naar eerdere transacties verwijzen voordat het netwerk haar accepteert. Dat is hetzelfde principe als blokken in een blockchain die naar eerdere blokken verwijzen. De gedachte erachter: een transactie is pas echt bevestigd wanneer een andere transactie ernaar verwijst, enzovoort.
In een DAG staat elke knoop voor een transactie. Er zijn geen blokken, dus mining is ook niet nodig. Transacties worden bovenop elkaar gebouwd in plaats van gebundeld in blokken. Vervolgens worden er, zoals net genoemd, proof-of-work-taken uitgevoerd telkens wanneer een node een transactie indient, om eerdere transacties goed te keuren en spam te voorkomen.
Standaard worden nieuwe transacties in een DAG-gebaseerde cryptovaluta bovenop oudere gebouwd. Het belangrijkste verschil met blockchain is dat er in een DAG naar meerdere transacties kan worden verwezen, en niet slechts naar één tegelijk.
Sommige systemen hebben een algoritme dat op basis van het opgebouwde gewicht (het aantal bevestigingen dat naar een uiteinde leidt) bepaalt op welke 'tips' of transacties wordt voortgebouwd.
Bescherming tegen dubbele uitgaven werkt in DAG's doordat nodes oudere transacties bevestigen door een pad terug te volgen tot de allereerste transactie van de DAG. Zo wordt gecontroleerd of de verzender voldoende saldo heeft. Bouwt een gebruiker voort op een ongeldig pad, dan loopt die transactie het risico genegeerd te worden.
Conflicten die uit verschillende paden ontstaan, worden opgelost met een keuzealgoritme dat de voorkeur geeft aan uiteinden met een zwaarder opgebouwd gewicht.
Waarvoor worden DAG's gebruikt?
Het DAG-model wil twee vermeende zwaktes van blockchaintechnologie aanpakken: decentralisatie en schaalbaarheid. Daarnaast wil het de veiligheid en het gebruiksgemak verbeteren.
Op welke manier?
- Op de Bitcoin-blockchain of het Ethereum-platform kunnen miners maar één blok tegelijk maken. Nieuwe transacties kunnen daardoor pas worden goedgekeurd als het vorige blok af is. Het DAG-model schrapt die blokken en voegt transacties rechtstreeks aan het grootboek toe.
Doordat blokken verdwijnen, heeft het DAG-model geen mining nodig. Dat betekent dat er minder stroom nodig is om het netwerk draaiende te houden. DAG's hebben daarnaast nog enkele voordelen, zoals:
- Hoge transactiesnelheden die niet worden geremd door blokproductie
- Geen miners betekent ook geen transactiekosten
- Lager energieverbruik en milieuvoordelen vergeleken met mining
Op dit moment staat het gebruik van DAG's in crypto echter nog in de kinderschoenen. Anders dan blockchains zijn ze nog niet volledig gedecentraliseerd. Daarom worden ze vooral gebruikt om netwerken op gang te brengen, en nog niet als systeem om een stabiel netwerk mee te bouwen.
Welke crypto's gebruiken DAG?
Vroeger was het ondenkbaar om over cryptovaluta te praten zonder aan blockchain te denken. Met het DAG-model zijn er inmiddels toch enkele cryptovaluta succesvol op deze technologie gebouwd.
Voorbeelden zijn onder meer Obyte, IOTA en Nano. Hoewel nog vrij nieuw, laat de DAG-structuur enorm veel potentie zien. Zoals gezegd hebben verschillende projecten haar al met succes toegepast. De bekendste zijn:
Obyte
Obyte, voorheen ByteBall, is een cryptovaluta die volledig losstaat van de blockchain, omdat zij de DAG-structuur heeft geïmplementeerd. Toch zijn er bij Obyte-transacties wél kosten.
Dat komt doordat het Obyte-netwerk een validatorsysteem gebruikt dat een dubbele controle van transacties mogelijk maakt. Het werkt met een consensusalgoritme dat op getuigen (witnesses) berust: vertrouwde, betrouwbare gebruikers die als validator optreden.
Obyte ondersteunt daarnaast niet-traceerbare transacties en smart contracts.
IOTA
IOTA, bedoeld voor Internet of Things-toepassingen, lanceerde zijn netwerk als 'blokloze blockchain' in 2016. Het idee achter IOTA is dat alle gebruikers in feite miner worden. Om één transactie goedgekeurd te krijgen, moet een gebruiker bijvoorbeeld twee transacties verifiëren.
IOTA gebruikt een netwerk van nodes en tangles, oftewel groepen nodes, die het goedkeuringsproces sneller en efficiënter maken.
Alle gebruikers dragen een kleine hoeveelheid rekenkracht bij aan het onderhoud van het netwerk, en iedereen doet mee aan de consensus. Zo kan het netwerk tegelijk zeer gedecentraliseerd én schaalbaar zijn.
Transacties kosten vrijwel niets; daarom wordt IOTA gezien als een voordelige alternatieve cryptovaluta voor microbetalingen.
Nano
Ook Nano is een cryptovaluta die op het DAG-systeem draait. Nano bestaat uit zelfstandige blockchains die door nodes met elkaar zijn verbonden: de zogeheten block-lattice-technologie. Feitelijk is dat een mengvorm van DAG en blockchain.
Elke gebruiker heeft een eigen wallet en een eigen blockchain. Alleen de gebruiker zelf kan daar wijzigingen in aanbrengen. Een transactie is voltooid zodra zowel verzender als ontvanger de handeling op hun eigen blockchain heeft uitgevoerd.
Nano biedt zijn gebruikers nul transactiekosten en hoge transactiesnelheden.
Wat is de rol van DAG in blockchain?
DAG kan worden gezien als een geschikt alternatief voor blockchain, al vraagt het nog om verfijning. Het DAG-model wil veelvoorkomende problemen van blockchaintechnologie oplossen, zoals kosten, snelheid en aanpasbaarheid.
Beide technologieën leggen transacties feitelijk vast in een digitaal grootboek en werken naar hetzelfde doel toe. Wat ze onderscheidt, is vooral de structuur die elk model gebruikt om data op te slaan.
DAG versus blockchain
Blockchains en DAG's leggen allebei transacties vast in een gedistribueerd grootboek, maar op verschillende manieren.
Hieronder een snelle vergelijking van de voor- en nadelen:
Voordelen van DAG
- Geschikt voor microtransacties en grote transactievolumes
- Maakt miningapparatuur overbodig
- Kosten kunnen aanzienlijk lager uitvallen
- Lager energieverbruik
Nadelen van DAG
- Kwetsbaar voor aanvallen door het lage transactievolume
- Nog in de beginfase; heeft nog geen noemenswaardige mate van decentralisatie bereikt
Voordelen van blockchain
- Gevestigd en breed gebruikt door cryptovaluta als Bitcoin en Ethereum
- Transparant en onveranderlijk, zeer veilig
- Kostenefficiënt voor transacties met een hoge waarde
Nadelen van blockchain
- Zware eisen aan opslag en netwerkbandbreedte
- Verbruikt veel stroom
- Hoge transactiekosten
Uiteindelijk hangt de keuze voor een model af van je zakelijke doelen. Zoals besproken heeft elk model zijn sterke en zwakke punten, en kan het ene beter passen dan het andere, afhankelijk van wat je nodig hebt.
