Hashidentifikator

Lim inn en hash for å se hvilke algoritmer som kan ha laget den, rangert etter sannsynlighet. Verktøyet leser hashverdier i hex og Base64 og formater for passordhasher, og kan teste en gjetning mot din egen tekst.

Kjører helt i nettleseren din. Ingenting lastes opp.

Slik bruker du verktøyet

  1. Lim inn én hash. Fjern merkelapper som 0x, sha256= eller sha384-, men behold passordhasher hele, inkludert en innledende $, { eller *.
  2. Les resultatet: den gjenkjente formen og størrelsen i bit, og deretter Mulige algoritmer, der de mest sannsynlige er merket med Mest sannsynlig. Kostnadsfaktoren for bcrypt, eller antall runder for sha256crypt, sha512crypt og PBKDF2, vises når strengen inneholder den.
  3. For kandidatene MD5, SHA-1, SHA-256, SHA-512, CRC-32 og CRC-32C tar Åpne verktøy deg til den tilsvarende kalkulatoren.
  4. Hvis du kjenner eller mistenker originalteksten, skriver du den inn i Sjekk mot tekst for å se hvilken algoritme som gjenskaper hashen.

Slik identifiseres en hash

Hver hashalgoritme har en fast utdatastørrelse, og hex bruker to tegn per byte, så lengden på en hex-streng er det sterkeste hintet. Verktøyet sjekker også tegnsettet og ser etter prefiksene som formater for passordhasher setter først i strengen.

Hex-tegnBitVanlige algoritmer
832CRC-32, CRC-32C og Adler-32
32128MD5, NTLM og MD4
40160SHA-1 og RIPEMD-160
56224SHA-224 og SHA3-224
64256SHA-256, SHA3-256, BLAKE2s og Keccak-256
96384SHA-384 og SHA3-384
128512SHA-512, SHA3-512, BLAKE2b og Whirlpool

Lengden alene kan ikke avgjøre saken, fordi en god hash ser ut som tilfeldige data og ikke inneholder noe merke som viser algoritmen. En verdi på 32 tegn kan være MD5, MD4 eller NTLM, som Windows bruker for kontopassord (MD4 av passordet i UTF-16LE). Verktøyet rangerer derfor kandidatene etter hvor vanlige de er: MD5 først, eller NTLM først når hashen bare har store bokstaver, slik enkelte Windows-verktøy for uthenting av passordhasher skriver den ut. På samme måte skiller Ethereums Keccak-256 og den standardiserte SHA3-256 seg bare i utfyllingen, men begge gir 64 hex-tegn.

Hashverdier i Base64 og formater for passordhasher

Noen systemer skriver hashverdier i Base64 i stedet for hex: 24 tegn for 16 byte (MD5, som i headeren Content-MD5), 28 for SHA-1, 44 for SHA-256, 64 for SHA-384 (som i Subresource Integrity-attributter) og 88 for SHA-512. Verktøyet regner lengden om til byte og viser de samme kandidatene. Manglende utfylling og URL-sikre tegn godtas, men fjern et prefiks som sha384- først.

Formater for passordhasher beskriver seg selv: et prefiks angir algoritmen, og salt og kostnadsinnstillinger er skrevet inn i strengen. De moderne formatene er saltet og bevisst langsomme. LDAP- og MySQL-formatene i de to siste radene er raske SHA-1-konstruksjoner, og bare {SSHA} legger til et salt.

Starter medFormatFinnes typisk i
$2a$, $2b$, $2y$bcrypt, alltid 60 tegn. De to neste sifrene er kostnadsfaktoren, og hvert trinn dobler arbeidetNettrammeverk, PHP password_hash()
$argon2id$Argon2id med innstillinger for minne (m), tid (t) og parallellitet (p)Moderne applikasjoner, anbefalt av OWASP
$6$, $5$sha512crypt, sha256crypt, med valgfri rounds=/etc/shadow på Linux
$y$yescrypt/etc/shadow på mange nyere Linux-distribusjoner
$1$, $apr1$md5crypt, Apache MD5Eldre Unix-systemer, .htpasswd
pbkdf2_sha256$PBKDF2-SHA256 med antall iterasjonerDjango
{SHA}, {SSHA}SHA-1, saltet SHA-1LDAP-kataloger
* og 40 hex-sifreMySQL 4.1+ PASSWORD()Brukertabeller i MySQL

Å identifisere er ikke det samme som å knekke

En hash er enveis. Identifikatoren ser bare på formen til strengen: den kan ikke avsløre, dekryptere eller slå opp inndataene, og den sender ingenting til en server eller en database på nettet. Den eneste måten å finne inndataene på er å gjette kandidater og hashe hver av dem, og det er nettopp det verktøy for passordgjenoppretting som hashcat og John the Ripper gjør når de kjenner algoritmen. Saltede, langsomme formater som bcrypt og Argon2 finnes for å gjøre slik gjetting kostbar. Test bare hasher du har tillatelse til å jobbe med.

Sjekk mot tekst tester én bestemt gjetning. Funksjonen hasher teksten du skriver inn, som UTF-8, med MD5, SHA-1, SHA-256, SHA-384, SHA-512, CRC-32 og CRC-32C, og viser hvilket resultat som samsvarer med hashen, enten den er skrevet i hex med små eller store bokstaver eller i Base64. Den kan ikke bekrefte saltede passordhasher eller HMAC-er, fordi disse også avhenger av et salt eller en hemmelig nøkkel. For en verdi med nøkkel bruker du HMAC-generatoren med nøkkelen.

Ofte stilte spørsmål

Kan dette verktøyet fortelle meg originalteksten eller passordet?

Nei. Det angir bare den sannsynlige algoritmen. Hashfunksjoner kan ikke reverseres. Nettjenester for «hash-dekryptering» slår opp verdien i tabeller med hasher av vanlige ord og lekkede passord, og det fungerer bare for svake inndata uten salt.

Hvorfor vises flere algoritmer for én hash?

Algoritmer med samme utdatastørrelse gir strenger med samme lengde og tegnsett, og ingenting i selve hashen forteller hvilken som ble brukt. Den mest sannsynlige kandidaten er merket og står først, basert på hvor vanlig hver algoritme er. For å være sikker kan du beregne hashen på nytt fra kjente inndata.

Er en hex-streng på 32 tegn alltid MD5?

Som regel, men ikke alltid. NTLM, MD4, MD2 og RIPEMD-128 gir samme lengde, og det gjør også enhver 128-biters verdi skrevet i hex, for eksempel en UUID uten bindestreker eller et tilfeldig token. Konteksten avgjør: en passordhash fra Windows betyr NTLM, en kontrollsum for en fil betyr MD5.

Hvorfor finner Sjekk mot tekst ikke noe samsvar?
Teksten må samsvare byte for byte. Vanlige årsaker er et linjeskift på slutten (echo legger til et med mindre du bruker echo -n eller printf), forskjeller i mellomrom eller store og små bokstaver, tekst som ble hashet i en annen koding enn UTF-8, et salt eller en nøkkel som i passordhasher og HMAC-er, eller en algoritme som sjekken ikke dekker, som SHA-3, BLAKE2 eller NTLM.
Er det trygt å lime inn en passordhash her?

Analysen kjører helt i nettleseren din, og hashen blir ikke overført eller lagret. Likevel lar en passordhash fra et ekte system alle som har den, prøve gjetninger offline, så behandle slike hasher som sensitive og hold dem unna supportsaker, chatter og skjermbilder.