Identificador de Cifrado
Has obtenido un volcado de base de datos y ves cadenas como $2y$10$... o 5f4dcc3b5aa765d61d8327deb882cf99 y necesitas saber qué estás mirando antes de empezar a crackearlo o revertirlo. Este identificador aplica heurísticas de longitud, conjunto de caracteres, estructura y prefijo para deducir el algoritmo o la codificación más probable detrás de una muestra de texto cifrado.
Cómo identificar un texto cifrado
-
1
Pega la muestra
Un solo hash, blob de texto cifrado, token o cadena codificada.
-
2
Ver los formatos coincidentes
En el resultado se enumeran todos los formatos cuyo patrón coincide con tu muestra.
-
3
Verificar
Si coinciden varios formatos, usa un crackeador de hashes o un decodificador para confirmar cuál es el correcto.
-
4
Ten en cuenta la incertidumbre
La identificación a partir de una muestra rara vez es definitiva; si nada coincide, la herramienta lo indica.
Patrones de firma que utiliza el identificador
Basado en longitud (para hashes codificados en hex):
| Longitud (caracteres hex) | Se identifica como |
|---|---|
| 32 | MD5 |
| 40 | SHA-1 |
| 64 | SHA-256 |
| 128 | SHA-512 |
Otras longitudes, como SHA-224 con 56 caracteres hex o SHA-384 con 96, no se reconocen como hashes (una cadena hex de 56 o 96 caracteres se clasifica como Base64).
Basado en prefijo (solo se reconocen los prefijos bcrypt):
$2a$$2b$$2y$bcrypt
Otros prefijos estilo crypt ($1$, $5$, $6$, $argon2i$, $argon2id$, $pbkdf2$) no se reconocen.
Basado en codificación:
- Todos los caracteres en
[A-Za-z0-9+/=]y longitud múltiplo de 4: probablemente Base64. - Tres segmentos separados por
., cada uno con caracteres de[A-Za-z0-9_-]: JWT.
Las envolturas PEM, los blobs OpenSSH ssh-rsa/ssh-ed25519 y las cadenas Base64url que contienen - o _ no se detectan.
Lo que la identificación no puede decirte
- Algoritmo exacto con 100% de certeza. Una cadena de 64 caracteres hex se informa como SHA-256, pero también podría ser SHA3-256 o BLAKE2s; son indistinguibles por el texto cifrado. Los hashes NTLM (también de 32 caracteres hex) son idénticos a MD5.
- Fuerza de la clave. Un hash bcrypt muestra el factor de coste en su prefijo (
$2y$10$= coste 10), pero no la robustez de la contraseña subyacente. - Si lleva sal. Los hashes de contraseña modernos (bcrypt, Argon2) siempre llevan sal; los antiguos (MD5/SHA en bruto) pueden llevarla o no.
- El texto plano. La identificación no revierte el hash; romperlo es un proceso separado, legal solo en tus propios datos.
Cuando el identificador está equivocado
- Tokens con prefijos personalizados. Las aplicaciones a veces envuelven un hash con su propio prefijo; quita la envoltura primero.
- Codificación doble. El hex envuelto en Base64 de un hash binario será mal identificado. Intenta decodificar una vez y volver a ejecutar.
- Longitudes inusuales. Los hashes truncados (los primeros 16 caracteres de SHA-256 usados como ID) se muestran como “Base64” porque las reglas de caracteres y longitud se solapan.
- Formatos con marco o envoltura. Los bloques PEM, las claves OpenSSH y el formato
pbkdf2_sha256$...de Django no se reconocen; quita la envoltura o el prefijo y vuelve a intentarlo, o usa un analizador específico.
Casos de uso
- Auditorías de seguridad: catalogar tipos de hash en una base de código antes de una migración criptográfica.
- Desafíos CTF: un primer vistazo rápido a un blob desconocido.
- Respuesta a incidentes: identificar el formato de credenciales filtradas.
- Depuración de frameworks: averiguar qué codificación produce una biblioteca.
Recordatorio ético
Identificar un formato de hash es investigación pasiva. Crackear el hash de otra persona sin autorización vulnera las leyes sobre uso indebido de sistemas informáticos en la mayoría de las jurisdicciones. Trabaja únicamente con hashes que te pertenezcan o que estés autorizado a analizar.
Preguntas frecuentes
Parcialmente: MD5 tiene 32 caracteres hex, SHA-1 tiene 40. Si ambos están en el mismo rango de longitud, no puedes distinguir solo por el hash. El contexto (nombre de la columna de la base de datos, valores predeterminados del framework, esquema filtrado) suele resolverlo.
No. Solo identifica. Revertir un hash o descifrar un texto cifrado requiere herramientas separadas (y la clave, o recursos computacionales para romper) y es legal solo en tu propio material.
Argon2id (o bcrypt con un alto factor de costo) es la recomendación actual. PBKDF2-SHA256 y scrypt siguen siendo aceptables. MD5, SHA-1 o SHA-256 sin sal no son seguros para el almacenamiento de contraseñas.
No. El valor que pegas se envía a nuestro servidor para comprobar su formato, pero no se almacena en ninguna base de datos ni se añade al enlace de la página.
Herramientas relacionadas
Codificador de cifrado A1Z26
Codifica texto usando el cifrado A1Z26 (A=1, B=2, ... Z=26) o decodifica una secuencia de números de vuelta a letras, con separador personalizable.
Generador de Hash bcrypt
Genera hashes bcrypt o verifica una contraseña en texto plano contra un hash bcrypt existente. Genera y verifica lado a lado en una sola herramienta.
Codificador de Cifrado César
Encripta y desencripta texto usando el cifrado César. Cualquier desplazamiento de 1-25, soporta ROT13 como un caso especial, conserva la puntuación y las mayúsculas y minúsculas.
Codificador de archivos Base64
Codifica cualquier archivo (PDF, ZIP, imagen, ejecutable) a texto Base64 para incrustar en JSON, correo electrónico, YAML o URIs de datos. Se ejecuta localmente, sin carga.
Codificador y Decodificador Base58
Codifica texto UTF-8 o bytes hexadecimales y decodifica Base58 de forma segura con el alfabeto de Bitcoin, Ripple o Flickr.
Cifrado / Descifrado AES
Cifra y descifra texto de bajo riesgo con cifradores AES de OpenSSL. La frase de paso se resume con SHA-256 y la salida Base64 contiene IV más texto cifrado.
Herramienta disponible en otros idiomas
- Verschlüsselungs-Identifikator [DE]
- Şifreleme Tanımlayıcısı [TR]
- معرّف التشفير [AR]
- Encryption Identifier [EN]
- Identificador de Criptografia [PT]
- 加密标识符 [ZH]
- 暗号化識別子 [JA]
- Identyfikator szyfrowania [PL]
- Versleutelingsidentifier [NL]
- 암호화 식별자 [KO]
- Mã định danh mã hóa [VI]
- Krypteringsidentifierare [SV]
- Identifikasi Enkripsi [ID]
- ตัวระบุการเข้ารหัส [TH]
- Identificateur de chiffrement [FR]
- Identificatore di Crittografia [IT]
- Идентификатор шифрования [RU]