Proof of Work: de ingebouwde audit
In 2008 ontdekte Satoshi Nakamoto hoe digitale informatie in een blockchain aantoonbaar onveranderlijk wordt door gebruik van het hash-algoritme gecombineerd met ‘time-stamping’. Het vervolgens koppelen van die data-blokken vormt een groeiende database, waarin elke informatie snel terugvindbaar is. Eenmaal weggeschreven data is niet meer te veranderen of te verwijderen. Net zoals de ouderwetse, met onuitwisbare Oost-Indische inkt geschreven registraties op ingebonden papier. Een op genummerde bladen bijgehouden register of boekhouding. Na eeuwen nog steeds leesbaar, bruikbaar en onveranderlijk. En via het PoW mechanisme zelfs met een ingebouwde audit.
De geboorte van het Hash-algoritme
Begin 1953 zocht Hans Peter Luhn bij IBM een methode om een computer sneller bestanden te laten zoeken. Hij bedacht een soort ‘Bucket’ waarin hij gelijke identificatiecodes van bestanden samenbracht, waarbij die identificatiecode van elk bestand snel en makkelijk te genereren was. Als je een tien-cijferig telefoonnummer zoals 314-159-2652, nummer voor nummer wilt opzoeken in een bestand van miljoenen nummers, kan dat lang duren. Maar als je van dat telefoonnummer altijd eenzelfde verkorte code kon maken, hoefde je ‘slechts’ in de ‘Bucket’ met die unieke verkorte codes te zoeken. De basis van indexen was geboren.
Stel dat je het genoemde telefoonnummer in paren groepeerde, in dit geval 31, 41, 59, 26, 52 dan kon je die gepaarde nummers optellen en ontstonden de cijfers 4, 5, 14, 8, 7. Door slechts een single digit te gebruiken ontstaat zo het getal 45487 voor de ‘Bucket’ waarin je het bewuste telefoonnummer en de naam stopt. Bij het opzoeken van het bewuste nummer, wordt snel het ‘Bucket’ nummer berekend en kan de bewuste informatie heel snel uit die emmer worden opgehaald. In de loop van de decennia is de methode van Luhn enorm verbeterd. Maar het basisidee – indexen – is nog steeds hetzelfde: gebruik een wiskundig probleem om gegevens te ordenen in gemakkelijk doorzoekbare emmers.
Van aquarium naar vissoep
In 1958 ontwikkelde Luhn een indexatie-methode voor tekst dat hij KWIC noemde: Key Word in Context. KWIC bleek in staat om concordanties te construeren: een alfabetische lijst van sleutelwoorden die in een boek of een verzameling geschriften worden gebruikt. Het is als een index, maar het geeft alleen de woorden weer die in de tekst voorkomen, niet de concepten (en het sluit triviale woorden uit, zoals een en de). Concordanties worden al lang gebruikt in theologie en filologie. Wat het bucket-schema van Luhn deed voor getallen, deed zijn KWIC-concordantie-systeem voor teksten. Hashes veranderden computers in tekstuele hulpmiddelen die kunnen redeneren met letters, woorden en content.
Het cryptografische voordeel van dit principe is dat uit de gegenereerde code het oorspronkelijke nummer niet meer kan worden teruggerekend. Door het algoritme wordt de historie in opeenvolgende stappen onzichtbaar. Daarom wordt de hash-functie ook in de cryptografische wereld veel gebruikt. Het is als een eenrichtingsweg: vanuit het origineel kom je altijd uit op dezelfde hash-code, maar omgekeerd is het terugvinden van het origineel (bijna) niet meer mogelijk. Je kunt het vergelijken met een kleurrijk aquarium dat je ‘husselt’ – de oorspronkelijke vertaling van hashing – tot een grijze vissoep. Hoewel alle ingrediënten van het aquarium nog steeds aanwezig zijn, is de oorsprong nooit meer te vinden of te reconstrueren.
Time-stamping en integriteitswaarborging
Veertig jaar later in 1991 ontdekken Haber en Stornetta dat het combineren van een tijdstempel bij de hash, deze uniek en onveranderlijk maakt. Immers elke verandering zou een ander tijdstempel laten zien. Deze ontdekking resulteerde in nieuwe indexing oplossingen voor grote bestanden, gebruikt bij het vastleggen van zoekresultaten maar ook voor content gerelateerde opslagmethoden. In de blog ‘Inhoud gerelateerde opslag’ beschrijf ik hoe de storage-industrie deze techniek in de loop van de jaren negentig ging gebruiken. Zoals EMC op basis van dit principe het product Centera ontwikkelde voor CAS: Content Addressed Storage.
Satoshi Nakamoto zocht rond 2008 een technische oplossing om registraties van een Peer-to-Peer electronisch betaalsysteem ook decentraal onveranderlijk vast te leggen. Maar om bewezen time-stamping, decentraal op peer-to-peer basis te implementeren, zul je per node een Proof of Work (PoW) systeem moeten gebruiken. Vergelijkbaar met het Hashcash systeem dat Adam Black in 1997 ontwikkelde om valse emails te voorkomen. Een verplichte inspanning van een server om te controleren – en dus te bewijzen – dat inderdaad de vereiste nauwkeurigheid voor een transactie is bereikt. Hiermee is de integriteit van het bestand gewaarborgd en kan als nieuw blok worden toegevoegd aan de eerdere blokken. Als je het eenmaal gekoppelde blok zou willen wijzigen, zal de Proof-of-Work nu ook alle voorgaande blokken moeten doorrekenen, bij een lange blockchain een onmogelijke zaak.
Proof of Work is een audit vooraf
De PoW is een consensusmechanisme: netwerkleden moeten moeite doen om een versleuteld hexadecimaal getal op te lossen en ontvangen een beloning voor verrichte werkzaamheden. Naast de hash en timestamp kon Satoshi met de PoW zijn gezochte digitale, decentrale Peer-to-peer betaalsysteem via de blockchain completeren. Zijn bedachte digitale munt Bitcoin is zo simpel dat hij het in zijn whitepaper in slechts zes zinnen uitlegt. Het combineert ‘geld + boekhouding + verificatie door derden’ in een enkel software gebaseerd product. De combinatie van boekhouding én digitale transparantie én op nutsvoorzieningen gebaseerde garanties maakt blockchain een ideaal platform voor zowel digitale transacties als digitale munten zoals Bitcoin.
De door Satoshi gelanceerde Bitcoin biedt het eerste digitale boekhoudsysteem ter wereld dat absolute zekerheid biedt over grootboekgegevens. Vanuit boekhoudkundig perspectief is de snelheid waarmee deze verificatie door onafhankelijke partijen plaatsvindt ongelooflijk significant. Het is een paradigmaverschuiving van een centraal, overhead-intensief en traag verificatieregime naar een lichtgewicht regime voor decentrale gebruikers en altijd slechts ‘een klik verwijderd’ is. Simpel gezegd, het haalt de oude en afzonderlijke functies voor interne boekhouding en externe audit uit elkaar door ze te combineren tot één enkel, onafscheidelijk product. De ironie is dat formele fiat-gelden niet native crypto gebaseerd zijn en dus geen toegang hebben tot de volledige diepte van alle garanties die crypto-gelden bieden. Dat is de paradox waar de financiële wereld momenteel tegenaan loopt . . . Digitale munten zijn prachtig, maar niet in handen van een – onvoldoende betrouwbare – eigenaar die het gebruik kan sturen en/of beperken.
De nieuwe auditor
In een eerdere blog besteedt ik aandacht aan het auditen van de auditor. Een van de grootste veranderingen in het auditproces na de introductie van blockchain-technologie betreft de integratie van contractuele rechten in het netwerk. Slimme contracten zijn onveranderlijk en voeren automatisch transacties uit en minimaliseren de kans op fraude. Ze vergemakkelijken ook het veilig beheer van document- en transactiestromen. In plaats van zelf nog te auditen, beheert de nieuwe auditor de specificatie van de smart contracts en controleert de uitvoering daarvan in de blockchain. Een mooi voorbeeld van procesgerichte kwaliteitsborging.
Uitdagingen liggen momenteel bij goed credential management en jurisdictie-risico’s, waarbij sprake is van gedecentraliseerde autonome organisaties (DAO) en tegenstrijdige wet- en regelgeving. Bijvoorbeeld, op Malta is een DAO sinds 2018 een formele geregistreerde entiteit. Als je binnen Europa die digitale entiteit combineert met het Estlandse digitale staatsburgerschap, kun je – waar ook ter wereld – gereguleerd commerciële activiteiten uitvoeren. Je bent netjes belastingplichtig met een volledige virtueel bedrijf zonder menselijk bestuur, met slimme contracten en een blockchain registratie. De nieuwe digitale wereld is er eigenlijk in Europa dus al . . . 🙂
Photo by Dziana Hasanbekava