¿Es el cambio de Ethereum a PoS realmente una actualización?

por Infoblock

En los últimos años, Ethereum se ha estado preparando para transformarse de un mecanismo de consenso de prueba de trabajo a una prueba de participación (PoS) protocolo, Lanzamiento reciente su testnet final Medallala última parada en el viaje de Ethereum para lograr la red principal de Ethereum 2.0, que verá una transición completa a PoS puro. ¿Pero por qué?

Ethereum es el segundo nombre más reconocible en el criptomoneda y la industria blockchain, por detrás de su contraparte, Bitcoin (BTC). Se esperaba que Ethereum fuera una actualización de Bitcoin. Heredó conceptos clave como el consenso de PoW al introducir contratos inteligentes, reemplazar UXTO con un modelo basado en cuentas y ajustar el tiempo de minería en promedio.

Con Bitcoin cada vez más popular, algunos efectos secundarios de Bitcoin se han convertido en el objetivo de los críticos. Uno de ellos es el desperdicio de energía que se utiliza para la minería. Ethereum, que usó PoW, también atrajo críticas por su desperdicio de energía. Una de las principales actualizaciones en Ethereum 2.0 es reemplazar PoW con PoS.

Pero, ¿es PoS reemplazar PoW realmente una mejora? Dudo.

De acuerdo a eth.wiki, «Proof of Stake (PoS) es una categoría de algoritmos de consenso para cadenas de bloques públicas que dependen de la participación económica de un validador en la red … Desde una perspectiva algorítmica, hay dos tipos principales: prueba de participación basada en cadena y prueba de participación estilo BFT ”.

Ambos tipos deben depender del número y el estado de los nodos de la red blockchain. Esto me recuerda a los sistemas distribuidos.

El problema fundamental en un sistema o red distribuida

El problema fundamental en un sistema o red distribuida es llegar a un consenso en un entorno donde pueden abundar las fallas. La red debe ser tolerante a errores. De lo contrario, es inútil en el mundo real y sus aplicaciones están seriamente limitadas. Este problema es formalizado por informáticos como Leslie Lamport, en 1982 y descrito como «El problema de los generales bizantinos«.

Para abordar el problema de los generales bizantinos, se propusieron algunas soluciones y se denominaron tolerancia a fallas bizantinas (BFT). Esos algoritmos bizantinos de tolerancia a fallas tienen condiciones estrictas y dependen de la cantidad de nodos honestos en la red. En términos generales, el progreso de BFT gira en torno a cómo reducir la cantidad de nodos honestos y la solución junto con los números de nodos. Cuando el número de nodos crece, se alcanza un nuevo nivel de complejidad, que es el problema clave al que se enfrentan las aplicaciones a gran escala de sistemas distribuidos o redes y que los desarrolladores de software están tratando de resolver.

La cadena de prueba de trabajo (PoW) es una solución al problema de los generales bizantinos

En un diálogo clásico, James A. Donald escribió:

No es suficiente que todos conozcan X. También necesitamos que todos sepan que todos conocen X, y que todos saben que todos saben que todos conocen X, lo cual, como en el problema de los generales bizantinos, es el clásico problema difícil del procesamiento de datos distribuidos. .

Satoshi, el creador de Bitcoin, respondió:

La cadena de prueba de trabajo es una solución al problema de los generales bizantinos.

Intentaré reformularlo en ese contexto. Varios generales bizantinos tienen cada uno una computadora y quieren atacar el wi-fi del Rey forzando brutalmente la contraseña, que han aprendido que tiene una cierta cantidad de caracteres. Una vez que estimulan la red para generar un paquete, deben descifrar la contraseña dentro de un tiempo limitado para ingresar y borrar los registros, de lo contrario, serán descubiertos y se meterán en problemas. Solo tienen suficiente potencia de CPU para descifrarlo lo suficientemente rápido si la mayoría de ellos ataca al mismo tiempo.

No les importa particularmente cuándo será el ataque, solo que todos están de acuerdo. Se ha decidido que cualquiera que quiera anunciará una hora, y la hora que se escuche primero será la hora oficial del ataque. El problema es que la red no es instantánea, y si dos generales anuncian diferentes tiempos de ataque casi al mismo tiempo, algunos pueden escuchar uno primero y otros escuchar el otro primero.

Usan una cadena de prueba de trabajo para resolver el problema. Una vez que cada general recibe el tiempo de ataque que escucha primero, configura su computadora para resolver un problema de prueba de trabajo extremadamente difícil que incluye el tiempo de ataque en su hash. La prueba de trabajo es tan difícil que se espera que pasen 10 minutos trabajando todos a la vez antes de que uno de ellos encuentre una solución. Una vez que uno de los generales encuentra una prueba de trabajo, la transmite a la red y todos cambian su cálculo actual de prueba de trabajo para incluir esa prueba de trabajo en el hash en el que están trabajando. Si alguien estaba trabajando en un tiempo de ataque diferente, cambia a este, porque su cadena de prueba de trabajo ahora es más larga.

Después de dos horas, el tiempo de un ataque debe dividirse mediante una cadena de 12 pruebas de trabajo. Cada general, con solo verificar la dificultad de la cadena de prueba de trabajo, puede estimar cuánta potencia de CPU paralela por hora se gastó en ella y ver que debe haber requerido que la mayoría de las computadoras produzcan esa cantidad de prueba de trabajo. trabajar en el tiempo asignado. Todos tenían que haberlo visto porque la prueba de trabajo es una prueba de que trabajaron en ello. Si la potencia de la CPU exhibida por la cadena de prueba de trabajo es suficiente para descifrar la contraseña, pueden atacar de manera segura en el momento acordado.

La cadena de prueba de trabajo es cómo se resuelven todos los problemas de sincronización, base de datos distribuida y vista global que ha preguntado.

Impacto profundo

Satoshi ha resuelto el problema de los generales bizantinos con el consenso de PoW. PoW es una solución probabilística al problema de los generales bizantinos. Para ser específico, el problema de los generales bizantinos se reduce a través de PoW a un nuevo espacio de problemas, donde la solución es irrelevante para los números de nodo.

Lo que es fundamentalmente diferente del BFT tradicional es que PoW puede desacoplarse del nodo y el estado del nodo, lo que significa que una solución PoW es independiente de los números de nodo. Además, el crecimiento en el número de nodos no necesariamente aumenta la complejidad.

PoW es como una competencia constante para blockchains que operan con ese consenso como una competencia de tiro con arco. Con un poco de suerte, el que tenga el mejor rendimiento gana, sin importar cuántos competidores haya. Por otro lado, PoS es más similar a un proceso de votación. Aunque tiene varias variaciones y pasos, esencialmente se acopla con números de nodo.

PoS: ¿actualización en caliente o degradación?

Desde Bitcoin, ha habido muchos proyectos que han afirmado avances en el consenso. PoS y sus variaciones como DPoS se convirtieron en sensaciones en el blockchain y el espacio criptográfico, pero con PoS, la comunidad criptográfica en realidad está volviendo a un problema que Satoshi ya logró resolver. Ethereum 2.0 es una actualización? No, es una rebaja.

Fuente de la imagen: Shutterstock

Content Protection by DMCA.com

TAMBIÉN PUEDE INTERESARTE