¿Que es la mineria de criptomonedas?

Minar bitcoins o  criptomonedas es el proceso mediante el cual se confirman las transacciones en una red blockchain y esto hace que se generen una cantidad nueva de monedas.

Constantemente se están realizando transacciones de un lado a otro pero salvo que alguien registrase todas estas transacciones, nadie podría comprobar quién ha pagado qué y en que momento determinado. La red gestiona esto dejando constancia de todas las transacciones llevadas a cabo en un periodo determinado, en una lista llamada bloque.

El trabajo de los mineros es confirmar esas transacciones y escribirlas en el blockchain. Este blockchain es una larga lista de bloques conocida como la cadena de bloques. Los mineros reciben una recompensa por cada bloque minado, normalmente una cantidad de la moneda minada.

 

Tipos de mineria de criptomonedas

En la actualidad conocemos dos formas de minería de criptomonedas. La primera es conocida como “Prueba de trabajo” o “Pow” (Proof of work), es el sistema mas conocido actualmente y se realiza con potentes procesadores y costosos equipos de hardware. La segunda de ellas es “Prueba de participación” o “PoS” (Proof of Stake), esta forma de mineria está cobrando mas protagonismo porque elimina los costos de equipos y energia, ya que los nodos se encuentran dentro de la red y se basan en una cantidad de monedas que poseen los mineros para validar las transacciones.

 

Prueba de trabajo PoW (Proof of Work)

La prueba de trabajo es un dato que es difícil de producir (costoso, lento) pero fácil de verificar para otros y que satisface ciertos requisitos. Producir una prueba de trabajo puede ser un proceso aleatorio con baja probabilidad, por lo que se requiere una gran cantidad de prueba y error antes de que se genere una prueba de trabajo válida. Para minar bitcoins se usa el sistema de prueba de trabajo Hashcash.

Las pruebas de trabajo de Hashcash se usa para la generación de bloques. Para que un bloque sea aceptado por los participantes de la red, los mineros deben completar una prueba de trabajo que cubra todos los datos en el bloque. La dificultad de este trabajo se ajusta para limitar la velocidad a la que la red puede generar nuevos bloques a uno cada 10 minutos. Debido a la baja probabilidad de generación exitosa, esto hace que sea impredecible qué computadora de trabajo en la red podrá generar el siguiente bloque.

Para que un bloque sea válido, debe hashear a un valor menor que el objetivo actual; esto significa que cada bloque indica que se ha hecho el trabajo generando. Cada bloque contiene el hash del bloque anterior, por lo tanto, cada bloque tiene una cadena de bloques que, en conjunto, contienen una gran cantidad de trabajo. Cambiar un bloque (que solo se puede hacer creando un nuevo bloque que contenga el mismo predecesor) requiere regenerar todos los sucesores y rehacer el trabajo que contienen. Esto seria una tarea imposible, por lo que protege la cadena de bloques de la manipulación.

El esquema de prueba de trabajo más utilizado se basa en SHA-256 y se introdujo como forma de minar bitcoin. Algunos otros algoritmos de hashing que se usan para prueba de trabajo incluyen Scrypt, Blake-256, CryptoNight, HEFTY1, Quark, SHA-3, scrypt-jane, scrypt-n y combinaciones de los mismos.

El principal problema que surge con el sistema PoW,  es que se usan recursos del mundo real, como las computadoras y la electricidad. Se requiere mucho poder para ejecutar las computadoras, o grupos de computadoras, que calculan diferentes soluciones potenciales. Desde un punto de vista ecológico, esto no es ideal. Esto lleva a los mineros a tener altos costos de energía y es malo para el medio-ambiente.

El hecho de que se necesita una gran cantidad de potencia informática, más de lo que una persona promedio podría permitirse, significa que la comunidad minera se está volviendo más pequeña y más exclusiva. Esto va en contra de la idea de la descentralización y podría conducir a un ataque del 51% .

Algunas criptomonedas que utilizan el sistema PoW:

  • Bitcoin (BTC)
  • Ethereum (ETH)
  • Litecoin (LTC)
  • BitcoinCash (BCH)
  • Zcash (ZEC)
  • Monero (XMR)
  • Etherum Classic (ETC)
  • Verge (XVG)
  • Bytecoin (BCN)

 

Prueba de participación PoS (Proof of Stake)

A diferencia del sistema de prueba de trabajo, en el cual el usuario valida las transacciones y crea nuevos bloques mediante la realización de una cierta cantidad de trabajo computacional, el sistema de prueba de participación requiere que el usuario muestre la propiedad de un cierto número de unidades de criptomonedas.

