Las claves verificadas
- Una función hash criptográfica transforma datos de entrada en una salida de longitud fija y busca dificultar la recuperación de la entrada. Ver evidencia
- SubtleCrypto.digest() calcula un digest de una secuencia de bytes en las implementaciones Web Crypto compatibles. Ver evidencia
- Git organiza objetos direccionables por contenido y relaciona commits, árboles y blobs dentro de su modelo interno. Ver evidencia
- Las contraseñas requieren una función de derivación específica, salt único y parámetros de costo adecuados, no un hash rápido sin salt. Ver evidencia
Qué es un hash criptográfico
Un hash criptográfico es una función que recibe una entrada y produce una salida de tamaño fijo, conocida como digest o huella. La entrada puede ser un texto, un archivo o un bloque de datos. La misma entrada produce el mismo digest cuando se usa el mismo algoritmo y la misma codificación.
También puede servirte: Qué es JSON y en qué se diferencia de un objeto
Una función segura busca que sea difícil recuperar la entrada a partir del digest y que resulte difícil encontrar dos entradas distintas con la misma salida. Esa propiedad permite comparar huellas sin guardar o transmitir todo el contenido, aunque no elimina el riesgo teórico de colisiones.
El hash no cifra el archivo ni lo vuelve secreto. Cualquiera que tenga la entrada puede calcular su digest. Por eso una huella sirve para comprobar integridad, mientras que la confidencialidad requiere cifrado y la autenticidad requiere una clave o un mecanismo de firma.
Cómo se calcula un digest
Una aplicación entrega bytes al algoritmo, no una idea abstracta del texto. Cambiar la codificación, un salto de línea o un espacio cambia los bytes y puede cambiar el digest. Para comparar dos huellas hay que fijar el formato de entrada y representar la salida de la misma manera, por ejemplo en hexadecimal.
En la Web, la API Web Crypto expone `SubtleCrypto.digest()` para calcular un digest de una secuencia de bytes. La operación devuelve una promesa y permite elegir algoritmos soportados por la plataforma. El código debe tratar el resultado como bytes y convertirlo explícitamente antes de mostrarlo o guardarlo.

Un algoritmo más nuevo no vuelve automáticamente confiable cualquier uso. La elección depende del objetivo, la compatibilidad y la política de seguridad del sistema. Para una decisión sensible conviene seguir la recomendación de la plataforma o de un estándar vigente en lugar de copiar una lista de algoritmos desde un ejemplo antiguo.
Integridad de archivos y descargas
Un proveedor puede publicar el digest de un instalador junto con el enlace de descarga. Después de descargarlo, el usuario calcula la huella local y compara ambas cadenas. Si no coinciden, el archivo recibido no es igual al que produjo el proveedor, aunque todavía haya que investigar si falló la descarga o si hubo una modificación maliciosa.
La comparación sólo responde qué contenido se recibió. Si el digest se obtuvo por un canal que también pudo ser alterado, no prueba quién lo publicó. Una firma digital agrega una clave pública y una verificación de autoría; un hash por sí solo no tiene esa propiedad.
En una canalización de software, la huella puede acompañar a un artefacto para detectar cambios entre etapas. Conviene guardar el nombre, la versión, el algoritmo y el digest juntos. No conviene comparar sólo una parte del archivo ni ocultar una discrepancia para que el proceso continúe.
Qué relación tiene con Git
Git identifica objetos del repositorio a partir del contenido y de metadatos que forman parte de ese objeto. El identificador permite localizar un commit, un árbol o un blob y relacionarlo con otros objetos. La huella ayuda a que el historial sea direccionable por contenido, pero no reemplaza las reglas de colaboración del equipo.
Cuando cambia el contenido de un archivo, cambia el objeto que lo representa y puede cambiar la cadena de objetos que lo referencia. Por eso una modificación en un commit produce otro identificador. La documentación interna de Git describe esta relación entre objetos, referencias y contenido comprimido.

El identificador de Git no debe confundirse con una firma de autoría. Un commit puede tener metadatos de autor sin una firma criptográfica que permita comprobar quién lo aprobó. Para una política de entrega, separá la identidad del objeto, la autenticación del usuario y la firma que exige el proyecto.
Hash de contraseñas y límites de seguridad
Guardar una contraseña directamente es una mala práctica porque expone el secreto si se filtra la base de datos. Un sistema de autenticación debe usar una función de derivación diseñada para contraseñas, un salt distinto por usuario y parámetros que hagan costoso probar muchas candidatas. Un hash rápido sin salt no alcanza.
El digest de una contraseña también puede filtrarse y compararse con listas de valores frecuentes. El salt evita que una tabla precalculada sirva para todos los usuarios, pero no vuelve fuerte una contraseña débil. El servicio debe limitar intentos y ofrecer un flujo de recuperación que no revele el secreto.
La regla práctica es separar usos. Para comprobar una descarga se necesita una huella publicada por un canal confiable; para autenticar a una persona se necesita derivación de contraseñas; para probar autoría se necesita una firma. Usar la palabra hash para todos esos problemas oculta diferencias que cambian la seguridad real.
Qué aporta VisteEsto: Nuestro trabajo en esta nota
VisteEsto separa integridad, direccionamiento de contenido, almacenamiento de contraseñas y firma digital para evitar que un mismo término oculte requisitos de seguridad distintos.
Fuentes, actualizaciones y metodología 4 fuentes
Fuentes consultadas
- Fuente primariaNIST Glossary: Cryptographic hash function
- Fuente primariaMDN: SubtleCrypto.digest()
- Fuente primariaPro Git: Git Internals — Git Objects
- Fuente primariaOWASP: Password Storage Cheat Sheet
Historial de actualización
- Publicación inicial basada en NIST, MDN Web Crypto, Pro Git y OWASP.
Cómo elaboramos esta nota
Definimos la consulta principal “qué es un hash criptográfico y para qué sirve”, contrastamos los datos con 4 fuentes —4 primarias— y revisamos contexto, imágenes y posibles vacíos antes de publicar. Conocé nuestra política editorial y de verificación.



