Calcular MD5, SHA-1, SHA-256 y SHA-512
Obtén todos los checksums de un archivo o un texto de una vez y pega el valor esperado para ver al instante si coincide.
Suelta tus archivos aquí
· hasta 300 MB
Más ajustesMenos ajustes
Cómo calcular hashes
- 1
Suelta un archivo o pega texto
Hasta cincuenta archivos a la vez o una cadena escrita directamente. Los archivos grandes se leen por partes, así el uso de memoria se mantiene estable.
- 2
Elige qué algoritmos mostrar
Los cuatro por defecto. Si eliges menos, se crean menos calculadoras de hash, lo que es apreciablemente más rápido con un archivo de varios gigabytes.
- 3
Compara o copia el resultado
Pega el checksum esperado y el algoritmo correspondiente se identifica por la longitud y se compara por ti.
Un solo recorrido sobre los datos, no cuatro
La forma ingenua de obtener cuatro checksums es leer el archivo cuatro veces. Aquí el archivo se lee una vez en bloques de dieciséis megabytes y cada bloque se pasa a todos los algoritmos seleccionados antes de leer el siguiente, así que el coste de añadir un segundo algoritmo es tiempo de procesador, no otra lectura completa desde disco. Por eso también importa el enfoque por bloques para el límite de memoria: un archivo de dos gigabytes nunca existe entero en memoria, solo hay dieciséis megabytes a la vez. Eso es lo que hace realista calcular el hash de una ISO grande o de un vídeo en una pestaña del navegador.
Qué algoritmo usar en cada caso
Para comprobar que una descarga llegó intacta, cualquiera de los cuatro sirve, porque la corrupción accidental no construye colisiones. Usa el que haya publicado el proveedor. Para cualquier cosa donde alguien pueda fabricar un archivo que coincida, MD5 y SHA-1 están rotos: existen colisiones prácticas para MD5 y para SHA-1 desde 2017, así que un MD5 que coincide ya no prueba que dos archivos sean iguales. SHA-256 es la opción razonable cuando la integridad debe mantenerse frente a un atacante, y SHA-512 no es más seguro en la práctica pero suele ser más rápido en hardware de 64 bits. Ninguno sirve para guardar contraseñas, donde hace falta una función deliberadamente lenta como Argon2 o bcrypt.
El hash de texto depende de la codificación
Un hash se calcula sobre bytes, y una cadena no son bytes hasta que una codificación la convierte en ellos. La palabra «Привет» produce un SHA-256 como UTF-8 y uno totalmente distinto como UTF-16LE, y ninguno es incorrecto: son hashes de secuencias de bytes diferentes. Por eso el juego de caracteres es una elección explícita y no una suposición, y por eso un hash que calculaste en otro sitio puede no coincidir aquí hasta que las codificaciones sean las mismas. UTF-8 es el valor por defecto porque es lo que casi todos los sistemas modernos entienden por texto.
El archivo nunca se sube
El cálculo del hash se hace íntegramente en esta pestaña del navegador. El objetivo de comprobar un checksum es confiar en el archivo y no en un servicio, así que enviarlo a un servidor para calcular el hash iría contra esa idea. Nada sale de tu dispositivo.
Preguntas frecuentes
¿Qué algoritmo debo usar para verificar una descarga?
El que haya publicado el proveedor. Para corrupción accidental, cualquiera de los cuatro es suficiente; si te preocupa una manipulación intencionada, usa SHA-256 o SHA-512, porque MD5 y SHA-1 ya tienen ataques de colisión prácticos.
¿Por qué MD5 no sirve para contraseñas?
Porque es rápido, y la velocidad es justo lo que quiere un atacante que prueba contraseñas. El almacenamiento de contraseñas necesita una función lenta y con salt como Argon2 o bcrypt; un hash simple, sea rápido o lento, es la herramienta equivocada.
¿Por qué cambia el hash de mi texto al cambiar la codificación?
Porque el hash se calcula sobre bytes, no sobre caracteres, y UTF-8 y UTF-16LE convierten la misma cadena en bytes distintos. Elige la codificación que coincida con la que se usó para generar el valor con el que estás comparando.
¿Puedo hacer hash de un archivo muy grande?
Sí. El archivo se lee en bloques de dieciséis megabytes y nunca se mantiene entero en memoria, así que un archivo de varios gigabytes funciona con un uso de memoria muy por debajo de cien megabytes.
¿Qué significa que no coincida?
Que los bytes no son los mismos que los que el proveedor usó al calcular su hash. Normalmente la descarga se truncó o se corrompió, así que descárgala otra vez desde la fuente; si sigue siendo distinto, trata el archivo como no confiable.
¿Cómo sabe la comparación qué algoritmo pegué?
Por la longitud. Un checksum hexadecimal de 32, 40, 64 o 128 caracteres es MD5, SHA-1, SHA-256 o SHA-512 respectivamente. Cualquier otra longitud se marca como no reconocida en lugar de compararla con el valor equivocado.
¿Se sube mi archivo para comprobarlo?
No. Todo se calcula localmente en tu navegador con una biblioteca de hashing en WebAssembly, sin que ningún servidor intervenga en ningún momento.