Minería
¿Qué es la minería de bitcoin?
La minería de bitcoin es el proceso de añadir transacciones a la blockchain.
¿Cómo funciona la minería?
Todo nodo de la red bitcoin comparte información sobre nuevas transacciones.
Cada nodo almacena las nuevas transacciones que recibe en su memory pool.
El memory pool es el área de almacenamiento temporal de un nodo para nuevas transacciones.
Cada nodo también puede intentar "minar" las transacciones de su memory pool en un archivo permanente. Ese archivo es un libro mayor de todas las transacciones de bitcoin, y se llama blockchain.

Puedes pensar en el memory pool como si contuviera transacciones "flotantes" y en la blockchain como si contuviera transacciones "archivadas".
Sin embargo, para añadir transacciones del memory pool a la blockchain, un nodo necesita usar bastante potencia de procesamiento del ordenador.
Esa potencia de procesamiento es necesaria por la presencia de un tipo específico de desafío.
¿Cuál es ese desafío?
Bien, imagina que eres un nodo. En cualquier momento, puedes condensar las transacciones de tu memory pool en una sola "cadena" de números y letras.
Esa "cadena" es básicamente un hash de las transacciones del memory pool.
Ahora, tu objetivo es hacer el hash de esa cadena con otro número (llamado nonce) para intentar obtener una nueva cadena que empiece con cierto número de ceros.
La mayor parte del tiempo, obtendrás un resultado que ni siquiera se acerca:
Pero, si sigues, puedes dar con un número que funcione:
Ejemplo de función hash
Ahora bien, esto parece fácil, pero en realidad es muy difícil. El proceso es totalmente aleatorio, y solo puedes esperar encontrar un resultado ganador por ensayo y error. Y eso es lo que es la minería: mucho hashing (usando potencia de procesamiento) y la esperanza de tener suerte.
Pero, si tienes la suerte de encontrar un resultado hash exitoso, las transacciones de tu memory pool se añaden a la blockchain, y todos los demás nodos de la red también añaden tu bloque de transacciones a sus blockchains.
Además, también recibirás una recompensa de bloque por tu esfuerzo (que también incluye cualquier comisión de las transacciones que añadiste a la blockchain).

Nota: la recompensa de bloque ya no es 25 BTC (escribí este artículo originalmente en 2015).
El "cierto número de ceros" viene de la dificultad. Cambia en función de la velocidad de minado de la red: cuanto más rápido mina la gente, mayor es la dificultad, y más ceros se necesitan al principio (lo que ayuda a mantener constante el tiempo entre bloques).
Esta es una versión algo simplificada de cómo se añaden los bloques a la blockchain. Para más detalles, consulta bloques.
¿Por qué es importante la minería?
Buena pregunta. ¿Por qué no añadir transacciones directamente a la blockchain?
Porque la minería permite que toda la red bitcoin se ponga de acuerdo sobre qué transacciones quedan "archivadas", y así es como resuelves transacciones fraudulentas en una moneda digital.
Continúa...
Cuando haces una transacción de bitcoin, no todos los nodos de la red se enteran de ella al instante. En su lugar, las transacciones viajan por la red bitcoin pasando de un nodo al siguiente.

Propagación es la palabra que se usa para describir cómo viajan las transacciones por la red.
Sin embargo, en realidad es posible hacer otra transacción gastando esos mismos bitcoins e insertar esa segunda transacción en otra parte de la red.
Por ejemplo, podrías comprar una cerveza con algunos bitcoins y, acto seguido, intentar comprar rápidamente una porción de pizza con esos mismos bitcoins.
En otras palabras, una buena y vieja estafa.
Entonces, ¿qué está pasando aquí?
- Algunos nodos reciben primero la transacción de la pizza (e ignoran la transacción de la cerveza).
- Algunos nodos reciben primero la transacción de la cerveza (e ignoran la transacción de la pizza).
Incluso sabiendo que hiciste la transacción de la cerveza primero, debido a la forma en que las transacciones viajan por la red bitcoin, la red estaría en desacuerdo sobre si deberías quedarte con la cerveza o la pizza.
Entonces, ¿cómo decide la red qué transacción conservar?
Minería, por supuesto.
El primer nodo de la red que complete el desafío añadirá las transacciones de su memory pool a la blockchain.
Por ejemplo, si un nodo con la transacción de la pizza mina con éxito un bloque, entonces esa es la transacción que se añadirá a la blockchain, y la transacción de la cerveza queda expulsada de la red.
Parece una forma poco ortodoxa de seleccionar transacciones, lo sé, pero esta es la solución que usa la red bitcoin para llegar a un consenso al tratar con transacciones conflictivas (también conocidas como "gasto doble").
Solo hacen falta unos 10 minutos para que cada nuevo bloque de transacciones se añada a la blockchain, así que solo tienes que esperar 10 minutos para obtener una confirmación de que los bitcoins "llegaron" a una nueva dirección (y no fueron enviados a una dirección alternativa).
Otro beneficio de la minería.
Si quieres intentar controlar los bloques (es decir, las transacciones) que se añaden a la blockchain, tienes que competir para resolver los rompecabezas de los bloques con todos los demás nodos mineros de la red bitcoin.
En otras palabras: necesitas tener un ordenador con potencia de procesamiento suficiente para superar la potencia de procesamiento de todos los demás mineros de bitcoin combinados.
Lo cual es totalmente posible: solo tienes que gastarte unos cuantos miles de millones en hardware y ya estarás listo (aunque esa cantidad aumenta conforme entra más potencia de minería en la red).
Así que, en otras palabras, esta competición de minería impide que un único minero tenga control total sobre qué transacciones se añaden a la blockchain.
¿Cómo empiezo a minar?
Ya no es posible minar con el cliente Bitcoin Core.
Esta funcionalidad fue eliminada por completo en 2016:
Como la minería por CPU ha sido inútil desde hace mucho tiempo, el minero interno fue eliminado en esta versión y sustituido por una implementación más simple para el framework de pruebas.
Si quieres empezar a minar, tendrás que investigar cómo comprar tu propio hardware especializado y entrar en lo que se conoce como un "pool de minería".