¿Qué es Proof-of-Work y cómo funciona?

¿Qué es Proof-of-Work?
Proof-of-Work (PoW) es un algoritmo de consensus utilizado por varias blockchains para validar las transacciones y añadir nuevos bloques a la blockchain. El ejemplo más conocido de blockchain que lo utiliza es Bitcoin. Se trata de la primera cryptocurrency que utilizó PoW. Más tarde, se lanzaron nuevas blockchains que también utilizan este sistema, incluyendo Litecoin, Dogecoin y Ethereum (antes de The Merge en 2022).
Proof-of-Work está descentralizado, lo que significa que múltiples participantes independientes ayudan a validar las transacciones. En PoW, esto lo hacen mineros que trabajan 24 horas al día resolviendo complejas fórmulas criptográficas y matemáticas. A esto lo llamamos mining o minado. El primer minero que encuentre el número correcto de la fórmula consigue añadir el bloque a la blockchain y validar las transacciones en este bloque. Cuantos más mineros haya activos en la red, más descentralizada estará ésta y, por tanto, menos susceptible será de ser manipulada. De hecho, una parte malintencionada necesitaría controlar más del 50% de la potencia de cálculo de la red para causar algún daño.
Un Miner es un ordenador que aprovecha su capacidad de procesamiento en la red. Esto requiere mucha potencia de cálculo y energía. Por lo tanto, un minero recibe una recompensa por desplegar su potencia de cálculo. La recompensa consiste en nueva cryptocurrency que circula durante la creación de un nuevo bloque. El minero recibe esta recompensa. La cantidad de la recompensa depende del blockchain y se reduce a la mitad en muchos blockchains de vez en cuando para crear escasez. Según sus creadores, una mayor adopción y un menor número de monedas nuevas deberían dar lugar a tasas más elevadas.
Puntos clave
-
El proof of work es un mecanismo de consenso fiable y bien probado que valida las transacciones de forma descentralizada y segura mediante acertijos criptográficos difíciles de resolver pero fáciles de verificar.
-
Un inconveniente importante es el elevado consumo de energía. Los mineros utilizan hardware potente y especializado (ASIC), lo que genera preocupación por el impacto medioambiental y la sostenibilidad.
-
Los mineros resuelven complejos rompecabezas matemáticos. El primero en conseguirlo consigue añadir un bloque y recibe una recompensa en forma de nueva cryptocurrency, lo que supone un incentivo financiero para asegurar la red.
-
El concepto de PoW se remonta a los años 90 y fue aplicado posteriormente a Bitcoin por Satoshi Nakamoto.
-
PoW es menos escalable que otros sistemas alternativos como Proof of Stake, en parte debido a los largos tiempos de bloqueo y al consumo de energía. Además, el dominio de los grandes pools de minería conlleva riesgos de centralización.
¿Cómo surgió el Proof-of-Work?
El Proof-of-Work (PoW) se desarrolló mucho antes de que existiera Bitcoin, concretamente en la década de 1990. Por aquel entonces, los criptógrafos Cynthia Dwork y Moni Naor desarrollaron un sistema para contrarrestar el spam y los ataques de denegación de servicio (DoS) en Internet. Se les ocurrió la idea de que un usuario tuviera que proporcionar una pequeña cantidad de potencia informática antes de poder enviar un mensaje por Internet. Esto dificultaría y encarecería el spam masivo.
La idea tomó forma en 1997 con la introducción del sistema Hashcash por Adam Back. El whitepaper de Back de 2002, "Hashcash - A Denial of Service Counter-Measure ", describe que el emisor de un mensaje debe realizar primero un cálculo que pueda ser fácilmente verificado por el receptor.
A partir de 1999, el sistema adquirió realmente un nombre, gracias a Ari Juels y Markus Jakobsson, que introdujeron la terminología "Proof-of-Work".
Primer uso de Proof-of-Work por la tecnología blockchain
Satoshi Nakamoto (el inventor anónimo de Bitcoin) abrazó la idea de Back y en 2008 integró el concepto de Proof-of-Work en su propia creación, es decir, el protocolo Bitcoin.
Su whitepaper "Bitcoin: A Peer-to-Peer Electronic Cash System " describe cómo puede utilizarse el Proof-of-Work para la creación de consenso de forma descentralizada, es decir, mediante el uso de Miners que proporcionen potencia de cálculo. Nakamoto añade a esto la emisión de nuevas monedas digitales durante el proceso de minería, que son negociables en la red y pueden utilizarse para realizar pagos. Con ello, Nakamoto introduce un sistema de pagos seguro y descentralizado, en el que el control recae en los usuarios y no en partes centralizadas como los bancos. Desde entonces, se ha convertido en una parte fundamental de muchas blockchains.
¿Cómo funciona el Proof-of-Work?
Proof-of-Work funciona empleando mineros (también conocidos como nodes) en todo el mundo que intentan resolver complejos rompecabezas criptográficos para validar todas las transacciones. El minero que encuentra una solución puede añadir un nuevo block a la blockchain y recibe una recompensa de minería, pagada en nuevos crypto. Este sistema hace que la red sea justa, ya que todo el mundo tiene la oportunidad de validar un bloque, siempre que se disponga de suficiente potencia de cálculo.
Seguridad del PoW
Proof-of-Work (PoW) es seguro gracias a un principio asimétrico: realizar trabajo computacional (el proceso de minado) requiere mucha potencia informática, mientras que comprobar ese trabajo es relativamente fácil. Esto hace que sea difícil para los mineros maliciosos hacer trampas en los bloques, mientras que es fácil para otros mineros comprobar los bloques. Esto se debe a que otros mineros sólo necesitan comprobar si el minero ha encontrado el hash correcto (la respuesta correcta).
Además, un atacante necesitaría más del 50% de la potencia de cálculo total de la red (hashrate) para hacerse con el control de la misma. Esto también se conoce como ataque del 51%. Un ataque de este tipo resulta cada vez más difícil a medida que participan más mineros. Además, requiere un hardware muy caro y los costes energéticos son enormes. Esto lo hace prácticamente imposible en una red tan grande como la de Bitcoin.
Si aun así una persona malintencionada consiguiera hacerlo y quisiera realizar modificaciones en un bloque de la blockchain, se encontraría con el siguiente problema: cada bloque está conectado criptográficamente con el anterior. Si alguien quisiera modificar un bloque antiguo, tendría que volver a minar todos los bloques posteriores con más potencia de cálculo que el resto de la red.
Dificultad del mining
Proof-of-Work funciona resolviendo un complejo rompecabezas criptográfico. La solución se denomina hash y es una especie de firma digital que consiste en un número hexadecimal de 64 dígitos (ejemplo: 0000000000000000000a3b4c5d6e7f8a9b0c1d2e3f4a5b6c7d8e9f0a1b2c3d4e).
Como puede ver en el ejemplo, el hash está formado por números y letras. En el sistema se utiliza:
-
los dígitos del 0 al 9
-
y las letras de la a a la f (que representan los números del 10 al 15)
Así, un hash de este tipo contiene letras porque el sistema hexadecimal así lo requiere. Es una forma eficaz de representar una secuencia larga de bits. Cada carácter hexadecimal representa 4 bits.
Un rompecabezas se resuelve una vez que un Miner encuentra un hash lo suficientemente pequeño según una regla predefinida. Cuanto más pequeño tenga que ser el hash, más difícil será encontrarlo. Esto viene determinado por el nivel de dificultad (difficulty). Cuantos más participantes haya, más difícil será hacer el hash. De este modo, la red mantiene el control sobre el tiempo que se tarda en minar un nuevo bloque.
El nivel de dificultad determina cuántos ceros debe haber al principio del hash. Por ejemplo:
-
En dificultad baja, un hash puede empezar por 00af...
-
A mayor dificultad, un hash debe empezar por 000000f1...
En Bitcoin, el nivel de dificultad se ajusta aproximadamente cada 14 días. Satoshi Nakamoto ideó esto para asegurarse de que no se puedan minar nuevos bloques, y por tanto nuevos bitcoins, demasiado rápido. Bitcoin utiliza el hash SHA-256, lo que significa que cada hash consta de 256 bits, representados exactamente por 64 caracteres hexadecimales.
Cuanta más potencia de cálculo posea un Miner, más fácil será encontrar una solución. Por lo tanto, es mucho más probable encontrar la solución con un hardware sofisticado, que con la potencia de cálculo de un teléfono móvil.
Encontrar el hash correcto
Se necesita mucha potencia de cálculo para resolver la fórmula y encontrar el hash correcto. Como ayuda, los mineros utilizan un número extra llamado "nonce". Los propios mineros ajustan el nonce cada vez: de 0, a 1, a 2, y así sucesivamente. Dígito a dígito, buscan la combinación correcta de los datos del bloque. Si el hash devuelve una combinación de 64 dígitos que cumple el requisito, el bloque es válido. El nonce es, por tanto, una especie de número adivinado con el que los mineros siguen probando hasta dar con el hash correcto.
Para minar finalmente un bloque, el Miner debe calcular también el hash de la cabecera del bloque. Se trata de una especie de resumen de los datos más importantes de un bloque. Los datos que contiene incluyen el hash del bloque anterior, la marca de tiempo y el nonce.
Además, el hash debe ser más pequeño que el "objetivo". Éste es el umbral determinado por el nivel de dificultad.
Un ejemplo:
Supongamos que el objetivo es: 00000000ffffffffff... Entonces eso significa: el hash del bloque debe ser numéricamente inferior a este objetivo. Como los números hexadecimales empiezan con cifras y letras, visualmente se puede ver como si el hash debiera empezar con ocho ceros o más. Cuantos más ceros haya al principio, más pequeño será el número.
Entonces:
-
Un hash como 12bfa34d... es demasiado grande
-
Un hash como 0000a9f2... sigue siendo demasiado grande
-
Un hash como 0000000037c4... es suficientemente pequeño
El Miner sigue intentándolo hasta que encuentra la combinación correcta.
Esta es inmediatamente la razón por la que se necesita tanta potencia de cálculo: varios Miner trabajan simultáneamente.
¿Qué blockchains utilizan el mecanismo de consenso Proof-of-Work?
Dentro del mundo de las criptomonedas, Proof-of-Work es un popular mecanismo de consensus utilizado por varias de las principales blockchains.
Bitcoin
El ejemplo más conocido de una blockchain Proof-of-Work es, por supuesto, Bitcoin. Se trata de la primera blockchain en utilizar esta tecnología. En los primeros días de Bitcoin, todavía era relativamente fácil minar nuevos bitcoins, pero desde su gran adopción, se ha vuelto más difícil participar en el minado de Bitcoin como pequeño participante. Todavía es posible, sólo que las posibilidades de añadir con éxito un bloque a la blockchain de forma independiente se han vuelto muy pequeñas. Esto se debe a que han surgido granjas mineras de Bitcoin en todo el mundo, donde miles de potentes ordenadores se ocupan de minar bitcoin las 24 horas del día. En parte debido a esto, han surgido varios pools de mining dentro de la red: colaboraciones de mineros más pequeños que unen sus fuerzas para proporcionar más potencia de cálculo.
Gracias a estos pools y granjas de mining, a veces algunos dicen que Bitcoin ya no está tan descentralizado como se pretendía en un principio.
Ethereum
Hasta 2022, Ethereum también utilizó Proof-of-Work. En 2021, la actualización a Ethereum 2.0 exigió el paso a Proof of Stake, para lograr una mayor escalabilidad y ser más eficiente energéticamente. Esto se debe a que con un mecanismo de estaca, no se necesita hardware pesado para validar las transacciones; en su lugar, los participantes estacan sus tokens como seguridad para la red.
Litecoin
No mucho después del nacimiento de Bitcoin, se introdujo Litecoin como una de las denominadas altcoin. Aunque Litecoin se basa en gran medida en Bitcoin, no es un hard fork directo del propio blockchain de Bitcoin, sino más bien un fork de la base de código de Bitcoin. La intención era crear un método de pago mejor: más rápido y barato que Bitcoin. Por ejemplo, el tiempo de bloque de Litecoin es de 2,5 minutos en lugar de 10 minutos, lo que permite un procesamiento más rápido de las transacciones.
Además, Litecoin utiliza un algoritmo diferente para minar nuevos bloques, concretamente el algoritmo Scrypt en lugar del SHA-256 de Bitcoin. Scrypt se diseñó para ser menos susceptible al dominio de los ASIC y en sus primeros años permitió minar con ordenadores normales. Esto hizo que inicialmente consumiera menos energía, aunque hoy en día también se utilizan ASIC optimizados para Scrypt.
Dogecoin
Dogecoin también utiliza Proof-of-Work. En 2013, la cryptocurrency se desarrolló como una broma, pero desde entonces Dogecoin se ha convertido (gracias en parte a Elon Musk) en una de las mayores cryptocurrencies. Dogecoin es técnicamente muy similar a Litecoin y, por tanto, utiliza el mismo algoritmo de mining: Scrypt en lugar del algoritmo SHA-256 de Bitcoin. Esto hace que sea más fácil de Miner con hardware más barato y más eficiente energéticamente.
Bitcoin Cash
Bitcoin Cash también utiliza Proof-of-Work. Bitcoin Cash se creó a partir de un hard fork de Bitcoin tras desacuerdos sobre la actualización SegWit. Bitcoin Cash es muy similar a Bitcoin, pero tiene un tamaño de bloque mayor, lo que lo hace más escalable y capaz de procesar más transacciones: concretamente entre 100 y 200 transacciones por segundo (TPS), frente a las aproximadamente 7 TPS de Bitcoin.
Crítica del uso de la energía de Proof-of-Work
El consumo energético del Proof-of-Work ha sido objeto de críticas. Esto se debe a que requiere hardware pesado y especializado, conocido como ASIC (Application-Specific Integrated Circuit). Estos sistemas consumen enormes cantidades de energía. En particular, los críticos expresan su preocupación por el impacto medioambiental a largo plazo de PoW y consideran que el sistema no es adecuado en términos de sostenibilidad. Esta es una de las razones por las que se han desarrollado otros mecanismos de consenso, como Proof of Stake, Proof of History y formas híbridas.
Ventajas y desventajas de Proof-of-Work
Proof-of-Work, especialmente en los primeros días de crypto, fue uno de los mecanismos de consensus más populares y no sin razón. Ha demostrado ser revolucionario y tiene muchas ventajas. Al mismo tiempo, también existen inconvenientes y dudas sobre la garantía de futuro del mecanismo. A continuación se exponen las principales ventajas e inconvenientes:
Ventajas de la Proof-of-Work | Desventajas de la Proof-of-Work |
---|---|
Seguridad: PoW es una forma muy segura de validación descentralizada de transacciones, ya que los ordenadores de todo el mundo deben resolver complejas fórmulas matemáticas. Esto exige una dificultad posible que es prácticamente imposible de manipular. | Consumo de energía: La validación de transacciones y la minería de bloques consumen mucha energía y son muy caras. Esto provoca muchas críticas sobre la sostenibilidad a largo plazo del mecanismo. |
Un algoritmo probado: Especialmente con Bitcoin, ha demostrado en los últimos años ser una red fiable sin cortes y un sistema transparente y seguro. | Escalabilidad limitada: Las blockchains PoW suelen ser menos escalables, ya que tiene que lidiar con un tiempo de bloque relativamente largo en comparación con los algoritmos Proof of Stake, por ejemplo. Esto no es modificable, lo que puede dar lugar a costes elevados durante los periodos de mayor actividad. |
Descentralizada: Cuantos más Miner participen, más descentralizada estará la red, lo que mejorará su fiabilidad. Además, cualquiera puede participar siempre que disponga de potencia informática. | Peligro de centralización: Gracias a la aparición de múltiples pools de minado y granjas de minado, la descentralización está bajo presión, ya que son principalmente las mismas partes las que añaden nuevos bloques a la blockchain y, por tanto, minan también nuevas coins. |
Reflexión final
Proof-of-Work (PoW) es una de las innovaciones más importantes dentro del mundo del blockchain y las criptomonedas. El mecanismo de Bitcoin, entre otros, ha demostrado en la práctica ser una forma altamente segura y transparente de validar transacciones sin la intervención de partes centrales. La fuerza de PoW reside en la simplicidad de la idea: complejos rompecabezas difíciles de resolver pero fáciles de verificar.
Sin embargo, PoW también tiene inconvenientes obvios. Su elevado consumo de energía, su dependencia de un hardware caro y especializado y el creciente dominio de los grandes pools de minería presionan sobre la visión original de la descentralización total. Además, su limitada escalabilidad provoca retrasos y costes elevados en caso de uso intensivo, lo que lo hace menos adecuado para algunas aplicaciones.
A pesar de estas limitaciones, PoW sigue siendo relevante. Sigue siendo la base de algunas de las blockchains más valiosas e influyentes del mundo. Al mismo tiempo, las críticas al consumo de energía y a la centralización están impulsando el desarrollo de sistemas alternativos como Proof of Staken. Es probable que el futuro sea una mezcla de diferentes mecanismos de consenso adaptados a las necesidades de redes y aplicaciones específicas.