lunes, octubre 18, 2021
bloque ₿: 705.626
lunes, octubre 18, 2021 | bloque ₿: 705.626

Términos que debes conocer para entender la minería de criptomonedas

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 algunas de las actividades más técnicas para mantener a las criptomonedas, como bitcoin, en un funcionamiento óptimo.

Debido a que guardan cercanía con el software de estas herramientas financieras, existen diversos conceptos propios de la programación, la criptografía y del ecosistema blockchain cuya comprensión es vital para poder entender cómo se aprueban transacciones y gana dinero en estas redes.

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 y mineros son los que se encargan de revisar 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.

Los dos modelos de consenso más conocidos son la Prueba de Trabajo (PoW), popularizada por Bitcoin, y la Prueba de Participación (PoS) que se puso en práctica con redes como Tezos o Dash.

Los algoritmos de consenso facilitan que distintos participantes de una red gobiernen su funcionamiento y tomen decisiones acerca de su futuro.

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 consenso 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.

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.

Por ejemplo, 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.

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.

Todo bloque de una red de criptomonedas contiene información tal como la identificación, el hash del bloque previo y las direcciones de las transacciones.

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.

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.

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.

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 los protocolos blockchain. Debido a ello, varía dependiendo del consenso de la comunidad y de la propuesta de valor de cada criptomoneda.

El concepto de halving se ilustra, en pocas palabras, como la reducción a la mitad de la cantidad de monedas que emite una red y reciben los mineros por sus actividades.

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.

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 CPU, un GPU o un ASIC, 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.

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.

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.

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. En el caso de Bitcoin, 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.

Los nodos están compuestos por computadoras conectadas a la red y que comparten información entre sí.

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.

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.

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.

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.

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.

Todos los bloques de la red de bitcoin tienen marca de tiempo. De esta manera, se asegura el registro inmutable de operaciones, como es el caso del primer bloque minado en la historia.

En resumidas cuentas, 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.

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

Prueba de Participación (PoS)

La Prueba de Participación, conocida igualmente por sus siglas PoS, es otro de los algoritmos de consenso más utilizados en las redes blockchain. La aparición de este mecanismo se da como una propuesta para reemplazar el uso de poder computación y, por ende, electricidad, para asegurar el procesamiento de transacciones y la creación de nuevas monedas.

Con la aparición de este algoritmo, se generan nuevos términos como el staking, que es la actividad mediante la cual dueños de criptomonedas usan sus fondos para agregar nuevos bloques a la red. Para poder llevar a cabo esta tarea, los propietarios deben depositar sus activos en un monedero y retenerlos (como si estuviesen holdeando), un recurso que sirve como garantía de la honestidad de su trabajo y que le puede retribuir ganancias por sus operaciones.

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.

En el caso de redes como bitcoin, la recompensa de bloque va disminuyendo progresivamente en base al halving. Hoy en día los mineros solo reciben 6,25 BTC de recompensa por sus actividades.

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.