Cryptografische hashing is een integraal onderdeel van het cyberbeveiligingsspectrum. Het wordt zelfs veel gebruikt in verschillende technologieën, waaronder Bitcoin en andere cryptocurrency-protocollen.

In dit artikel zullen we hashing in cryptocurrency doornemen, waar we meer te weten komen over cryptografische hashes, hun voorbeelden, geschiedenis, enzovoort.

Het artikel is bedoeld voor degenen die een meer technische kijk op het onderwerp willen leren. Wees echter niet bang als u niet technisch bent, want we zullen proberen het concept op de best mogelijke manier te vereenvoudigen.

Cryptografie heeft altijd centraal gestaan ​​in de informatica. Zonder dit zullen we nooit in staat zijn om veilige communicatie of het delen van informatie te hebben. Het kan het beste worden gedefinieerd als de methode om informatie te beschermen.

 


Wat is cryptografisch hashen?

In cryptografie is hashing een methode die wordt gebruikt om gegevens om te zetten in een unieke reeks tekst. De gegevens worden omgezet in een zeer efficiënte methode waarbij de gegevens binnen enkele seconden worden gehasht. Er is ook geen beperking op het type gegevens of de grootte ervan – hashing werkt op al deze gegevens.

Dus wat maakt hashing zo populair en uniek? Het is omdat het niet kan worden teruggedraaid!

Ja, het is een eenrichtingsfunctie (cryptografische hashfunctie) en het is ontworpen om alleen zo te werken.

In een eenrichtingsfunctie voeren de gegevens, eenmaal in het hash-algoritme geplaatst, een unieke string uit. De unieke tekenreeks kan echter niet worden gebruikt om de originele gegevens te ontcijferen door deze terug te zetten naar de hashfunctie. Dit soort bruikbaarheid en functie maakt cryptografische hashing zo nuttig bij het beschermen van informatie en gegevens.

Bekijk ook eens

  • Hoe een blockchain te bouwen in Python
  • Beginnershandleiding: gebruik van cryptografie in cryptocurrency

Er is nog een functie die van toepassing is op de hash-methode. Elk gegeven gegeven geeft dezelfde hash-uitvoer.

Deze features maken het erg handig in cryptocurrencies zoals bitcoin. 

 

Hoe werkt hashen?

Om hashing beter te begrijpen, moeten we ook leren hoe het werkt. Hashing is een wiskundige bewerking waarvoor minder rekenkracht nodig is. Het rekenvermogen dat nodig is om om te keren, is echter kostbaar en kan daarom niet worden gedaan door de huidige generatie computers.

Kwantumcomputers kunnen computerhashing echter omkeren. Maar er zijn al hashing-methoden die kwantumresistent zijn.

Voor hashing-doeleinden worden er tal van algoritmen gebruikt. Dit omvat het volgende.

  • Message Direct (MD5)
  • Secure Hash-functie (SHA1)
  • Beveiligde hash-functie (SHA-256)

Niet alle hash-functies zijn 100% veilig. SHA1 is bijvoorbeeld gemakkelijk te kraken en wordt daarom niet aanbevolen voor praktisch gebruik. Een van de meest gebruikte hash-functies is MD5 en SHA-256.

MD5 wordt meestal gebruikt om gedownloade bestanden te verifiëren. Dus als u een bestand downloadt, kunt u de checksum ervan berekenen met behulp van de checksum-calculator. Als de hash-string overeenkomt met de string van wat de downloader heeft geleverd, betekent dit dat de download correct is uitgevoerd zonder dat het bestand beschadigd is. Kortom, het verifieert de integriteit van het bestand.

 

Waar wordt hasj meestal gebruikt?

Hashing wordt meestal gebruikt voor wachtwoorden. Laten we een voorbeeld nemen om het te begrijpen.

Bij het aanmaken van een e-mailaccount zal uw e-mailprovider u het e-mailadres en wachtwoord vragen. Het is duidelijk dat ze de e-mail en het wachtwoord niet in gewone tekst opslaan. Als ze dat doen, brengen ze de privacy en veiligheid van uw informatie in gevaar. Om ervoor te zorgen dat het moeilijk is om die informatie te ontcijferen, gebruiken ze de hash-functie op je wachtwoord, zodat zelfs iemand die intern bij de e-mailprovider werkt, het niet kan ontcijferen. 

