top of page
colorful-abstract-nebula-space-background_edited_edited.png

Proof of Work vs Proof of Stake: ¿Cuál es mejor?


 
Tabla de Contenidos
 

Desde que Satoshi creó Bitcoin a partir del Proof of Work, se han creado numerosos mecanismos de consenso que han generado debate en el ecosistema. Si todavía no sabes lo que es el consenso en blokchain, no te preocupes, porque te guiaremos a lo largo del blog para que entiendas bien el contexto de este debate. Por un lado, está el perfil más tradicional y conservador que defiende la idea de que el Proof of Work es el mejor mecanismo de consenso, mientras que existen otros con un perfil más innovador que opinan que el Proof of Stake mejora al Proof of Work en todas o la mayoría de sus prestaciones.


Por ello, vamos a comparar y determinar cuál es el mejor mecanismo de consenso entre estos dos. Entonces, ¿es mejor el Proof of Work o el Proof of Stake? ¡Empezamos!


Imagen: Freepik



Problema de los Generales Bizantinos

¿Qué es el consenso?

Las redes blockchain están constituidas por numerosos participantes a los que denominamos nodos. Piensa en estos como ordenadores, que son responsables de recibir las transacciones de los usuarios como nosotros, incluirlas en un bloque y proponer este a los demás nodos. Además, también se encargan de verificar que los bloques propuestos por sus peers (otros nodos) son igualmente válidos. Para lograr esto, es necesario que los nodos alcancen entre sí un consenso, manteniendo una coherencia en la información que todos ellos comparten y aceptan como verdadera.


El consenso se considera una forma de tomar decisiones que busca maximizar la participación, la inclusión y la cooperación en un grupo o comunidad. Se trata de un punto de vista compartido por la mayoría de los miembros involucrados, que se logra a través del diálogo y la negociación. En blockchain, se refiere a la forma en que los participantes de la red llegan a un acuerdo sobre el estado de esta y las transacciones que se han realizado en ella. Los sistemas de consenso en blockchain permiten no depender de una autoridad centralizada como un banco para realizar estas transacciones, haciéndolas más eficientes y seguras.


Antes de entrar de lleno, debemos entender qué intentan resolver estos protocolos de consenso. En una red descentralizada donde todos los nodos deben tomar una decisión en conjunto, es muy fácil que muchos de ellos quieran tomar decisiones o engañar al resto para su beneficio propio. Esto puede hacer que existan diferentes versiones de la verdad, lo que puede crear discordancia entre los nodos y desembocar en una clara incoherencia en el funcionamiento de la red.


Ejemplo del Problema

Este problema se conoce como el Problema de los Generales Bizantinos, planteado en la década de los ochenta para explicar la dificultar de alcanzar el consenso en sistemas distribuidos. Este se cuenta a través de una analogía, en la que un grupo de generales bizantinos, separados geográficamente, se prepara para atacar una ciudad, pero de una forma coordinada y con la confianza suficiente de que los otros generales serán siendo honestos a la hora de enviar información sobre el ataque. Por ejemplo, un general deshonesto podría enviar un mensaje a algunos de los otros generales diciendo que está listo para atacar, pero luego enviar un mensaje diferente a otros generales diciendo que quiere retirarse para así sabotear el ataque. El problema bizantino surge cuando los generales deben llegar a un consenso sobre lo que deben hacer, incluso si algunos de ellos son deshonestos o envían información falsa y desconocen el mensaje recibido por los otros generales.





Problema de los Generales Bizantinos en Blockchain

Llevado al contexto de blockchain, los generales serían equivalentes a los nodos y el mensaje de atacar o no la ciudad, serían las transacciones. Un nodo malicioso podría intentar enviar una transacción que gasta la misma cantidad en dos direcciones diferentes simultáneamente, en un intento por realizar un ataque de doble gasto. Los mecanismos de consenso en la blockchain permiten a los nodos tomar decisiones de manera conjunta y automática, de modo que si un nodo está siendo malicioso, este sea rápidamente detectado y excluido.


Ejemplos de mecanismos de consenso

Aunque Proof of Work y Proof of Stake son los más comunes, existen otros protocolos entre las redes blockchain:


