Blockchain

Uit Wikipedia, de vrije encyclopedie
Ga naar: navigatie, zoeken
Schematisch overzicht blockchain.

Een blockchain (blokketen) is een gestaag groeiende keten van data-elementen, blokken (blocks) genoemd. De blockchain wordt in een gedistribueerde database door veel nodes bijgehouden, en het systeem biedt goede bescherming tegen manipulatie en vervalsing. Zelfs de beheerder van nodes kan deze gegevens niet vervalsen. Binnen dit systeem vindt er gegevensuitwisseling en verificatie tussen de nodes plaats. Dit gebeurt door middel van een consensus. Met een blockchain kan ervoor worden gezorgd dat een derde partij niet nodig is om de betrouwbaarheid van een transactie te waarborgen.[1]

Werking[bewerken]

Een blok bestaat uit twee onderdelen: een blockheader en een inhoud.[2] In blokken staan de eigenlijke bij te houden data en blockheaders bevestigen wanneer en in welke volgorde blokken geregistreerd zijn (tijdstempels om dubbele uitgaven en conflicten te vermijden). In een blockheader is ook een verwijzing naar het vorige blok verwerkt. Dit verbindt de blokken als schakels in de keten.

Chain[bewerken]

Als aan een keten van blokken een nieuw blok wordt toegevoegd, dan is dit nieuwe blok gebaseerd op het vorige blok, op nieuwe data, en op een met veel rekenkracht gevonden bitreeks in het nieuwe blok (cryptografische nonce) waarbij de hash van het blok met een vereist aantal nulbits begint (cryptohashing). Het rekenwerk om de keten te verlengen kan dus pas beginnen als het vorige blok vaststaat.

Een blok wordt dus gekoppeld door middel van een verwijzing naar een vorig blok. Deze verwijzing is eigenlijk een cryptohash van de header van het vorige blok.[3] Bij een blockchain kan er worden gekozen om een extra moeilijkheid aan te brengen in het berekenen van deze verwijzing. Dit gebeurt door eisen te stellen aan de hash die wordt berekend. Er wordt gezocht naar een hash die begint met een aantal nullen. Hoe hoger het aantal geëiste nullen, hoe moeilijker het is om een hash te vinden. Deze methode is voor het eerst gebruikt om spam op e-mailadressen tegen te gaan.

Omdat een hash een zogenaamde "one-way function" is, kan van een hash niet worden afgeleid hoe de gegevens eruitzien. Ook is het de bedoeling dat een hash uniek is. Als er een bit of teken verandert in een stuk code of document, zal de hash in zijn geheel veranderen. Elke wijziging is dus waarneembaar.

Blokken zijn dus met elkaar verbonden via een hash. Deze hash wordt opgeslagen in de header, en deze zal gebruikt worden voor het maken van de hash van dat blok. Dit betekent dat bij een wijziging in een blok, alle blokken die daarna komen ook gewijzigd moeten worden.

Stel dat er een blok 1 is. Na blok 1 komt er een blok 2, 3 en 4. Als blok 1 wordt aangepast, klopt de verwijzing in (de header van) blok 2 niet meer (omdat de hash erin opnieuw berekend moet worden). Blok 2 moet hierdoor ook aangepast worden. De verwijzing in blok 3 klopt niet meer, dus blok 3 moet worden aangepast, etc.

Omdat er meerdere nodes zijn, kan dit soort problemen worden gedetecteerd en opgelost (door de aanpassingen stop te zetten of de node die deze gegevens verzendt te negeren). Dit systeem zorgt voor de integriteit die blockchains biedt.

Mining[bewerken]

Binnen een blockchain kan er worden gekozen om de integriteit nog sterker te maken. Dit kan worden gedaan door miners toe te voegen aan het proces. Miners berekenen hashes. Zij gebruiken speciale systemen die voor deze doelen bedoeld zijn. Miners worden in veel gevallen beloond (zoals bij bitcoins).

Doordat er miners zijn, en dus meer rekenkracht, kunnen er moeilijkere hashes berekend worden. De kracht die nodig is om hashes te berekenen zorgt voor meer integriteit binnen een systeem, omdat om te vervalsen een nieuwe berekening van een hash nodig is. De kans dat er een hash goed wordt gegokt blijft altijd aanwezig, maar deze kans is erg klein.

Bij het bezitten van een hoeveelheid rekenkracht binnen een miningnetwerk, dat groter is dan 50% van de totale rekenkracht binnen het mining netwerk, is het mogelijk om gegevens in een blockchain aan te passen. Dit is ook de reden dat sommige bedrijven kiezen voor een blockchainnetwerk zonder miners.[4]

Toepassingen[bewerken]

Blockchaintechnologie ligt aan de basis van cryptovaluta als bitcoin, maar er zijn ook andere toepassingen in gebruik of in onderzoek, zoals bij het R3 consortium (tussen banken)[5].

Nederland en België[bewerken]

Om de kansen voor de Nederlandse overheid van de nieuwe technologie vast te stellen, worden sinds 2016 diverse pilots georganiseerd met o.a. het kadaster, de belastingdienst en de Kamer van Koophandel.[6]

In België werd in juli 2017 een pilootproject opgezet in de Antwerpse haven, voor de verwerking van containers.[7] Ook de Vlaamse overheid werkt aan de introductie van de blockchain-technologie.[8]

Zie ook[bewerken]