Versleutelingsidentifier
U hebt een database-export gemaakt en ziet strings als $2y$10$... of 5f4dcc3b5aa765d61d8327deb882cf99; u moet weten wat u ziet voordat u begint met het kraken of omkeren van de tekst. Deze identificator gebruikt heuristieken voor lengte, karakterset, structuur en voorvoegsel om de meest waarschijnlijke algoritme of codering achter een stuk versleutelde tekst te bepalen.
Hoe identificeer je een versleutelde tekst?
-
1
Plak het voorbeeld
Een enkele hash, een blob versleutelde tekst, een token of een gecodeerde string.
-
2
Bekijk de overeenkomende formaten
Alle formaten waarvan het patroon bij uw voorbeeld past, worden in het resultaat opgesomd.
-
3
Kruisverificatie
Als meerdere formaten passen, gebruik dan een hashcracker of decoder om te bevestigen welke correct is.
-
4
Let op de onzekerheid
Identificatie op basis van één voorbeeld is zelden definitief; als er niets overeenkomt, geeft het hulpmiddel dat aan.
Signatuurpatronen die door de identificator worden gebruikt
Op lengte gebaseerd (voor hex-gecodeerde hashes):
| Lengte (hex-tekens) | Geïdentificeerd als |
|---|---|
| 32 | MD5 |
| 40 | SHA-1 |
| 64 | SHA-256 |
| 128 | SHA-512 |
Andere lengtes, zoals SHA-224 met 56 hex-tekens of SHA-384 met 96, worden niet als hashes herkend (een hex-keten van 56 of 96 tekens wordt in plaats daarvan als Base64 aangemerkt).
Op basis van een voorvoegsel (alleen bcrypt-voorvoegsels worden herkend):
$2a$$2b$$2y$bcrypt
Andere crypt-achtige voorvoegsels ($1$, $5$, $6$, $argon2i$, $argon2id$, $pbkdf2$) worden niet herkend.
Gebaseerd op encoding:
- Alle karakters in
[A-Za-z0-9+/=]en een lengte die een veelvoud is van 4: waarschijnlijk Base64. - Drie segmenten gescheiden door
., elk met karakters uit[A-Za-z0-9_-]: JWT.
PEM-omhulsels, OpenSSH-blobs ssh-rsa/ssh-ed25519 en Base64url-strings met - of _ worden niet gedetecteerd.
Wat identificatie niet kan vertellen
- Het exacte algoritme met 100% zekerheid. Een string van 64 hex-tekens wordt gemeld als SHA-256, maar kan ook SHA3-256 of BLAKE2s zijn; op basis van de versleutelde tekst alleen zijn ze niet te onderscheiden. NTLM-hashes (eveneens 32 hex-tekens) zien er identiek uit aan MD5.
- Sleutelsterkte. Een bcrypt-hash geeft de kostenfactor aan via zijn prefix (
$2y$10$= kostenfactor 10), maar niet de sterkte van het wachtwoord zelf. - Of er een salt is toegepast. Moderne wachtwoordhashes (bcrypt, Argon2) zijn altijd gesalt; oude (rauwe MD5/SHA) kunnen dat wel of niet zijn.
- De platte tekst. Identificatie draait de hash niet terug; het kraken is een apart proces dat alleen legaal is op je eigen gegevens.
Wanneer de identificator ernaast zit
- Tokens met een eigen prefix. Apps omhullen een hash soms met hun eigen prefix; verwijder eerst dat omhulsel.
- Dubbele codering. Een binaire hash in hex die daarna in Base64 is verpakt, wordt verkeerd geïdentificeerd. Probeer één keer te decoderen en voer de procedure opnieuw uit.
- Ongebruikelijke lengtes. Afgekapte hashes (de eerste 16 tekens van een SHA-256 die als ID worden gebruikt) verschijnen als “Base64” omdat de regels voor tekens en lengte elkaar overlappen.
- Omkaderde of omhulde formaten. PEM-blokken, OpenSSH-sleutels en Django’s
pbkdf2_sha256$...worden niet herkend; verwijder de omhulling of het voorvoegsel en probeer het opnieuw, of gebruik een speciale parser.
Toepassingsvoorbeelden
- Beveiligingsaudits: het in kaart brengen van hashtypen in de hele codebasis vóór een cryptomigratie.
- CTF-challenges: een snelle eerste poging om een onbekende blob te doorgronden.
- Incidentrespons: het formaat van gelekte inloggegevens identificeren.
- Frameworkdebuggen: vaststellen welke codering een bibliotheek gebruikt.
Herinnering aan ethische aspecten
Het bepalen van een hashformat valt onder passieve onderzoeksmethoden. Het kraken van een hash van iemand anders zonder toestemming is in de meeste rechtsgebieden in strijd met de wetten tegen computerfraude. Werk alleen met hashes die u zelf bezit of waarvoor u bevoegd bent om ze te analyseren.
Veelgestelde vragen
Deels: MD5 telt 32 hex-tekens, SHA-1 telt er 40. Vallen ze binnen hetzelfde lengtebereik, dan zijn ze niet te onderscheiden op basis van de hash alleen. De context (naam van de databasekolom, standaardinstellingen van het framework, een gelekt schema) geeft meestal de doorslag.
Nee. Het identificeert alleen. Het terugdraaien van een hash of het ontsleutelen van een versleutelde tekst vereist aparte tools (plus de sleutel, of rekenkracht om te kraken), en is alleen legaal op je eigen materiaal.
Argon2id (of bcrypt met een hoge kostenfactor) is de huidige aanbeveling. PBKDF2-SHA256 en scrypt zijn nog steeds acceptabel. Kale MD5, SHA-1 of ongesalte SHA-256 zijn niet veilig voor het opslaan van wachtwoorden.
Nee. De waarde die u plakt, wordt naar onze server gestuurd voor de formaatcontrole, maar wordt in geen enkele database opgeslagen en niet aan de paginalink toegevoegd.
Gerelateerde tools
Base64-bestandsencoder
Encodeer elk bestand (PDF, ZIP, afbeelding, executable) naar Base64-tekst om in JSON, e-mail, YAML of data URI's te embedden. Draait lokaal, geen upload.
Base58 encoder en decoder
Encodeer UTF-8-tekst of hexadecimale bytes en decodeer Base58 veilig met het Bitcoin-, Ripple- of Flickr-alfabet.
Caesar-cijfer encoder
Versleutel en ontsleutel tekst met het Caesar-cijfer. Elke verschuiving 1-25, ondersteunt ROT13 als speciaal geval, behoudt interpunctie en hoofdletters.
Atbash-codering
Codeer of decodeer tekst met het Atbash-cijfer, een Hebreeuwse substitutie die A-Z koppelt aan Z-A. Dezelfde bewerking versleutelt en ontsleutelt.
Base85 encoder en decoder
Encodeer en decodeer Base85 in de variant Adobe Ascii85, de variant die in PostScript- en PDF-bestanden zit. Compacter dan Base64 voor binaire data.
bcrypt-generator
Genereer een bcrypt-hash van een plaintext wachtwoord. Instelbare costfactor van 4 tot 13, compatibel met Laravel, Django, Node en PHP.
Tool beschikbaar in andere talen
- Encryption Identifier [EN]
- Mã định danh mã hóa [VI]
- Verschlüsselungs-Identifikator [DE]
- Identificador de Cifrado [ES]
- Krypteringsidentifierare [SV]
- 암호화 식별자 [KO]
- Identificador de Criptografia [PT]
- Identyfikator szyfrowania [PL]
- Identificateur de chiffrement [FR]
- 加密标识符 [ZH]
- معرّف التشفير [AR]
- ตัวระบุการเข้ารหัส [TH]
- 暗号化識別子 [JA]
- Şifreleme Tanımlayıcısı [TR]
- Identifikasi Enkripsi [ID]
- Identificatore di Crittografia [IT]
- Идентификатор шифрования [RU]