¿Qué es y para qué sirve un hash?

hash

Dentro de la tecnología blockchain, existen una serie de términos específicos, como los smart contracts, de los que no queremos que os perdáis detalle. En este vídeo, nuestro Blockchain Expert, Diego González, nos habla sobre los hash. Nos explica lo que son y qué utilidad tienen.

 

Un hash es un fingerprint, una huella que nos sirve para identificar el contenido de un fichero en una simple secuencia de caracteres.

Esto suena un poco extraño pero básicamente lo que significa es que, independientemente del tamaño que tenga un fichero, su hash siempre tendrá una longitud determinada, lo que permite que puedas publicar un identificador único, una secuencia alfanumérica, que representa el contenido del fichero, una huella que identifica la totalidad de su contenido, en una simple línea de texto, sin necesidad de tener mucho espacio en disco o de tener que publicar información confidencial, asociada al contenido de ese fichero.

En otras palabras, el hash es una secuencia que se puede calcular a partir del contenido de un fichero pero no al revés. Es decir, es imposible obtener el contenido de un fichero a partir de un hash. No compromete los datos que el fichero contiene.

Calcular el hash de un fichero es tan sencillo como aplicar una función matemática, una función informática. Un programa que sigue un estándar y realiza determinadas operaciones sobre el contenido, los bytes del fichero, y lo que nos devuelve es una secuencia breve de letras y números. Si aplicamos la misma función para calcular el hash distintas veces sobre el mismo fichero, el resultado será el mismo, el hash no cambiaría. Sin embargo, si aplicamos la función a un fichero después de modificarlo, ya nos daría un resultado distinto. La utilidad se ve ahí, en el hecho de que nos permite distinguir cuando un fichero original sigue siendo tal y como era al principio o cuando se ha modificado.

Imaginemos que tenemos un fichero cualquiera: una fotografía, un vídeo o un PDF. Mandamos nuestro fichero a alguien por correo y queremos borrarlo de nuestro ordenador porque ocupa mucho espacio. Pero nos gustaría que un año más tarde nos devuelvan nuestro fichero tal y como estaba, y queremos comprobar que no han cambiado nada. Ni han eliminado parte del vídeo, ni han manipulado la fotografía, ni han metido un texto nuevo en nuestra hoja de cálculo… Queremos comprobar que nos lo devuelven tal y como se lo enviamos. ¿Cómo hacemos esto si ya no tenemos el fichero original para comparar porque lo borramos de nuestro disco duro? Si en su día apuntamos el hash y lo apuntamos en un papel o lo guardamos en un fichero de texto, solo hay que calcular de nuevo el hash del fichero que nos manden y podremos comprobar y verificar que nadie lo ha modificado.

¿Qué utilidad tiene esto para nosotros en el ámbito del uso de tecnologías blockchain?

En nuestro caso, Docuten calcula el hash tanto de los documentos que se firman en nuestra plataforma como de las facturas que se envían a través de ella, y lo que hacemos es persistir ese hash en nuestros Smart Contracts, persistir este hash junto a información relativa a fechas de creación de documento, eventos de histórico, que permiten identificar o trazar el ciclo de vida de documentos o facturas. Esa información se publica en el blockchain sin comprometer datos confidenciales que estaban contenidos en el fichero original.

Esto nos permite certificar la existencia de facturas y documentos pero no comprometemos datos confidenciales.

Al mismo tiempo, minimizamos el almacenamiento de datos en el blockchain. No tiene sentido subir un PDF entero cuando solo queremos certificar que existía.

Como ya os hemos contado en nuestro blog, en Docuten utilizamos la tecnología blockchain para la certificación de documentos y facturas. Ponte en contacto con nosotros para más información.

Contacta con nosotros