¿Qué tan grande es la potencia de hashing de la red de Bitcoin?

La tasa de hash de la red (network hashrate, por su nombre inglés) es la potencia de hashing total dedicada a la red de Bitcoin, es una métrica de seguridad clave y se considera un indicador clave de desempeño para evaluar criptomonedas. La tasa de hash se refiere a la cantidad de computo que los mineros usan para validar la blockchain de Bitcoin. Piense en la tasa de hash total de la red como la potencia informática total dedicada en la red por todos los mineros. A mayor potencia de hashing en la red, mayor es su seguridad y su resistencia general a los ataques. Aunque se desconoce el poder exacto de hashing de Bitcoin, es posible estimarlo a partir del número de bloques que se extraen y la dificultad actual del bloque. La unidad de medida es en cantidad de hashes por segundo H/s.

Los números diarios (valores brutos) pueden aumentar o disminuir periódicamente como resultado de la aleatoriedad en el descubrimiento de bloques, incluso con una potencia de hashing constante, el número de bloques minados puede variar en el día. Se ha descubierto que observar un promedio de 7 días es una mejor representación de la potencia subyacente.

La metodología para estimar la potencia de hash es a partir del número de bloques que se extraen en las últimas 24 horas y la dificultad actual del bloque. Más específicamente:

T = tiempo promedio entre bloques minados 

D = dificultad

H = tasa de hash (H/s)

H = 2 32 D / T 

¿Qué tan grande es la tasa de hash de la red de Bitcoin en relación al equipo de minería más avanzado hasta la fecha? 

Unidades métricas:

  • Tasa de hash = potencia de hashing total dedica en la red de Bitcoin, hashes por segundo (H/s)
  • Exa Hashes por segundos = EH/s
  • Tera Hashes por segundos = TH/s
  • Tiempo promedio entre bloques = 10 minutos = 144 bloques por día (bloques/día)

Para efectos prácticos en este artículo voy a crear un personaje y escenario ficticios, Paola es una minera de bitcoin bajo estas condiciones:

  • Fecha: 3 de septiembre de 2020
  • Minería en solitario (solo mining), no participa de ningún pool de minería.  
  • Tasa de hash = 118 EH/s = 118 000 000 TH/s
  • Equipo de minería: Antminer S19 Pro 110TH/s

Si tomamos los hashes totales de la red y lo dividimos entre los hashes que controla Paola, el resultado nos da un número que nos dice cuántos bloques ocurrirán antes de que Paola mine uno (en promedio).

Entonces, si actualmente hay 118 000 000 TH/s en la red, y Paola tiene 110 TH/s, tenemos:

118 000 000 TH/s 110 TH/s=1 072 727,27

Eso significa que Paola tiene 11 072 727,27de la potencia de hashing total dedicada en la red de Bitcoin.

Eso se puede leer de la siguiente manera: habrán 1 072 727,27 bloques antes de que Paola obtenga uno en términos de probabilidades.

Entonces, si hay 144 bloques en un día, tenemos:

Tpromedio=1 072 727,27 bloques – 144 bloques/día=7449,49 días

Tpromedio=7448,49 días – 365 días/año=20,40 años

Paola debe minar por 20,40 años continuos para descubrir un bloque en estas condiciones (en promedio), esa es la probabilidad.

Otra metodología de cálculo:

Probabilidad de que un minero mine el siguiente bloque:

Probabilidad minar el siguiente bloque=fracción de la potencia de hashing total que controla

Probabilidad minar el siguiente bloque= X

118 000 000 TH/s1

110 TH/s              X 

X=110 TH/s / 118 000 000 TH/s

X=0,000 000 932 203

Para un minero en solo mining el tiempo promedio para encontrar un bloque:

Tpromedio =10 minutos/fracción de la potencia que controla

Tpromedio=10 minutos/0,000 000 932 203=10 727 272,27 minutos

