Un ASIC Miner es un equipo con chips diseñados para minar bitcoin. Calcula repetidamente la huella numérica de la cabecera de un bloque propuesto, el registro breve de sus datos principales, y busca un resultado que cumpla las reglas de minería. Más potencia significa más intentos por segundo, no una recompensa asegurada. También necesita electricidad, refrigeración, software de control y una fuente de tareas.
Anna ve un pequeño minero junto a un ordenador y se pregunta si su portátil podría hacer lo mismo. Un ordenador corriente puede realizar esos cálculos. Sin embargo, un ASIC está diseñado expresamente para ellos y suele hacer muchos más intentos con la misma energía. Las siglas significan Application-Specific Integrated Circuit: un circuito integrado para una tarea concreta. En el uso cotidiano, ASIC también designa al equipo completo que contiene esos chips. El minero utiliza SHA-256 para buscar una huella numérica adecuada, llamada hash. No conoce de antemano la respuesta correcta: modifica los datos de entrada y vuelve a probar. Esa especialización desplazó gradualmente de la minería competitiva a los procesadores CPU, los procesadores gráficos GPU y los circuitos programables FPGA. Un chip para minar SHA-256 no puede convertirse sin más en un ordenador de uso general. [6] [8]
Imaginemos un minero de 100 TH/s que consume una potencia de 3.000 W. Son cifras ilustrativas, no las especificaciones de un producto. TH/s expresa billones de hashes por segundo: el equipo realiza cien billones de intentos cada segundo. Ese ritmo se llama Hashrate. El contador eléctrico mide energía: con una potencia constante de 3 kW, el equipo consume 72 kWh en 24 horas. Para calcular el coste eléctrico multiplicamos esa cantidad por el precio del kWh. Otra medida es J/TH: julios de energía por billón de intentos. En el ejemplo, 3.000 / 100 = 30 J/TH. Una cifra menor significa menos energía para el mismo trabajo. Hay que comparar métodos de medición y ajustes equivalentes. La eficiencia del chip por separado no es directamente comparable con el consumo de toda la máquina en el enchufe. [7] [8]
Casi toda la energía que consume el minero acaba convertida en calor. Por eso Anna debe pensar dónde disiparlo y, según el diseño, en el ruido de los ventiladores. Un pequeño equipo doméstico y una máquina industrial pueden tener necesidades muy diferentes. La palabra ASIC no indica por sí sola tamaño ni consumo. Además de chips, el equipo lleva fuente de alimentación, reguladores de tensión, un controlador y placas con chips de minería, llamadas hashboards. Los ventiladores o la refrigeración líquida evacuan el calor. Polvo, ventiladores averiados, alimentación inadecuada o ajustes demasiado exigentes pueden causar errores y paradas. Conviene observar el funcionamiento completo, no solo la mayor cifra del anuncio del fabricante. [7] [8]
Al conectarse a un Mining Pool, el minero de Anna recibe tareas de un servicio que coordina a los mineros. El pool es un software y un operador independientes, no parte del chip. Si mina por su cuenta, Anna debe disponer de la infraestructura correspondiente. El firmware, el software de control del equipo, entrega las tareas a los chips y envía los resultados. Primero alguien debe preparar un bloque propuesto con transacciones: un Block Template. Lo proporciona un Full Node u otro proveedor de plantillas. Full Node es un programa que verifica de forma independiente los bloques y las transacciones según las reglas de Bitcoin. BIP22 describe la interfaz getblocktemplate y BIP23 sus extensiones para pools. Stratum V2 separa Mining Protocol, que distribuye tareas; Job Declaration, que permite proponer trabajo propio; y Template Distribution, que suministra plantillas. La posibilidad de elegir transacciones depende de la configuración y del soporte de esos componentes. El chip no las selecciona por sí mismo. [1] [2] [4] [5] [9]
Anna ve shares aceptadas en el panel del pool aunque su equipo no haya encontrado un bloque. Una share cumple una condición más fácil del pool y aporta evidencia estadística del trabajo realizado. El pool tiene en cuenta ese trabajo al calcular los pagos según sus propias reglas. Una share no es otra moneda ni automáticamente una parte de un bloque. Solo un resultado mucho menos frecuente cumple también la condición más difícil de la red Bitcoin. Con él se puede presentar un bloque, que además debe superar todas las demás comprobaciones. Cambiar la dificultad de las shares modifica la frecuencia con que el minero las envía. No aumenta por sí mismo su potencia real ni cambia la dificultad de minería de la red. [4] [6]
Un resultado válido se presenta a la red; no es una orden para los demás. Un Full Node comprueba por su cuenta las reglas de Bitcoin y rechaza un bloque inválido aunque proceda de un minero muy potente. Un ASIC no permite crear una recompensa superior al límite, gastar monedas ajenas sin autorización ni obligar a los nodos a aceptar otras reglas. El operador sí toma decisiones importantes: el firmware, el pool y, cuando la configuración lo permite, las transacciones sobre las que mina. Conviene comparar el rendimiento indicado por la máquina con la estimación del pool durante un periodo más largo, y vigilar shares rechazadas, temperatura y consumo real. Las fluctuaciones breves de la estimación del pool no demuestran por sí solas una avería. [5] [10]
Dos mineros idénticos pueden dar resultados económicos muy distintos. Uno funciona con buena refrigeración y electricidad más barata; otro sufre paradas y paga más por la energía. También influyen la compra y depreciación del equipo, las comisiones del pool, el precio de bitcoin, la dificultad de la red y las comisiones de las transacciones incluidas. La eficiencia técnica no promete recuperar la inversión. La especialización elevó también las exigencias de fabricar chips y operar grandes instalaciones. Al hablar de concentración conviene distinguir fabricantes, propietarios de máquinas, ubicaciones físicas y pools. Que un pool concentre mucho Hashrate no demuestra que una sola empresa sea dueña de todos los equipos conectados. [6] [8]
La frecuencia marca el ritmo del chip y la tensión contribuye a que calcule de forma fiable. Dos chips del mismo modelo pueden necesitar ajustes distintos: la fabricación produce pequeñas diferencias eléctricas. El firmware puede buscar una configuración adecuada para cada chip o placa. Ese proceso se llama Autotuning. Reducir la frecuencia con una tensión apropiada puede mejorar los J/TH aunque baje el Hashrate total. El overclocking, en cambio, puede aumentar el rendimiento a costa de un incremento desproporcionado del consumo y del calor. Todo depende del equipo, su refrigeración y sus ajustes. El rendimiento máximo alcanzable no tiene por qué ser el régimen más sensato a largo plazo. [7]
El cálculo parte de una cabecera de bloque de 80 bytes, un resumen de sus datos básicos. Contiene la versión, el hash del bloque anterior, el Merkle Root que resume las transacciones, una marca temporal, el objetivo de dificultad codificado en nBits y un campo Nonce de 32 bits. SHA-256(SHA-256(header)) significa aplicar SHA-256 dos veces; header es esa cabecera. El hash resultante se interpreta como un número. Para cumplir la prueba de trabajo no debe superar el objetivo: hash ≤ target. El chip puede acelerar el cálculo reutilizando resultados intermedios de las partes de entrada que no cambian. Los nodos verifican el resultado y el objetivo correcto, no cómo diseñó el fabricante sus circuitos. Esta comprobación no sustituye las demás reglas de validez del bloque. [6] [10]
Nonce ofrece 2^32 valores posibles. Un minero rápido los prueba enseguida, así que el sistema debe variar otros datos. Extranonce es un valor auxiliar de la Coinbase Transaction, la primera transacción especial que incluye la recompensa del bloque. Cambiarlo modifica esa transacción, su Merkle Root y la entrada de la siguiente ronda de cálculos. También se puede variar el campo temporal nTime dentro de los límites permitidos o utilizar los bits de versión adecuados. La propuesta BIP320 describe la reserva de ciertos bits para uso general; no autoriza a ignorar las reglas de la red. Stratum V2 exige repartir el trabajo para que los equipos no desperdicien esfuerzo probando los mismos candidatos. La finalidad es dar nuevas posibilidades a los chips, no aumentar la recompensa por bloque. La propuesta más reciente, BIP323, pretende sustituir a BIP320 y reservar 24 bits de versión para este fin. La especificación actual de Stratum V2 ya remite a BIP323. Sigue en estado Draft, es decir, borrador: publicar una propuesta no cambia por sí solo las reglas de Bitcoin. [3] [4] [11]
Para obtener la imagen más completa, lee esta entrada junto con Minería, Hashrate, SHA-256, Block Header, Nonce, Extranonce. También enlazan con esta entrada Mining Pool, Hashrate, Nonce, Braiins.