Proof of Stake ¿Qué es y para qué se utiliza?

Seguro más de una vez has oído hablar de del Proof of Stake o prueba de participación. Este sistema, presente en criptomonedas como Cardano o TRON y recientemente adoptado por Ethereum tiene muchas ventajas con respecto al tradicional Proof of Work de monedas como el bitcoin.

Veamos en qué se diferencia de Proof of Work, qué utilidad tiene, cómo puedes ganar dinero con él y porqué Ethereum 2.0 está trabajando en implementarlo.

Grafica con criptomonedas
Llegará el fin de las gráficas en la industria de las criptomonedas?

Pagos por internet

Antes de entrar a fondo en Proof of Stake o PoS, necesitamos ver cómo funcionan los pagos con tarjeta y pagos digitales, así como los incentivos de quienes los gestionan.

Cuando queremos pagar con tarjeta o con algún otro tipo de medio digital tradicional existen ciertos procesos que tienen que asegurar que el dinero se mueva de forma segura desde la cuenta del emisor al receptor. A día de hoy estamos ya muy familiarizados con este tipo de compras a través de un punto de venta TPV. En este sistema, los comercios se comunican con ambos bancos para poder mover el dinero, verificando primero que existan fondos en la cuenta del comprador. Estos intermediarios también tienen que asegurar que cuando termine la transacción esos fondos estén disponibles ya en la cuenta del vendedor.

Diagrama movimiento dinero entre bancos
Existen validaciones necesarias entre bancos para hacer una transacción evitando el “double spending”

Este proceso, aparentemente básico, requiere de ciertas validaciones para evitar robos y fraudes en compras con tarjeta de crédito o medios digitales. Estas sencillas operaciones se tienen que realizar por ciertos ordenadores que conllevan un coste de mantenimiento. Pese a no ser un coste elevado, los servidores que han de estar disponibles 24 horas al día y 7 días por semana.

Lógicamente no es ideal salir de compras y que justo en ese momento no se pueda ejecutar la transacción porque los servidores no estén disponibles.

Tiene que existir alguna entidad que mantenga estos ordenadores, con un interés real por mantener esta red en marcha. En el caso de las compras tradicionales estos servidores pertenecen a empresas como Visa o Mastercard. Plataformas digitales como Paypal o Stripe, se sustentan gracias a comisiones que cobran bien al vendedor bien al comprador o incluso a ambos. Esto es lo que les permite tener un interés muy fuerte en mantener esta red de servidores con una disponibilidad 24/7.

visa masterdard paypa o stripe
Entidades típicas que gestionan los pagos digitales hoy en día

Conforme más estabilidad tiene la red, más transacciones se van a realizar y más comisión van a ganar estas entidades. Tenemos que tener en cuenta que de forma diaria se realizan millones de transacciones con estos métodos digitales.

Descentralización

Tenemos claro que estas empresas financieras anteriormente mencionadas tienen un gran interés en mantener esta red en marcha, pese a que les supone un gran coste de negocio. Ahora, para las criptodivisas que no tienen ninguna empresa detrás al estar descentralizadas

¿Quién tiene un interés en hacer que toda esta red funcione? ¿Cómo se incentiva a mantener toda esta red en marcha y hacerla tan segura como la conocemos?

Proof of Work

El primer sistema o algoritmo que vamos a ver para poder entender el proof of stake es el proof of work o prueba de trabajo.

Este algoritmo es quizás el más popular porque es el utilizado por Bitcoin y fue el primer algoritmo en aplicarse para una criptomoneda. El proof of work o existe desde 1993, cuando se implementó para evitar spam en los mails. Antes de de enviar un correo, los ordenadores debían hacer pequeños cálculos. Así se evitaba que se mandasen miles de correos por minuto.

Sin embargo, este algoritmo consiguió la mayor parte de su fama en 2009 con la creación del bitcoin. Vamos a ver cómo funciona este sistema y qué incentivos existen para los usuarios que quieran poner sus ordenadores a la disposición de la red.

Veamos cómo hacer una transferencia de fondos de una cuenta a otra. Para ello existe una red descentralizada de ordenadores o servidores que se encargan de resolver problemas matemáticos. Este tipo de problemas que se llaman de prueba y error son operaciones computacionalmente muy caras de resolver, pero muy baratas de validar. Para explicarlo en términos sencillos sin entrar en materia técnica, podríamos decir que este problema matemático es como una especie de cofre que solo se puede abrir con una llave. Esta llave es un número, y una vez dispones de ella puedes corroborar que efectivamente se abre este cofre sin esfuerzo.