1. Delegated Byzantine Fault Tolerance (dBFT): Este protocolo de consenso se utiliza en la red NEO y se basa en el algoritmo de tolerancia a fallas bizantinas. dBFT utiliza un sistema de votación en el que los nodos de la red eligen a un pequeño número de nodos delegados para tomar decisiones en nombre de la red. Los nodos delegados deben llegar a un consenso entre sí para validar las transacciones.


2. Proof of Capacity (PoC): el algoritmo de PoC busca aprovechar el otro recurso técnico más importante de las computadoras, alternativo al poder de cómputo (PoW), que es la capacidad de almacenamiento. Los mineros de la cadena de bloques demuestran la disponibilidad de espacio en su disco duro para aumentar su participación en la red. En lugar de asignar la computación a resolver un problema criptográfico, los mineros de PoC almacenan posibles soluciones al problema. Una mayor capacidad implica una mayor cantidad de soluciones potenciales y, por lo tanto, una mayor probabilidad de encontrar una válida. Por lo tanto, el poder de voto y las recompensas potenciales son una función de la capacidad de almacenamiento dedicada a la red.


3. Federated Byzantine Agreement (FBA): Stellar es una red blockchain que utiliza el protocolo de consenso FBA. FBA utiliza un enfoque de federación en el que un grupo de nodos confiables se encarga de validar las transacciones. Los nodos confiables se eligen mediante un proceso de votación en el que los usuarios de la red pueden votar por los nodos que consideran confiables.


4. Proof of Burn (PoB): El Proof of Burn es un protocolo de consenso que se utiliza en algunas redes blockchain. En lugar de hacer que los nodos compitan para resolver problemas matemáticos complejos como en PoW, PoB requiere que los nodos "quemen" (destruyan) una cierta cantidad de tokens de la red para demostrar su compromiso con la red. A cambio, los nodos que queman tokens pueden validar las transacciones y recibir recompensas en forma de nuevas monedas emitidas en la red.


5. Proof of Authority (PoA): El Proof of Authority es otro protocolo de consenso utilizado en algunas redes blockchain. En lugar de depender de la capacidad de procesamiento de los nodos como en PoW o de la cantidad de tokens que poseen como en PoS, PoA confía en un pequeño número de nodos autorizados para validar las transacciones. Los nodos autorizados se seleccionan por la comunidad de la red y deben ser confiables y responsables de validar las transacciones en la red. Esto, por supuesto, hace que las redes con PoA sean muy eficientes por su rapidez para validar transacciones, pero también más inseguras por la falta de descentralización.


6. Proof of Reserve (PoR): El Proof of Reserve es un protocolo de consenso que se utiliza en algunas redes blockchain para demostrar que los tokens emitidos en la red están respaldados por una reserva de activos. Los nodos en la red deben demostrar que tienen una cierta cantidad de tokens y también demostrar que tienen una cantidad equivalente de activos en reserva para respaldar los tokens emitidos. Este enfoque ayuda a garantizar la estabilidad y la seguridad de la red al garantizar que los tokens emitidos tengan un valor respaldado por activos reales.


¿Qué es el Proof of Work (PoW)?

Es un algoritmo de consenso utilizado en sistemas blockchain (y también en otros sistemas) para validar y asegurar transacciones y bloques de información a base de una prueba de trabajo o cómputo. Los mineros, aquellos responsables de preservar la red y crear nuevos bloques, compiten entre sí para resolver un complejo problema matemático a base de fuerza bruta, mediante la utilización de una gran cantidad de poder computacional. El primer minero en resolver el problema y encontrar la solución, tiene derecho a agregar un nuevo bloque de transacciones a la cadena de bloques existente y recibir una recompensa en la criptomoneda correspondiente.


El Pow y la Extracción de Oro

Como estamos viendo, el vocabulario nos puede recordar a la minería de oro y otros metales preciosos. Esto se da porque, efectivamente, tiene mucha similitud con la actividad de la minería real:


1. Trabajo computacional vs. trabajo físico: En el PoW, el trabajo se realiza a través de la resolución de problemas matemáticos complejos utilizando poder computacional. En contraste, la extracción de oro implica el trabajo físico de excavación, perforación, transporte y procesamiento para obtener el oro de la tierra.


