Kennisportal
Kennisportal is een kennisplatform met een focus op de brede doelgroep Business en IT.

Hoe veilig is blockchain eigenlijk?

Het hele doel van Blockchain, is dat mensen – met name mensen die elkaar niet vertrouwen –waardevolle data op een veilige manier, zonder dat ermee gesjoemeld kan worden, met elkaar kunnen delen. Dat komt omdat blockchains gegevens opslaan met behulp van geavanceerde wiskundige innovatieve softwareregels die extreem moeilijk te manipuleren zijn voor hackers.
Maar zelfs de best ontworpen blockchain-systemen kunnen soms falen op het gebied van veiligheid op plaatsen waar fancy wiskunde- en softwareregels in contact komen met mensen – die bedreven valsspeler zijn – in de echte wereld.

Om te begrijpen waarom, moet ik beginnen met uitleggen wat blockchains – in principe – “veilig” maakt. Hiervoor is de Bitcoin (daar heb je hem weer) een goed voorbeeld. In Bitcoinblockchains zijn de gedeelde gegevens de geschiedenis van elke Bitcoin-transactie die ooit is gemaakt: een grootboek. Dit grootboek wordt in meerder exemplaren opgeslagen op een netwerk van computers , deze worden ‘knooppunten’ genoemd. Elke keer wanneer iemand een transactie naar het grootboek verzendt, wordt dit gecontroleerd bij de knooppunten.

Een deel van hen (Bitcoin eigenaren) concurreert om geldige transacties te verpakken in ‘blokken’ en ze toe te voegen aan een reeks andere transacties. De eigenaren van deze knooppunten worden ‘miners’ genoemd. Mijnwerkers – miners – die met succes nieuwe blokken aan de ketting toevoegen, verdienen bitcoins als beloning.

Wat dit systeem er in theorie voor doet zorgen dat het niet te manipuleren is, zijn twee dingen: een cryptografische vingerafdruk die uniek is voor elk blok en een ‘consensusprotocol’, het proces 
waarmee de knooppunten in het netwerk een gedeelde geschiedenis overeenkomen.

Fingerprint

De vingerafdruk, een hash genoemd, kost veel tijd en energie om in eerste instantie te genereren. Het dient dus als bewijs dat de mijnwerker die het blok aan de blockchain heeft toegevoegd, het computationele werk deed om een bitcoin-beloning te verdienen (om deze reden zou Bitcoin een “proof-of-work” -protocol gebruiken). Het dient ook als een soort zegel, aangezien het wijzigen van het blok een nieuwe hash zou moeten genereren. Het controleren of de hash overeenkomt met het blok is echter eenvoudig en zodra de knooppunten dat hebben gedaan, werken ze hun respectievelijke exemplaren van de blockchain bij met het nieuwe blok. Dit is het consensusprotocol.

Het laatste beveiligingselement is dat de hashes ook dienen als de links in de blockchain: elk blok bevat de unieke hash van het vorige blok. Dus als je een item in het grootboek met terugwerkende kracht wilt wijzigen, moet u een nieuwe hash berekenen, niet alleen voor het blok waarin het zich bevindt, maar ook voor elk volgend blok. En je moet dit sneller doen dan de andere knooppunten nieuwe blokken aan de ketting kunnen toevoegen. Dus tenzij u computers hebt die krachtiger zijn dan de rest van de knooppunten gecombineerd (en zelfs dan is succes niet gegarandeerd), zullen alle blokken die u toevoegt, conflicteren met bestaande blokken, en de andere knooppunten zullen uw wijzigingen automatisch afwijzen. Dit is wat de blockchain ‘knoei-vrij’ maakt, of “onveranderlijk”.

Creatieve manieren om vals te spelen

Tot zover de theorie. Het implementeren in de praktijk is moeilijker. Het simpele feit dat een systeem werkt zoals Bitcoin – zoals veel cryptocurrencies doen – betekent niet dat het net zo veilig is. Zelfs wanneer ontwikkelaars beproefde en cryptografische hulpmiddelen gebruiken, is het gemakkelijk om ze per ongeluk samen te brengen op manieren die niet veilig zijn, zegt Neha Narula, directeur van MIT’s Digital Currency Initiative. Bitcoin is het langst oud geweest, dus het is het grondigst beproefd.

Een mogelijkheid is een “eclipse attack.”. Knopen op de blockchain moeten in constante communicatie blijven om gegevens te kunnen vergelijken. Een aanvaller die erin slaagt om de controle over de communicatie van een knooppunt over te nemen en deze te misleiden tot het accepteren van valse gegevens die afkomstig lijken te zijn van de rest van het netwerk, kan het misleiden door middelen te verspillen of valse transacties te bevestigen.