Diagrama pow básico
El problema a resolver se entrega a todos los nodos participantes

Los ordenadores o mineros de la red están constantemente probando llaves diferentes intentando abrir el cofre. Este proceso tiene una dificultad mayor o menor en función del posible de número de llaves o números, puesto que a más números que probar, más difícil será encontrar el correcto. Este problema, de difícil solución, se da a todos los ordenadores que participen en la red de minado.

Una vez uno de estos mineros encuentra la solución al problema matemático, se la envía al resto de mineros para que la validen. Recordemos que corroborar que la solución es corroboren que efectivamente es correcta. Una vez la mayoría de la red ha verificado que la solución es correcta, el minero que ha encontrado este número o llave obtiene una pequeña recompensa.

En el caso particular de Bitcoin, inicialmente se entregaban 50 bitcoins al minero que resolvía el problema. Este bloque de 50 recompensas, ha ido bajando, mediante un proceso llamado halving. Esta reducción de recompensas con el paso del tiempo, tiene como objetivo hacer que el sistema sea lo más estable y justo posible.

Estas recompensas son el incentivo para que diferentes mineros pongan su hardware o computadoras a disposición de la red. Mantener estos ordenadores tiene un coste, dado que la resolución de estos problemas es compleja y computacionalmente costosa, estos aparatos requieren de mucha energía.

Por su parte, este problema matemático tiene una dificultad variable. Esto es así, porque cada bloque de bitcoin se debe generar en aproximadamente 10 minutos, por lo tanto si un bloque a se genera en 9 minutos de media, la red va a incrementar la dificultad de los siguientes problemas matemáticos para que la media se mantenga en 10 minutos.
Si por el contrario un problema tarda en resolverse una media de 12 minutos, la dificultad de los siguientes problemas disminuirá ligeramente. Esto, entre otras cosas, consigue que los halvings de bitcoin se produzcan aproximadamente cada 4 años.

Hay mucha competencia de minado para encontrar la solución
Una vez un nodo encuentra la solución y el resto validan, se le entrega una recompensa en forma de bitcoin

Sin embargo, la reciente popularidad del bitcoin ha hecho que la dificultad incremente mucho debido al atractivo precio del bitcoin. Cada vez existen más mineros interesados en aportar hardware a la red y esto lógicamente conlleva un gran incremento de la energía requerida por la red de minería de Bitcoin.

Consumo energético

A nivel global la red bitcoin consume más de 120 teravatios/hora (TW/h). Este número puede no decir mucho, pero para hacernos una idea de la magnitud es mayor al consumo energético de un país como Argentina.

consumo de la red btc, 120 terawatios hora
El consumo de electricidad es mayor que el de un país entero como Argentina

De hecho, si la red bitcoin fuese considerada un país estaría el número 30 en el ranking global de consumo energético. En países hispanohablantes tendríamos que únicamente México y España consumirían más electricidad que la red global de minería de bitcoin. En este enlace puedes comprobar el consumo actualizado de la red bitcoin y aquí te dejo el ranking de consumo energético por país para ver la magnitud de la red de Btc.

Latencia y comisiones

Además del gran consumo energético del proof of work existen otros problemas como puede ser la alta latencia de la red. Esto quiere decir que desde que se emite una transacción hasta que se valida puede pasar bastante tiempo, de la orden de varios minutos.

10 minutos para realizar una transacción... algo elevado
Las transacciones de bitcoin son muy lentas a día de hoy, no es comparable con las transacciones digitales más extendidas

En comparación con los métodos de pago tradicionales con tarjetas de crédito que son prácticamente instantáneos, esto es una eternidad. En algunos casos de uso esto puede llegar a ser una gran ventaja, por ejemplo, puedes hacer un pago desde Latinoamérica a Rusia y en varios minutos se va a realizar, mucho más rápido que una transacción bancaria actual

Sin embargo, para un uso cotidiano quedaría descartado. No parece el mejor de los casos el ir a comprar al supermercado y tener que esperar varios minutos a que se complete la transacción para que te den el cartón de leche.

Por su parte, las comisiones de la red también fluctúan bastante. Generalmente no pasan de unos pocos dólares, sin embargo ha habido casos puntuales como en enero de 2018, donde hacer una sola transacción de bitcoin llegó a costar el equivalente a más de 55 dólares.

De nuevo, esto puede ser relativo ya que para ciertos casos puede ser un coste aceptable, como el caso de la transacción internacional que comentábamos. Sin embargo, para compras cotidianas, lógicamente es una barbaridad y no tendría sentido.