2. Consumo de recursos: El PoW requiere una gran cantidad de energía y recursos computacionales, ya que se necesita resolver problemas complejos repetidamente para validar las transacciones en una red blockchain. La extracción de oro también consume recursos, como la energía necesaria para las operaciones mineras y los procesos de refinamiento. Ambos tienen que consumir tanto recursos materiales como dinerarios.


- Recursos materiales: en caso del PoW, GPUs y otros recursos computacionales más sofisticados como ASIC (Application-Specific Integrated Circuit o circuitos integrados para aplicaciones específicas). En el caso de la minería, todos los vehículos, herramientas y mano de obra para la extracción.


- Recursos dinerarios: La inversión dineraria que se tiene que realizar para obtener los recursos materiales, entre otros.


3. Recompensas: En el PoW, los participantes que resuelven con éxito los problemas matemáticos reciben recompensas en forma de criptomonedas. En la extracción de oro, los mineros o empresas de minería obtienen recompensas en forma de oro físico.


4. Valor intrínseco: El oro tiene un valor intrínseco reconocido durante siglos debido a su escasez, durabilidad y uso en joyería, industria y finanzas. Las criptomonedas basadas en PoW, como Bitcoin, tienen valor debido a su adopción, aceptación como medio de intercambio y valor asociado al trabajo computacional y consumo energético para su extracción.



¿Qué es el Proof of Stake (PoS)?

El PoS es un algoritmo de consenso en el cual los nodos que desean crear un nuevo bloque son elegidos de acuerdo a la cantidad de criptomonedas que poseen y están dispuestos a bloquear temporalmente como garantía. La probabilidad de que un nodo sea seleccionado para validar el siguiente bloque depende de la cantidad de criptomonedas que haya bloqueado. Es decir, cuanto mayor sea la participación de criptomonedas, mayor será la probabilidad de ser seleccionado para validar transacciones.


Puede ser un poco confuso, pero al final es exactamente igual que cuando juegas a la lotería. Imagina que tienes un boleto de lotería en el que participas para ganar un premio. En lugar de comprar múltiples boletos para aumentar tus posibilidades de ganar, en PoS sería similar a tener una cantidad mayor de criptomonedas bloqueadas en la red. En PoS, las criptomonedas que posees y estás dispuesto a "apostar" actúan como tus boletos en la lotería del consenso de la red. Cuantas más criptomonedas poseas, más boletos tienes en el sorteo y mayor será tu probabilidad de ser seleccionado para crear y validar un nuevo bloque en la cadena de bloques.


Además, al igual que en una lotería, donde necesitas mantener tus boletos hasta que se realice el sorteo para tener una oportunidad de ganar, en PoS, tienes que mantener tus criptomonedas bloqueadas hasta que se cree un determinado número de bloques, en un intervalo temporal denominado época. La única diferencia es que, en algunos casos (depende de cómo este programado el mecanismo de consenso), el algoritmo penaliza cuantas más veces ganes, dando la oportunidad a otros jugadores a minar un nuevo bloque.


Comparaciones

Conociendo ya como funcionan estos dos consensos, vamos a determinar cuál de ellos es mejor. Para ello, tomaremos como referencia los dos protocolos que mejor representan estos consensos: Bitcoin para el PoW y Ethereum para el PoS.



Descentralización

