¿Qué es la minería de criptomonedas?
Índice
Introducción
¿Cómo funciona la minería?
¿Pueden minarse todas las criptomonedas?
Proof of Work (PoW)
Distintos métodos de minería de criptomonedas
Minería con CPU
Minería con GPU
Minería ASIC
Pools de minería
Conclusiones
¿Qué es la minería de criptomonedas?
InicioArtículos
¿Qué es la minería de criptomonedas?

¿Qué es la minería de criptomonedas?

Principiante
Publicación: Dec 6, 2018Actualización: Mar 22, 2022
8m

TL;DR (RESUMEN)

La minería de criptomonedas designa el proceso de verificación y validación de transacciones de una blockchain. Es también el proceso que crea nuevas unidades de criptomonedas. El trabajo que realizan los mineros requiere recursos computacionales intensivos, pero es lo que mantiene segura una red blockchain. Los mineros honestos y exitosos son recompensados por su trabajo con nuevas criptomonedas que son creadas, así como comisiones de transacción.


Introducción

La minería es el proceso mediante el cual las transacciones de criptomonedas entre usuarios son verificadas y agregada al libro de registros público de la blockchain. Las operaciones de minería son también responsables de introducir nuevas monedas en el suministro circulante existente.

La minería es uno de los elementos clave que permite a la blockchain de Bitcoin funcionar como un libro de registros distribuido. Todas las transacciones se registran en una red peer-to-peer sin necesidad de una autoridad central. En este artículo, analizaremos la minería tal como se lleva a cabo en la red Bitcoin, aunque el proceso es similar en altcoins que adoptan el mismo mecanismo de minado.


¿Cómo funciona la minería?

A medida que se realizan nuevas transacciones en la blockchain, estas se envían a un pool denominado memory pool. El trabajo de un minero es verificar la validez de estas transacciones pendientes, así como organizarlas en bloques. Puedes imaginarte un bloque como una página del libro de registros de la blockchain, en la que una serie de transacciones se registran (junto con otros datos).
De forma más específica, un nodo minero es responsable de recolectar transacciones no confirmadas del memory pool y reunirlas en un bloque candidato. Después, el minero tratará de convertir este bloque candidato en un bloque válido y confirmado. Pero para ello, necesita encontrar la solución para un problema matemático complejo. Esto requiere una gran cantidad de recursos computacionales, pero cada bloque minado con éxito otorgará al minero una recompensa del bloque, que consistirá en criptomonedas recién creadas, así como comisiones de transacción. Analicemos con mayor detalle el proceso de minado.


Paso 1: Hashing de transacciones

El primer paso para minar un bloque es tomar transacciones pendientes del memory pool y pasarlas, una por una, a través de una función hash. Cada vez que pasamos un fragmento de información a través de una función hash, generaremos un output de tamaño fijo denominado hash. En el contexto de la minería, el hash de cada transacción consiste en una serie de números y letras que funciona como identificador. El hash de la transacción representa toda la información contenida en la misma.
Aparte de hacer hashing y agregar cada transacción individualmente, el minero también agrega una transacción personalizada, en la que se envía a sí mismo la recompensa del bloque. Esta transacción se conoce como transacción coinbase, y es la que crea monedas nuevas. En la mayoría de casos, la transacción coinbase es la primera que se registra en un nuevo bloque, seguida por todas las transacciones pendientes que se quieren validar.

Paso 2: Crear un Merkle Tree

Después de que cada transacción haya sido sometida a hashing, los hashes se organizan en algo llamado Merkle Tree (Árbol de Merkle). También conocido como árbol de hashes, el Merkle Tree se forma organizando los hashes de las transacciones en pares y, a continuación, sometiéndolos a hashing. Los nuevos outputs de los hashes se organizan en pares y se vuelven a someter a hashing, y el proceso se repite hasta que se crea un único hash. Este último hash se denomina root hash (o Merkle Root) y es, básicamente, el hash "raíz" que representa todos los hashes previos que han sido utilizados para generarlo.

Paso 3: Encontrar un encabezado del bloque válido (hash de bloque)

El encabezado del bloque funciona como un identificador de cada bloque individual, lo que significa que cada bloque tiene un hash único. Al crear un nuevo bloque, los mineros combinan el hash del bloque previo con el root hash de su bloque candidato, para generar el hash de un nuevo bloque. Aparte de estos dos elementos, también deben agregar un número arbitrario denominado nonce.

