¿Cómo verificamos que un activo digital no haya sido modificado?
Imaginemos que tenemos un archivo y queremos monitorear y retener todos los cambios que se le hagan. Queremos tener la capacidad de verificar el historial completo de todos los cambios que se le hicieron. ¿Cómo verificamos que la versión que tenemos corresponda a la versión correcta?
-
Ser determinística: El mismo mensaje siempre produce el mismo Hash.
-
Es rápida en determinar el valor de hash para cualquier mensaje.
-
Es casi imposible generar un mensaje a partir de su valor hash, la única forma es intentar con todos los mensajes posibles.
-
Un pequeño cambio en el mensaje original cambia tanto el valor del hash que el nuevo hash es totalmente diferente al hash original. No parecen tener correlación.
-
Es muy poco probable encontrar dos mensajes con el mismo valor de hash.

Y… para qué se usa el hash?
Se usa para comprobar que un archivo es exactamente igual al original. Si tengo el hash de mi archivo, y el hash del original y los comparo y son el mismo, excelente. Si son diferentes, entonces hubo algún cambio. En ningún momento tengo acceso al archivo original. Ni puedo calcularlo a partir del hash.
Este proceso lo usan para confirmar la integridad de un software. El creador de software publica un hash del archivo de actualización. Cuando los usuarios descargan la actualización, pueden confirmar que el archivo recibido es el correcto. Como? Simplemente se corre el algoritmo sobre el archivo descargado y se compara con el hash publicado por el creador.

0 comentarios