Table of Contents
La minería es, quizás, uno de los sectores más complejos e incomprendidos del mundo de las criptomonedas. Intrínsecamente relacionada con el protocolo de redes blockchain y a sus procesos criptográficos, los mineros realizan actividades altamente técnicas para mantener a las criptomonedas, como bitcoin, en un funcionamiento óptimo. Debido a su complejidad, es importante conocer los términos básicos que conforman este mecanismo para poder entender su funcionamiento.
1 ASIC
Los mineros ASIC son equipos informáticos especializados para la minería de criptomonedas. Específicamente aquellas que usan el Algoritmo de Consenso, Prueba de Trabajo (PoW), para llevar a cabo la validación de sus transacciones; tales como bitcoin, litecoin, dash, entre otras.
Las siglas hacen referencia al término en inglés Application-Specific Integrated Circuit, el cual se traduce al español como “Circuito Integrado Especifico de Aplicación”. Basados en circuitos integrados y chips, estos dispositivos pueden ser programados para llevar a cabo funciones muy específicas, como resolver problemas matemáticos propuestos por el protocolo de una red blockchain.
Cada ASIC tiene características únicas que varían de una red u otra o dependen del rendimiento que ofrecen. Por ejemplo, hay mineros que solo trabajan con un tipo de algoritmo de minería, por lo que pueden ser utilizados únicamente en redes que funcionen con esa criptografía. Asimismo, algunos equipos ofrecen mayor potencia, mientras que otros se destacan por su capacidad de ahorro.
2 Algoritmo de consenso
Un algoritmo de consenso es, a nivel técnico, el conjunto de reglas que componen el protocolo de una red blockchain para asegurar su funcionamiento. En pocas palabras, se trata de un mecanismo del software que hace posible la toma de decisiones dentro de un grupo de participantes que se encuentran interconectados de forma descentralizada.
Para asegurar su funcionamiento, todos los estatutos que conforman el algoritmo de consenso son auditados y verificados por los nodos que componen dicha red. En el caso de criptomonedas como bitcoin (BTC), los nodos completos guardan una copia de las transacciones y los nodos mineros son los que se encargan de revisar/confirmar las operaciones para asegurarse que se cumplan las reglas del protocolo.
Socialmente, los algoritmos de consenso son un acuerdo que tienen los participantes de una red acerca de cómo se comportará una determinada plataforma o criptomoneda. En este sentido, el consenso de la comunidad tiene incidencia en cuestiones como el tamaño de bloque, la recompensa por minado y el criterio de validez de las transacciones.
¿Algoritmos de consenso conocidos?
Los dos modelos de consenso más populares son la Prueba de Trabajo (PoW), reconocida por Bitcoin, y la Prueba de Participación (PoS) que ahora funciona en redes como Ethereum.
3 Algoritmo de minería
Un algoritmo de minería es aquel elemento de una red blockchain que hace posible la tarea de procesar bloques de transacciones, registrarlos en el libro de contabilidad distribuida y generar nuevas monedas. Es decir, permiten minar tal y como lo conocemos hoy en día.
A estos elementos se le describen como “funciones hash criptográficas complejas”, encargándose de definir la manera en que serán procesados los datos de la red para confirmar nuevas transacciones. Asimismo, un algoritmo de minería puede tener la tarea de ajustar la dificultad de minería, calibrando así el tiempo en que se confirman nuevos bloques dependiendo de la cantidad de participantes que estén minando.
El algoritmo de minería de Bitcoin
El algoritmo SHA-256, que es utilizado por Bitcoin y Bitcoin Cash, tiene la peculiaridad de que se puede minar con múltiples dispositivos (CPU, GPU, ASIC). Además, es el elemento que hace posible la creación de ID para nuevos bloques, para llevar a cabo la prueba de trabajo (PoW) e incluso permite realizar hashing de direcciones. Es decir, generar direcciones públicas a partir de la llave privada de cada propietario.
Dependiendo del algoritmo de minería que ha sido seleccionado para una determinada blockchain, los bloques de transacciones se identificarán bajo características únicas y específicas. Asimismo, los algoritmos tienen la capacidad de definir con qué equipos se puede minar dicha red y cómo se lleva a cabo todas las operaciones que hacen posible el registro de nuevos bloques.
El algoritmo de minería = Algoritmo de consenso
Vale destacar que los conceptos “algoritmo de consenso” y “algoritmo de minería” están muy relacionados. Todo algoritmo de minería forma parte de un algoritmo de consenso, puesto que estos elementos hacen posible el funcionamiento de la Prueba de Trabajo. No obstante, no todos los algoritmos de consenso tienen algoritmo de minería, como es el caso de la Prueba de Participación.
4 Bloques
Los bloques son aquellos elementos de una red blockchain en donde se almacena información que, en la gran mayoría de los casos, es inmutable. Por ejemplo, un bloque suele tener datos de las transacciones de los usuarios, la marca de tiempo (timestamp), en que fue registrado e, incluso, datos del bloque anterior.
Toda esta información se registra en la cadena y se referencia con un hash, lo que la diferencia de otras operaciones de la red. De esta manera, los bloques optimizan el proceso de validación de las transacciones de una criptomoneda.
5 Encabezado de bloque
Todo bloque de una red de criptomonedas almacena en su interior información que lo identifica. A este conjunto de metadatos se le conoce como “encabezado de bloque”, y se trata de una información vital a la hora de minar, puesto que permite la identificación y registro de nuevos bloques de transacciones en la red.
El encabezado de bloque está compuesto, generalmente, por una referencia a un hash del bloque anterior. Esta información conecta al nuevo bloque con los datos ya registrados a la red. Asimismo, también se señala, en el encabezado, metadatos como la dificultad de minería de la red para ese momento, la marca de tiempo (timestamp) y el nonce.
Otros datos que se contienen en el encabezado son la raíz del árbol de merkle, que es una estructura utilizada para resumir de manera eficiente y directa todas las transacciones registradas hasta ese momento en la blockchain.
6 Hash
El hash es un algoritmo matemático que transforma una determinada información en un código alfanumérico que posee una longitud definida. O sea, un texto, un video musical o los datos de una transacción se pueden convertir en números y letras aleatorios que lo identifiquen como un dato único en su tipo.
Este algoritmo se caracteriza por arrojar un código que siempre tendrá la misma cantidad de números y letras sin importar la cantidad de datos que se le proporcione. Para saber más de esta función, puedes visitar esta Criptopedia.
7 Hashrate
El hashrate o tasa de hash es la unidad de medida de todo el poder computacional de la red de Bitcoin. Su valor numérico se utiliza para expresar la cantidad de operaciones matemáticas que se ejecutan entre todos los mineros de Bitcoin que compiten entre sí por la recompensa.
¿Para qué funciona el hashrate?
El hashrate está involucrado en varias funciones: la confirmación de transacciones, la adjudicación de la recompensa y la seguridad de la red.
El hahsrate puede ser entendido también como la capacidad de un solo equipo de minería para hacer cálculos matemáticos. De modo que, con ese valor, podemos calcular cuán eficiente es una operación de minería de Bitcoin. Si deseas saber más sobre este elemento de la minería de criptomonedas, te invitamos a que leas nuestro artículo especializado en tasa de hash.
8 Halving
Se conoce como halving a un proceso automatizado que poseen ciertas redes blockchain, por el cual se reduce a la mitad (u otra cantidad) la recompensa que reciben los mineros por confirmar bloques de transacciones.
O sea, se trata de una medida económica propia de las políticas monetarias que poseen ciertos protocolos blockchain. Debido a ello, varía dependiendo del consenso de la comunidad y de la propuesta de valor de cada criptomoneda.
En el caso de Bitcoin, la criptomoneda más famosa, el halving ocurre cada 210.000 bloques minados. Esto abarca un periodo, aproximado, de 4 años. Según las reglas del protocolo, está programado que el halving siga ocurriendo hasta que en un futuro próximo la red deje de emitir nuevos bitcoins.
9 ID Block
El identificador de bloque, también conocido en inglés como ID Block, es un elemento fundamental para la distinción y registro de nuevos bloques en una blockchain. Se trata de un hash criptográfico único, el cual se usa para identificar cada uno de los bloques de transacciones que se van almacenando en estas redes.
La secuencia de hashes de cada uno de estos bloques crea una cadena, la cual se remonta hasta el primer bloque creado, conocido como bloque génesis. Asimismo, cumple un papel destacado a la hora de minar, puesto que es exactamente el ID Block lo que los mineros buscan cuando llevan a cabo la Prueba de Trabajo (PoW).
Para explicarlo en pocas palabras, un minero pone a disposición de la red uno o varios dispositivos de procesamiento capaces de resolver algoritmos matemáticos. Ya sea un ASIC o una computadora, la función de estas máquinas es utilizar su poder computacional para resolver el acertijo del algoritmo de minería que propone la red.
Se considera que un minero resolvió dicho algoritmo, solo sí, logra dar con el identificador de bloque que corresponde a ese bloque que está minando.
¿La clave de una caja fuerte?
Sí, tal y como si se tratase de una combinación de clave de banco o de una caja fuerte. Existe un hash criptográfico único, para cada bloque, que debe ser descubierto, al conseguirlo permite que las transacciones se registren en la red y se libere la recompensa por minado. El minero, o grupo de mineros, que dé con el ID Block más rápido será el que se quede con la recompensa.
10 Mempool
La mempool es una memoria donde se almacenan de forma momentánea las transacciones aún no confirmadas de los usuarios. Es una base de datos compartidos entre los distintos nodos de la red, la cual permite que se procesen de forma ordenadas todas las operaciones de la criptomoneda.
Cada vez que un participante de Bitcoin hace una transacción, el primer lugar donde va a parar dicho envío es en la mempool. Cuando llegan a este lugar, los nodos se encargan de reenviarlas hasta que sean seleccionadas por un minero. El proceso finaliza cuando la transacción abandona la mempool, puesto que ha sido registrada en un bloque y procesada como parte del historial de la blockchain.
Los nodos y la mempool
Bitcoin Core, el cliente más utilizado por los nodos completos y mineros de Bitcoin, puede almacenar un total de 300 MB de transacciones sin confirmar. Sin embargo, otros clientes pueden almacenar limites mayores de transacciones en espera.
11 Nivel de dificultad de minería
La dificultad de minería es un valor que se usa para establecer que tan difícil es extraer un bloque en un determinado momento. Asimismo, se puede describir como un mecanismo o número que determina cuán complejo será el acertijo hash que se tiene que resolver en cada bloque.
Como un elemento más que permite el funcionamiento de la prueba de trabajo, la dificultad de minería tiene la capacidad de variar en función de la potencia de cálculo de los mineros que se encuentran conectados en la red. Es decir, está intrínsecamente relacionada a la tasa de hash de una red blockchain (también conocida como hash rate), que no es más que la cantidad de mineros conectados en una red y cuán poderosas son sus máquinas.
De esta manera, dependiendo de si el hash rate aumenta o disminuye, la dificultad de minería se ajusta automáticamente cada cierta cantidad de bloques minados. En el caso de Bitcoin, se ajusta cada 2.016 bloques. Cada vez que la dificultad de minería aumenta, los mineros conectados a la red requerirán de mayor potencia informática para ganar monedas.
12 Nodo
Un nodo es un ordenador que se encuentra conectado con otros, conformando así una red de participantes que se pueden compartir información y siguen unas reglas de consenso determinadas. Estos nodos se organizan en base al protocolo de las redes a las que están conectados, aumentando la distribución de los datos y colaborando con el cumplimiento del algoritmo de consenso.
En el caso particular de Bitcoin, los nodos cumplen una función vital para su buen funcionamiento: se encargan de supervisar todas las operaciones e, incluso, llegan a identificar aquellas que son legítimas de las que no. De esta manera, se encargan de verificar que los usuarios no hagan doble gasto, o sea, que no usen dinero previamente gastado.
13 Nodo completo
Entre todos los nodos que conforman una red, en el caso de las redes blockchain existe un término especial conocido como “nodo completo”. Para explicarlo de forma sencilla, un nodo completo es un equipo que almacena una copia exacta, completa y actualizada de la red a la que pertenece. Por ejemplo, en el caso de Bitcoin, se trata de equipos de computación que implementan clientes de esta blockchain y se encargan de validar las transacciones.
La tarea principal de un nodo completo es hacer cumplir todas las reglas de consenso del protocolo de su red. Debido a ello, son considerados un elemento que brinda seguridad y estabilidad a las redes de criptomonedas. Para llevar a cabo esta actividad, los nodos se encargan de transmitir sus propias transacciones y las de otros usuarios. Asimismo, actualiza la blockchain cada vez que se genera un nuevo bloque, claro está confirmando previamente que este cumpla con las reglas establecidas por la comunidad.
Si el bloque creado incumple alguna regla, como el tamaño del bloque, contiene una transacción con doble gasto o se generaron más BTC de los programados, entonces dicho bloque se rechazará de forma inmediata y se considerará al próximo como válido.
14 Nodo minero
Además de los nodos completos, también existe un tipo de nodo que funge un papel principal en la creación de nuevos bloques, conocidos como nodos mineros. Estas computadoras también guardan una copia completa de la blockchain, cuya información pueden transmitir a otros participantes, junto a un software de minería que ejecutan para llevar a cabo sus actividades de confirmación de transacciones.
Gracias a dicho software, estos nodos pueden acceder a las transacciones que se encuentran en espera de confirmación en la mempool de la red, también pueden agregar nuevos bloques y luego transmitir todas sus actividades a la comunidad. Aunque todos los usuarios de bitcoin pueden ser nodos mineros, hoy en día la modalidad más usada es que un pool de minería sea el que administre el nodo para que su grupo de mineros trabaje.
15 Nonce
La palabra nonce hace referencia a un “número de un solo uso”, el cual es empleado en un sistema criptográfico para determinar la seguridad digital de una red. En el caso de las criptomonedas, se emplea para generar la identificación de un nuevo bloque (ID Block) cuando se está minando en un modelo de Prueba de Trabajo (PoW).
Los mineros, además, utilizan el nonce para verificar que han realizado su trabajo de manera exitosa y han dado (o no) con la respuesta correcta al algoritmo de minería que les permitirá confirmar un nuevo bloque.
Vale señalar que encontrar un nonce no es una tarea fácil y, mucho menos, encontrar el ID Block correcto. En este sentido, cuando se está minando, el nonce se puede calcular en varias ocasiones hasta encontrar aquel que coincida con la solución del problema planteado. O, en otras palabras, con la clave que desbloquee el bloque y su recompensa.
16 Marca de tiempo (timestamp)
La marca de tiempo, también conocida en inglés como timestamp, indica la hora exacta en la que un bloque ha sido generado o una transacción ha sido recibida. Se trata de un dato temporal y recurrente en las redes blockchain, cuya finalidad es mantener un historial inalterable de todo lo que ocurre en dicho sistema.
En el caso de Bitcoin, que es la primera red de criptomonedas del mercado, el timestamp de un bloque es calculado en base a los nodos. Cada uno de los participantes, cuando se mina un nuevo bloque, se encarga de retransmitir la información en la red y actualizar la blockchain, por lo que la marca de tiempo que queda registrada en el libro contable es una medida del momento en que enviaron los nodos dichos datos.
¿Para qué sirve el timestamp?
El timestamp es utilizado en las redes blockchain como un dato que identifica la información almacenada dentro del sistema y hace irrepetible a los bloques. Adicionalmente, la marca de tiempo también permite ajustar la dificultad de minería dentro de la red, ya que está programada en redes como bitcoin que esta se modifique en base a la media de tiempo ha tardado la red en generar los últimos bloques.
17 Prueba de trabajo
La Prueba de Trabajo, identificada bajo las siglas PoW, es uno de los algoritmos de consenso más utilizados entre las redes de criptomonedas. Para ponerlo en contexto, toda la economía alrededor de los activos criptográficos empezó gracias a PoW, puesto que el creador de Bitcoin —Satoshi Nakamoto— seleccionó este mecanismo para que fuese la base del funcionamiento de Bitcoin.
En el caso de Bitcoin, este algoritmo es utilizado para la creación de nuevos bloques y la protección de la red. Para llevar a cabo esta tarea, los mineros deben utilizar un equipo y software especializado que les permita resolver una serie de cómputos para encontrar el hash criptográfico que identifica a cada bloque (ID Block).
De lograrse el objetivo, los mineros reciben una recompensa, la cual funciona como incentivo económico para asegurar un trabajo honesto entre los participantes de la red, así como pone a circular nuevas criptomonedas
18 Recompensa de bloque
La recompensa de bloque es el dinero que paga una red de criptomonedas por minar en ella. De igual manera, trata de un mecanismo que forma parte de las políticas monetarias de estas redes y de sus planes de emisión de activos. Por cada bloque minado, se generan una cantidad de monedas nuevas.
Existen algunas blockchains como Bitcoin o Litecoin cuya emisión está programada para tener un límite, por lo que en un futuro próximo se dejarán de emitir recompensas.
Las monedas que reciben los mineros a cambio de su trabajo siempre son las nativas de la red en la que se está minando. O sea, si se mina en Bitcoin se reciben BTC, no ethers (ETH) o monero (XMR). Además de estas nuevas monedas, los mineros también suelen recibir las comisiones que pagan los usuarios para que sus transacciones sean agregadas a un nuevo bloque.