Por tanto, al tratar de validar su bloque candidato, un minero debe combinar el root hash, el hash del bloque previo y un nonce, y enviarlo todo a través de una función hash. Su objetivo es crear un hash que se considere válido.

El root hash y el hash del bloque previo no pueden ser modificados, por lo que los mineros deben cambiar el valor del nonce varias veces hasta encontrar un hash válido.

Para que sea considerado válido, el output (hash del bloque) debe ser inferior a cierto valor objetivo, que es determinado por el protocolo. En la minería de Bitcoin, el hash del bloque debe empezar por cierto número de ceros. Esto es lo que denominamos dificultad de minado.

Paso 4: Propagar el bloque minado

Como acabamos de ver, los mineros deben someter a hashing el encabezado del bloque una y otra vez, con diferentes valores de nonce. Repiten este trabajo hasta que encuentran un hash de bloque válido. El minero que lo encuentra, a continuación propaga este bloque en la red. El resto de los nodos comprobará si el bloque y su hash son válidos, y si es así, agregarán el nuevo bloque en su copia de la blockchain.

Llegado ese momento, el bloque candidato se convierte en un bloque confirmado, y todos los mineros proceden a minar el siguiente. Todos lo mineros que no pudieron encontrar un hash válido a tiempo descartan su bloque candidato, y la carrera por minar se pone en marcha de nuevo.


Ajuste de la dificultad de minado

La dificultad de minado es ajustada regularmente por el protocolo para garantizar que el ritmo al que nuevos bloques son creados se mantenga constante. Esto es lo que hace que la emisión de nuevas monedas sea estable y predecible. La dificultad se ajusta en proporción a la cantidad de potencia computacional (tasa de hash) dedicada a la red.

Por ello, cada vez que nuevos mineros se unen a la red y la competencia se incrementa, la dificultad de hashing sube, evitando así que el tiempo medio de bloque disminuya. En contraste, si muchos mineros deciden abandonar la red, la dificultad de hashing disminuye, lo que hará que resulte menos difícil minar un nuevo bloque. Estos ajustes mantienen el tiempo de bloque constante, independientemente de la potencia de hashing total de la red.


¿Qué ocurre si dos bloques son minados al mismo tiempo?

A veces sucede que dos mineros presentan un bloque válido al mismo tiempo, y la red se encuentra con dos bloques competidores. Los mineros proceden entonces a minar el siguiente bloque partiendo del que recibieron primero. Esto provoca que la red se divida (temporalmente) en dos versiones diferentes de la blockchain.

La competencia entre estos dos bloques se mantendrá hasta que el siguiente bloque sea minado, aparte de cualquiera de los dos bloques competidores. Cuando un nuevo bloque es minado, el bloque predecesor será considerado el ganador. El bloque que es abandonado se denomina orphan block (bloque huérfano) o stale block (bloque obsoleto), y llevará a los mineros que lo eligieron previamente a volver a minar la cadena del bloque ganador.


¿Pueden minarse todas las criptomonedas?

Bitcoin es el ejemplo más popular y consolidado de una criptomoneda minable, pero no todas las criptomonedas lo son. La minería de Bitcoin se basa en un algoritmo de consenso denominado Proof of Work (PoW).


Proof of Work (PoW)

Proof of Work (PoW) es el mecanismo de consenso de blockchain original, creado por Satoshi Nakamoto. Fue presentado en el whitepaper de Bitcoin en 2008. En pocas palabras, PoW determina la forma en que una red blockchain llega a consenso entre todos los participantes distribuidos sin intermediarios externos. Lo logra al exigir una potencia computacional importante que desincentiva a quienes actúan de mala fe.
Como hemos visto, las transacciones en una red PoW son verificadas por mineros. Para ganarse el derecho de minar el siguiente bloque, los mineros compiten entre sí resolviendo complejos rompecabezas criptográficos utilizando hardware especializado. El primer minero en encontrar una solución válida puede enviar a la blockchain su bloque de transacciones y recibir la recompensa del bloque.