Bien es cierto que leerás muchos artículos y escucharás a muchas personas decir que el PoW es más descentralizado que el PoS y venimos a decirte que están bastante equivocados. Como hemos analizado anteriormente, para el PoW se necesitan recursos materiales además de dinerarios. Estos recursos no están disponibles en todas las partes del mundo de la misma manera.


  • Para empezar, la energía para minar bloques en PoW puede ser un impedimento y reducir mucho la rentabilidad, dado que en muchos países el coste de esta es mucho más alto que en otros, teniendo estos últimos más ventaja y un incentivo mayor a la hora de minar bloques y, por tanto, centralizándose más el poder computacional en dichas regiones. Además, las empresas lideres en minería de bitcoin tienen la ventaja competitiva de producir economías de escala para reducir costes, siendo de esta manera más rentables y competitivas y, como consecuencia, dificultando la entrada de nuevos participantes a la red. En PoS no existe este consumo de energía y recursos, por lo tanto, todos tienen el mismo incentivo para validar bloques. El que pone en staking 5 millones tiene la misma rentabilidad que el que lo hace con 5 mil.


  • En PoW encontramos una barrera de entrada muy grande a la hora de conseguir las GPUs o los ASICs para poder utilizar el poder computacional en la minería de bloques. Estos recursos son limitados y no están al alcance de todos, siendo altamente costoso crear una planta llena de estos dispositivos. Para mejorar la descentralización en PoW, existe la búsqueda del concepto denominado ASIC-resistant, esto significa que el problema matemático a resolver para el minado de nuevos bloques tendría la misma dificultad para un dispositivo altamente especializado como un ASIC, que para un ordenador convencional, facilitando la entrada a un número mucho mayor de mineros y descentralizando la red. Sin embargo, esto es algo que, en la práctica, no se ha llevado a cabo con éxito. Bien es cierto que existe la idea romántica de que en PoW puedes entrar como minero con muy poco dinero, pues teóricamente puedes intentar minar bitcoin con un ordenador convencional. La realidad es que, a día de hoy, las probabilidades de minar bitcoin con uno de estos dispositivos de manera independiente es tan baja que prácticamente ninguna persona estaría dispuesta a perder dinero en recursos energéticos y tiempo en la instalación y funcionamiento de los recursos necesarios por la fantasía de minar un bloque y, si existiese algún valiente, estos serían tan pocos y reunirían tan poca cantidad de computación, que no harían el protocolo más descentralizado. Es por ello que los pequeños mineros acaban formando parte de grandes pools que concentran gran parte de la minería y sumándose a su causa. Además, es importante recordar que más nodos independientes no hacen la red más descentralizada, pues el poder se mide en computación y no en número de dispositivos


  • El simple hecho de tener que utilizar recursos físicos es un impedimento sobre utilizar únicamente recursos virtuales. Con recursos virtuales, puedes participar con el click de un botón, por lo tanto, si mañana no quieres seguir participando en la red por cualquier razón, puedes hacer líquida tu inversión casi de inmediato. En PoW, se te presenta el gran impedimento de tener que poner en venta todos estos recursos materiales en los que has invertido. Además, algunos gobiernos (como el de China) podrían controlar y prohibir con más facilidad un consenso sustentado por recursos físicos, ya que su trazabilidad es más sencilla al tratarse de infraestructuras fácilmente localizables y sujetas, en muchos casos, a licencias y normativa territorial, que uno que utiliza únicamente recursos virtuales.


Hay que contar, además, con que en PoS es posible diseñar dicho algoritmo para que, una vez que se han bloqueado un determinado número de tokens en las denominadas staking pools, los incentivos que estas generan son cada vez menores. De esta forma, se incentiva el que haya más nodos y no se concentre todo el poder en aquellos que más capital bloqueado tienen, favoreciendo una vez más la descentralización. Este método se denomina mecanismo de saturación y, aunque no se utiliza en todos los protocolos PoS, sí que existen algunos, como el protocolo Ouroboros de Cardano, que lo han implementado.




Seguridad

Aquí es donde suele encontrarse el groso del debate. Mientras que el PoW utiliza un proceso de resolución criptográfico complejo para el minado de sus bloques, en PoS se asigna el bloque directamente a un validador. Aunque al final es cierto que en PoS solo se requieren recursos dinerarios, debemos tener en cuenta que la asignación de un bloque a un validador no es tan sencilla como lanzar un dado, sino que tiene muchas más implicaciones técnicas por detrás y en las que no entraremos en detalle en este post.


Validación de bloques

Lo que es importante conocer es que la dificultad de minar un bloque en Bitcoin no hace que sea un consenso más seguro que el de Ethereum. De hecho, para poder minar un bloque en Ethereum se necesita una aprobación del 66% de los nodos, mientras que en Bitcoin esta cifra es del 51%. Con esto, se entiende que la red de Ethereum necesita más validaciones que la red de Bitcoin para poder crear un nuevo bloque, haciéndolo más robusto ante ataques. Además, en el PoS encontramos un concepto conocido como slashing, que es una penalización para aquel nodo que realiza alguna acción fraudulenta, siendo retirado de la red y perdiendo una porción de sus tokens en staking y, en algunos casos, incluso el total.


