¿Qué es un HASH?

¿Qué es un HASH?

Un elemento comúnmente nombrado dentro del ecosistema cripto es el hash, aunque no siempre muy bien explicado. En este artículo te contamos qué es y para qué sirve la función hash.

Hashes por doquier

Si recién comienzas a adentrarte en el mundo de las criptomonedas es muy posible que te hayas encontrado con el término hash de la mano con lo que generalmente es un código relativamente extenso y carente de sentido.

No te preocupes, entender de qué se trata esto es mucho más fácil de lo que a simple vista podría parecer algo super difícil y críptico propio de especialistas informáticos a quienes no les preocupa la experiencia de usuario.

Para empezar, lo primero que hay que mencionar es que un hash no es más que un código alfanumérico como este: a643dba18e18c5a5451bf4f7a52d8094fb4c8fb8b37b11f5dde18850b8a2941d.

Un hash es el resultado de utilizar una función hash (sí, la función utilizada se llama función hash) sobre una cantidad cualquiera de información. Dicha función “agarra” la información brindada y nos devuelve el hash específico para esa información utilizada.

Una función hash entonces lo que hace es mapear cualquier tipo de información hacia un hash de una longitud determinada. No importa cuánta información se le brinde como parámetro a la función, el resultado siempre será un hash igual de largo que si se tratara de muy poca información.

Función Hash criptográfica

Para que una función hash sea segura debe cumplir con ciertos requisitos. Para empezar, la función debe ser determinística, es decir, siempre que se le entregue información igual, el resultado será un hash idéntico.

También tiene que ser de rápida generación, no debe tardar mucho tiempo en generar el resultado. Aunque no debe ser extremadamente rápida ya que eso no es muy seguro tampoco.

Tiene que ser inviable determinar los datos originales a partir del hash. Las funciones hash no pueden ser reversibles. Si se pudiera conocer la información original a partir del hash dejaría de ser segura.

Otra propiedad característica es que cualquier cambio implica transformación total del hash. Por más mínimo que sea el cambio, cualquier variación da como resultado un hash completamente diferente.

¿Sin cuenta en Buenbit? Descargate la app 💥

Además, una función hash debe ser razonablemente resistente a colisiones. Esto es, no debe pasar que dos archivos diferentes den como resultado el mismo hash. Si esto pasara, la función dejaría de cumplir su cometido.

Hashes en el mundo cripto

Ahora que sabemos qué es un hash y cuáles son las características de las funciones encargadas de crearlos, veamos para qué es que efectivamente se utiliza esta herramienta.

La función hash lo que permite es verificar y almacenar información de forma rápida, compacta y eficaz. Recordemos su primera característica, ser determinística. Utilizando la misma información de entrada, obtendremos siempre el mismo hash.

En una cadena de bloques, esta simple pero genial forma de verificar información viene muy bien. Por un lado, ¿cuánto espacio se puede ahorrar si, por ejemplo, en lugar de tener que detallar toda una transacción, podemos hashearla y almacenar solamente el hash final?

Mejor aún, si un actor malicioso quisiera modificar una transacción a su favor, con que solamente cambie un solo número ya alcanzaría para modificar por completo el hash resultante de esa transacción, por lo que todos los nodos de la red la descartarían automáticamente.

Asimismo, para “encadenar” un bloque tras otro, lo que se hace no es otra cosa que utilizar información del bloque anterior e información del nuevo bloque y usar la función hash para obtener el hash propio del nuevo bloque. De esta forma, nuevamente, si algo fuese a modificarse, se estaría modificando la red en su conjunto.

La practicidad de esta función la vuelve realmente muy útil y no solamente en la industria de las criptomonedas. Pero sin duda que en esta última realmente cumple un rol muy importante y necesario para la propia existencia de ella.