Tpromedio=10 727 272,27 minutos/525 600 minutos/año=20,40 años

Estos cálculos, nos dicen que minar un bloque de Bitcoin requiere de un poder computacional de escala monumental, lo que implica que para poder lograrlo la mejor forma es unir fuerzas, es decir, reunir poder de cómputo y así mitigar la dificultad compartiendo los riesgos y los beneficios, hoy en día cuando alguien está minando Bitcoin comparte la recompensa con muchos otros mineros que también están comprometiendo recursos para asegurar la red mientras participan en el modelo de competición probabilístico para ganar dicha recompensa. Esta práctica se llama Pool mining y su traducción literal al español es una «piscina de minería». 

La minería de bitcoin es un entorno altamente competitivo, los mineros individuales que trabajan solos, actividad conocida como «minería en solitario o “solo mining”, por su nombre en inglés», como la situación ficticia planteada líneas arriba con Paola. Estos mineros prácticamente no tienen ninguna probabilidad de minar un bloque por lo siguiente de obtener alguna recompensa, la minería es una competición de teoría de juegos de probabilidades, aleatoriedad y una carrera contra el tiempo. Los mineros ahora colaboran para formar grupos de minería, uniendo su poder de hash y compartiendo la recompensa entre miles de participantes. Al participar en un grupo, los mineros obtienen una parte menor de la recompensa general, pero generalmente son recompensados ​​todos los días, lo que reduce la incertidumbre. 

Minería en solitario o Solo mining

La minería en solitario es cuando se usa una computadora o hardware de minería especializado para minar bloques y se dedica ese poder de cómputo en solitario sin ser partícipe de una grupo de minería, en este caso, el minero sólo recibirá un pago cuando encuentre individualmente un bloque y así reciba el monto total de la recompensa del bloque. Este tipo de minería era eficiente solo cuando la dificultad de minería era lo suficientemente baja como para esperar encontrar nuevos bloques con relativa frecuencia. Para el 3 de septiembre de 2020, la tasa de hash de la red Bitcoin está alrededor de los 118 000 000 TH/s, por lo que la minería en solitario no es ideal. Un minero en solitario tiene mínimas probabilidades de ser rentable en las condiciones actuales de la dificultad del proceso de minería de Bitcoin. 

Pool de minería (Pool mining)

Un pool de minería, es un punto de coordinación de un grupo de mineros, un servicio que combina la potencia de cómputo de varios mineros para aumentar la frecuencia de encontrar un nuevo bloque. Luego, el pool distribuye las recompensas mineras entre los mineros del pool en función de la cantidad de poder de cómputo contribuido y, como resultado, estabiliza los ingresos de los mineros. Los mineros se unen y se retiran a voluntad propia a distintos pools minería, también pagan una comisión por el servicio de coordinación. 

Los pools de minería recopilan el hash de un grupo de mineros y básicamente los ejecutan desde una sola cuenta. Cuando se encuentra un bloque, el coordinador de minería «pool» recibe la recompensa, y luego es dividido en pagos que se distribuyen a la cuenta dentro del pool de cada minero en función de la contribución individual para encontrar el bloque.

Por ejemplo, hablando en un contexto general si un minero contribuyó con la mitad de las acciones del grupo para encontrar el nuevo bloque, obtendría la mitad de la recompensa del bloque. Este es el principal método de minería que se utiliza hoy en día para Bitcoin.

Analogía de la potencia de hashing

Hoy 3 de septiembre de 2020, la tasa de hash es alrededor de:

 118 000 000 000 000 000 000 Hashes por segundos (se lee 118 trillones EH/s).

Podemos hacer una analogía con números aproximados entre Bitcoin y la cantidad de computadoras de uso doméstico equivalentes en términos del poder total computacional en la red de Bitcoin, una computadora puede computar hashes SHA-256 dentro de este rango 1 MH/s (gama baja) – 10 MH/s (gama alta).

 CPU rango = 1 000 000 H/s (gama baja) – 10 000 000 H/s (gama alta)