Aun así, a pesar de existir un gran desincentivo para actuar de manera fraudulenta, en la red de Ethereum solo sería necesario un 34% del stake para sembrar discordia. Esto no quiere decir que con un 34% sea posible validar un bloque fraudulento, sino que con un 34% se podría votar en contra de bloques válidos y crear confusión en la red. En el ámbito de la seguridad, está claro que denegar servicio y no validar transacciones buenas es preferible a que sea más sencillo validar una transacción fraudulenta. Además, denegar servicio en Ethereum es algo muy costoso y sin ningún sentido, porque esos bloques no van a ser minados y acabarás siendo penalizado, no recibiendo ningún tipo de incentivo por ello.


Inversión necesaria para reunir la mayoría

Como hemos mencionado antes, para poder tirar abajo la red Bitcoin, tendría que hacerse con al menos un 51% del poder computacional. Conociendo el hash rate total de la red de Bitcoin y haciendo algunos cálculos de las inversiones necesarias (estos cálculos los mostraremos en un blog próximo), podemos determinar que, para realizar este ataque, se tendrían que invertir en recursos en el orden de 10 mil millones de dólares. Además de realizar esta inversión, sería necesario pasar por una serie de barreras logísticas y de infraestructura de gran magnitud, dado que hay que construir las plantas de minado y realizar las instalaciones del hardware. Se podría argumentar que no haría falta la instalación de hardware, ya que esto se podría hacer con infraestructura Cloud, sin embargo, esto es prácticamente imposible dado que, en la actualidad, los dispositivos de minado se han vuelto tan sofisticados y realizan una tarea tan específica, que los servidores están muy lejos de concentrar estas prestaciones.


Por otro lado, para Ethereum hemos visto que se necesitaría tener un stake o capital bloqueado que represente, al menos, un 66% de la red. Sabiendo que la capitalización de mercado es de 220 mil millones de dólares, para tirar la red se necesitarían aproximadamente 145 mil millones de dólares. Aunque es cierto que en este caso no tendríamos la barrera logística y de infraestructura, para poder tirar la red de Ethereum se necesitaría invertir 14 veces más que en la red de Bitcoin.


Indisponibilidad de ether en circulación

Uno de los grandes retos a los que se tendría que enfrentar un supuesto atacante es poder comprar las unidades de ether suficientes de los usuarios poseedores de estos. Además, estos tendrían que estar dispuestos a vender dicha cantidad al atacante, algo que es altamente improbable que suceda por una serie de razones:


1. No hay, por un enorme margen, ether suficiente en plataformas de intercambio: la porción de ether que existe en las plataformas de intercambio centralizadas o exchanges es tan solo del 13% (como muestra el siguiente gráfico de CryptoQuant). Si a esto le sumamos el porcentaje de ether disponible en protocolos descentralizados, es decir, en smart contracts, que es aproximadamente del 30%, el total de ether disponible para comerciar sería del 43%. Esto, suponiendo que dicho 30% fuese ether líquido, lo cual no es cierto porque buena parte de este estará bloqueado en smart contract wallets y otras aplicaciones. Por lo tanto, si se quisiera realizar un ataque para tener el control del 66% de la red, este sería literalmente imposible de llevar a cabo.



2. Creencia en el potencial de crecimiento: Los inversores a largo plazo que tienen una gran cantidad de ether pueden creer firmemente en su potencial de crecimiento futuro. Pueden tener una visión optimista sobre el desarrollo de la tecnología de Ethereum, su adopción masiva y el aumento de su valor en el mercado. Si creen que el valor del ether seguirá aumentando, es probable que prefieran mantenerlo a largo plazo en lugar de venderlo.


3. Utilidad dentro del ecosistema Ethereum: El ether tiene una función clave dentro del ecosistema Ethereum. Es la criptomoneda nativa utilizada para pagar las tarifas de transacción en la red y también es necesario para participar en contratos inteligentes y aplicaciones descentralizadas (dApps) construidas en Ethereum. Los usuarios que poseen grandes cantidades de ether pueden necesitarlo para realizar transacciones o interactuar con diferentes servicios dentro de Ethereum. Por lo tanto, pueden optar por mantener su ether en lugar de venderlo para aprovechar estas oportunidades y beneficios dentro del ecosistema.