Dus als u de volgende keer probeert in te loggen, ontcijfert de hash-functie deze en komt overeen met de opgeslagen en geeft u dus toegang tot uw e-mail.

Andere toepassingen zijn het genereren en verifiëren van handtekeningen en het controleren van de integriteit van bestanden.

Er zijn natuurlijk nog andere hashing-toepassingen. Een ander meest populaire gebruik van hashing zijn cryptocurrencies, die we hieronder bespreken.

 

Hoe hashing wordt gebruikt in cryptocurrencies

Hashing wordt meestal gebruikt in cryptocurrencies voor mijnbouwdoeleinden. Dus in Bitcoin is mijnbouw een proces van het verifiëren van SHA-256-hashfuncties. Dit betekent dat hashing kan worden gebruikt om nieuwe transacties te schrijven, ze terug te verwijzen naar het vorige blok en ze van een tijdstempel te voorzien

Het netwerk zou een consensus bereiken wanneer een nieuw blok aan de blockchain wordt toegevoegd. Door dit te doen, valideert het de transacties in het blok. Bovendien maakt de toevoeging het voor niemand ongedaan te maken. Dit alles is mogelijk dankzij hashing en daarom wordt het gebruikt om de integriteit van de blockchain te behouden.

Bitcoin gebruikt de Proof-of-Work-consensusmethode die in ruil daarvoor de SHA-256 eenrichtingshashfunctie gebruikt.

 

Voorbeeld van hashfunctie

Laten we nu eens kijken naar een voorbeeld van een cryptografische hashfunctie.

Om het voor ons en jou gemakkelijker te maken, gaan we de online beschikbare SHA-256 tools gebruiken.

Hier is de link ervoor: SHA256 online

Als u nu 101Blockchains als invoer typt, krijgt u de volgende uitvoer.

Invoer: 101Blockchains.com

Uitgang: fbffd63a60374a31aa9811cbc80b577e23925a5874e86a17f712bab874f33ac9

De SHA256-hashfunctie gebruiken

Als je nu een simpele “Hallo wereld” als invoer invoert, zal het de volgende uitvoer geven.

Invoer: Hallo Wereld

Uitgang: a591a6d40bf420404a011733cfb7b190d62c65bf0bcda32b57b277d9ad9f146e

Onder beide uitgangen zult u zien dat beide uitgangswaarden dezelfde lengte hebben, d.w.z. 256 bits, d.w.z. 64 tekens lang.

Laten we nu 101blockchain in de invoer invoeren. Merk op dat we de ‘s’ hebben verwijderd uit 101Blockchains die werden gebruikt voor het genereren van de eerste hash.

Invoer: 101 Blockchain

Uitgang: c4d67db72f3d18eaca2e8e8498271de353d25874e4448be4887f2563576c6fe8

Als je het vergelijkt met onze eerste hash-uitvoer, zul je een enorm verschil zien, zelfs als we maar één letter uit de invoer hebben verwijderd.

Dus wat hebben we van het voorbeeld geleerd? Laten we het hieronder samenvatten.

  • Alle uitgangen hebben dezelfde lengte
  • Kleine veranderingen in de input resulteren in totaal verschillende outputs
  • Het is niet mogelijk om uitgangen om te zetten in ingangen.

Eigenschappen van cryptografische hashfunctie

Om cryptografisch hashen of hashen in het algemeen beter te begrijpen, gaan we eens kijken naar de eigenschappen van de cryptografische hashfunctie.

Deterministisch

Het is bekend dat cryptografische hash-functies deterministisch zijn. Dit betekent dat voor een bepaalde invoer de uitvoer hetzelfde zal zijn. In eenvoudigere bewoordingen, als u dezelfde invoer voor de honderdste keer door de hash-functie voert, zal de uitvoer in alle gevallen hetzelfde zijn. 

De deterministische eigenschap is belangrijk omdat het het concept van een eenrichtingsfunctie mogelijk maakt. Als het niet op die manier zou werken, zou het onmogelijk zijn om het te gebruiken voor het hashen van informatie. Ook kan een willekeurige uitvoer voor dezelfde invoer het hele proces onbruikbaar maken.

 

