Zijn blockchains wel zo veilig als menig “expert” beweert? De recente hack van het crypto PolyNetwork in omvang van $600 miljoen is er één in een lange reeks van hacks. Een lange reeks van succesvolle hacks hebben al menig blockchain lamgelegd en doen verdwijnen. Menig gedupeerde is grote schade berokkend. Kan mijn organisatie nog wel aan de gang met blockchain oplossingen?”, kan je je afvragen. De belangrijkste oorzaken van beveiligingsproblemen bij blockchains komen aan bod in deze blog. Vervolgens zet ik de belangrijkste aanbevelingen voor je op een rij.
Waar vinden blockchains toepassing
De meeste mensen kennen blockchains van de handel in crypto currencies. Vanaf 2018 zien we echter een enorme toename van initiatieven om blockchains ook toe te passen bij niet-financiële processen.
In Nederland zien we bijvoorbeeld dat Albert Heijn een deel van haar processen efficiënter heeft gemaakt via blockchain technologie (bijvoorbeeld: “de sinaasappelsapketen”), dat de rijksoverheid een uitgebreid programma heeft opgezet voor blockchain pilots (https://www.uitlegblockchain.nl/rijksoverheid-blockchain-pilots/en de opzet van de Phantasma Chainvoor smart contracts (https://www.uitlegblockchain.nl/contentdistributie-phantasma-chain/). Ook internationaal zien we veel overheden investeren in blockchains. In Zuid-Korea gaat de overheid een proef starten om bij verkiezingen gebruik te maken van het stemmen via een blockchain (https://e-proqure.nl/zuid-korea-gaat-proef-doen-met-blockchain/). De Australische overheid investeert meer dan € 700 miljoen om blockchain platforms te implementeren.
Uit de Deloitte Global Blockchain survey (2021) blijkt dat de huidige en op korte termijn verwachte toepassing van blockchains beperkt blijft tot met name financiële processen (lees: alternatief voor bankverkeer) en als bronsysteem voor betrouwbare informatie over de status van iets (zgn. smart contracts, tokenization). Een voorbeeld van dit laatste is de bovenstaande “sinaasappelsap-keten. Toepassingen voor de ondersteuning van bedrijfsprocessen, zoals financiële of inkoopsystemen, behoren hier in het geheel dus niet toe.
Gegevensbeveiliging en blockchain
Organisaties zijn afhankelijk van betrouwbare en – met name – digitaal vastgelegde informatie. De beveiliging van die informatie is niet eenvoudig. Zowel per ongeluk als met opzet is er al veel schade aangericht doordat gegevens zijn kwijtgeraakt of worden misbruikt. Gegevens die via blockchaintechnologieën worden verwerkt en opgeslagen, zouden betrouwbaarder en beter beveiligd zijn. Hoe werkt dat?
Blockchains gaan uit van een sterke encryptie van gegevens. De betrouwbaarheid van die gegevens wordt gegarandeerd door slimme toetsing van aangeleverde mutaties. Autorisatie van diegene die een mutatie aanlevert en toetsing van de gegevens waarop de mutatie betrekking heeft, vormen hiervan de kern. Deze gegevens bevinden zich bij elke deelnemer aan de betreffende blockchain; de zogenoemde nodes (knooppunt). Alleen gegevens die bij meer dan 50% van de knooppunten hetzelfde zijn, worden als de juiste gegevens erkend. Daarmee is de betrouwbaarheid van gegevens dan toch gegarandeerd?
Top 5 belangrijkste hacks van blockchains
In de praktijk blijken gegevens binnen blockchains echter minder veilig dan gedacht of gehoopt. Met regelmaat worden blockchains gehackt. Hieronder vind je de meest spraakmakende hacks:
- Gox 2011 en 2014: dit bitconplatform verhandelde 70% van de wereldhandel in bitcoins. Door een hack verdween USD 350 miljoen aan bitcoins; het platform ging failliet en het geld was weg.
- BitFloor 2012: toegang tot niet versleutelde (gebruikers)gegevens leidt tot verlies bitcoins en sluiting van het platform.
- Poloniex 2014 en 2017: hack door fouten in de transactieverwerkingsprocessen.
- Bitfinex 2016: hackers buiten de zwakte in de inlogprocedure uit; USD 70 miljoen aan bitcoins gestolen. Bitfinex is een van de grootse bitcoin-platforms.
- Cryptopia 2019: Zie https://www.investinblockchain.com/cryptopia-hack-new-zealand-police-investigation/
- Poly Network 2021: $600 miljoen weggesluisd ontvreemd. Door de omvang van het bedrag liepen de hackers gevaar zichzelf prijs te geven. Hierdoor waren zij gedwongen om een groot deel van het bedrag aan de netwerkbeheerder terug te sluizen.
De meeste spraakmakende hacks hebben betrekking op blockchains voor cryptomunten. Immers, verreweg de meeste hedendaagse blockchains zijn ‘crypto currency’-platformen. Zoals hieronder wordt aangegeven blijken veiligheidsproblemen met name te gelden voor blockchainplatformen die zijn opgezet en/of worden beheerd door onbetrouwbare of onkundig partijen. Of dit nu platformen zijn voor de handel in cryptomunten of voor het bijhouden van de status van bijvoorbeeld een goed of bezit.
Belangrijkste veiligheidsproblemen bij blockchains
Uit de top 6 hacks blijkt dat blockchains wel degelijk kwetsbaar zijn. Veiligheidsproblemen worden in de praktijk met name veroorzaakt door:
- Transactie-aanvallen
Hierbij wordt het blockchainplatform platgelegd door het gelijktijdig uitvoeren van een groot aantal transacties. Het verificatieproces, waarbij alle knooppunten in de blockchain betrokken zijn, zorgt ervoor dat het platform geen andere transacties meer kan verwerken (verificatie-overload). - Meerderheidscontrole over de knooppunten
Door het beheersen van 51% of meer van de knooppunten bepaalt één persoon/groep de inhoud van ‘de enige juiste versie van’ de gegevens op het platform. - Externe aanvallen op het datacentrum
Blockchainplatformen worden gehost in een datacentrum. Door aanvallen op het datacentrum kan de toegang tot het blockchainplatform worden platgelegd. - Foutieve bouw van de blockchain.
Zwakheden in codes, scripts en procedures bieden mogelijkheden tot het beïnvloeden van transactieprocessen. - Onvoldoende beveiliging van centraal opgeslagen gebruikersinformatie (toegangscodes, e.d.)
- Onveilige fysieke en logische toegangsbeveiliging door gebruikers
Voorafgaande aan het verwerken van een (trans)actie wordt verificatie opgestart. Hierbij wordt gecontroleerd of de oorspronkelijke gegevens, waarop de mutaties van toepassing zijn, nog wel juist zijn. Hiervoor wordt gecontroleerd of deze gegevens, die bij elk knooppunt zijn vastgelegd, nog identiek zijn. Gegevens die in 51% of meer van de knooppunten identiek zijn, worden als de juiste versie beschouwd.
De eerste twee zwakheden zijn typisch voor blockchains. Immers, kenmerkend voor een blockchain is de controle bij het verwerken van een transactie. Ook geldt: hoe meer knooppunten (gerelateerd aan aantal gebruikers binnen het platform), des te meer rekenkracht nodig is tijdens het verificatieproces.
De andere punten zie je terugkomen als algemene, vaak voorkomende oorzaken van problemen bij gegevensbeveiliging.
Voor beide typen oorzaken geldt dat de beste beveiliging een goede opzet (constructie) van de blockchain is. De constructie omvat immers procedures voor toegang tot het platform, verwerking van gegevens, de beveiliging van het datacentrum, etc.
Ook de gebruiker dient (geholpen te worden) maatregelen te nemen om ongeautoriseerde toegang en gebruik te voorkomen.
De twee belangrijkste lessen
Blockchains staan mede in de belangstelling vanwege de veronderstelde hoge mate van betrouwbaarheid van transactieverwerking en gegevensopslag.
Zoals elk systeem of methodiek kennen blockchains zwakke punten. Deze zijn niet zozeer het gevolg van de typische kenmerken van de blockchain technologie, maar meer het gevolg waarom de mens geautomatiseerde systemen opzet en gebruikt.
Ga er dus niet automatisch vanuit dat je transacties en gegevens zondermeer veilig zijn binnen een blockchain.
De twee belangrijkste lessen die we kunnen trekken uit de veiligheidsproblemen rond blockchainplatformen zijn dan ook:
- Bij de opzet van een blockchainplatform moet worden uitgegaan van de state-of-the-art gegevensbeveiliging voor de opzet van geautomatiseerde netwerken en transactie- of gegevensverwerkings- en opslagsystemen. Hiertoe behoren ook laagdrempelige, breed beschikbaar en afdwingbare maatregelen als: encryptie van gegevens en gegevensverkeer; afgedwongen beveiliging voor de toegang tot gegevens en infrastructuur (datalijnen, wifi, hardware) en het blokkeren van (illegale) scripts.
- Daarnaast dienen gebruikers bewust te zijn van de invloed die zijzelf hebben op de veiligheid van systemen. Denk hierbij aan het (onbedoeld) toegang geven aan derden tot systemen door onveilig wachtwoordbeheer. Het beheersen of wegnemen van de oorzaken van datalekken vraagt naast technische ook organisatorische maatregelen.
De bovenstaande lessen zijn eveneens getrokken in onze beschrijving over de oorzaken van datalekken en de bijbehorende oplsossingen: ‘Datalekken: oorzaken en oplossingen’
Heb je ervaringen met de toepassing van blockchains, dan horen we graag van je.
Wim Vriend
Kennispartner E-proQure