La cantidad de criptomonedas de la recompensa del bloque varía en las diferentes blockchains. Por ejemplo, en la blockchain de Bitcoin, los mineros pueden obtener 6.25 BTC de recompensa del bloque (a diciembre de 2021). La cantidad de BTC de la recompensa del bloque se reduce a la mitad cada 210,000 bloques (aproximadamente, cada cuatro años) debido al mecanismo de halving.


Distintos métodos de minería de criptomonedas

No existe un método único para minar criptomonedas. Los equipos y procesos cambian a medida que nuevo hardware y mecanismos de consenso emergen. Normalmente, los mineros utilizan unidades informáticas especializadas para resolver las complejas ecuaciones criptográficas. Veamos cómo funcionan algunos de los métodos de minado más comunes.


Minería con CPU

En la minería con Unidad Central de Procesamiento (CPU), se utilizan CPU de computadoras para la ejecución de las funciones hash requeridas por PoW. En las etapas iniciales de Bitcoin, el costo y la barrera de entrada para minar era bajo. La dificultad de minado podía ser manejada por una CPU ordinaria, por lo que cualquier persona podía tratar de minar BTC y otras criptomonedas.

Sin embargo, a medida que más gente empezó a minar y la tasa de hash de la red aumentó, hacerlo de manera rentable resultó cada vez más difícil. Aparte de eso, el auge de hardware de minería especializado con una mayor potencia computacional hizo que con el tiempo que la minería de CPU fuera prácticamente imposible. En la actualidad, la minería con CPU ya no es una opción viable, dado que todos los mineros utilizan hardware especializado.


Minería con GPU

Las Unidades de Procesamiento Gráfico (GPU) están diseñadas para procesar un amplio rango de aplicaciones en paralelo. Aunque habitualmente se utilizan para videojuegos o el renderizado de gráficos, también pueden aplicarse a la minería.

Las GPU son relativamente baratas y más flexibles que el popular hardware de minería ASIC. Algunas altcoins se pueden minar mediante GPU, pero la eficiencia depende de la dificultad de minado y algoritmo.


Minería ASIC

Un Circuito Integrado para Aplicaciones Específicas (ASIC) está diseñado para cumplir un único propósito concreto. En el caso de las criptos, designa un hardware especializado desarrollado para minería. La minería ASIC es muy eficiente, pero costosa.

La minería es una competición. Para minar de manera rentable, necesitas hardware de minería competitivo. Dado que los mineros ASIC están a la vanguardia de la tecnología minera, el costo de una unidad es mucho más elevado que el de los CPU o GPU. Además, los constantes avances de la tecnología ASIC hacen que los viejos modelos ASIC dejen de ser rentables rápidamente, lo que significa que a menudo deben ser reemplazados. Esto convierte a la minería ASIC en una de las formas más caras de minar, incluso sin contar el costo de la electricidad.


Pools de minería

Dado que la recompensa del bloque se otorga al primer minero exitoso, la probabilidad de encontrar el hash correcto es extremadamente baja. Los mineros que disponen de un pequeño porcentaje de la potencia de minado tienen una probabilidad muy pequeña de descubrir el siguiente bloque por cuenta propia. Los pools de minería ofrecen una solución a este problema.

Los pools de minería son grupos de mineros que unen sus recursos (potencia de hash) para incrementar la probabilidad de ganar recompensas del bloque. Cuando el pool tiene éxito y encuentra un bloque, los mineros se reparten la recompensa de forma equitativa entre todos los integrantes del pool, en función de la cantidad de trabajo aportada.

Los pools de minería pueden beneficiar a los mineros particulares en términos de hardware y costo de la electricidad, aunque el dominio que ejercen sobre la minería despierta inquietudes relativas a un ataque del 51% en la red.


Conclusiones

La minería de criptomonedas es un componente clave de Bitcoin y otras blockchains PoW. Es uno de los elementos que mantiene segura la red y constante la emisión de nuevas monedas. La minería presenta ciertas ventajas e inconvenientes, siendo el beneficio más obvio las ganancias potenciales que se pueden obtener de las recompensas del bloque. Sin embargo, las ganancias de la minería se pueden ver afectadas por una serie de factores, entre los que se incluyen el costo de la electricidad y los precios del mercado. No hay ninguna garantía de que vayas a obtener ganancias, así que antes de lanzarte a minar criptomonedas, recuerda llevar a cabo tu propia investigación (DYOR, Do Your Own Research) y evaluar todos los riesgos potenciales.