Verbinding met de echte wereld

Hoe “tamper-proof” een blockchain-protocol ook is, het “bestaat niet in een vacuüm”, zegt Narula. De cryptocurrency-hacks voor recente krantenkoppen zijn meestal mislukkingen op plaatsen waar blockchain-systemen verbinding maken met de echte wereld, bijvoorbeeld in softwareclients en toepassingen van derden.

Hackers kunnen bijvoorbeeld inbraak doen in ‘hot wallets’, internet-verbonden applicaties voor het opslaan van de private cryptografische sleutels die iedereen die eigenaar is van cryptocurrency nodig heeft om deze uit te kunnen geven. Portefeuilles die eigendom zijn van online cryptocurrency-uitwisselingen zijn hoofddoel geworden. Veel beurzen beweren dat ze het grootste deel van het geld van hun gebruikers bewaren in ‘koude’ hardware-portefeuilles – opslagapparaten die zijn losgekoppeld van internet. Maar zoals de overval in januari van meer dan $ 500 miljoen aan cryptocurrency van de in Japan gevestigde exchange Coincheck liet zien, is dat niet altijd het geval.

Smart contracts

Misschien zijn de meest ingewikkelde touchpoints tussen blockchains en de echte wereld ‘slimme contracten’, dit zijn computerprogramma’s die zijn opgeslagen in bepaalde soorten blockchain die transacties kunnen automatiseren. In 2016 exploiteerden hackers een onvoorziene gril in een slim contract geschreven op de blockchain van Ethereum om 3,6 miljoen ether te stelen, ter waarde van ongeveer $ 80 miljoen op dat moment, van de Decentralized Autonomous Organisation (DAO), een nieuw soort blockchain-gebaseerd investeringsfonds.

Omdat de DAO-code heerst op de blockchain, moest de gemeenschap van Ethereum een ​​controversiële software-upgrade pushen, een “hard fork” genoemd, om het geld terug te krijgen – in feite een nieuwe versie van de geschiedenis creërend waarin het geld nooit werd gestolen. Onderzoekers zijn nog bezig met het ontwikkelen van methoden om ervoor te zorgen dat slimme contracten niet kunnen storen.

De decentralisatie vraag

Een veronderstelde veiligheidsgarantie van een blockchain-systeem is “decentralisatie“. Als kopieën van de blockchain op een groot en wijdverspreid netwerk van knooppunten worden bewaard, is er geen zwak punt om aan te vallen en is het voor iedereen moeilijk genoeg rekenkracht op te bouwen om het netwerk te ondermijnen.

Sommigen zeggen dat alternatieve consensusprotocollen, misschien degenen die niet afhankelijk zijn van mijnbouw, veiliger zouden kunnen zijn. Maar deze hypothese is niet op grote schaal getest en nieuwe protocollen hebben waarschijnlijk hun eigen beveiligingsproblemen.

Anderen zien mogelijkheden in blockchains waarvoor toestemming is vereist om deel te nemen, in tegenstelling tot Bitcoin, waar iedereen die de software downloadt zich bij het netwerk kan aansluiten. Dergelijke systemen zijn een gruwel voor de anti-hiërarchische ethos van cryptocurrencies, maar de aanpak doet een beroep op financiële en andere instellingen die de voordelen van een gedeelde cryptografische database willen benutten.

Toegestane systemen stellen echter hun eigen vragen. Wie heeft de bevoegdheid om toestemming te verlenen? Hoe zorgt het systeem ervoor dat de “validators” zijn wie ze zeggen dat ze zijn? Een systeem met toestemming kan zijn eigenaren veiliger maken, maar het geeft hen ook meer controle, wat betekent dat ze wijzigingen kunnen aanbrengen, ongeacht of andere netwerkdeelnemers het erover eens zijn – iets wat echte gelovigen zouden zien als het schenden van het idee van blockchain.

The verdict

Dus uiteindelijk is ‘veilig’ heel moeilijk te definiëren in de context van blockchains. Veilig van wie? Veilig voor wat? Het hangt allemaal af van je perspectief.

Bron: TechnologyReview

Masterclass Blockchain in Business

Is jouw perspectief ten opzichte van blockchain en de veiligheid van je organisatie, na het lezen van bovenstaande artikel veranderd of hetzelfde gebleven? Ben je benieuwd naar de mogelijkheden van het implementeren van de blockchain technologie? Martijn Bolt begeleidt je tijdens deze praktische twee-daagse masterclass aan de hand van diepgaande theorie, en afgewisseld met korte praktijkopdrachten. Zo ervaar je hoe blockchain in praktijk werkt en hoe je deze toepast. Meld je hier aan.