Generar un hash: MD5, SHA-256, SHA-512, bcrypt, argon2

hashea una cadena con los principales algoritmos (MD5, SHA-1, SHA-256, SHA-512, bcrypt, Argon2id). Útil para almacenar contraseñas o firmar datos de forma no reversible

¿Por qué utilizar el hash de contraseñas?

El hash de contraseñas es esencial para proteger información sensible, como las contraseñas de usuario. En lugar de almacenar las contraseñas en texto en claro, el hash las convierte en una cadena de caracteres aleatoria e irreversible. Esto protege las contraseñas incluso en caso de violación de la base de datos, ya que el hash no puede invertirse fácilmente para recuperar la contraseña original.

Características de la herramienta de hash de contraseñas

Esta herramienta de hash de contraseñas utiliza algoritmos seguros para generar hashes de alta calidad. Puede elegir entre distintos algoritmos de hash, como SHA-256, SHA-512, bcrypt u otros algoritmos reconocidos por su seguridad.

Cómo utilizar la herramienta de hash

En la página de uso, puede introducir la contraseña que hashear en la zona de texto prevista a tal efecto. Seleccione el algoritmo de hash deseado y haga clic en el botón para generar el hash.

Una vez generado el hash, se mostrará en una zona de resultado. Puede copiar el hash para utilizarlo en su aplicación o en su base de datos segura.

Ejemplo de hash de contraseña

Este es un ejemplo de la contraseña "password123" hasheada con el algoritmo bcrypt:


$2y$10$8Y1q1L6z0pcpO8fJcoJP3OzJ1i9gyThBVWy50MXKuR8ymyZvW9G7e

    

Preguntas frecuentes

¿Por qué no utilizar SHA-256 directamente para almacenar contraseñas?

SHA-256 es demasiado rápido. Una GPU moderna puede probar miles de millones de hashes SHA-256 por segundo, lo que hace triviales los ataques de fuerza bruta o de diccionario sobre contraseñas habituales. Para el almacenamiento de contraseñas, utilice funciones deliberadamente lentas y costosas en memoria como bcrypt, scrypt o argon2id. Integran sal y un factor de coste ajustable para resistir la evolución del hardware.

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

MD5 (128 bits) y SHA-1 (160 bits) son algoritmos antiguos, considerados rotos en criptografía: se pueden producir colisiones en la práctica. SHA-256 (256 bits) pertenece a la familia SHA-2 y sigue siendo el estándar moderno para huellas de integridad, certificados TLS o firmas de paquetes. Para un nuevo proyecto, parta sistemáticamente de SHA-256 o SHA-512.

¿Para qué sirve la sal (salt) en un hash de contraseña?

La sal es una cadena aleatoria añadida a la contraseña antes de hashear. Garantiza que dos usuarios que elijan la misma contraseña obtengan dos hashes distintos, lo que impide el uso de tablas precalculadas (rainbow tables) y obliga al atacante a atacar cada cuenta individualmente. bcrypt, scrypt y argon2 gestionan la sal automáticamente, que queda almacenada en la cadena resultante.

¿Por qué la misma contraseña hasheada en bcrypt da un resultado distinto en cada ejecución?

Porque bcrypt genera una sal aleatoria en cada llamada y la incorpora en el hash final. El formato $2y$10$<sel><hash> incrusta el coste, la sal y la huella en una sola cadena. Para verificar una contraseña, se extrae la sal del hash almacenado y se rehashea la contraseña candidata con esa misma sal: es lo que hace password_verify() en PHP.

bcrypt, scrypt o argon2: ¿cuál elegir?

argon2id es la opción recomendada por OWASP en 2026: combina resistencia a los ataques por GPU y por ASIC gracias a un coste de memoria ajustable. scrypt es una buena alternativa si argon2 no está disponible. bcrypt sigue siendo muy extendido y aceptable para muchos usos, con un coste de al menos 12. A evitar a toda costa: MD5, SHA-1, SHA-256 o SHA-512 utilizados solos para almacenar una contraseña.

¿Se envía la contraseña a un servidor al hashearla?

Para los algoritmos puramente del cliente (MD5, SHA-1, SHA-256, SHA-512) el cálculo puede hacerse en el navegador mediante la API Web Crypto. Para bcrypt, se utiliza la implementación nativa de PHP en el lado del servidor porque ninguna API estándar de navegador la expone. En todos los casos, la contraseña solo transita por HTTPS, no se registra ni se almacena, y el hash devuelto puede copiarse para su uso posterior.

Ejemplo de solicitud

curl -X POST https://cdrn.fr/api/v1/tools/hash-generator/execute \
  -H "Content-Type: application/json" \
  -d '{"texte":"...","algorithm":"adler32"}'

Esquema de entrada

Campo Tipo Obligatorio Por defecto
texte text
algorithm choice (adler32, argon2i, argon2id, bcrypt, crc32, crc32b, crc32c, fnv132, fnv164, fnv1a32, fnv1a64, gost, gost-crypto, haval128,3, haval128,4, haval128,5, haval160,3, haval160,4, haval160,5, haval192,3, haval192,4, haval192,5, haval224,3, haval224,4, haval224,5, haval256,3, haval256,4, haval256,5, joaat, md2, md4, md5, murmur3a, murmur3c, murmur3f, ripemd128, ripemd160, ripemd256, ripemd320, sha1, sha224, sha256, sha3-224, sha3-256, sha3-384, sha3-512, sha384, sha512, sha512/224, sha512/256, snefru, snefru256, tiger128,3, tiger128,4, tiger160,3, tiger160,4, tiger192,3, tiger192,4, whirlpool, xxh128, xxh3, xxh32, xxh64)

Puntos de acceso

  • GET https://cdrn.fr/api/v1/tools - lista todas las herramientas disponibles
  • GET https://cdrn.fr/api/v1/tools/hash-generator - recupera el esquema de esta herramienta
  • POST https://cdrn.fr/api/v1/tools/hash-generator/execute - ejecuta esta herramienta con un payload JSON