4. Implicaciones fiscales: Dependiendo de la jurisdicción, la venta de ether puede estar sujeta a impuestos sobre las ganancias de capital. En algunos casos, los impuestos sobre las ganancias pueden ser significativos, lo que puede disuadir a los inversores de vender grandes cantidades de este activo. Al mantener su inversión a largo plazo, pueden retrasar la obligación de pagar impuestos hasta que decidan vender una cantidad más pequeña o hasta que existan reglas fiscales más favorables


Capacidad de recuperación en caso de ataque

Aun así, debemos tener en cuenta que el precio del ether puede caer, por lo tanto, la seguridad de la red estaría más comprometida. Si Ethereum cayese un 90%, entonces el coste para tirar abajo la red caería hasta aproximadamente los 15 mil millones de dólares, debilitando de esta manera la seguridad de la red (aunque seguiría siendo muy costoso tirarla y que Ethereum caiga de esta manera es altamente improbable).


En Bitcoin, en cambio, si cae el precio, cae la recompensa para los mineros, pero el poder computacional seguiría estando salvaguardado, dado que los mineros tendrían que desconectar su hardware y esto no sucedería de manera inmediata. Entonces, si a un gobierno u otra entidad se le ocurriese alguna manera de manipular el mercado para tirar el precio de ether, podría comprometer la seguridad de este, pero en Bitcoin serían los mineros con menor participación en la red los que desaparecerían de una manera más progresiva y menos inmediata. Aun así, nos tenemos que poner en un escenario altamente improbable para que Ethereum pueda caer de una manera tan brusca con respecto a su valoración actual y para que hubiese alguien dispuesto a comprar y vender en esa magnitud.


Por último y como hemos mencionado antes, si se intentase ser fraudulento en la red de Ethereum, el nodo sería permanentemente eliminado, además de perder una porción del dinero bloqueado en la red, algo que es imposible hacer en Bitcoin porque con PoW la red no podría penalizar al nodo fraudulento destruyendo su hardware.



Escalabilidad

En este punto no hay debate. Uno de los principales objetivos del PoS es mejorar la escalabilidad de PoW. PoS permite realizar validaciones de una manera más rápida y sencilla, lo que facilita que se generen más bloques con transacciones en un menor intervalo temporal. En Ethereum, por ejemplo, se mina un bloque cada 12 segundos, mientras que en Bitcoin, cada 10 minutos, teniendo por lo tanto un mayor throughput (transacciones por segundo) Ethereum que Bitcoin. También es cierto que esto puede ser un problema para la red de Ethereum, pues cuantos más bloques se creen, más pesada es la blockchain para ser descargada por los nodos validadores ¿Es entonces esto un problema para la escalabilidad? La respuesta es sí. Aunque Ethereum está trabajando en alternativas para que no haga falta descargarse el histórico de la blockchain, a día de hoy es un problema (a largo plazo). Aun así, esto se producirá antes o después en todas las blockchains, siendo un problema más de estructura y no del consenso.



Conclusión

Llegados a este punto podría parecer que el artículo está muy sesgado a PoS. La realidad es que PoS es un mejor protocolo, pero esto no quiere decir que PoW no deba existir. De hecho, para garantizar una mejor seguridad en el ecosistema blockchain, es importante que existan diferentes protocolos de consenso. Aunque PoS es una versión mejorada de PoW, este último ha demostrado durante más años su robustez e impenetrabilidad ante ataques, siendo históricamente más válido. Con esto se quiere trasmitir que, aunque PoS sea innovación, PoW ha funcionado durante mucho más tiempo, por lo tanto, hay más probabilidades de que aparezcan fallas de seguridad en un consenso que lleva menos tiempo.


Por eso, en Archivist somos fieles defensores de que Bitcoin se mantenga con el protocolo actual, al ser un activo con un diseño más simple y robusto que persigue convertirse en reserva de valor y no en una plataforma programable ni, probablemente, un sistema de pagos, mientras que Ethereum, al ser candidato a convertirse en un ordenador universal, debe velar más por la innovación, mejorando en escalabilidad, descentralización y seguridad ¿Cuál crees tú que es mejor mecanismo de consenso y por qué?

0 comentarios

Entradas recientes

Ver todo
colorful-abstract-nebula-space-background_edited_edited_edited.png
bottom of page