Una función hash convierte datos de cualquier longitud en una huella de longitud fija. La misma entrada siempre da el mismo resultado, pero cambiar un solo carácter produce un valor totalmente distinto, y el original no se puede recuperar a partir del hash. Por eso se usa para verificar descargas, comprobar si dos archivos son idénticos, eliminar duplicados en bases de datos y crear identificadores de caché o de versión.
La herramienta admite cinco algoritmos: MD5, SHA-1, SHA-256, SHA-384 y SHA-512. Puedes escribir texto o soltar un archivo. MD5 se calcula con spark-md5 y la familia SHA con la Web Crypto API integrada en el navegador. El resultado puede mostrarse en hexadecimal en mayúsculas o minúsculas para compararlo carácter a carácter con una suma de verificación publicada. Todo se calcula en local y no se sube nada.
Elige el algoritmo según el uso. En MD5 (128 bits) y SHA-1 (160 bits) se pueden fabricar colisiones a propósito, así que ya no deben usarse para firmas ni comprobaciones de seguridad, aunque siguen sirviendo para detectar daños accidentales durante una transferencia. Para cualquier uso de seguridad elige SHA-256 o superior; páginas de descarga de software, imágenes de Linux y cadenas de bloques usan SHA-256 de forma generalizada.
Un error habitual: el hash no es cifrado y un hash simple no sirve para guardar contraseñas. SHA-256 es tan rápido que un atacante puede probar miles de millones de combinaciones por segundo. Las webs deben guardar contraseñas con algoritmos con sal y deliberadamente lentos como bcrypt, scrypt o Argon2. Al verificar una descarga, solo una coincidencia exacta con el valor oficial demuestra que el archivo no ha sido alterado.