Bestand vóór afbeelding

De cryptografische hash-functie is bestand tegen pre-image, wat betekent dat de eenmaal gegenereerde hash-waarde niets onthult over de invoer.

Dit is een belangrijk kenmerk omdat het het veel belangrijke geeft.

 

Computationeel efficiënt

Hash-functies zijn rekenkundig efficiënt. Dit betekent dat ongeacht hoe lang en complex de invoer is, het de hash-uitvoer snel zal genereren. De efficiëntie is welkom voor services die een hash-functie willen gebruiken om gevoelige informatie op te slaan. Het is echter alleen rekenkundig efficiënt in één richting, d.w.z. van invoer naar uitvoer. Omdat het niet omkeerbaar is, is het voor geen enkele computer mogelijk om het te reverse-engineeren.

Maar als je het over getallen wilt hebben, kan het elke moderne computerjaren duren om de invoer van een bepaalde hash-waarde te raden. Omdat moderne computers elke dag krachtiger worden, worden de hash-functies efficiënter dan ooit.

 

Kan niet worden omgekeerd

Hash-functies kunnen niet worden teruggedraaid. Dit betekent dat het veilig is. Zoals u moet weten, worden cryptografische hash-functies gemaakt met het uitgangspunt van niet-omkeerbare functies. De wiskundige vergelijkingen en het proces dat wordt gebruikt om de uitvoer te maken, is vereenvoudigd en kan niet worden teruggedraaid. In technische termen ondersteunt de hash-functie de omgekeerde bewerking niet.

 

Bestand tegen botsingen

Botsingsweerstand is de laatste eigenschap die we gaan bespreken. Deze eigenschap zorgt ervoor dat geen twee verschillende inputs dezelfde output produceren.

Zoals u inmiddels zou moeten weten, kan de invoer elke lengte hebben. Volgens deze definitie kan de invoer uit oneindig veel getallen bestaan. Nu moet de uitvoer, die een vaste lengte heeft, elke keer anders zijn. De beperking van de vaste lengte betekent ook dat de outputs van eindige getallen zijn – ook al is het eindige aantal van enorme waarde. Dit vormt een wiskundige uitdaging om de outputs voor elke input die er is, te scheiden. 

Het goede nieuws is dat de meeste populaire hash-functies botsingsbestendig zijn.

 

Populaire hash-klassen – Lijst met hash-algoritmen

Dit leidt ons naar onze volgende sectie, waar we populaire hash-klassen bespreken. We zullen drie hash-klassen noemen die behoorlijk populair zijn op het gebied van cryptografie.

  • Message Digest (MD)
  • Secure Hash-functie (SHF)
  • RIPE Message Direct (RIPEMD)

Laten we ze een voor een doornemen.

Message Digest (MD)

Message Digest is een familie van hash-functies die in de geschiedenis van internet worden gebruikt.

De familie bestaat uit hash-functies zoals MD2, MD4, MD6 en de meest populaire MD5. Alle MD-hash-functies zijn 128-bit hash-functies, wat betekent dat de digest-grootten 128 bit zijn.

Zoals we eerder hebben besproken, worden de MD5-digest-hashfuncties door softwareleveranciers gebruikt om de integriteit te controleren van de bestanden die door de gebruikers zijn gedownload via bestandsservers. Om het te laten werken, geeft de provider de downloader toegang tot de MD5-checksum voor de bestanden. Om de integriteit van het bestand te controleren, wordt een MD5-checksum gebruikt die de checksum berekent en vervolgens kruist met de opgegeven hash-waarde. Als de waarde anders is dan de integriteitscontrole van het genoemde bestand is mislukt, en de gebruiker moet het hele bestand of een deel van het bestand downloaden.

MD5 is niet zo veilig als andere hash-functies. In 2004 werd een analytische aanval uitgevoerd op de hash-functie die in slechts één uur werd uitgevoerd. Het werd gedaan met behulp van een computercluster. Dit maakte MD niet zo handig voor het beveiligen van informatie en wordt daarom gebruikt voor taken zoals het verifiëren van de integriteit van bestanden.

Als je meer wilt weten over MD5, kijk dan op de Wiki-pagina voor MD5 – MD5.

 