Prepara la billetera para pagar comisiones altas
Una comisión de más de 50$ por transacción no es viable para una moneda, pero sí para una reserva de valor

Centralización de la red

Otra desventaja que hemos de tener en cuenta de la prueba de trabajo es la potencial centralización de la red.

Precisamente, la idea de las criptomonedas es descentralizar la red. Sin embargo, con dificultades de minería tan altas como las que tenemos hoy en día en la red de bitcoin, lo que hacen los mineros es unirse a lo que se llama pools o piscinas de minado. Estas pools distribuyen entre los diferentes mineros conectados una pequeña parte del problema matemático a resolver. De este modo, si cualquiera de los mineros encuentra la solución, la recompensa se distribuye de forma proporcional entre todos los mineros conectados a la propia pool.

La ventaja de esto es que no es necesario tener un gran equipo de minería para participar, porque de ser así y sin una pool nunca conseguirías minar ningún bloque, ya que estarías compitiendo contra sistemas muy grandes.

Reparto de hashrate en las mayores pools de minería
En este diagrama podemos ver la distribución de la red de minado de bitcoin en Febrero de 2021. Si nos fijamos, entre F2Pool, Poolin, BTC.com y Binance Pool controlaban el 51.5% del hashrate total de la red.

Como podemos comprobar, actualmente entre cuatro pools tienen más del 51% de cuota. En el improbable caso de que estas cuatro pools se pusiesen de acuerdo, podrían realizar un ataque a la red de bitcoin y conseguir por ejemplo realizar transacciones fraudulentas. Esto ocurriría dado que la solución a un problema encontrado por alguna de estas pools va a poder ser validado por más de la mitad de la red, y si más de la mitad de los mineros de la red están “de acuerdo” con ese ataque, el bloque se escribirá en la blockchain.

Proof of Stake

Por ahora hemos visto el proof of work y ahora vamos a ver el proof of stake, que aparece como un algoritmo o sistema alternativo al que acabamos de ver.

Imaginemos un escenario similar, en este caso una persona quiere enviar dinero a otra. Ambos algoritmos son bastante similares el sentido de que en ambos sistemas existe un problema matemático que ha de ser resuelto por los diferentes ordenadores que forman parte de la red.

La primera diferencia que encontramos es la terminología, en el caso de proof of work a cada computador de la red se le denomina minero, se dedican a minar bloques. Sin embargo, en el caso de la prueba de participación o proof of state cada uno de los ordenadores de la red son validadores que forjan bloques.

Mineros -> Validadores
Minar -> Forjar (mint)
La primera diferencia es a nivel de terminología

En la prueba de participación, cada uno de los nodos validadores contiene una wallet que debe poseer cierta cantidad de la moneda en cuestión. Estas monedas han de mantenerse en los nodos en lo que se llama staking.

Staking supone que las monedas están congeladas en estas cuentas y no se pueden utilizar mientras el validador esté activo dentro de la red. Es decir, que es necesario mantener cierta cantidad de la moneda para que la red te dé acceso a formar parte en ella.

Accesibilidad y proporcionalidad

En el caso de PoS, la cantidad de moneda stakeada por cada uno de los nodos no tiene por qué ser la misma. Esto es así porque el problema matemático no se reparte por igual a todos los nodos, sino que es la misma red elige uno de los nodos para resolver el problema. Este problema a nivel de computación tiene una complejidad infinitamente inferior al equivalente en un escenario de proof of work.

Existen diferentes algoritmos utilizados para determinar qué nodo va a poder forjar el siguiente bloque. Los más justos, que son los más populares, suelen tener en cuenta la cantidad de monedas de las cuales dispone cada nodo así como la fecha en la cual cada nodo validó su último bloque, para hacer una repartición equitativa.

Si por ejemplo nuestro validador es elegido para forjar el siguiente bloque, este nodo para resolver el problema matemático de la red y lo va a compartir con el resto de nodos. El resto de nodos, al igual que en PoW validarán que la solución es correcta para así evitar ataques. Una vez el resto de nodos lo han validado correctamente, nuestro nodo recibirá una pequeña recompensa.

Como vemos, existen características similares al proof of work y características que son bastante diferentes. Por ejemplo en el caso de prueba de participación tenemos una mayor democratización del sistema. Esto es así ya que es más accesible entrar a la red como un nuevo validador que por ejemplo en el caso del proof of work. Si quisiésemos minar bitcoin requerimos de herramientas potencialmente muy costosas (hardware) para poder minar dentro de la red.

