Autor: Vitalik Buterin
Compilado por: Peng Sun, Foresight News
Enlace original: https://vitalik.eth.limo/general/2024/05/23/l2exec.html
Hace dos años y medio mencioné en el artículo "Endgame" que los diferentes caminos de desarrollo de blockchain en el futuro son muy similares, al menos técnicamente. En ambos casos, hay una gran cantidad de transacciones en la cadena y procesar estas transacciones requiere: (1) mucho cálculo (2) mucho ancho de banda de datos; Los nodos Ethereum ordinarios (como el nodo de archivo reth de 2 TB que se ejecuta ahora en mi computadora), incluso con un potente rendimiento de ingeniería de software y árboles Verkle, no son suficientes para verificar directamente la enorme cantidad de datos y cálculos. Por el contrario, en los dos esquemas de "fragmentación L1" y centrado en Rollup, se utiliza ZK-SNARK para verificar los cálculos y DAS para verificar la disponibilidad de datos. Ya sea fragmentación L2 o Rollup, el DAS es el mismo y la tecnología ZK-SNARK es la misma. Son a la vez un código de contrato inteligente y una función del protocolo. En un verdadero sentido técnico, Ethereum se está fragmentando y Rollup se está fragmentando.
Naturalmente, esto plantea la pregunta: ¿Cuál es la diferencia entre los dos? Una de ellas es que las consecuencias de las vulnerabilidades del código son diferentes: en Rollup, los tokens se robarán durante la fragmentación y el consenso se romperá; Pero espero que a medida que el protocolo se estabilice y las técnicas de verificación formal mejoren, el impacto de las vulnerabilidades del código será cada vez menor. Entonces, ¿qué otras diferencias existen entre estas dos opciones potencialmente a largo plazo?
Diversidad en entornos de ejecución.
Una idea que discutimos brevemente en Ethereum en 2019 fueron los entornos de ejecución. Esencialmente, Ethereum tendrá diferentes "zonas" que pueden tener diferentes reglas para las cuentas (incluidos métodos completamente diferentes como UTXO), cómo funciona la máquina virtual y otras funciones. Esto permite una diversidad de métodos en varias partes de la pila, lo que sería difícil de lograr si Ethereum intentara reunir múltiples funciones en una.
Al final, abandonamos algunos de los planes más ambiciosos y conservamos sólo el EVM. Sin embargo, se puede decir que Ethereum L2 (incluidos rollups, valdiums y Plasmas) funciona en última instancia como un entorno de ejecución. Actualmente, a menudo nos centramos en el equivalente L2 de EVM, pero ignoramos la diversidad que aportan muchos otros métodos:
● Arbitrum Stylus, que añade un segundo oráculo basado en WASM además de EVM;
● Fuel, que utiliza una arquitectura basada en UTXO similar a Bitcoin (pero más completa);
● Aztec, que introduce un nuevo lenguaje y paradigma de programación diseñado en torno a contratos inteligentes que preservan la privacidad basados en ZK-SNARK.
Arquitectura basada en UTXO, fuente: documentación de Fuel
Podemos intentar convertir el EVM en una súper máquina virtual que cubra todos los paradigmas posibles, pero hacerlo reducirá en gran medida la eficiencia de cada función. Es mejor dejar que estas plataformas hagan sus cosas profesionales.
Compensación de seguridad: escalamiento y velocidad de transacción
Ethereum L1 proporciona una seguridad muy sólida. Si el bloque final completado en L1 contiene ciertos datos, entonces todo el consenso (incluido el consenso social en casos extremos) trabajará arduamente para garantizar que estos datos no se modifiquen y que cualquier ejecución desencadenada por estos datos no se revierta, y todavía tiene acceso a los datos. Para lograr esta garantía de seguridad, Ethereum L1 está dispuesto a aceptar un alto costo. Al momento de escribir este artículo, las tarifas de transacción son relativamente bajas: Layer2 cobra menos de 1 centavo por transacción, e incluso en L1, una transferencia ETH básica cuesta menos de $1. Si la tecnología avanza lo suficientemente rápido y el crecimiento del espacio de bloques disponible sigue el ritmo de la demanda, entonces estas tarifas pueden seguir siendo bajas en el futuro, pero es posible que no sea así. Incluso 0,01 dólares por transacción es demasiado alto para muchas aplicaciones no financieras, como las redes sociales o los juegos.
Pero las redes sociales y los juegos no requieren el mismo modelo de seguridad que L1. Si alguien puede pagar un millón de dólares para deshacer su historial de perder una partida de ajedrez, o hacer que parezca que uno de sus tweets fue publicado tres días después de su publicación, está bien. Por tanto, estas aplicaciones no deberían pagar los mismos costes de seguridad. Las soluciones L2 logran esto al admitir una variedad de métodos de disponibilidad de datos, desde acumulaciones hasta plasma y validiums.
Otro compromiso surge en torno a la cuestión de la transferencia de activos de L2 a L2. Predigo que en los próximos 5 a 10 años, todos los Rollups serán ZK Rollups, y los sistemas de prueba ultraeficientes como Binius y Circle STARK con búsquedas, junto con una capa de agregación de pruebas, permitirán que L2 proporcione la raíz del estado final en cada ranura es posible. Pero actualmente, solo podemos combinar de manera complicada Optimistic Rollup y ZK Rollup y usar diferentes ventanas de tiempo de prueba. Si implementamos la fragmentación de ejecución en 2021, el modelo de seguridad para mantener los fragmentos honestos será Optimitic Rollup, no ZK, por lo que L1 tendrá que gestionar la compleja lógica a prueba de fraude del sistema en cadena, y los tiempos de retiro serán de hasta un semana, para transferir activos entre fragmentos. Pero al igual que los errores de código, creo que este problema es, en última instancia, temporal.
La velocidad de las transacciones es el tercer y más permanente aspecto del compromiso de seguridad. Ethereum produce bloques cada 12 segundos y no puede ser más rápido, de lo contrario el nivel de centralización sería demasiado alto. Sin embargo, muchas L2 están explorando la posibilidad de comprimir los tiempos de bloque a cientos de milisegundos. 12 segundos no es tan malo: en promedio, los usuarios tienen que esperar entre 6 y 7 segundos después de enviar una transacción para ser incluidos en un bloque (y no solo 6 segundos, ya que es posible que el siguiente bloque no los incluya). Esto es comparable al tiempo de espera que tengo que esperar cuando pago con tarjeta de crédito. Sin embargo, muchas aplicaciones requieren velocidades más rápidas y L2 puede ofrecerlas.
Para hacerlo más rápido, L2 tiene un mecanismo de preconfirmación: los propios validadores de L2 prometen digitalmente incluir una transacción en un momento específico, y son castigados si la transacción no se incluye. El mecanismo StakeSure promueve aún más este mecanismo.
Preconfirmación L2
Ahora podemos intentar implementar todas estas funciones en L1. L1 puede incluir un sistema de "preconfirmación rápida" y de "confirmación final lenta". Puede contener diferentes fragmentos con diferentes niveles de seguridad. Sin embargo, esto aumenta la complejidad del protocolo. Además, hacer todo el trabajo en L1 corre el riesgo de sobrecargar el consenso, ya que muchos enfoques de mayor escala o mayor rendimiento tienen mayores riesgos de centralización o requieren formas más fuertes de "gobernanza" si se realizan en L1. El impacto de estas demandas más fuertes se extenderá. otras partes del acuerdo. Ethereum puede evitar en gran medida estos riesgos ofreciendo una compensación con L2.
Beneficios de la Capa 2 para las Organizaciones y la Cultura
Imaginemos un país dividido en dos, con la mitad convirtiéndose en un país capitalista y la otra mitad en un país altamente dominado por el gobierno (a diferencia de lo que sucede en la realidad, supongamos en este experimento mental que esto no es el resultado de ninguna guerra traumática, Pero un día el límite aparece de forma natural y ya está). En la parte capitalista, todos los restaurantes se componen de diferentes propietarios descentralizados, blockchain y derechos de voto. En un país dominado por el gobierno, todas ellas son ramas del gobierno, al igual que el departamento de policía. El primer día no cambiará mucho. La gente seguirá en gran medida los hábitos existentes, y lo que funciona y lo que no depende de realidades técnicas como las habilidades laborales y la infraestructura. Sin embargo, después de un año, se ven cambios enormes, ya que diferentes estructuras de incentivos y control conducen a enormes cambios en el comportamiento, lo que afecta quién viene y quién se queda, qué se construye, qué se mantiene y qué se abandona.
La teoría de la organización industrial tiene mucho que decir acerca de estas distinciones: habla no sólo de la diferencia entre una economía dirigida por el gobierno y una economía capitalista, sino también de una economía dominada por grandes franquicias y una economía en la que cada supermercado está dirigido por un empresario independiente. diferencia entre. Creo que la diferencia entre un ecosistema centrado en L1 y un ecosistema centrado en L2 es similar.
Hay un gran problema con la arquitectura "los desarrolladores principales administran todo"
Como ecosistema centrado en L2, creo que las principales ventajas de Ethereum son las siguientes:
Dado que Ethereum es un ecosistema centrado en L2, usted tiene la libertad de construir de forma independiente un subecosistema con sus propias características únicas y al mismo tiempo ser parte del Ethereum más grande.
Si recién está creando un cliente Ethereum, es parte del Ethereum más grande y, si bien tiene algo de espacio para la innovación, no es tan bueno como L2. Y si estás construyendo una cadena completamente independiente, tienes mucho espacio para la creatividad, pero también pierdes los beneficios de la seguridad compartida y los efectos de red compartidos. L2 es un buen equilibrio.
No solo brinda oportunidades técnicas para probar nuevos entornos de ejecución y compensaciones de seguridad que permitan escalamiento, flexibilidad y velocidad, sino que también brinda un mecanismo de incentivos que incentiva tanto a los desarrolladores a construir y mantener como al apoyo de la comunidad.
El hecho de que cada L2 esté aislada también significa que la implementación de nuevos métodos no requiere permiso: no es necesario convencer a todos los desarrolladores principales de que su nuevo método es "seguro" para el resto de la cadena. Si tu L2 falla, es tu responsabilidad. A cualquiera se le puede ocurrir una idea extraña (por ejemplo, el enfoque Plasma de Intmax), e incluso si los principales desarrolladores de Ethereum no están prestando atención en absoluto, pueden continuar construyéndola y eventualmente implementándola. Este no es el caso con las características y la precompilación de L1, e incluso en Ethereum, el éxito o el fracaso del desarrollo de L1 a menudo termina siendo político en mayor medida de lo que nos gustaría. No importa lo que se pueda construir en teoría, los diferentes incentivos creados por un ecosistema centrado en L1 y un ecosistema centrado en L2 tendrán en última instancia un impacto grave en lo que realmente se construye, el nivel de calidad y el orden en el que se construye. .
¿Qué desafíos enfrenta el ecosistema centrado en L2 de Ethereum?
Algo anda terriblemente mal con la arquitectura L1 + L2. Fuente de la imagen: Reddit
Este enfoque centrado en L2 enfrenta un desafío clave que los ecosistemas centrados en L1 rara vez enfrentan: la coordinación. En otras palabras, si bien Ethereum tiene muchas L2, el desafío es cómo hacer que todavía se sienta como "Ethereum" y tenga los efectos de red de Ethereum, en lugar de N cadenas independientes. Hoy en día, esta situación es insatisfactoria en muchos sentidos:
● Las cadenas cruzadas entre L2 generalmente requieren un puente de cadena cruzada centralizado, lo cual es muy complicado para los usuarios comunes. Si tiene tokens en Optimism, no puede pegar la dirección de Arbitrum de otra persona en su billetera para enviar fondos.
● Tanto para las billeteras de contratos inteligentes personales como para las billeteras organizacionales (incluido DAO), el soporte de billeteras de contratos inteligentes entre cadenas no es muy bueno. Si cambia la clave en una L2, también deberá cambiar la clave de cada otra L2.
● A menudo falta una infraestructura de verificación descentralizada. Ethereum finalmente está empezando a conseguir clientes ligeros decentes, como Helios. Sin embargo, no tiene sentido si toda la actividad ocurre en L2 y requiere su propio RPC centralizado. En principio, no es difícil construir un cliente ligero para L2 una vez que se tiene el encabezado del bloque Ethereum, pero en la práctica se presta muy poca atención a este punto;
La comunidad está trabajando duro para mejorar estas tres áreas. Para el intercambio de tokens entre cadenas, el estándar ERC-7683 es una nueva solución. A diferencia de los "puentes centralizados entre cadenas" existentes, no tiene nodos, tokens ni gobernanza centralizados fijos. Para las cuentas entre cadenas, el enfoque adoptado por la mayoría de las billeteras es utilizar mensajes reproducibles entre cadenas para actualizar las claves a corto plazo y acumulaciones de almacenes de claves a largo plazo. Están empezando a aparecer clientes ligeros para L2, como Beerus para Starknet. Además, las mejoras recientes en la experiencia del usuario a través de billeteras de próxima generación han resuelto problemas más fundamentales, como que los usuarios no necesitan cambiar manualmente de red para acceder a las DApps.
¡Rabby tiene una visión integral de los saldos de activos de múltiples cadenas, algo que las billeteras anteriores no podían hacer!
Pero es importante darse cuenta de que a los ecosistemas centrados en L2 les resulta difícil intentar coordinarse hasta cierto punto. Porque no existe ningún incentivo económico natural para que una sola L2 construya la infraestructura para la coordinación: las L2 de pequeña escala no lo harán porque sólo quieren obtener una pequeña parte de los beneficios, ni tampoco las L2 de gran escala, porque pueden hacerlo; beneficiarse del fortalecimiento de sus propios efectos de red local Obtenga tanto o más beneficio. Si cada L2 solo piensa en sí mismo y nadie piensa en cómo encaja en el sistema Ethereum más amplio, entonces fracasaremos, al igual que la utopía urbana en las imágenes de unos párrafos arriba.
Es difícil decir que existe una solución perfecta para este problema. Todo lo que puedo decir es que el ecosistema necesita reconocer más plenamente que la infraestructura entre L2 es tanto un tipo de infraestructura Ethereum como los clientes L1, las herramientas de desarrollo y los lenguajes de programación y, por lo tanto, debe valorarse y financiarse. Tenemos el Gremio de Protocolo, tal vez necesitemos el Gremio de Infraestructura Básica.
Resumir
En diversos debates públicos, "L2" y "sharding" a menudo se consideran dos estrategias opuestas para la expansión de blockchain. Sin embargo, cuando observa la tecnología subyacente, encontrará un enigma: los métodos de escalado subyacentes reales son exactamente los mismos. Ya sea fragmentación de datos, validadores de fraude o validadores ZK-SNARK, o soluciones que se comunican a través de "acumulados, fragmentos", la principal diferencia es: ¿quién es responsable de construir y actualizar estos componentes y cuánta autonomía tienen?
Un ecosistema centrado en L2 es fragmentación en un verdadero sentido técnico, pero dentro de la fragmentación puedes construir tus propios fragmentos con tus propias reglas. Esto es una creatividad muy poderosa e ilimitada y puede lograr una gran cantidad de innovación independiente. Pero también presenta algunos desafíos clave, particularmente en términos de coordinación. Para que un ecosistema centrado en L2 como Ethereum tenga éxito, debe comprender estos desafíos y abordarlos de frente para poder cosechar la mayor cantidad posible de beneficios de un ecosistema centrado en L1, y estar cerca de lo mejor de ambos.