Secure Hash-functie (SHA)

Secure Hash-functies zijn een andere familie van hash-functies die behoorlijk populair zijn. Het is ontwikkeld en gepubliceerd door het National Institute of Standards and Technology (NIST). Ze brachten vier versies van SHA uit, waaronder SHA-0, SHA-1, SHA-2 en SHA-3.

Zoals je had moeten raden, verhelpen de latere versies enkele problemen of zwakke punten met de oudere versies van SHA. SHA-1 werd bijvoorbeeld vrijgegeven nadat de SHA-0-zwakte was gevonden. SHA-1 werd uitgebracht in 1995.

SHA-1 heeft zijn eigen naam gemaakt toen het werd uitgebracht. Het werd in die tijd door verschillende applicaties gebruikt, waaronder de Secure Socket Layer (SSL).

Na verloop van tijd ontdekten uitbuiters echter ook SHA-1-botsingen die het onbruikbaar maakten. NIST bedacht hun SHA-2-familie van veilige hash-functies die gebruik maakten van vier SHA-varianten, waaronder SHA-256, SHA-224, SHA-512 en SHA-384. In deze vier varianten waren er twee de kern, waaronder SHA-256 en SHA-512. Het verschil tussen hen is dat de SHA-512 woorden van 64 bytes gebruikte, terwijl de SHA-256 alleen woorden van 32 bytes gebruikte. 

De SHA-2-familie van hashfuncties wordt nog steeds veel gebruikt. Er was echter ook SHA-3 die werd bedacht en uitgebracht door niet-NSA-ontwerpers tijdens een openbare wedstrijd in 2012. Eerder heette het Keccak. De voordelen van Keccak waren onder meer een betere aanvalsweerstand en efficiënte prestaties.

 

RIPE Message Direct (RIPEMD)

RIPE Message Direct (RIPEMD) is een familie van hashfuncties die in 1992 is uitgebracht. RIPE staat ook voor RACE Integrity Primitives Evaluations.

Het is ontworpen en beheerd door de open onderzoeksgemeenschap. Binnen de familie zijn er vijf functies, waaronder RIPEMD, RIPEMD-160, RIPEMD-128, RIPEMD-320 en RIPEMD-256. De meest gebruikte functie is echter RIPEMD-160.

Het ontwerp van RIPEMD is gebaseerd op Message Direct.

 

Verschil tussen hash, encryptie en salting

In deze sectie zullen we kort ingaan op het verschil tussen hashing, encryptie en salting.

Laten we aan de slag gaan met versleuteling.

Versleuteling is het proces waarbij de originele informatie wordt versleuteld met behulp van de openbare sleutel en deze vervolgens ontgrendelt met een privésleutel. Het is een tweerichtingsfunctie.

Hashing daarentegen is een eenrichtingsfunctie die wordt gebruikt om informatie te versleutelen voor verificatiedoeleinden.

De laatste term is “Zouten”.

Salting is vergelijkbaar met hashing, maar hier wordt een unieke waarde aan het wachtwoord toegevoegd om een ​​andere hash-waarde te maken. Hier moet de zoutwaarde uniek zijn en verborgen blijven. 

 

Gevolgtrekking

Dit leidt ons naar het einde van onze Hashing in Cryptography. We hebben geprobeerd hashing in-en-out te begrijpen door eerst te leren wat het te bieden heeft en vervolgens snel te leren hoe het werkt, de soorten, enzovoort.!

Zoals u kunt zien, zijn er tal van gebruiksscenario’s voor hashing, waaronder cryptocurrency, wachtwoordbeveiliging, handtekeningverificatie, enzovoort. Hoewel hashing op zijn eigen manier uniek is, neemt de effectiviteit ervan bij het beschermen van informatie met de dag af, dankzij krachtige computers over de hele wereld..

De onderzoekers werken ook aan het handhaven van de status-quo door een krachtigere hashing-functie vrij te geven die kwantumbestendig is en bestand is tegen de progressie van rekenkracht over de hele wereld..

Dus, wat vind je van hashing? Reageer hieronder en laat het ons weten.

Mike Owergreen Administrator
Sorry! The Author has not filled his profile.
follow me