¿Es posible que la red deje de encontrar bloques válidos?

El problema de hash es por diseño difícil desde el punto de vista computacional, porque los hash SHA-256 son, para todos los efectos, cadenas aleatorias sin enlace directo a sus entradas, y no hay una forma (conocida) de generar un bloque para que su hash se calcule en una salida determinada. (o, más exactamente, satisface los difíciles criterios actuales). En cualquier nivel de dificultad dado, solo habrá una cierta probabilidad de que los mineros encuentren un bloque válido.

Está bien. Pero, ¿hay alguna prueba de que realmente existirá un bloque válido en un nivel de dificultad dado? ¿Es posible que los bloques válidos dejen de encontrarse si la dificultad aumenta demasiado? ¿Cómo podría la red manejar tal situación, si el nivel de dificultad solo puede cambiar cada X bloques?

Respuestas (2)

La respuesta sencilla: no .

La respuesta no tan simple: extremadamente improbable.

Los mineros procesan un bloque de entrada con la esperanza de obtener un resultado que satisfaga el requisito de dificultad, es decir, que tenga un cierto número de ceros al frente. Ahora las posibilidades de que el minero varíe la entrada son bastante grandes. Está el nonce de 4 bytes, está el orden en que se colocan las transacciones en la transacción (para simplificar, supongamos que permite todas las permutaciones de la raíz de merkle, 2^256), está la base de monedas en la transacción de recompensa (que también influye en el merkle root), está la marca de tiempo (no es esa variable, pero digamos que podemos variar en dos horas => 14 bits) y está el recuento de transacciones (hasta 4 bytes, que no son independientes de la raíz merkle, pero supongamos que son independientes ). Así que en total tenemos algo del orden de 2^256*2^32*2^32*2^14~=3.49E100posibles entradas para encontrar un bloque y 2^256~=1.15E77 posibles hashes de bloque. (Todos estos son cálculos al dorso del sobre, y probablemente sean incorrectos, pero solo para dar una idea de la escala de esto)

Por lo tanto, encontraríamos ~3.02E23 colisiones de hash para cada hash, y no tendríamos que encontrar un solo hash que coincida con el objetivo. Tenga en cuenta que las funciones hash se construyen con el objetivo declarado de hacer que las colisiones hash sean realmente difíciles (los investigadores han usado supercomputadoras durante décadas para encontrar una única colisión hash), y verá que es poco probable que ocurra en la vida de alguien.

Ahora también está el extraNonce, por lo que la cantidad de entradas es aún mayor :)

Piense en la minería como la lotería donde la tasa de dificultad es la cantidad de números en el grupo y su tasa de minería es la cantidad de boletos que puede comprar. El índice de dificultad se establece con la idea de que queremos que alguien gane la lotería cada 10 minutos. Agregamos más números cuando ganan demasiado rápido y eliminamos números cuando ganan demasiado lento ajustado cada 2016 bloques (aproximadamente dos semanas).

Para responder a su pregunta, no, no nos quedaremos sin bloques. En el año 2140, más o menos, habremos agotado todos los bitcoins, pero los mineros seguirán haciendo bitcoins mediante la verificación de transacciones. Si el bitcoin sobrevive tanto tiempo, entonces la mayor parte de la minería será realizada por grandes instituciones vinculadas al bitcoin de alguna manera que tengan un incentivo para que todas las transacciones se verifiquen adecuadamente.