Genera Hash MD5, SHA-256 y SHA-512

Calcula el hash de cualquier texto. Todo en tu navegador, sin enviar datos.

¿Te ha servido esta herramienta?

¿Necesitas seguridad en tu proyecto?

Herramientas de desarrollo seguras

Ver OCC →

¿Qué es una función hash?

Una función hash toma una entrada de cualquier tamaño (un texto, un archivo, una contraseña) y produce una 'huella digital' de tamaño fijo llamada hash o digest. Esta huella tiene propiedades cruciales: es determinista (la misma entrada siempre produce el mismo hash), es irreversible (no puedes obtener la entrada original a partir del hash), y es sensible al cambio (modificar un solo carácter cambia completamente el hash). Los hashes se usan para verificar integridad de archivos, almacenar contraseñas de forma segura, firmar digitalmente documentos, y como identificadores únicos. Nuestra herramienta calcula el hash de cualquier texto en MD5, SHA-1, SHA-256 y SHA-512, todo localmente en tu navegador sin enviar el texto a ningún servidor.

¿Cuál es la diferencia entre MD5 y SHA-256?

MD5 produce un hash de 128 bits (32 caracteres hexadecimales) y es rápido, pero se considera inseguro para criptografía porque se han encontrado colisiones (dos entradas diferentes que producen el mismo hash). SHA-256 produce 256 bits (64 caracteres) y es el estándar actual de seguridad, usado en Bitcoin y certificados SSL. SHA-512 produce 512 bits (128 caracteres) y ofrece la mayor seguridad pero es más lento. En la práctica: usa MD5 solo para checksums rápidos de archivos, SHA-256 para cualquier uso de seguridad, y SHA-512 para aplicaciones que requieran máxima protección.

Preguntas frecuentes

¿Cuál es la diferencia entre MD5 y SHA-256?
MD5 genera un hash de 128 bits (32 caracteres hexadecimales) y es rápido pero se considera inseguro para criptografía porque se han encontrado colisiones (dos entradas diferentes que producen el mismo hash). SHA-256 genera un hash de 256 bits (64 caracteres), es mucho más seguro y se usa en blockchain, certificados SSL y verificación de archivos.

¿Para qué se usan las funciones hash en desarrollo?
Las funciones hash se utilizan para verificar la integridad de archivos (checksums), almacenar contraseñas de forma segura (con sal), generar identificadores únicos, firmas digitales, blockchain y criptomonedas, cacheo de recursos web (ETags) y detección de duplicados. Son funciones unidireccionales: no se puede recuperar el dato original a partir del hash.

¿Se puede descifrar un hash para obtener el texto original?
No, las funciones hash son unidireccionales por diseño. No existe ningún algoritmo que permita revertir un hash a su entrada original. Los ataques a hashes se basan en fuerza bruta o tablas precomputadas (rainbow tables), que prueban millones de combinaciones hasta encontrar una que genere el mismo hash. Por eso se recomienda usar hashes con sal (salt).

¿Qué algoritmo de hash debo usar para contraseñas?
Para almacenar contraseñas, no uses MD5 ni SHA directamente. Usa algoritmos específicamente diseñados para contraseñas como bcrypt, scrypt o Argon2, que son deliberadamente lentos y usan sal automática. Si solo necesitas verificar integridad de archivos o generar checksums, SHA-256 es una excelente opción.

¿Qué es una colisión de hash?
Una colisión ocurre cuando dos entradas diferentes producen exactamente el mismo hash. Aunque es matemáticamente inevitable (hay infinitas entradas posibles pero un número finito de hashes), en algoritmos seguros como SHA-256 la probabilidad es astronómicamente baja. En MD5 se han encontrado colisiones deliberadas, por lo que ya no se considera seguro para aplicaciones criptográficas.

Qué es un hash y para qué se usa

Una función hash es un algoritmo que convierte una entrada de cualquier tamaño (texto, archivo, imagen) en una cadena de tamaño fijo, aparentemente aleatoria, llamada digest o "huella digital". Propiedades clave: la misma entrada siempre produce el mismo hash; un cambio mínimo en la entrada produce un hash completamente distinto; es prácticamente imposible deducir la entrada a partir del hash (función unidireccional). Los algoritmos de la familia SHA-2, entre ellos SHA-256 y SHA-512, quedaron especificados en el estándar federal FIPS 180-4 del NIST.

Algoritmos comunes y cuándo usarlos

MD5 (128 bits, 32 hex chars): rápido pero ROTO criptográficamente desde 2004. NO usar para seguridad. Sí válido para checksums de integridad no críticos.

SHA-1 (160 bits, 40 hex chars): también roto criptográficamente desde 2017 (ataque SHAttered de Google). No usar para firmas o autenticación.

SHA-256 (256 bits, 64 hex chars): el estándar actual para integridad y firmas. Lo usa Bitcoin, TLS, Git (en migración), JWT.

SHA-512 (512 bits, 128 hex chars): variante con más bits. Marginalmente más seguro, ligeramente más lento.

SHA-3 (varios tamaños): estándar más nuevo (2015), diseño completamente distinto a SHA-2. Backup en caso de que SHA-2 fuera atacado.

BLAKE2/BLAKE3: alternativas modernas, más rápidas que SHA-2 con seguridad equivalente.

Hashing para contraseñas — REGLA CRÍTICA

Las funciones hash genéricas (MD5, SHA-256) son demasiado rápidas para contraseñas: un atacante puede probar miles de millones por segundo en GPU. Para contraseñas, usa funciones lentas y memory-hard diseñadas específicamente:

bcrypt: estándar de facto durante 25 años. Cost factor configurable. Salt automático.

scrypt: memory-hard (resiste ataques con ASIC/GPU).

Argon2id: ganador del Password Hashing Competition 2015. Lo más moderno y recomendado por OWASP en 2026.

PBKDF2: el más antiguo de la lista. Aún aceptable si tienes que cumplir con FIPS.

Casos de uso del generador online

Verificación de integridad: descargas un ISO de Linux, calculas su SHA-256 y comparas con el publicado por el proyecto. Si coincide, no ha sido modificado.

Identificadores deterministas: hash de una URL como ID interno (deduplicación, caches).

Almacenamiento de tokens: guardar el hash de un token API en DB en lugar del token original (más seguro).

Firmas y proof-of-work: Bitcoin y blockchains usan SHA-256 para minar bloques.

Git: cada commit es un hash SHA-1 (en transición a SHA-256) de su contenido.

JWT: firma de tokens con HMAC-SHA256.

Limitaciones y errores comunes

Hash no es cifrado: es irreversible. Si lo que quieres es poder descifrar, necesitas AES o similar, no hash.

Hash sin salt es atacable: sin salt, dos usuarios con misma contraseña tienen mismo hash. Rainbow tables lo rompen. SIEMPRE salt único por usuario.

MD5/SHA-1 en sistemas legacy: migra cuanto antes. Las colisiones son explotables hoy en día.

Privacy: nuestra herramienta hashea 100% en tu navegador. Las cadenas que introduces NUNCA llegan a nuestros servidores.

Revisado por Javier Andreo

Fundador de OCC · Actualizado: Mayo 2026