El futuro posible del protocolo Ethereum (VI): Prosperidad
El diseño del protocolo Ethereum tiene muchos "detalles" que son cruciales para su éxito. De hecho, aproximadamente la mitad del contenido se refiere a diferentes tipos de mejoras de EVM, mientras que el resto está compuesto por varios temas de nicho, que es el significado de "complejidad".
Prosperidad: objetivo clave
Convertir EVM en un "estado final" de alto rendimiento y estabilidad
Introducir la abstracción de cuentas en el protocolo, permitiendo a todos los usuarios disfrutar de cuentas más seguras y convenientes.
Optimizar la economía de tarifas de transacción, mejorar la escalabilidad mientras se reduce el riesgo
Explorar la criptografía avanzada, para que Ethereum mejore significativamente a largo plazo
Mejora de EVM
¿Qué problema resolvió?
Actualmente, el EVM es difícil de analizar estáticamente, lo que dificulta la creación de implementaciones eficientes, la verificación formal del código y la realización de extensiones adicionales. Además, la eficiencia del EVM es baja, lo que hace difícil implementar muchas formas de criptografía avanzada, a menos que se apoye explícitamente a través de precompilaciones.
¿Qué es y cómo funciona?
El primer paso en la hoja de ruta de mejora de EVM actual es el formato de objeto EVM (EOF), que se planea incluir en la próxima bifurcación dura. EOF es una serie de EIP que especifica una nueva versión del código EVM, con muchas características únicas, la más notable es:
El código ( es ejecutable, pero no se puede leer ) del EVM y los datos ( se pueden leer, pero no se pueden ejecutar entre la separación de ).
Prohibir el salto dinámico, solo permitir el salto estático
El código EVM no puede observar más información relacionada con el combustible.
Se ha añadido un nuevo mecanismo de subrutinas explícitas.
Los contratos antiguos continuarán existiendo y podrán ser creados, aunque eventualmente podrían ser gradualmente descontinuados, incluso podrían ser forzados a convertirse en código EOF (. Los nuevos contratos se beneficiarán de la mejora en la eficiencia que trae el EOF: primero, mediante un bytecode ligeramente reducido gracias a la característica de subrutinas, y luego, con nuevas funciones específicas de EOF o costos de gas reducidos.
Después de introducir EOF, las actualizaciones adicionales se vuelven más fáciles. Actualmente, el desarrollo más completo es la extensión aritmética del módulo EVM ) EVM-MAX (. EVM-MAX crea un conjunto de nuevas operaciones específicamente para cálculos módulo y las coloca en un nuevo espacio de memoria que no se puede acceder a través de otros códigos de operación, lo que hace posible el uso de optimizaciones como la multiplicación de Montgomery.
Una idea más nueva es combinar EVM-MAX con la característica de múltiples datos de una sola instrucción )SIMD(, SIMD como un concepto de Ethereum ha existido durante mucho tiempo, siendo propuesto por primera vez por Greg Colvin en EIP-616. SIMD se puede utilizar para acelerar muchas formas de criptografía, incluidos los hash, STARKs de 32 bits y criptografía basada en retículos. La combinación de EVM-MAX y SIMD hace que estas dos extensiones orientadas al rendimiento sean una pareja natural.
![Vitalik sobre el posible futuro de Ethereum (6): The Splurge])https://img-cdn.gateio.im/webp-social/moments-8930b556d169a2bc7168ddc2e611d3df.webp(
Un diseño aproximado de un conjunto de EIP comenzará con EIP-6690, y luego:
Permitir )i( cualquier número impar o )ii( cualquier potencia de 2 que sea como máximo 2768 como módulo
Para cada código de operación EVM-MAX ) de suma, resta, multiplicación (, agregar una versión que ya no utilice 3 operandos inmediatos x, y, z, sino que utilice 7 operandos inmediatos: x_start, x_skip, y_start, y_skip, z_start, z_skip, count. En el código Python, el efecto de estos códigos de operación es similar a:
python
for i in range)count(:
mem[z_start + z_skip * count] = op)
mem[x_start + x_skip * count],
mem[y_start + y_skip * count]
(
En la implementación real, esto se manejará de manera paralela.
Posiblemente agregar XOR, AND, OR, NOT y SHIFT) incluyendo bucles y no bucles(, al menos para potencias de 2 como módulo. Al mismo tiempo, agregar ISZERO) enviará la salida al stack principal de EVM(, lo que será lo suficientemente potente como para implementar criptografía de curvas elípticas, criptografía de campo pequeño) como Poseidon, Circle STARKs(, funciones hash tradicionales) como SHA256, KECCAK, BLAKE( y criptografía basada en reticulados. Otras actualizaciones de EVM también pueden ser implementadas, pero hasta ahora han recibido menos atención.
) enlace de investigación existente
EOF:
EVM-MAX:
SIMD:
El trabajo restante y las compensaciones
Actualmente, se planea incluir EOF en la próxima bifurcación dura. Aunque siempre existe la posibilidad de eliminarlo en el último minuto —en bifurcaciones duras anteriores, algunas funciones han sido eliminadas temporalmente— hacerlo enfrentará grandes desafíos. Eliminar EOF significa que cualquier actualización futura al EVM deberá realizarse sin EOF; aunque es posible, podría ser más difícil.
La principal compensación del EVM radica en la complejidad de L1 y la complejidad de la infraestructura. EOF es una gran cantidad de código que necesita ser agregado a la implementación del EVM, y la revisión de código estática también es relativamente compleja. Sin embargo, a cambio, podemos simplificar los lenguajes de alto nivel, simplificar la implementación del EVM y obtener otros beneficios. Se puede decir que la hoja de ruta para priorizar la mejora continua de Ethereum L1 debería incluirse y construirse sobre EOF.
Una tarea importante que necesita realizarse es implementar funciones similares a EVM-MAX + SIMD y realizar pruebas de referencia sobre el consumo de gas de varias operaciones criptográficas.
¿Cómo interactuar con otras partes de la hoja de ruta?
L1 ajusta su EVM para que L2 también pueda realizar ajustes de manera más fácil. Si ambos no se sincronizan, podría causar incompatibilidades y tener efectos adversos. Además, EVM-MAX y SIMD pueden reducir el costo de gas de muchos sistemas de prueba, lo que hace que L2 sea más eficiente. También facilita el reemplazo de más precompilados con código EVM que puede ejecutar las mismas tareas, lo que probablemente no afectará drásticamente la eficiencia.
![Vitalik sobre el posible futuro de Ethereum (seis): The Splurge]###https://img-cdn.gateio.im/webp-social/moments-ec1638a809393a6ed42724fb08f534da.webp(
Abstracción de cuentas
) ¿Qué problema resolvió?
Actualmente, la transacción solo puede ser verificada de una manera: firma ECDSA. Inicialmente, la abstracción de cuentas tenía como objetivo superar esto, permitiendo que la lógica de verificación de la cuenta sea cualquier código EVM. Esto puede habilitar una serie de aplicaciones:
Cambiar a criptografía post-cuántica
Rotar las claves antiguas ### se considera ampliamente una práctica de seguridad recomendada (
Monedero de múltiples firmas y monedero de recuperación social
Utilizar una clave para operaciones de bajo valor, utilizar otra clave ) o un conjunto de claves ( para operaciones de alto valor
Permitir que el protocolo de privacidad funcione sin intermediarios, reduciendo significativamente su complejidad y eliminando un punto de dependencia central clave.
Desde que se propuso la abstracción de cuentas en 2015, su objetivo también se ha ampliado para incluir una gran cantidad de "objetivos de conveniencia", por ejemplo, una cuenta que no tenga ETH pero que posea algunos ERC20 pueda usar ERC20 para pagar el gas.
MPC) el cálculo multiparte ( es una tecnología con 40 años de historia, utilizada para dividir claves en múltiples partes y almacenarlas en varios dispositivos, utilizando técnicas criptográficas para generar firmas, sin necesidad de combinar directamente estas partes clave.
EIP-7702 es una propuesta que se planea introducir en la próxima bifurcación dura. EIP-7702 es el resultado de un creciente reconocimiento de la necesidad de proporcionar la conveniencia de la abstracción de cuentas para beneficiar a todos los usuarios ), incluidos los usuarios de EOA (, con el objetivo de mejorar la experiencia de todos los usuarios a corto plazo y evitar la división en dos ecosistemas.
Este trabajo comenzó con EIP-3074 y finalmente se convirtió en EIP-7702. EIP-7702 ofrece la "funcionalidad conveniente" de la abstracción de cuentas a todos los usuarios, incluyendo las cuentas externas EOA) de hoy, es decir, cuentas controladas por firmas ECDSA (.
Aunque algunos desafíos ), especialmente el desafío de la "conveniencia" (, pueden ser resueltos a través de tecnologías progresivas como la computación multipartita o EIP-7702, el principal objetivo de seguridad de la propuesta de abstracción de cuentas que se planteó inicialmente solo puede lograrse retrocediendo y resolviendo el problema original: permitir que el código de contrato inteligente controle la validación de transacciones. La razón por la cual esto aún no se ha logrado se debe a la implementación segura, lo cual es un desafío.
![Vitalik sobre el posible futuro de Ethereum (seis): The Splurge])https://img-cdn.gateio.im/webp-social/moments-66bd22f0b53601d0976aa3a2b701c981.webp(
) ¿Qué es y cómo funciona?
El núcleo de la abstracción de cuentas es simple: permite que los contratos inteligentes inicien transacciones, y no solo las cuentas de usuario (EOA). Toda la complejidad proviene de implementar esto de manera que sea amigable para mantener redes descentralizadas y prevenir ataques de denegación de servicio.
Un desafío clave típico es el problema de múltiples fallos:
Si hay 1000 funciones de verificación de cuentas que dependen de un único valor S, y el valor actual S hace que las transacciones en el pool de memoria sean válidas, entonces una única transacción que invierta el valor de S podría hacer que todas las demás transacciones en el pool de memoria sean inválidas. Esto permite a un atacante enviar transacciones basura al pool de memoria a un costo muy bajo, bloqueando así los recursos de los nodos de la red.
Después de años de esfuerzo, con el objetivo de expandir las funcionalidades mientras se limita el riesgo de ataques de denegación de servicio ###DoS(, finalmente se llegó a la solución para lograr "abstracción ideal de cuentas": ERC-4337.
El funcionamiento de ERC-4337 consiste en dividir el procesamiento de las operaciones de los usuarios en dos etapas: verificación y ejecución. Todas las verificaciones se procesan primero, y todas las ejecuciones se procesan posteriormente. En el pool de memoria, solo se aceptarán las operaciones de los usuarios cuya etapa de verificación solo involucre su propia cuenta y no lea variables del entorno. Esto puede prevenir ataques de fallo múltiple. Además, se aplican estrictos límites de gas a los pasos de verificación.
ERC-4337 fue diseñado como un estándar de protocolo adicional )ERC(, porque en ese momento los desarrolladores de clientes de Ethereum estaban enfocados en la fusión )Merge(, sin energía adicional para manejar otras funciones. Esta es la razón por la que ERC-4337 utiliza un objeto llamado operación de usuario, en lugar de transacciones convencionales. Sin embargo, recientemente nos hemos dado cuenta de la necesidad de escribir al menos parte de su contenido en el protocolo.
Las dos razones clave son las siguientes:
EntryPoint como la ineficiencia inherente del contrato: cada paquete tiene un costo fijo de aproximadamente 100,000 gas, además de miles de gas adicionales por cada operación del usuario.
Asegurar la necesidad de las propiedades de Ethereum: como la lista de inclusión creada que garantiza la necesidad de ser transferida a los usuarios de cuentas abstractas.
![Vitalik sobre el posible futuro de Ethereum (6): The Splurge])https://img-cdn.gateio.im/webp-social/moments-c0f722db75e53f4ff37ef40f5547dfc4.webp(
Además, ERC-4337 también amplió dos funciones:
Agentes de pago ) Paymasters (: permite que una cuenta pague tarifas en nombre de otra cuenta, lo que viola la regla de que en la fase de verificación solo se puede acceder a la cuenta del remitente. Por lo tanto, se introducen tratamientos especiales para garantizar la seguridad del mecanismo de agentes de pago.
Agregadores): Soporta funciones de agregación de firmas, como la agregación BLS o la agregación basada en SNARK. Esto es necesario para lograr la máxima eficiencia de datos en Rollup.
( enlace de investigación existente
Discurso sobre la historia de la abstracción de cuentas:
ERC-4337:
EIP-7702:
El código BLSWallet ) utiliza la función de agregación ###:
EIP-7562( escribir en el protocolo de abstracción de cuentas ):
EIP-7701( cuenta de abstracción de escritura de protocolo basado en EOF ):
( El trabajo restante y las compensaciones
Actualmente, lo que se necesita resolver principalmente es cómo introducir completamente la abstracción de cuentas en el protocolo. El EIP de abstracción de cuentas que ha ganado popularidad recientemente es el EIP-7701, que implementa la abstracción de cuentas sobre el EOF. Una cuenta puede tener una parte de código separada para la verificación; si la cuenta ha configurado esa parte de código, se ejecutará en el paso de verificación de las transacciones provenientes de esa cuenta.
Esta página puede contener contenido de terceros, que se proporciona únicamente con fines informativos (sin garantías ni declaraciones) y no debe considerarse como un respaldo por parte de Gate a las opiniones expresadas ni como asesoramiento financiero o profesional. Consulte el Descargo de responsabilidad para obtener más detalles.
17 me gusta
Recompensa
17
5
Republicar
Compartir
Comentar
0/400
GweiTooHigh
· 08-12 00:28
¿Realmente puede la abstracción de cuentas hacerse popular?
Ver originalesResponder0
MEVictim
· 08-10 08:39
Solo es un asunto de EVM, no tiene gracia.
Ver originalesResponder0
BlockchainDecoder
· 08-10 08:39
Citando datos del documento RV2022, la eficiencia de la pila de la arquitectura EVM existente es solo del 42%, lo que realmente requiere optimización.
Ver originalesResponder0
PessimisticOracle
· 08-10 08:39
¿No es solo hablar por hablar? Si realmente se materializa, consideraré que he perdido.
Perspectivas futuras de Ethereum: la actualización de EVM y la abstracción de cuentas lideran una nueva fase de prosperidad
El futuro posible del protocolo Ethereum (VI): Prosperidad
El diseño del protocolo Ethereum tiene muchos "detalles" que son cruciales para su éxito. De hecho, aproximadamente la mitad del contenido se refiere a diferentes tipos de mejoras de EVM, mientras que el resto está compuesto por varios temas de nicho, que es el significado de "complejidad".
Prosperidad: objetivo clave
Mejora de EVM
¿Qué problema resolvió?
Actualmente, el EVM es difícil de analizar estáticamente, lo que dificulta la creación de implementaciones eficientes, la verificación formal del código y la realización de extensiones adicionales. Además, la eficiencia del EVM es baja, lo que hace difícil implementar muchas formas de criptografía avanzada, a menos que se apoye explícitamente a través de precompilaciones.
¿Qué es y cómo funciona?
El primer paso en la hoja de ruta de mejora de EVM actual es el formato de objeto EVM (EOF), que se planea incluir en la próxima bifurcación dura. EOF es una serie de EIP que especifica una nueva versión del código EVM, con muchas características únicas, la más notable es:
Los contratos antiguos continuarán existiendo y podrán ser creados, aunque eventualmente podrían ser gradualmente descontinuados, incluso podrían ser forzados a convertirse en código EOF (. Los nuevos contratos se beneficiarán de la mejora en la eficiencia que trae el EOF: primero, mediante un bytecode ligeramente reducido gracias a la característica de subrutinas, y luego, con nuevas funciones específicas de EOF o costos de gas reducidos.
Después de introducir EOF, las actualizaciones adicionales se vuelven más fáciles. Actualmente, el desarrollo más completo es la extensión aritmética del módulo EVM ) EVM-MAX (. EVM-MAX crea un conjunto de nuevas operaciones específicamente para cálculos módulo y las coloca en un nuevo espacio de memoria que no se puede acceder a través de otros códigos de operación, lo que hace posible el uso de optimizaciones como la multiplicación de Montgomery.
Una idea más nueva es combinar EVM-MAX con la característica de múltiples datos de una sola instrucción )SIMD(, SIMD como un concepto de Ethereum ha existido durante mucho tiempo, siendo propuesto por primera vez por Greg Colvin en EIP-616. SIMD se puede utilizar para acelerar muchas formas de criptografía, incluidos los hash, STARKs de 32 bits y criptografía basada en retículos. La combinación de EVM-MAX y SIMD hace que estas dos extensiones orientadas al rendimiento sean una pareja natural.
![Vitalik sobre el posible futuro de Ethereum (6): The Splurge])https://img-cdn.gateio.im/webp-social/moments-8930b556d169a2bc7168ddc2e611d3df.webp(
Un diseño aproximado de un conjunto de EIP comenzará con EIP-6690, y luego:
python for i in range)count(: mem[z_start + z_skip * count] = op) mem[x_start + x_skip * count], mem[y_start + y_skip * count] (
En la implementación real, esto se manejará de manera paralela.
) enlace de investigación existente
El trabajo restante y las compensaciones
Actualmente, se planea incluir EOF en la próxima bifurcación dura. Aunque siempre existe la posibilidad de eliminarlo en el último minuto —en bifurcaciones duras anteriores, algunas funciones han sido eliminadas temporalmente— hacerlo enfrentará grandes desafíos. Eliminar EOF significa que cualquier actualización futura al EVM deberá realizarse sin EOF; aunque es posible, podría ser más difícil.
La principal compensación del EVM radica en la complejidad de L1 y la complejidad de la infraestructura. EOF es una gran cantidad de código que necesita ser agregado a la implementación del EVM, y la revisión de código estática también es relativamente compleja. Sin embargo, a cambio, podemos simplificar los lenguajes de alto nivel, simplificar la implementación del EVM y obtener otros beneficios. Se puede decir que la hoja de ruta para priorizar la mejora continua de Ethereum L1 debería incluirse y construirse sobre EOF.
Una tarea importante que necesita realizarse es implementar funciones similares a EVM-MAX + SIMD y realizar pruebas de referencia sobre el consumo de gas de varias operaciones criptográficas.
¿Cómo interactuar con otras partes de la hoja de ruta?
L1 ajusta su EVM para que L2 también pueda realizar ajustes de manera más fácil. Si ambos no se sincronizan, podría causar incompatibilidades y tener efectos adversos. Además, EVM-MAX y SIMD pueden reducir el costo de gas de muchos sistemas de prueba, lo que hace que L2 sea más eficiente. También facilita el reemplazo de más precompilados con código EVM que puede ejecutar las mismas tareas, lo que probablemente no afectará drásticamente la eficiencia.
![Vitalik sobre el posible futuro de Ethereum (seis): The Splurge]###https://img-cdn.gateio.im/webp-social/moments-ec1638a809393a6ed42724fb08f534da.webp(
Abstracción de cuentas
) ¿Qué problema resolvió?
Actualmente, la transacción solo puede ser verificada de una manera: firma ECDSA. Inicialmente, la abstracción de cuentas tenía como objetivo superar esto, permitiendo que la lógica de verificación de la cuenta sea cualquier código EVM. Esto puede habilitar una serie de aplicaciones:
Permitir que el protocolo de privacidad funcione sin intermediarios, reduciendo significativamente su complejidad y eliminando un punto de dependencia central clave.
Desde que se propuso la abstracción de cuentas en 2015, su objetivo también se ha ampliado para incluir una gran cantidad de "objetivos de conveniencia", por ejemplo, una cuenta que no tenga ETH pero que posea algunos ERC20 pueda usar ERC20 para pagar el gas.
MPC) el cálculo multiparte ( es una tecnología con 40 años de historia, utilizada para dividir claves en múltiples partes y almacenarlas en varios dispositivos, utilizando técnicas criptográficas para generar firmas, sin necesidad de combinar directamente estas partes clave.
EIP-7702 es una propuesta que se planea introducir en la próxima bifurcación dura. EIP-7702 es el resultado de un creciente reconocimiento de la necesidad de proporcionar la conveniencia de la abstracción de cuentas para beneficiar a todos los usuarios ), incluidos los usuarios de EOA (, con el objetivo de mejorar la experiencia de todos los usuarios a corto plazo y evitar la división en dos ecosistemas.
Este trabajo comenzó con EIP-3074 y finalmente se convirtió en EIP-7702. EIP-7702 ofrece la "funcionalidad conveniente" de la abstracción de cuentas a todos los usuarios, incluyendo las cuentas externas EOA) de hoy, es decir, cuentas controladas por firmas ECDSA (.
Aunque algunos desafíos ), especialmente el desafío de la "conveniencia" (, pueden ser resueltos a través de tecnologías progresivas como la computación multipartita o EIP-7702, el principal objetivo de seguridad de la propuesta de abstracción de cuentas que se planteó inicialmente solo puede lograrse retrocediendo y resolviendo el problema original: permitir que el código de contrato inteligente controle la validación de transacciones. La razón por la cual esto aún no se ha logrado se debe a la implementación segura, lo cual es un desafío.
![Vitalik sobre el posible futuro de Ethereum (seis): The Splurge])https://img-cdn.gateio.im/webp-social/moments-66bd22f0b53601d0976aa3a2b701c981.webp(
) ¿Qué es y cómo funciona?
El núcleo de la abstracción de cuentas es simple: permite que los contratos inteligentes inicien transacciones, y no solo las cuentas de usuario (EOA). Toda la complejidad proviene de implementar esto de manera que sea amigable para mantener redes descentralizadas y prevenir ataques de denegación de servicio.
Un desafío clave típico es el problema de múltiples fallos:
Si hay 1000 funciones de verificación de cuentas que dependen de un único valor S, y el valor actual S hace que las transacciones en el pool de memoria sean válidas, entonces una única transacción que invierta el valor de S podría hacer que todas las demás transacciones en el pool de memoria sean inválidas. Esto permite a un atacante enviar transacciones basura al pool de memoria a un costo muy bajo, bloqueando así los recursos de los nodos de la red.
Después de años de esfuerzo, con el objetivo de expandir las funcionalidades mientras se limita el riesgo de ataques de denegación de servicio ###DoS(, finalmente se llegó a la solución para lograr "abstracción ideal de cuentas": ERC-4337.
El funcionamiento de ERC-4337 consiste en dividir el procesamiento de las operaciones de los usuarios en dos etapas: verificación y ejecución. Todas las verificaciones se procesan primero, y todas las ejecuciones se procesan posteriormente. En el pool de memoria, solo se aceptarán las operaciones de los usuarios cuya etapa de verificación solo involucre su propia cuenta y no lea variables del entorno. Esto puede prevenir ataques de fallo múltiple. Además, se aplican estrictos límites de gas a los pasos de verificación.
ERC-4337 fue diseñado como un estándar de protocolo adicional )ERC(, porque en ese momento los desarrolladores de clientes de Ethereum estaban enfocados en la fusión )Merge(, sin energía adicional para manejar otras funciones. Esta es la razón por la que ERC-4337 utiliza un objeto llamado operación de usuario, en lugar de transacciones convencionales. Sin embargo, recientemente nos hemos dado cuenta de la necesidad de escribir al menos parte de su contenido en el protocolo.
Las dos razones clave son las siguientes:
![Vitalik sobre el posible futuro de Ethereum (6): The Splurge])https://img-cdn.gateio.im/webp-social/moments-c0f722db75e53f4ff37ef40f5547dfc4.webp(
Además, ERC-4337 también amplió dos funciones:
( enlace de investigación existente
( El trabajo restante y las compensaciones
Actualmente, lo que se necesita resolver principalmente es cómo introducir completamente la abstracción de cuentas en el protocolo. El EIP de abstracción de cuentas que ha ganado popularidad recientemente es el EIP-7701, que implementa la abstracción de cuentas sobre el EOF. Una cuenta puede tener una parte de código separada para la verificación; si la cuenta ha configurado esa parte de código, se ejecutará en el paso de verificación de las transacciones provenientes de esa cuenta.
Este método es fascinante