La minería de Zcash es una de las varias actividades que se pueden hacer libremente dentro de la red de esta criptomoneda, básicamente porque es descentralizada. Este es un tema que no se ve mucho en la web porque quizás es opacada por la minería de Bitcoin.
Pero más allá de esto, es la actividad más importante para mover las transacciones, proteger la red, crear nuevas unidades de ZEC, financiar el desarrollo, mantener el consenso y todo esto se puede resumir en una frase:
Sin la minería digital, Zcash se detendría y dejaría de funcionar.
En esta serie de artículos busco que aprendas las bases de la minería de Zcash, consideraciones técnicas, infraestructura de granja, selección del tipo de minería, herramientas para la actividad, estimaciones e incluso legalidad para que al final, con toda la información en la mano puedas decidir si esta es o no la actividad que quieres hacer y como la debes llevar a cabo.
¿Qué necesito para empezar?
Para empezar, no necesitas nada. Para minar Zcash no existen requisitos previos como en otras redes, que debes pagar para tener nodos o delegar para validar TX. En la minería digital de monedas como Zcash o Bitcoin no existe en realidad un requisito mínimo. Al ser redes descentralizadas, cualquiera puede participar para mantener la red, asegurarla, validar transacciones o tener un nodo.
Sin embargo, si hay algo que debes tener antes de comenzar con esta actividad, CONOCIMIENTOS. Así como el que incursiona en el mundo del pan montando una panadería debe tener, aunque sea nociones básicas de cómo hacer el pan, o el que incursiona con una cafetería debería por lo menos saber del proceso del café, y así con cualquier negocio que se emprenda, para la minería digital es igual, sí, debes tener conocimientos de lo que estás haciendo, ya que esta es una actividad que demanda un conocimiento mínimo para la puesta en marcha de una infraestructura, sin importar el tamaño.
Entonces, ¿Qué Necesito aprender?
Los conceptos básicos en los que se fundamenta la tecnología. Empezando por entender que es la minería digital, la prueba de trabajo, nodos y así sucesivamente hasta llegar a la infraestructura, herramientas y hasta legalidad.
Minería Digital
En esencia, los mineros de Zcash verifican y validan las transacciones de la red, agregan nuevos bloques a la cadena de bloques, inyectan poder de procesamiento y aseguran la red contra cierto tipo de ataques informáticos, como el DoS (Denegación de Servicios). Como recompensa por su trabajo reciben las nuevas unidades de ZEC y las comisiones de transacción.
Para lograr todo esto, Zcash emplea un protocolo informático que se encarga de proteger la red, validando que cada actor sea legítimo, conocido como Prueba de Trabajo (PoW)
POW – Prueba de Trabajo
Sin ahondar mucho en esto, es una técnica ideada por Cynthia Dwork y Moni Naor en el ‘92, para combatir el correo electrónico basura o SPAM. En el ’97, Adam Back (fundador y CEO de Blockstream) hace la primera implementación de este protocolo en su sistema Hashcash, para evitar los ataques de DoS y Spam de email, requiriendo que los usuarios pagaran una cuota por cada correo a enviar a través de trabajo computacional.
En el 2008, Satoshi Nakamoto lo utiliza como solución al problema de Doble Gasto, es decir, gastar más de una vez el mismo saldo.
Proponemos una solución al problema del doble gasto utilizando una red de igual a igual. La red marca la hora de las transacciones al agruparlas en una cadena de prueba de trabajo basada en hash, formando un registro que no se puede cambiar sin rehacer la prueba de trabajo.
Satoshi Nakamoto
Bitcoin: A Peer-to-Peer Electronic Cash System (2008) – Abstract
La Prueba de Trabajo es un algoritmo informático utilizado para llegar a un acuerdo descentralizado, que determine cuál de los bloques minados se agregará a la cadena, requiriendo al usuario inyección de poder de Hash (poder de procesamiento) para resolver un problema matemático, obtener una firma única para cada bloque.
Equihash
Si bien la arquitectura de base de Zcash está basada en la de Bitcoin, Zcash cambio parte de la tecnología integrando en las Pruebas de Conocimiento Cero y además no utiliza el mismo algoritmo criptográfico de dispersión SHA-256, utiliza uno propio llamado EQUIHASH, creado con el fin de ser resistentes a los equipos especializados de minería (ASIC) y evitar la centralización del poder de minería, aunque en la actualidad existen muchos tipos de mineros ASIC para este algoritmo.
El Hashing es el proceso por el cual la información obtenida por el minero, conocida como NONCE, se convierte en el hash, en la firma, en la huella que firma el boque y que es obtenida mediante la función de Hash Equihash.
Teoría de Juegos
La minería basada en Prueba de Trabajo es una competencia donde interviene la suerte y la estadística. Como esta guía pretende ser sencilla, no me extenderé en esta explicación, pero si es necesario que sepas que la minería digital es un proceso complicado donde el que tiene más poder de procesamiento tiene más posibilidades de conseguir la recompensa del bloque, sin embargo, no quiere decir que el que tiene menos poder de cómputo no pueda obtener la recompensa.
Por ejemplo: pensemos en el juego conocido como Bingo. En este juego tienes que “comprar” cartones, estos cartones tienen 24 números tomados al azar de una lista de 75. En la mesa hay 5 jugadores de los cuales el primer jugador compra 20 cartones, el segundo 10, el tercero 15, el cuarto 50 cartones y el quinto solo 5 cartones.
Cuando la autoridad comienza a arrojar números al azar, los jugadores comienzan a llenar sus cartones. Por probabilidad, el jugador con 50 cartones tiene 50% más de probabilidad que los demás jugadores, el que tiene 20 cartones 20% de probabilidad y así sucesivamente.
Sin embargo, el jugador con 5 cartones sigue teniendo posibilidades de ganar el premio si logra llenar su cartón antes que los demás.
Si bien mientras más poder de minería acumules, más posibilidades tienes de ganar la recompensa, el actor con poco poder también puede llegar a resolver el bloque.
Dificultad de minado
En todas las redes basadas en Prueba de Trabajo existe un algoritmo que calcula que tan difícil es conseguir o minar un bloque. Por ejemplo, en Bitcoin un bloque se debe minar en promedio cada 10 minutos, en este caso el algoritmo lo que hace es verificar si los bloques están tardando más o menos de este tiempo.
Para el ejemplo de Bitcoin, esta dificultad se recalcula cada 2016 bloques, alrededor de cada 15 días aproximadamente, y la red verifica si el bloque se tarda más de 10 minutos, entonces es que es muy difícil de minar y ajusta la dificultad para que vuelvan a ser 10 minutos, en contraposición si se está minando en menos de 10 minutos entonces es muy fácil y ajustará la dificultad hacia arriba para que el bloque se mine en 10 minutos.
De esta manera la red siempre estará ajustada al parámetro de tiempo, pero en Bitcoin, al ser cada 15 días que ocurre este proceso, se vuelve muy lento y puede haber problemas de estancamiento en la red.
Para Zcash, el proceso existe, pero esta dificultad es calculada luego de haberse minado cada bloque, así el sistema se asegura que la minería sea fluida y si repentinamente hay una subida o bajada del poder de minería, se ajusta rápidamente en el siguiente bloque evitando atascamientos.
¿Dónde se registra la información?
El Bloque
La información que registra el minero se almacena en un bloque. El bloque es donde se registra toda la información de la cadena de bloques. El espacio del bloque de Zcash está limitado por 2 MB y cada 75 segundos se mina uno de estos.
El bloque contiene información sobre la versión del bloque, hash del bloque anterior, tiempo en que se minó, que tan difícil fue minarlo, el hash propio del bloque, un espacio llamado Coinbase que registra la recompensa del minero, el nonce, la cantidad y las TX listadas.
¿Qué o quien hace el trabajo de minar en la Red?
Los Nodos
Los nodos son computadoras que sirven a la red con servicios y/o funciones especiales para el funcionamiento de la cadena. Desde tener una copia completa de la blockchain, minar, billetera, enrutador, base de datos, validador de consenso, etc.
Cualquiera puede correr un nodo, es la actividad más altruista que puede existir en el ecosistema Zcash, pues con esto se busca proteger la red, mantener la blockchain actualizada, autorregular el intercambio de información y establecer controles haciendo cumplir las reglas de consenso, sin obtener ningún tipo de recompensa a cambio.
¿Cuál es la diferencia entre minero, minero y minero?
Aunque es la misma palabra y se refiere a la actividad misma de minar, son términos distintos y saber la diferencia es importante, porque dependiendo de a cuál te refieras, el contexto cambiara.
Minero: El Hombre
Es la persona que lleva a cabo la actividad de la minería, quien instala, configura, monta, diseña, invierte y un gran etcétera.
Minero: El Nodo
Es el software que instalas para ser parte de la red, con el que descargaras la copia de la cadena de bloques y a través del que conectaras tus equipos para minar. Sostiene todos los servicios necesarios para la minería: Enrutar información, validar, las TX, construir el bloque candidato, comunicar el bloque actual y realizar la prueba de trabajo.
Minero: Los Equipos
Los equipos de minería son conocidos simplemente como Mineros (sean computadoras con tarjetas de video o hardware especializados) y realizan una única tarea: resolver un problema matemático, obtener el nonce que se convertirá en la firma única del bloque a través de la función de Hash.
Entonces, ¿Con qué se mina?
Equipos para Minar Zcash
Al principio se minaba con equipos de computación convencionales utilizando el poder de cómputo de la Unidad Central de Procesamiento (CPU) y la memoria RAM, ya que el algoritmo Equihash permitía este tipo de implementación de hardware para resolver la minería.
Como este algoritmo permitía el uso de la RAM, poco a poco se fueron integrando las tarjetas de video que tuvieran espacio de memoria suficiente para albergar un archivo temporal llamado DAG que cargaba información de la red en la Unidad de Procesamiento Gráfico (GPU), lo que hizo que paulatinamente el uso del CPU fuera mermando.
Como minar criptomonedas es un negocio muy lucrativo en muchos niveles, las empresas especializadas en hardware de minado específico comenzaron a trabajar en equipos para lograr minar este algoritmo, lo que resulto en 2018 en el lanzamiento del modelo de equipo de minería ASIC (Circuito Integrado para Aplicaciones Específicas) Antminer Z9 de Bitmain.
Desde este punto en adelante la minería de Zcash está dominada por equipos de minería ASIC, el cual existen muchos modelos de varios fabricantes en todo el mundo. No significa que no puedas intentar minar con tus tarjetas GPU, pero la dificultad de la red sigue creciendo, lo que trae como consecuencia que minar Zcash con otro tipo de hardware que no sea ASIC, no sea rentable.
Tasa de Hash
La tasa de Hash (Hashrate) se refiere directamente a la cantidad de poder de procesamiento que existe en la red blockchain para el minado y al mismo tiempo es la medida de magnitud del poder de procesamiento de los equipos de minería de Equihash, expresados en SOL/s para Zcash.
Esta medida es importante porque podrás hacer estimaciones para calcular rentabilidades, retornos, costos, etc.
¿Qué gano al minar Zcash?
La respuesta es sencilla… La recompensa del bloque y las comisiones de las transacciones. Sin embargo, Zcash tiene una configuración especial, ya que desde el halving del 2020 se integra en la red una actualización que divide la recompensa del bloque en dos partes.
En este momento el bloque está generando, cada 75 segundos, 3.125 ZEC y esta recompensa se dividirá en 80% para ti, como minero que trabajas dentro de la red y sostienes la seguridad, verificación de las TX y escritura del bloque, y el otro 20% va al Fondo de Desarrollo Zcash que se encarga de sostener los desarrollos y mantenimiento de la red.
Entonces, aparte de ganar las nuevas unidades de ZEC, también obtienes la gratificación de ayudar a sostener el proyecto, a los desarrolladores y la comunidad misma de Zcash.
Lo que viene
Antes de enumerar lo que viene en las próximas entregas de este blog, te agradezco que hayas llegado hasta aquí, pues comenzaste tu camino en la minería aprendiendo lo básico para iniciar en este negocio.
Lo que viene en la segunda entrega es: La Operación. Que necesitas para operar un equipo de minería o para montar una granja. Aprenderás sobre Infraestructura de minería, electricidad, equipos, internet, ventilación y lo que necesitas para montar tu granja de minería de Zcash.