19 abril 2021 17:13

Dificultad de la criptomoneda

¿Qué es la dificultad de las criptomonedas?

La dificultad de las criptomonedas es una medida de lo difícil que es extraer un bloque en una cadena de bloques para una criptomoneda en particular. Una alta dificultad de las criptomonedas significa que se necesita potencia de cálculo adicional para verificar las transacciones ingresadas en una cadena de bloques, un proceso llamado minería.

La dificultad de las criptomonedas es un parámetro que utilizan bitcoin y otras criptomonedas para mantener estable el tiempo promedio entre bloques a medida que cambia la potencia de hash de la red. La dificultad de las criptomonedas es importante ya que una dificultad alta puede ayudar a proteger la red blockchain contra ataques maliciosos.

Conclusiones clave

  • La dificultad de las criptomonedas es una medida de lo difícil que es extraer un bloque en una cadena de bloques para una criptomoneda en particular.
  • Una alta dificultad de criptomonedas significa que se necesita potencia de cálculo adicional para verificar las transacciones ingresadas en una cadena de bloques.
  • Cuanto mayor sea la dificultad necesaria para crear un bloque, mejora la seguridad de una red de criptomonedas, ya que los atacantes necesitarían enormes recursos para tomar el control.

Comprender la dificultad de las criptomonedas

Bitcoin y otras criptomonedas que utilizan  cadenas de bloques de prueba de trabajo se mantienen a través del proceso de minería. Los mineros verifican las transacciones que se realizan en una cadena de bloques y realizan las funciones de los auditores para prevenir el fraude y garantizar la legitimidad de las transacciones. La minería fue concebida por el fundador de bitcoin,  Satoshi Nakamoto.

En este sistema, los mineros, que ejecutan el software de la criptomoneda en sus computadoras, compiten para encontrar un nuevo bloque, agregando el lote más reciente de datos de transacciones a la cadena. Cuando se han verificado suficientes transacciones, se agrega un nuevo bloque a la cadena de bloques. A los mineros se les puede pagar una tarifa por sus esfuerzos, pero existen otros requisitos antes de que un minero pueda recibir una compensación, si es que la recibe. El alcance de la potencia informática necesaria para extraer un bloque está representado por la dificultad de las criptomonedas. El tiempo que lleva encontrar un nuevo bloque está sujeto al nivel de dificultad de la criptomoneda y al azar.

Para medir la dificultad de la criptomoneda de un nuevo bloque, es importante comprender el poder de hash, que representa el poder computacional combinado que se utiliza para extraer y procesar las transacciones en la cadena de bloques.

Hashes aleatorios

Un hash es un código alfanumérico que se usa para representar palabras o datos. Los mineros toman un lote de datos de transacciones y lo ejecutan a través de un algoritmo hash, una función unidireccional que, dado un conjunto particular de datos, siempre producirá la misma salida, pero cuya salida no se puede revertir para mostrar los datos originales. Los algoritmos hash se utilizan para crear estos códigos hash aleatorios. Antes de que se puedan agregar nuevos datos a una cadena de bloques, los mineros deben competir para producir un hash que sea menor o igual a un valor numérico llamado hash objetivo.

Los mineros realizan el proceso de hash cambiando un valor único, llamado nonce, o un número usado una vez, y cada vez que se cambia el nonce, se crea un nuevo hash con su propio conjunto de números. No hay forma de predecir qué será un hash y, dado que cada conjunto de datos tiene solo una salida para una función hash determinada, los mineros deben repetir el proceso de agregar un nuevo nonce a los datos hasta que cumplan con el requisito de hash.

Dificultad de la criptomoneda

El requisito que debe cumplir un hash corresponde a la dificultad. Un hash válido debe estar por debajo de un determinado valor objetivo establecido automáticamente (y ajustado periódicamente) por el protocolo de la criptomoneda. Cuanto menor sea el valor objetivo, más repeticiones de la función hash debe realizar un minero para obtener un resultado aceptable; en otras palabras, mayor será la dificultad. Un minero puede, en teoría, tener suerte y obtener un hash válido para un bloque determinado en el primer intento. Sin embargo, con el tiempo, una mayor dificultad significa que los mineros deben conectar más nonces  por bloque en promedio.

