Nivel 3

Minería en detalle

El puzzle criptográfico que asegura la red. Hash rate, dificultad, nonce, y cómo los mineros compiten por crear bloques.

El propósito de la minería

La minería tiene dos funciones esenciales:

Crear nuevos bitcoin: Los mineros reciben bitcoin nuevos como recompensa por su trabajo. Es la única forma en que se crean bitcoin nuevos (además de los que Satoshi pre-minó al inicio).

Asegurar la red: El trabajo computacional que los mineros realizan hace que reescribir el historial de transacciones sea prohibitivamente caro. Esto es lo que hace a Bitcoin resistente a ataques.

Ambas funciones están entrelazadas en un sistema de incentivos elegante.

Profundiza en la Base de Conocimiento

Qué es la minería

El puzzle criptográfico

Los mineros compiten por resolver un puzzle: encontrar un número (nonce) que, combinado con los datos del bloque, produzca un hash con ciertas características.

Qué es un hash

Una función hash toma cualquier dato de entrada y produce una salida de tamaño fijo. Bitcoin usa SHA-256, que produce 256 bits (64 caracteres hexadecimales).

Propiedades clave:

  • La misma entrada siempre produce la misma salida
  • Es imposible predecir la salida sin calcularla
  • Un pequeño cambio en la entrada produce una salida completamente diferente
  • No puedes deducir la entrada a partir de la salida

El objetivo (target)

Para que un bloque sea válido, su hash debe ser menor que un valor objetivo (target). En la práctica, esto significa que el hash debe empezar con cierta cantidad de ceros.

Por ejemplo, un target podría requerir que el hash empiece con 19 ceros. Los mineros prueban millones de valores hasta encontrar uno que produzca un hash válido.

El nonce

El bloque contiene un campo llamado "nonce" (number used once) que el minero puede cambiar libremente. El proceso:

  1. Construir el bloque candidato con las transacciones elegidas
  2. Poner el nonce en 0
  3. Calcular el hash del bloque
  4. ¿El hash es menor que el target? Si sí, bloque válido. Si no:
  5. Incrementar el nonce y volver al paso 3

Este proceso se repite miles de millones de veces por segundo.

Hash rate: la potencia de cálculo

El hash rate es la cantidad de hashes que un minero (o toda la red) puede calcular por segundo.

  • Un ordenador normal: ~10-50 MH/s (megahashes por segundo)
  • Un ASIC moderno: ~100-400 TH/s (terahashes por segundo)
  • Toda la red Bitcoin: ~500-700 EH/s (exahashes por segundo)

La diferencia es abismal. Por eso minar con ordenadores normales dejó de ser viable hace años.

Ajuste de dificultad

Bitcoin ajusta la dificultad del puzzle cada 2016 bloques (aproximadamente cada 2 semanas).

El objetivo: mantener el ritmo de un bloque cada ~10 minutos en promedio.

  • Si los últimos 2016 bloques se minaron en menos de 2 semanas: la dificultad sube
  • Si tardaron más de 2 semanas: la dificultad baja

Este mecanismo hace que Bitcoin se adapte automáticamente:

  • Si se conectan más mineros, la dificultad sube
  • Si mineros se desconectan (por ejemplo, tras una subida de precio de electricidad), la dificultad baja

La dificultad ha subido exponencialmente desde 2009. Hoy es ~90 billones de veces más difícil que al inicio.

El bloque candidato

Antes de minar, el minero construye un bloque candidato:

  1. Toma transacciones de la mempool (priorizando las que pagan más fees)
  2. Las ordena y verifica
  3. Añade una transacción especial al inicio: la "coinbase transaction" que crea los bitcoin nuevos y los envía a su dirección
  4. Calcula el hash del conjunto y empieza a buscar el nonce válido

Cada minero construye su propio bloque candidato. Pueden elegir diferentes transacciones. Compiten en paralelo.

La recompensa

Cuando un minero encuentra un hash válido, broadcast el bloque a la red. Si es aceptado, recibe:

Subsidy (subsidio): Bitcoin nuevos creados. Actualmente 3.125 BTC por bloque (desde el halving de 2024).

Fees: La suma de todas las comisiones de las transacciones incluidas en el bloque.

Recompensa total = subsidy + fees

A medida que el subsidy disminuye con cada halving, las fees se vuelven una proporción mayor de la recompensa.

Por qué esto asegura la red

Para reescribir un bloque antiguo, un atacante tendría que:

  1. Rehacer el trabajo del bloque objetivo
  2. Rehacer el trabajo de todos los bloques posteriores (porque cada bloque referencia al anterior)
  3. Hacerlo más rápido que el resto de la red sigue añadiendo bloques nuevos

Esto requeriría más del 50% del hash rate de toda la red, durante un tiempo prolongado, gastando cantidades astronómicas de electricidad.

El coste de atacar Bitcoin supera con creces cualquier beneficio potencial. Es económicamente irracional, y esa es la seguridad real de Bitcoin.