El creador de un nuevo bloque se elige de forma pseudoaleatoria, según la riqueza del usuario, también se define como “apuesta”. En el sistema de prueba de participación, se dice que los bloques son forjados o acuñados, no extraídos.

En la mayoría de casos de las pruebas de participación, las unidades monetarias digitales se crean al lanzar la moneda y su número es fijo. Por lo tanto, en lugar de utilizar unidades de criptomonedas como recompensa, los mineros reciben tarifas de transacción. En algunos casos, se pueden crear nuevas unidades monetarias inflando el suministro de monedas, y los mineros pueden ser recompensados con nuevas unidades monetarias creadas, en lugar de tarifas de transacción.

Para validar transacciones y crear bloques, un minero primero debe poner sus propias monedas en “apuesta”. Piense en esto, ya que sus tenencias se mantienen en una cuenta de depósito en garantía: si validan una transacción fraudulenta, pierden sus tenencias, así como sus derechos a participar como mineros en el futuro. Una vez que el minero pone su apuesta, pueden participar en el proceso de forja, y como han apostado su propio dinero, en teoría ahora están incentivados para validar las transacciones correctas.

Este sistema no proporciona una forma de manejar la distribución inicial de monedas en la fase de fundación de la criptomoneda, por lo que las criptomonedas que utilizan este sistema o bien comienzan con un ICO y venden sus monedas pre-minadas, o bien comienzan con el sistema de prueba de trabajo y cambian al sistema de prueba de participación más tarde.

 

Métodos de selección de bloque

Para que un método de prueba de juego funcione de manera efectiva, debe haber una forma de seleccionar qué usuario consigue forjar el siguiente bloque válido en la cadena de bloques. Seleccionar el minero por el tamaño del saldo de su cuenta solo resultaría una ventaja permanente para los mineros más ricos que deciden apostar más de sus unidades de monedas virtuales. Para contrarrestar este problema, se han creado varios métodos únicos de selección. Los más populares de estos métodos son los métodos de “selección de bloques aleatorizados” y “selección basada en la antigüedad de las monedas”.

 

Selección de bloques aleatorizados

En el método de selección de bloques aleatorios, se usa una fórmula que busca al usuario con la combinación del valor de hash más bajo y el tamaño de su apuesta, para seleccionar el siguiente minero. Dado que el tamaño de las apuestas es público, cada nodo generalmente puede predecir qué usuario será seleccionado para forjar el siguiente bloque. Nxt y BlackCoin son dos monedas digitales que usan el método de selección de bloques aleatorizados.

 

Selección basada en la antigüedad de las monedas

El sistema basado en la antigüedad de las monedas selecciona el siguiente minero basado en la “edad de la moneda” de la apuesta que el minero potencial ha presentado. La edad de la moneda se calcula multiplicando el número de días que las criptomonedas se han mantenido como apuestas por la cantidad de monedas que se están replanteando. Las monedas deben haberse retenido durante un mínimo de 30 días antes de que puedan competir por un bloque. Los mineros que han reunido conjuntos de monedas mayores y mas antiguas tienen más posibilidades de ser asignados para forjar el siguiente bloque. Una vez que un usuario ha forjado un bloque, la edad de su moneda se restablece a cero y luego debe esperar al menos 30 días antes de que pueda firmar otro bloque. Al usuario se le asigna forjar el siguiente bloque dentro de un período máximo de 90 días, esto evita que los usuarios con participaciones muy antiguas y grandes, dominen el blockchain, lo que hace que la red sea más segura. Debido a que las posibilidades de éxito de un minero aumentan cuanto más tiempo fallan al crear un bloque, los mineros pueden esperar crear bloques más regularmente. Este mecanismo promueve una comunidad de forjado descentralizada y saludable.

El sistema de prueba de participación es más amigable con el medio ambiente y es mas  eficiente, ya que los costos de electricidad y hardware son mucho más bajos que los costos asociados con la minería en un sistema de prueba de trabajo, se anima a un mayor número de personas a que ejecuten nodos y participen porque es fácil y asequible participar en este sistema, esto da como resultado una mayor descentralización.

Algunas criptomonedas que utilizan el sistema PoS:

  • Cardano (ADA)
  • OmiseGo (OMG)
  • VeChain (VET)
  • Qtum (QTUM)
  • Wanchain (WAN)
  • Decred (DCR)
  • Blackcoin (BLK)
  • Pivx (PIVX)
  • StorjCoin (SJCX)
  • Bitshares (BTS)
  • Ardor (ARDR)