Algoritmo de prof of stacke para resolver el problema
El algoritmo elegirá el nodo para resolver el problema de la forma más justa posible

Otro punto a favor de la prueba de participación es que mantiene la proporcionalidad de la riqueza. Pese a que este algoritmo ha sido tachado de injusto, es mucho más equitativo que el sistema del proof of work. Es cierto que las cuentas que tienen más dinero stakeado va a ser más posible que obtengan nuevas recompensas. Sin embargo, la proporción de riqueza va a ir acorde a la cantidad stakeada por cada nodo lo cual hace que este algoritmo no agrande proporcionalmente hablando las diferencias en la distribución de la moneda.

Coste y velocidad

El siguiente punto en pro del proof of stake es el bajo coste del mismo, dado que como hemos visto no requiere de caros sistemas de minería y además el coste energético es mucho más bajo. Lo único que requerimos es que nuestro nodo esté disponible en la red la máxima cantidad del tiempo y disponer de una cantidad de monedas para bloquear temporalmente. Recordemos que una vez decidamos dejar de ser un validador las monedas no se pierden. Esto lo hace mucho más económico que en el caso de una red como la de bitcoin.

Una última ventaja a remarcar es que la latencia de la red es mucho más baja, es decir, es mucho más rápido realizar una transacción. No hay necesidad de halving, no es necesario limitar el tiempo y se pueden validar más transacciones por segundo.

Seguridad

Veamos ahora la parte de seguridad de la prueba de participación y los sistemas que usa para evitar ataques.
Como veíamos, una de las características de una red pos es que al nodo que resuelve el problema se le otorga una recompensa. una vez se le otorga una recompensa. Un sistema de seguridad que se aplica, es que esta recompensa no está disponible inmediatamente si no que el nodo ha de esperar a que el resto de nodos validen.

Esto permite es que si otros nodos detectan que la transacción es fraudulenta o que la validación no es correcta esta recompensa se va a retirar del nodo. La red también va a penalizar a ese nodo por este comportamiento, existiendo la posibilidad de que incluso pierda parte de su stake.

Como podemos imaginar, este sistema fomenta que los nodos validen correctamente, dado que si un nodo intenta realizar ataques maliciosos podría perder todas las monedas que tuviese stakeadas en la red. Y a más monedas stakeadas por un nodo de la red, más interés en validar correctamente puesto que tiene más que perder.

Ethereum 2.0

logo ethereum, de pow a pos
Ethereum está moviendo a 2.0, pasando de PoW a PoS

Un evento muy importante para el algoritmo de prueba de participación es la reciente inclusión de Ethereum moviéndose de proof of work a proof of stake. El proyecto de Ethereum se ha dado cuenta que hay ciertos problemas en la red de proof of work como hemos comentado y está trabajando en moverse a un sistema de proof of stake.

Si te interesa este proyecto, es posible participar de forma flexible con una cantidad mínima en un nodo conjunto. Puedes utilizar este enlace de Binance, donde puedes participar tanto en staking de Ethereum 2.0 como de otras muchas criptomonedas. No hay mejor forma de entender las cosas que viendo su funcionamiento en la práctica.

Ataque 51%

Veamos ahora qué ocurriría con un ataque del 51% que consiste en una persona maliciosa haciéndose con el control de más de la mitad de la red para validar transacciones fraudulentas. Ethereum actualmente tiene una capitalización de mercado o market cap de más de 250.000 millones de dólares, es decir, más de 250 billones americanos.

Si suponemos que la red de validadores almacena el 80% de esa cantidad, podemos deducir que harían falta más de 100.000 millones de dólares americanos para que alguien pudiese realizar un ataque 51 por ciento sobre la red de Ethereum. Haría falta alguien que tenga más de 100 mil millones de dólares y esté dispuesto a arriesgarlos.

Estos números a mí personalmente me resulta muy difícil ponerlos en contexto, pero para que nos hagamos una idea esto es más que el PIB de países como Panamá, Costa Rica y Uruguay combinados, una auténtica barbaridad.

panama costa rica o uruguay tendrían que usar todo su pib para atacar a eth, una locura
Haría falta una cantidad de dinero superior al PIB de muchos países para atacar la red de Ethereum 2.0

Vídeo explicativo

Si prefieres esta explicación en un vídeo un poquito más interactivo y entretenido, aquí te dejo en enlace, un poquito más conveniente:

¿Qué te parece el método de proof of stake? ¿Crees todas las criptomonedas tenderán hacia pos en lugar de pow?
Déjamelo en los comentarios. Un saludo, y hasta la próxima!