Networkhashps = 118 000 000 000 000 000 000 EH/s

Cantidad de CPUs (gama baja) = 118 000 000 000 000 (se lee 118 billones) 

Cantidad de CPUs (gama alta) = 11 800 000 000 000 (se lee 11,8 billones)

En pocas palabras, podemos hacer una «simple suposición» de que el total de poder computacional asegurando la red de Bitcoin «equivaldría» a tener 118 billones de computadoras de gama baja computando 24×7 sin interrupciones o 11,8 billones de computadoras de gama alta computando 24×7 sin interrupciones. Tenga en cuenta que otros factores aplican, pero esta es una simple analogía para tener una referencia asimilable para la mente humana en general.

Imaginemos una pila de computadoras portátiles MacBook Air (1,61 cm de grosor) una encima de otra, si formamos una pila de 11,8 billones de portátiles está alcanzaría una altura de 189,98 millones de kilómetros que representaría una distancia mayor a la que hay desde la Tierra al Sol (151 millones de kilómetros). 

Vale la pena mencionar que Bitcoin utiliza SHA-256 como algoritmo de prueba-de-trabajo (PoW). Los equipos de minería actualmente más eficientes para minar Bitcoin son los dispositivos «ASIC circuito integrado de aplicación específica», estos dispositivos usan un microchip diseñado y fabricado para un propósito muy específico y en el caso de la minería de Bitcoin es computar esa función criptográfica SHA-256 de una manera eficiente y no se pueden reprogramar para nada más, ya que las lógicas están codificadas en el cableado de silicio de los chips. Pero tenga presente que se pueden tener dispositivos ASIC para cualquier propósito, siempre y cuando se diseñen y se fabriquen para él.

También cabe destacar que los equipos de minería ASIC son altamente eficientes, y esto hace que el costo de la energía consumida por ellos sea infinitamente pequeño en comparación al costo de la energía que consumirían computadoras de uso doméstico computando a una misma tasa de hash.

Dificultad

La dificultad se refiere a lo fácil que es generar un hash SHA-256 para un bloque candidato que esté en concordancia con los requisitos definidos por la configuración de toda la red respecto a la cantidad de cálculos de procesamiento que se requieren para producir una prueba de trabajo válida. 

Definición no técnica, es una métrica que nos da una indicación de que tan fácil es producir una prueba de trabajo válida, y nos da una referencia de la dificultad actual en el proceso de minería.

¿Qué tan difícil es encontrar un bloque en relación con la dificultad más fácil posible?

El bloque más fácil posible tiene una dificultad de prueba de trabajo de «1», cuando Bitcoin comenzó esa era la dificultad. 

El primer aumento de dificultad ocurrió a la altura de bloque 32256 el 30 de diciembre de 2009, de 1,00 a 1,18289953. La dificultad a la fecha de hoy 3 de septiembre de 2020, es de 17 557 993 035 167,3 (se lee 17 billones)

El Corazón de Bitcoin

En Bitcoin los bloques son como latidos de un corazón, y el corazón de Bitcoin late en promedio cada 10 minutos, el protocolo se autorregula para conseguir esto, el algoritmo se denomina «Ajuste de Dificultad», a medida que se unen más mineros a la red, la dificultad de minería aumenta para compensar la tasa de creación de bloques. Satoshi Nakamoto eligió diez minutos específicamente como una compensación entre el tiempo de confirmación rápido y la cantidad de trabajo desperdiciado debido a las bifurcaciones espontáneas de la cadena y los bloques huérfanos.

Este es el latido de Bitcoin y apuntala la frecuencia de emisión de divisas y la velocidad de liquidación de transacciones, es decir, cada cuanto tiempo se mina un bloque.

Dos escenarios para el ajuste de dificultad: 

