This article has been translated from English to Spanish.
Antes de sumergirnos en el tema de la minería de bitcoins, debemos desviarnos un poco y aprender sobre un concepto fundamental para las criptomonedas.
Para comprender realmente cómo funcionan el bitcoin y otras criptomonedas, es fundamental entender primero el concepto de«hashing».
Cuando ves la palabra «hash», algunas personas pueden pensar en las croquetas de patata, un popular desayuno americano, mientras que otras personas como Snoop Dogg, pueden pensar en el producto concentrado de cannabis. 🌿

En esta lección, hablaré de un tipo diferente de hachís.
Es un concepto técnico, pero debes estar familiarizado con él, así que te lo explicaré de forma sencilla.
También es necesario estar familiarizado con el concepto de hashing para entender cómo funciona la minería de Bitcoin (que es la siguiente guía), así que por favor no te saltes estas lecciones. 👁️
¿Qué es el hashing?
El hashing es un método de criptografía que convierte cualquier forma de datos en una cadena única de texto de longitud fija.
La criptografía es la práctica y el estudio de técnicas para la comunicación segura frente a observadores externos. En la era de Internet, la criptografía se utiliza para proteger la información o los «datos» informáticos.
Por si no fuera ya obvio, la palabra «cripto» en criptomonedas significa criptografía.
El hash es una parte fundamental de la criptografía. Y juega un papel muy importante detrás de la «cripto» en las criptomonedas.
En términos simples, el hash significa introducir texto de CUALQUIER longitud a través de una función hash que produce una salida de una longitud FIJA.

Cualquier dato puede ser«hash», sin importar su tamaño, tipo o longitud.
El hash que se produce siempre tiene la misma longitud.
En los ejemplos siguientes, utilizando la función hash SHA-1, independientemente de la longitud de la «entrada», la «salida» siempre tiene 40 caracteres.



Aquí tienes una comparación rápida de los tres ejemplos:
| Entrada | Hola |
|---|---|
| Hola | f7ff9e8b7bb2e09b70935a5d785e0cc5d9d0abf0 |
| BabyPips.com | 8c8780d0b70c5ef42a534846cc042629cf07a440 |
| ca73ab65568cd125c2d27a22bbd9e863c10b675d |
Observa que, aunque las «entradas» variaban, los tres hash seguían teniendo 40 caracteres de longitud.
En este ejemplo concreto, la longitud fija es de 40 caracteres, que viene determinada por la función hash específica utilizada («SHA-1»), que se explicará más adelante.
Por ahora, solo debes saber que otras funciones hash pueden generar longitudes fijas diferentes. La mayoría tienen longitudes fijas que superan los 40 caracteres.
Un hash actúa como una huella digital.
Un dato único siempre producirá el mismo hash.
Por ejemplo, si ejecutas «Hola» un millón de veces a través de una función hash, el hash anterior es el que aparecerá un millón de veces.
Para la palabra «Hola», su hash SHA-1 siempre será:
f7ff9e8b7bb2e09b70935a5d785e0cc5d9d0abf0
Y solo «Hello» producirá ese hash.
Cualquier cambio en «Hello», aunque solo sea cambiarlo por «hello», y la función hash producirá un valor hash totalmente diferente.
Por eso los hash se conocen como«huellasdigitales».
Al igual que tu huella dactilar es única, un hash es único para una entrada de datos específica.

Un hash no se puede invertir.
La ENTRADA en una función hash se denomina«preimagen». Pero para simplificar las cosas, me quedo con «entrada».
La SALIDA de la función hash se denomina«valor hash» o«resumen» o simplemente«hash».
Una función hash está diseñada para actuar de manera unidireccional.

Dado que una función hash es unidireccional, el resultado, el «hash», no puede utilizarse para revelar la entrada, la «preimagen».
Esto significa que si todo lo que ves es el hash, NO podrás descifrar los datos originales (la «imagen previa») que el hash representa.
Las funciones hash producen hash irreversibles.
Irreversible significa que si solo tuvieras el hash, no podrías usarlo para averiguar cuál era el dato original. Esto permite que los datos originales permanezcan seguros y desconocidos.
¿Qué es una función hash?
Una función hash es una operación matemática que convierte datos de entrada de longitud arbitraria en una salida de longitud fija que se ejecuta utilizando un determinado algoritmo.
Un algoritmo es simplemente un conjunto de instrucciones paso a paso para realizar cálculos que son realizados por un programa de software.
No importa si la entrada es una sola letra, una palabra, una frase completa, una página de un libro o un libro entero. Esa es la parte arbitraria.
Cada entrada producirá un resultado único expresado como una cadena alfanumérica de longitud fija.
Alfanumérico solo significa que algo consta tanto de letras como de números.
Una función hash útil oculta cualquier pista sobre cómo pudo haber sido la entrada.
Por ejemplo, debe ser imposible determinar si la entrada era larga o corta o si contenía números o letras. Además, cambiar un solo carácter en la entrada debería dar como resultado una salida radicalmente diferente.
Funciones hash populares
Todas las funciones hash funcionan de manera similar. Tú introduces datos y la función hash los «revuelve» y genera un hash.
Las funciones hash comunes incluyen:
- MD-5: Message Digest 5 (MD5) es una función hash común. En el pasado, se consideraba segura, pero hoy en día, los hackers han descubierto cómo decodificar el algoritmo y son capaces de hacerlo en segundos.
- SHA: El algoritmo hash seguro (SHA) es otro tipo de función hash. Existen varias variaciones de SHA agrupadas en cuatro familias: SHA-0, SHA-1, SHA-2 y SHA-3: En general, cuanto mayor sea el número, más reciente será la versión y más seguro será el algoritmo.
Para nuestros propósitos, la única función hash que necesitas conocer ahora mismo es el algoritmo hash seguro (SHA). Más concretamente, la familia SHA-2, ya que contiene un miembro especial en la familia llamado SHA-256.
SHA-256 es una función hash que convierte una cadena de texto en otra cadena que siempre tiene la misma longitud: 64 caracteres alfanuméricos. Esto equivale a 256 bits, de ahí el «256» de su nombre.
Es especial porque es la función hash utilizada en varias partes del sistema Bitcoin, sobre la que aprenderás en lecciones posteriores. Por ahora, es importante saber que SHA-256 es un tipo de función hash y la utilizada por Bitcoin.
Ya sea que la entrada sea una página de un libro de Harry Potter o la serie completa de libros de Harry Potter, el resultado de la función hash SHA-256 siempre será la MISMA longitud mostrada como 64 caracteres alfanuméricos.
Veamos ahora cómo funciona el hash en criptografía.