Inhoudsopgave:
- Artikelnavigatie
- Samenvatting
- Versleuteling en digitale handtekening
- Digitale handtekeningen
- Berichtenbeveiliging bereiken
- Wat is het volgende?
- Vorig artikel
- Volgend artikel
Artikelnavigatie
Bekijk de volledige reeks artikelen:
- Cryptografie en digitale handtekeningen
Samenvatting
De vorige twee artikelen hebben ons een brede inleiding tot cryptografie gegeven voordat we meteen ingaan op de bespreking van digitale handtekeningen.
Digitale handtekening en de verificatie ervan is een van de belangrijkste sleutelconcepten achter Blockchain waarop cryptocurrency-applicaties zoals Bitcoin zijn gebaseerd.
In een Blockchain-netwerk is het belangrijk om de deelnemers aan een transactie correct te kunnen identificeren door te bewijzen dat de handtekening afkomstig is van de houder van de privésleutel en dat de transactie geldig is.
Digitale handtekeningen bieden authenticatie, gegevensintegriteit en onweerlegbaarheid, die allemaal cruciaal zijn voor een Blockchain-netwerk. Als gevolg hiervan kan iedereen op het netwerk de transacties vertrouwen, zelfs zonder tussenpersoon.
Versleuteling en digitale handtekening
Net als wat we in het vorige artikel hebben gezien, creëert een cryptografie met een openbare sleutel een gecodeerd bericht terwijl een privésleutel een digitale handtekening maakt.
Gebruik van cryptografie
Digitale handtekeningen
Naast versleuteling en ontsleuteling van gegevens, kan cryptografie met openbare sleutels worden gebruikt om een digitale handtekening te creëren om authenticatie, gegevensintegriteit en onweerlegbaarheid te bieden in een Blockchain-netwerk.
In de volgende stappen wordt het proces uitgelegd voor een model voor digitale handtekeningen op basis van cryptografie met een openbare sleutel zoals weergegeven in het volgende diagram:
- Alle deelnemende knooppunten op het Blockchain-netwerk hebben een Private-Public-sleutelpaar, wiskundig gegenereerd.
- Het bericht in zijn leesbare tekst wordt ingevoerd in een hash-algoritme om een gehasht bericht te genereren, ook wel bekend als een Message Digest. In een cryptocurrency-applicatie zoals Bitcoins bevat het bericht de transactie die door de afzender is uitgegeven.
- Het gehashte bericht wordt vervolgens ondertekend door de privésleutel van de afzender en via het Blockchain-netwerk verzonden, samen met het bericht in leesbare tekst.
- De deelnemende knooppunten op het Blockchain-netwerk zullen nu proberen het bericht te valideren door de digitale handtekening te controleren om te verifiëren dat het overeenkomt met de openbare sleutel van het adres van waaruit het bericht werd verzonden door een verificatiealgoritme te passeren.
- Aangezien de digitale handtekening is gemaakt met de persoonlijke sleutel van de afzender, kan het netwerk gemakkelijk bewijzen dat de handtekening afkomstig is van de houder van de persoonlijke sleutel door de bijbehorende openbare sleutel van de afzender te gebruiken.
- Het bericht in platte tekst wordt door een ander hash-algoritme geleid om een hash-waarde te genereren. Deze hash-waarde wordt vergeleken met de hash-waarde van de uitvoer van het bovenstaande verificatie-algoritme. Validatie wordt uitgevoerd zonder dat de afzender zijn privésleutel hoeft te onthullen.
In het geval van Bitcoins controleert het netwerk ook of de afzender voldoende bitcoins heeft om te verzenden, en dat de afzender het nog niet naar een andere ontvanger heeft gestuurd. Dit wordt bereikt door de transactiegeschiedenis te doorlopen, die openbaar is in het bitcoin-grootboek.
Model met digitale handtekening
In plaats van het bericht in platte tekst rechtstreeks digitaal te ondertekenen, wordt de digitale handtekening gevormd met de hash aan gegevens. Het gehashte bericht is een unieke weergave, maar een relatief kleinere samenvatting van de gegevens. Dit maakt de blockchain efficiënter.
Berichtenbeveiliging bereiken
Laten we nu eens kijken waarom het zo belangrijk is om digitale handtekeningen in Blockchain te gebruiken:
- Integriteit: digitale handtekeningen en het hash-algoritme zorgen ervoor dat de gegevens niet illegaal zijn geopend en gewijzigd door aanvallers. Dit betekent dat gegevens niet kunnen worden gewijzigd zonder detectie.
- Authenticatie: digitale handtekeningen zorgen voor vertrouwen tussen een afzender en een ontvanger in een Blockchain-netwerk. De ontvanger kan er zeker van zijn dat alleen de afzender dit bericht had kunnen verzenden.
- Onweerlegbaarheid: de afzender kan het verzenden van het bericht niet weigeren, aangezien de digitale handtekening alleen kan worden gemaakt door een afzender die de bijbehorende privésleutel bezit en niemand anders.
Wat is het volgende?
We hebben niet veel over hashing gesproken, aangezien dit in het volgende artikel zal worden behandeld. Voorlopig moeten we gewoon weten dat Hashing een wiskundig algoritme of functie is die gegevens van willekeurige grootte toewijst aan een hash met een vaste grootte. Voorbeeld,
Hash-voorbeelden
Samenvattend verifieert Hashing dat de gegevens niet zijn gewijzigd of dat er niet mee is geknoeid.
Vorig artikel
- Blokkering van de blockchain: Public-Key Cryptography
Blockchain gebruikt Public-key Cryptography (asymmetrische sleutelalgoritmen) om transactieberichten over het netwerk te beschermen. In Blockchain worden digitale handtekeningen op basis van public-key cryptografie gebruikt om te bewijzen dat een bericht afkomstig is van een specifieke p
Volgend artikel
- Deblokkeren van de Blockchain: Hashing
Er zijn twee fundamentele cryptografische concepten die de Blockchain bij elkaar houden. Digitale handtekening en hashing zorgen ervoor dat de transacties op een Blockchain alleen worden uitgevoerd door legitieme personen en dat de records vrij blijven van manipulatie
© 2018 Heng Kiong Yap