Vad är One-Way Hash Function? definition och betydelse

En enkelriktad hashfunktion är en matematisk funktion som genererar ett fingeravtryck av inmatningen, men det finns inget sätt att återgå till den ursprungliga inmatningen. Om ingången är densamma så är hashen alltid densamma, om den överhuvudtaget ändras, även med ett tecken, är utmatningen helt annorlunda. En hash kan användas för att verifiera att ingång A är identisk med ingång B men kan inte användas för att få tillbaka indata från utdata som med en annan matematisk funktion, kryptering.

Technipages förklarar One-Way Hash-funktionen

Utdata från en enkelriktad hash är alltid lika lång oavsett hur lång inmatningen är. Till exempel är utdata för hashalgoritmen md5 alltid 32 tecken om representerad i hexadecimal, detta är sant om inmatningen är ett tecken långt eller längden på hela verken av Shakespeare.

En hash är idealisk för att verifiera att två saker är identiska, detta har två huvudsakliga användningsområden. "Integritetsverifiering" används för att verifiera att en fil som har laddats ner är identisk med den på servern genom att jämföra en känd hash av serverfilen med en hash av den nedladdade filen.


Hashingalgoritmer används också i databaser för att verifiera att hashen för det inlämnade lösenordet matchar den lagrade hashen. Detta innebär också att om en hackare får obehörig tillgång till databasen får de inte lösenord själva utan snarare deras hash som inte kan användas för att logga in direkt.

Längden på utdata från en hashalgoritm sätter gränser för hur många möjliga utdata det finns och beskriver som sådan dess styrka mot hash-"kollisionsattacker". Kollisionsattacker är där två olika ingångar genererar samma utdata. Det är ganska svårt att hitta två slumpmässiga ingångar som genererar samma utdata, det är betydligt svårare att hitta en kollision för en enda specifik hash-utgång.

Vanliga användningar av envägs-hash-funktion

  • Det finns två typer av envägs-hashningsalgoritmer, snabb och långsam, snabb används för filverifiering och långsam för lösenordshasning.
  • Ingången för en enkelriktad hashalgoritm kan inte bestämmas genom att analysera utdata eller köra den genom en annan funktion.
  • När en hackare har en lista med lösenords-hashar från en stulen databas räknar de ut vilken envägs-hashningsalgoritm som användes och gissar sedan som många möjliga lösenord som de kan, när de har en utdata som matchar en post i databasen vet de att indata är användarens Lösenord.

Vanliga missbruk av enkelriktad hashfunktion

  • En enkelriktad hashalgoritm är en typ av kryptering och kan användas för att säkert lagra data för hämtning vid ett senare tillfälle med hjälp av ett lösenord och en annan funktion.