Dificultad

Intermedio

¿Qué es la dificultad?

En criptomonedas, el término dificultad se refiere al esfuerzo necesario para minar un bloque. Las blockchains Proof-of-Work (PoW) implementan ciertas reglas que hacen que esta suba o baje según la cantidad de poder de hash en la red. Esto se hace para garantizar que los bloques no se produzcan demasiado rápido y para mantener la seguridad continua de la red.
Bitcoin, por ejemplo, establece el tiempo de bloque en aproximadamente diez minutos (el tiempo promedio que se tarda en encontrar un nuevo bloque). Si los bloques se encuentran demasiado rápido, la red aumenta la dificultad, lo que reduce de forma efectiva el umbral objetivo de minería.

En cambio, si los bloques tardan demasiado en encontrarse, la dificultad disminuye, lo que eleva el objetivo. Este objetivo es un número que se restablece periódicamente. Para minar un bloque con éxito, el minero debe encontrar un hash menor que este número.

Cómo funciona la minería: un ejemplo simplificado

Podemos usar un ejemplo simple aquí. Supongamos que tenemos el término "binance" y queremos producir un hash SHA256 cuya salida sea numéricamente menor que un objetivo específico que corresponde, aproximadamente, a hashes que comienzan con cierta cantidad de ceros en su forma hexadecimal.

En la minería real, los mineros intentan encontrar un valor hash menor que el número objetivo, que es un número muy grande representado en formato de 256 bits. Podemos ilustrarlo agregando números de forma iterativa a "binance" (p. ej., "binance1", "binance2", "binance3") y aplicando hashing hasta obtener un resultado de hash que cumpla un criterio simplificado, como comenzar con ceros a la izquierda.

Para cuando llegamos a "binance10", lo logramos. Si queremos que los primeros dos caracteres sean "0", debemos seguir aplicando hashing hasta "binance99". Para obtener tres ceros, tenemos que aplicar hashing hasta "binance458". Pero ¿qué pasa con cuatro ceros? De los primeros veinte millones de números, no hay una entrada que nos dé un resultado así.

Esto debería darte una idea de cómo funciona la minería, con la diferencia de que los mineros intentan encontrar un número que esté por debajo de un objetivo. Cuanto más bajo sea este objetivo, más difícil es encontrar una solución, por eso Bitcoin consume tanta potencia computacional. Los mineros aplican hashing a variaciones de la misma información repetidamente para encontrar un hash válido.

Ajuste de dificultad

Bitcoin ajusta su dificultad de minería aproximadamente cada 2016 bloques (alrededor de cada dos semanas) para mantener el tiempo promedio de bloque de 10 minutos. Este ajuste se basa en cuánto tiempo se tardó en minar los últimos 2016 bloques. Si los bloques se minaron más rápido de lo esperado, la dificultad aumenta para que minar sea más difícil; si fue más lento, la dificultad disminuye para que minar sea más fácil.

Evolución del hardware de minería

Como es tan difícil minar Bitcoin, los participantes hace tiempo abandonaron las computadora regulares y las tarjetas gráficas en favor de hardware diseñado específicamente, conocido como ASIC (circuitos integrados para aplicaciones específicas). 

La minería se ha convertido en una actividad a nivel industrial dominada por grandes granjas de minería con equipos especializados, lo que refleja la naturaleza competitiva de la red y el aumento de la dificultad.

No todas las criptomonedas usan PoW

Vale la pena señalar que no todas las criptomonedas usan el consenso PoW ni tienen dificultad de minería. Por ejemplo, Ethereum ha hecho la transición a un mecanismo de consenso Proof of Stake (PoS), que no requiere minería ni ajustes de dificultad.

Conclusión

La dificultad es un parámetro dinámico que mantiene seguras y estables las blockchains Proof-of-Work (PoW) al regular cuánto trabajo computacional se requiere para minar nuevos bloques. Se ajusta a los cambios en el poder de hash de la red para mantener una tasa constante de producción de bloques, lo que garantiza el funcionamiento consistente de la blockchain.