Los individuos y las organizaciones contribuyen con su poder computacional a través de sus plataformas de minería para procesar los datos y producir los hashes. El poder hash de una red de criptomonedas representa las tasas de hash totales de todas las plataformas mineras. La tasa de hash es el número de hashes que se pueden calcular por segundo.

Dado que cada hash se crea de forma aleatoria, se pueden necesitar millones de suposiciones o hashes antes de que se cumpla el requisito de hash objetivo y se acuñen nuevas monedas de criptomonedas al minero exitoso. Solo entonces las transacciones se agregan a un nuevo bloque dentro de la cadena de bloques. En cierto modo, el proceso de hash es similar a un sistema de lotería. Como resultado, se emiten nuevas monedas a través de este proceso de minería.



Cuanto mayor sea la tasa de hash, más difícil será para un estafador obtener el control de la cadena de bloques, ya que se necesita más poder de hash. En otras palabras, cuanto mayor sea la dificultad, más segura será la red.

Beneficios de la dificultad de las criptomonedas

Uno podría preguntarse por qué los participantes de una red establecerían una mayor dificultad de criptomonedas si el resultado significara que los mineros repitieran la misma función una y otra vez. Hay dos beneficios clave para la dificultad de las criptomonedas.

Una tasa constante de nuevos bloques

El documento técnico de bitcoin de Satoshi Nakamoto explica cómo la dificultad de la prueba de trabajo ayuda a generar una producción constante de nuevos bloques agregados a la cadena de bloques.

«Para compensar el aumento de la velocidad del hardware y el interés variable en ejecutar nodos a lo largo del tiempo, la dificultad de la prueba de trabajo se determina mediante un promedio móvil que apunta a un número promedio de bloques por hora. Si se generan demasiado rápido, la dificultad aumenta. «

Bitcoin está diseñado para agregar un nuevo bloque a la cadena de bloques cada 10 minutos en promedio. Otras criptomonedas apuntan a bloqueos más frecuentes; litecoin, por ejemplo, tiene como objetivo 2,5 minutos. El problema es que la cantidad de potencia informática que controlan colectivamente los mineros de la red puede variar enormemente.

Cuando Satoshi Nakamoto extrajo el primer bloque, solo había una máquina en la red, probablemente una simple computadora portátil o de escritorio. Hoy en día hay una serie de granjas ASIC del tamaño de un almacén. Los ASIC son máquinas diseñadas específicamente para realizar funciones hash lo más rápido posible.

Para garantizar que la red produzca un nuevo bloque a una tasa promedio constante, el software está configurado para ajustar automáticamente el hash objetivo hacia arriba o hacia abajo, lo que resulta en una dificultad menor o mayor, respectivamente. Cuando Nakamoto extrajo el bloque de génesis, la dificultad de bitcoin era una.

Seguridad de la red

La tasa de hash general proporciona información sobre la seguridad de una red de criptomonedas, ya que los estafadores o los delincuentes tendrían que superar el poder de hash total de la red para tomar el control en un ataque malicioso. Se utilizan computadoras especialmente diseñadas para realizar funciones de hash, que pueden realizar billones de conjeturas cada segundo para resolver el problema de hash.

Cuanto mayor sea la dificultad de la criptomoneda, se necesitarán más conjeturas o hashes para alcanzar el requisito de hash objetivo. Como resultado, este proceso hace que sea muy difícil y costoso para los atacantes obtener el control mayoritario, llamado mayoría del 51%, de una red blockchain.

Ejemplo de dificultad de criptomonedas

A partir del 2 de abril de 2021, la dificultad de las criptomonedas para bitcoin era de 23,14 billones. Si comparamos el cambio en la dificultad, podemos ver que el 1 de abril de 2018, la dificultad de bitcoin era de 3,51 billones.

El siguiente gráfico muestra el cambio de dificultad de bitcoin a lo largo de los años: