Curso para principiantes de la temporada 3 de Crypto Academy - Tarea 4: Diferentes tipos de mecanismos de consenso por @loani1

in hive-108451 •  3 years ago  (edited)

loani1.png

Asignación

¿Cuál es la diferencia entre PoW & PoS? ¿Ventajas y desventajas? ¿Cuál es mejor en el escalado de la capacidad? ¿Ejemplos?

Introducción

     Blockchain es una red que necesita del consenso de todos sus nodos para funcionar. El consenso determina cómo y quién crea los bloques, la forma en que se verifican y se agregan a la cadena, la cantidad de datos por bloque, el costo de las transacciones y cuántas transacciones por segundo se procesan, así como la forma es que se le asigna recompensa, si es que se le asigna, a los que generan los bloques. No obstante, no existe una única forma de establecer el consenso en la red. En el caso particular de esta publicación, estaré hablando de dos protocolos de consenso: Proof of Work y Proof of Stake. Éstos tienen diferencias importantes a resaltar, lo cual estaré detallando en este post, además de que están asociados a dos situaciones históricas importantes: la fundación de la tecnología Blockchain, en el caso de PoW, y resolver los problemas de escalabilidad que éste presenta, en el caso de PoS. De todo ello hablaré en esta publicación.

Proof of Work y Proof of Stake

Proof of Work

     Fue utilizado en la primera blockchain, la de Bitcoin, y desde entonces ha sido usado en otros proyectos importantes, como Ethereum, por ejemplo. Pero este protocolo no apareció por primera vez con la llegada de Bitcoin, sino que en realidad apareció en 1997 y fue usado para HashCash, una tecnología que evitaba el spam en los correos, la cual inspiró el protocolo Proof of Work que se usa en Bitcoin. Dentro de una blockchain que usa este protocolo, un bloque se crea resolviendo un problema criptográfico. Los mineros, quienes son los encargados de crear y verificar los bloques, deben competir resolviendo dicho problema lo más rápido posible. El minero que lo resuelva primero se gana la recompensa y se le paga la tarifa por cada una de las transacciones que están dentro del bloque. Para que no exista ninguna irregularidad, los otros mineros se encargan de verificar que el bloque haya sido creado correctamente, lo que es muy fácil de hacer.

     La razón por la que se incluye el problema criptográfico es por seguridad. La prueba de trabajo hace que sea muy difícil modificar datos, hacer doble gasto o realizar el ataque de 51%. Esto es debido a que el problema criptográfico hace necesario utilizar un equipo con capacidad de procesamiento de información elevado, lo que implica gastar energía eléctrica y, por ende, dinero.

Proof of Stake

     Con este protocolo, no se necesita equipos informáticos potentes. Ya no se debe realizar una prueba de trabajo, que implica mucha energía y genera un importante impacto ambiental, sino que se lo reemplaza por la participación o el staking. La participación se mide a través de la acumulación o congelación dinero. Aquellos que acumulen más dinero, su participación es mayor. Esto es bastante diferente al Protocolo Proof of Work porque aquí ya no hay "mineros" que resuelven un problema matemático. Ahora hay validadores o forjadores de bloques, los cuales, en teoría, son elegidos al azar por el algoritmo, no obstante se le da prioridad a aquellos que tengan un nivel de participación mayor. A aquellos elegidos se les da el derecho de crear nuevos bloques y cobrar la tarifa de las transacciones que estén en cada bloque. Existen otras personas o nodos que se encargan de verificar que no haya ninguna irregularidad con el bloque.

     La ventaja que tiene este protocolo es que es de alta escalabilidad y rapidez, a diferencia de PoW. Éste último no es tan rápido porque su naturaleza se lo impide: sacrifica escalabilidad al incorporar el problema criptográfico pero obtiene altos niveles de seguridad. No obstante, PoS se creó para resolver los problemas de escalabilidad. Al reemplazar el uso de energía eléctrica por dinero, ya no necesitó equipos informáticos potentes, lo que hizo que la escalabilidad aumentara, conservando la seguridad.

Diferencias entre PoW y PoS

CategoríaProof of WorkProof of Stake
Escalabilidad y velocidadSacrifica parte de su escalabilidad para obtener mayor seguridadAlta escalabilidad y velocidad
Consumo de energía eléctricaPoW cosume mucha energía eléctrica. Es su forma de mantener la seguridad.No consume mucha energía eléctrica
FuncionamientoSe basa en resolver un problema criptográfico, lo que implica equipos de alto procesamiento que consumen mucha energía eléctricaSe basa en congelar tokens como medio para aumentar la participación y tener mayores posibilidades de ser elegido como validador, lo que implica invertir mucho dinero
DescentralizaciónSe consigue mediante la competencia de los mineros que deben resolver el problemaSe consigue a través de la participación de los validadores que son escogidos al azar
Protección al ataque 51%Teóricamente, el ataque del 51% se produciría solo si el atacante logra controlar el 51% del hashrate o el poder de procesamiento de la red pero en la práctica es imposible por el alto costo energético que eso implicaTeóricamente, el ataque ocurriría si el atacante consigue obtener el 51% de la participación, pero en la práctica es imposible por la gran inversión de dinero que eso implica

Ventajas de Proof of Work

  • Ha demostrado ser muy seguro. Esto se debe a su naturaleza, ya que está hecho para que miles e incluso decenas de miles de mineros compitan para conseguir resolver el problema criptográfico, lo que a su vez aumenta el tamaño la red y su poder de cómputo, haciendo difícil que ataques de hackers puedan llevarse a cabo."

  • Hacerlo funcionar en una blockchain es bastante sencillo.

  • El trabajo extra y el costo de energía que implica resolver el problema criptográfico hace que cualquier tipo de intento por modificar los datos o alterar de alguna forma la red sea muy costoso e infructífero. Esto incluye el ataque de 51%, que en la práctica es sumamente caro y son mayores los riesgos que los beneficios.

  • Resiste a ataques de Denegación de Servicios.

Desventajas de Proof of Work

  • El consumo de energía eléctrica es muy elevado. Esto hace que sea muy costoso, además de que produce un serio impacto ambiental

  • Los equipos para minar son muy costosos. La gente sin muchos recursos tiene menos posibilidades que aquellos que tienen los recursos para hacer las denominadas granjas de minería.

Ventajas de Proof of Stake

  • Alta escalabilidad y velocidad sin sacrificar la seguridad.

  • A demostrador ser seguro en el tiempo, sin tener que reducir la escalabilidad como si lo hace PoW.

  • Consume mucho menos energía, lo que se traduce en menos costos y menos impacto ambiental que PoW.

  • No se necesitan equipos costosos para participar.

  • El concepto de participación a través del staking ha demostrado ser fiable y seguro.

  • El hecho de que el algoritmo escoja al azar a los validadores supuestamente hace que sea más descentralizada que PoW. Aunque, como ya dije, el algoritmo da prioridad a aquellos que tienen mayor participación en la red, por lo que se a cuestionado mucho si realmente se escoge al azar a los validadores.

  • Al exigir que se acumule tokens nativos empuja el precio de éstos al alza.

Desventajas de Proof of Stake

  • Como recién acabo de mencionar, el algoritmo da prioridad a aquellos que tienen mayor dinero acumulado. Esto quiere decir que las personas que tienen menos dinero están en desventaja.

  • Tener que congelar dinero dificulta el comercio natural de los tokens nativos.

Escalabilidad

     La escalabilidad, según el diccionario del portal AboutEspañol, se define como la propiedad de cambiar la capacidad de tamaño de un sistema sin comprometer su funcionamiento. Los sistemas de programas de cómputo son escalables cuando puede aumentar el número de usuarios , datos que procesa o solicitudes que ingresan, sin afectar a grandes rasgos la velocidad de respuesta de los mismos. En blockchain, se entiende por escalabilidad como la capacidad de gestionar transacciones, y puede verse afectada por algunos factores. Hablaré de ellos en breve.

El problema de la escalabilidad en las blockhains

     Al ser blockchain una red de miles de nodos interconectados, la capacidad se ve limitada. Muchos nodos compitiendo para crear los bloques puede complicar la velocidad con la que se validan las transacciones. Es por esto que existe un estimado del máximo de transacciones que se pueden manejar sin que la red presente problemas. Por eso es que la primera dificultad a enfrentar es la saturación por el uso de la red. Si el número de transacciones aumenta demasiado, los nodos, tarde o temprano, no responderán ante la demanda y la red puede colapsar. Otro problema es el tamaño de los bloques. Mientras más grande sean los bloques, más tiempo tarda difundirlos por la red.

     Vitalik Buterin, creador de Ethereum, explicó el desafío que las blockchains atraviesan a través un concepto que él mismo invento: "El Trilema de la Escalabilidad". Éste hace referencia a que se debe conseguir que la red mantenga el equilibrio entre escalabilidad, seguridad y descentralización. Este desafío no es para nada sencillo pero cada protocolo tiene sus formas de afrontarlo. Explicaré como lo hace cada uno a continuación.

Escalabilidad en Proof of Work

     Cuando se crea Bitcoin, Satoshi Nakamoto procuró que su sistema fuese lo más seguro posible mientras conservaba la descentralidad. De esta forma incorporó Proof of Work. El trabajo extra que impone este protocolo mantiene seguro al sistema pero afecta significativamente la escalabilidad porque resolver el problema criptográfico de cada bloque implica invertir bastante tiempo; el proceso es lento. En otras palabras, sacrifica parte de la escalabilidad para obtener mayor seguridad y mantener la descentralidad. Esto puede verse en las blockchains de criptomonedas de alta capitalización como Bitcoin y Ethereum (este último tiene planeado hacer la transacción a PoS). Bitcoin procesa7 transacciones por segundo y tarda 10 minutos en confirmalas, muy lento para la alta demanda que llega a la red. Ethereum es bastante más rápido que Bitcoin, tarda 16 segundos en confirma las transacciones pero solo puede procesar 15 transacciones por segundo, aún es muy lento en relación con la demanda. La diferencia es abismal cuando se compara con el número de transacciones que procesan las blockchains que usan el protocolo PoS.

Escalabilidad en Proof of Stake

     El problema de escalabilidad en Proof of Work llevó a Scott Nadal y Sunny King a desarrollar el protocolo Proof of Stake en 2012. La intención desde un principio fue crear un protocolo que permitiera aumentar la escalabilidad de las redes blockchain que existían hasta entonces y reducir el impacto ambiental y económico que arrastra consigo PoW. Lo primero que hicieron fue descargar por completo el trabajo computacional extra, lo que se traducen en transacciones que se procesan mucho más rápido. Lo segundo que hicieron fue idear la forma de mantener la seguridad en la red y la descentralidad y lo lograron implementando el sistema de participación a través del congelamiento de dinero. Como ya lo expliqué, PoS reemplaza el esfuerzo energético de PoW por esfuerzo económico, lo que hace muy difícil para una persona o grupo de personas realizar el ataque de 51% y también evita fraudes (los validadores que hagan trampa o modifiquen datos pueden perder todo su dinero acumulado). De está forma se aseguró la escalabilidad a la vez que se mantenía la seguridad y la descentralidad, y eso podemos verlo en blockchains que usan este protocolo como el de Cardano (ADA), que procesa entre 50 y 250 transacciones por segundo o Cosmos (ATOM), que procesa hasta 10.000 transacciones por segundo.

Lista de criptomonedas que usan PoW y PoS

Proof of WorkProof of Stake
BitcoinCardano
Ethereum 1.0Binance Coin
Bitcoin CashFlows Token
Ethereum ClassicEthereum 2.0
MoneroCosmos
DecredTezos
LitecoinAkash Network
ZcashDASH
Bitcoin SVStratis

Conclusión

     Las blockchains necesitan protocolos de consenso para funcionar. Son las que determinan la forma en que sea crear los bloques, además de establecer la forma en que se mantiene la escalabilidad junto con la seguridad y descentralidad. PoW y PoS son los protocolos que actualmente se utilizan en la mayoría de blockchains, es por ello que es necesario entender la naturaleza de estos, cómo funciona, qué implica, ventajas, desventajas, seguridad y escalabilidad, sobretodo si queremos invertir en algún proyecto. Muchas gracias profesor @sapwood por tan importante lección, necesaria para aquellos que estamos aprendiendo sobre este mundo de las criptomonedas. ¡Se lo agradezco!

Authors get paid when people like you upvote their post.
If you enjoyed what you read here, create your account today and start earning FREE STEEM!
Sort Order:  

Hi @loani1, Thank you for taking interest in the 4th Task of the Beginners Fixed Class. Your grades are as follows:

Assessment AspectsRating
Presentation/Use of Markdowns1.8 / 2
Follow Rules and Guideline2 / 2
Quality of Analysis1.8 / 2
Clarity of Language1.2 / 2
Originality1.5 / 2
Total8.3 / 10

My Review and Suggestions:

  • You have completed the task.

  • You created an article with a very good structure, great work!!

  • Leave a space between each discussion for easy reading.

  • Use bold text only for a few words that are considered important, not all writing. I see you bolded the posts for Pros and cons of PoW and PoS.

Thank you!

¡Gracias profesor!