La dificultad para minar un bloque de Bitcoin es de aproximadamente 10 minutos de procesamiento para toda la red, en función del tiempo que llevó extraer los 2016 bloques anteriores y es ajustada cada 2016 bloques.  Esto se logra bajando o elevando el objetivo.

Objetivo de dificultad: en un límite, el nivel de dificultad en la que todos los cálculos de la red encontrarán bloques aproximadamente cada 10 minutos.

Para ajustar el objetivo, se evalúan los parámetros:

Intervalo de bloques = 2016 bloques 

Período de tiempo objetivo = 14 246060 =1 209 600 segundos (2 semanas)

Se evalúan bajo las siguientes condiciones:

1) Si los 2016 bloques

Es un indicativo de que se están minando bloques muy rápido por lo siguiente dentro del protocolo el objetivo se disminuye, eso implica que la dificultad de minado aumenta.

2) Si los 2016 bloques >1 209 600 segundos

Es un indicativo de que se están minando bloques muy lento por lo siguiente dentro del protocolo el objetivo se incrementa, lo que implica que la dificultad de minado disminuye.

Pensemos en el objetivo como una barra de un baile «limbo», se disminuye la altura de la barra (disminuye el objetivo) lo que incrementa la dificultad de pasar por debajo de esta. Se incrementa la altura de la barra (se incrementa el objetivo) lo que disminuye la dificultad de pasar por debajo de esta.

La prueba-de-trabajo debe producir un hash que sea menor que el objetivo. Un objetivo más alto significa que es menos difícil encontrar un hash que esté por debajo del objetivo. Un objetivo más bajo significa que es más difícil encontrar un hash debajo del objetivo. El objetivo y la dificultad están inversamente relacionados.

La dificultad cambia eso implica que el rendimiento de la minería varía, es un mecanismo inherentemente dinámico. En la minería de Bitcoin siempre hay alguien obteniendo beneficios, pero no siempre todos los participantes están obteniendo beneficios.

Inmutabilidad y potencia de hashing

La inmutabilidad es un concepto complicado, porque realmente todo cambia, es apropiado verlo como una escala de qué tan difícil es alterar algo. El 3 de enero de 2009 con la creación del «Bloque Génesis de Bitcoin» la escala de la inmutabilidad en términos de un sistema digital se expandió significativamente, el punto final cambió y se definió un nuevo máximo.

Blockchain es arquitectura de datos, es una manera de organizar y vincular datos. Una blockchain es una lista enlazada con punteros hash (función criptográfica para verificar la autenticidad e integridad de los datos) y esto le da la característica de ser «a-evidencia-de-manipulación», lo que significa que algo no puede ser cambiado sin que se note, si algo es cambiado, es evidente.

Ejemplo: un registro a-evidencia-de-manipulación, esto no implica que las cosas no se puedan cambiar en el registro, solo que se hace evidente cualquier alteración en él.

Una blockchain «inmutable» implica mucho más que ser solo «a-evidencia-de-manipulación», debe ser «a-prueba-de-manipulación» lo que significa que algo que no puede ser manipulado, alterado o cambiado. No solo será visible si es manipulado, sino que no puede ser manipulado es «inmutable».

Lo que la da a Bitcoin su capacidad de ser a-prueba-de-manipulación no es «la blockchain», es la prueba-de-trabajo (PoW), esa dificultad acumulativa válida en la creación de la blockchain es lo que permite que Bitcoin sea fundamentalmente «inmutable», es el mecanismo específico que apuntala esa propiedad.

Es fundamental entender esta diferenciación, porque existen muchos proyectos «blockchain» que afirman que sus blockchains alternativas son inmutables, independientemente del algoritmo usado para alcanzar consenso la gran mayoría de estas en el mejor de los casos son a-evidencia-de-manipulación, es decir, que las alteraciones se hacen evidentes, pero no son inalterables, no son «inmutables».

Twitter @a_santaellas

Canal de YouTube Aníbal Santaella

Canal de Telegram

Sigue leyendo: