Análisis de la tecnología de abstracción de cuentas multicanal: dirección futura del infraestructura de encriptación
Del 8 al 11 de julio de 2024, la reunión anual de la comunidad de Ethereum, EthCC, se llevará a cabo en Bruselas, Bélgica. Como el evento de intercambio de tecnología y comunidad de Ethereum más grande de Europa, esta edición de EthCC invita a más de 350 expertos de primera línea de la industria de la blockchain a dar conferencias. Entre ellos, un desarrollador de blockchain hizo una profunda exposición sobre el tema "abstracción de cuentas multichain".
Los puntos clave de la presentación son los siguientes:
La abstracción de cuentas (AA) se centra en la abstracción de firmas y la abstracción de pagos. La primera permite a los usuarios elegir de manera flexible el mecanismo de verificación, mientras que la segunda ofrece múltiples opciones de pago para transacciones, brindando así una experiencia de usuario más segura y conveniente.
ERC-4337 y AA nativo tienen diferencias en el diseño de las funciones de entrada en las fases de verificación y ejecución. Cada uno de sus métodos de implementación tiene diferentes restricciones para verificar transacciones y ejecutar pasos.
Al implementar ERC-4337 en cadenas compatibles con EVM, es necesario prestar especial atención a las diferencias en los protocolos de Rollup y las diferencias en la forma de calcular direcciones, ya que estos dos puntos clave pueden resultar en diferencias en los detalles de implementación entre L1 y L2.
A continuación se detallan los contenidos de la presentación:
Introducción a la abstracción de cuentas
1. Definición de la abstracción de cuentas
La abstracción de cuentas (AA) se compone principalmente de dos conceptos clave: la abstracción de firmas y la abstracción de pagos.
La abstracción de firma permite a los usuarios elegir libremente el mecanismo de verificación, ya no limitado a algoritmos de firma digital específicos. Esto significa que los usuarios pueden utilizar formas más diversas para verificar su identidad y transacciones, como la biometría, la firma múltiple, etc. La abstracción de pago ofrece diversas formas de pago de transacciones, como pagar con tokens ERC-20 o que un tercero patrocine las tarifas de transacción. Los tokens ERC-20 son el estándar de token más común en Ethereum, permitiendo la creación de activos digitales intercambiables. Esta flexibilidad puede mejorar significativamente la seguridad y la experiencia del usuario.
2. Análisis del estándar ERC-4337
Actualmente, la cuenta externa de Ethereum (EOA) presenta algunas limitaciones en los métodos de firma y en el diseño de pagos. EOA es una cuenta de usuario común controlada por una clave privada, que solo puede utilizar algoritmos de firma y métodos de pago fijos. ERC-4337 aborda estos problemas introduciendo mecanismos de gestión de cuentas y procesamiento de transacciones más flexibles.
Principales características de ERC-4337:
Estructura userOp: El usuario envía userOp al Bundler, que agrupa múltiples userOp y llama a la función handleOps del contrato EntryPoint para su procesamiento. userOp es la abreviatura de operación del usuario, que contiene la información de la transacción que el usuario desea ejecutar. Bundler es un servicio intermedio encargado de recopilar y empaquetar las operaciones del usuario.
Contrato EntryPoint: como el "sistema operativo" para el procesamiento de transacciones, sus principales funciones incluyen:
llama a la función validate del contrato de cuenta, valida la autorización de userOp
cobrar tarifas
llama a la función execute del contrato de cuenta, ejecutando la operación objetivo de userOp
El contrato EntryPoint es el núcleo de ERC-4337, que unifica todos los puntos de entrada para las operaciones de abstracción de cuentas.
3. Introducción a la AA nativa
En la AA nativa, cada cuenta es un contrato, y el mecanismo de procesamiento de transacciones está directamente integrado en el protocolo de la blockchain. Esto significa que la función de abstracción de cuentas está incorporada en el diseño subyacente de la blockchain, en lugar de implementarse como una capa adicional.
Actualmente, las formas de implementación de la abstracción de cuentas en las diferentes redes de blockchain:
Red que utiliza ERC-4337: Ethereum, Arbitrum, Optimism, Base, Linea, Scroll, Polygon PoS
Seguir AA nativo de ERC-4337: StarkNet y zkSync Era
AA nativa con diseño de privacidad: Aztec
En estas redes, Arbitrum, Optimism, Base, Linea y Scroll son soluciones de escalado Layer 2 de Ethereum, diseñadas para mejorar la velocidad de procesamiento de transacciones y reducir costos. Polygon PoS es una red de cadena lateral que proporciona soporte de escalabilidad para Ethereum. StarkNet y zkSync Era son soluciones Layer 2 que utilizan tecnología de pruebas de conocimiento cero, mientras que Aztec se centra en ofrecer funciones de protección de la privacidad.
Análisis comparativo entre ERC-4337 y AA nativo
1. Diseño de roles del sistema
El sistema AA necesita resolver los siguientes problemas clave:
Mecanismo de determinación del precio del gas
Gestión del orden de transacciones y del grupo de memoria
Forma de activación de la función del punto de entrada
Definición del proceso de procesamiento de transacciones
Gas es la unidad de cálculo en la red de Ethereum, utilizada para medir los recursos computacionales necesarios para ejecutar operaciones. El pool de memoria es un área temporal donde se almacenan las transacciones pendientes de procesamiento.
ERC-4337 completa estas funciones en colaboración con los contratos Bundler y EntryPoint. En la AA nativa, los usuarios envían userOps directamente a los operadores/ordenadores del servidor oficial.
Tomando StarkNet como ejemplo, el Sequencer se encarga de todas estas tareas. zkSync Era es completado por el Operator junto con el contrato del sistema bootloader(. Tanto el Sequencer como el Operator son nodos responsables de la ordenación y ejecución de transacciones.
) 2. Diseño de interfaz de contrato
En diferentes implementaciones, la interfaz del contrato de cuenta presenta similitudes, todas incluyen funciones de entrada para los siguientes pasos:
ERC-4337: verificación de operaciones del usuario
zkSync: validar transacciones, pago de transacciones, ejecutar transacciones
Las funciones de entrada de la etapa de "verificación" de ERC-4337 y AA nativo son fijas, mientras que en la etapa de "ejecución" solo el punto de entrada de AA nativo es fijo.
3. Limitaciones de la fase de verificación
Debido a que no hay limitaciones de costo para validar transacciones, esto puede llevar a que el pool de memoria sufra ataques DoS. Un ataque DoS se refiere a agotar los recursos del sistema mediante una gran cantidad de solicitudes inválidas, lo que impide que las solicitudes normales sean procesadas. Por lo tanto, cada implementación ha establecido algunas limitaciones en la fase de validación.
ERC-4337 define los códigos de operación deshabilitados y las restricciones de acceso a almacenamiento. Los códigos de operación son instrucciones en la máquina virtual de blockchain, utilizadas para llevar a cabo operaciones específicas. zkSync Era, por su parte, ha flexibilizado el uso de algunos OpCode, pero aún limita que la lógica del contrato solo pueda acceder a sus propios espacios de almacenamiento y no puede acceder a variables globales. StarkNet también no permite llamadas a contratos externos.
4. Restricciones de la fase de ejecución
zkSync requiere que se confirme la bandera del sistema al realizar llamadas al sistema, para asegurar que los desarrolladores de cuentas interactúan conscientemente con los contratos del sistema. La llamada al sistema se refiere al proceso de solicitar servicios centrales del sistema operativo. En la fase de ejecución, ERC-4337 y StarkNet no tienen restricciones especiales.
5. Procesamiento de números aleatorios
Cada implementación también tiene diferencias en el diseño de números aleatorios:
ERC-4337 distingue entre un valor de clave de 192 bits y un valor aleatorio de 64 bits
zkSync es gestionado por el contrato del sistema NonceHolder, asegurando un incremento estricto.
El nonce de StarkNet también es estrictamente creciente, pero no hay un contrato específico que lo gestione.
El número aleatorio ### nonce ( se utiliza en la blockchain para prevenir ataques de repetición de transacciones, cada transacción utiliza un nuevo valor de nonce.
) 6. Implementación de la primera transacción
ERC-4337 incluye el campo initcode en la estructura userOp, que puede desplegar el contrato de cuenta en el primer userOp.
StarkNet y zkSync requieren que los usuarios envíen la primera transacción al operador/ordenador para desplegar el contrato de cuenta.
El despliegue de un contrato de cuenta se refiere a la creación de una nueva instancia de contrato inteligente en la cadena de bloques, como cuenta del usuario.
7. Diseño especial de zkSync
zkSync permite a los usuarios transferir ETH directamente desde una EOA de Ethereum a zkSync, obteniendo una cuenta predeterminada sin necesidad de desplegar un contrato de cuenta personalizado. Esta cuenta tiene la misma dirección que la EOA de Ethereum, puede funcionar como una EOA y está controlada por la clave privada correspondiente de la EOA de Ethereum.
![¿El futuro de la infraestructura de encriptación? Análisis de la abstracción de cuentas multicanal]###https://img-cdn.gateio.im/webp-social/moments-f354ad716da09da261319761d128a6f0.webp(
Diferencias en la implementación de ERC-4337 en L1 y L2
Al implementar ERC-4337 en cadenas compatibles con EVM, existen dos diferencias clave principales:
) 1. Diferencias en los protocolos
En el diseño de Rollup, L2 necesita subir datos a L1 para garantizar la seguridad y la liquidación. L1 se refiere a la cadena principal ### como la red principal de Ethereum (, y L2 es una capa de expansión construida sobre L1. En el ERC-4337, los costos relacionados ) como la tarifa de seguridad de L1 y la tarifa de blob ( deben incluirse en el Gas de prevalidación. Blob es la abreviatura de objeto binario grande, utilizado para almacenar grandes cantidades de datos. Cómo contabilizar con precisión estos costos de carga en el Gas de prevalidación es un desafío importante.
) 2. Diferencias de dirección
En la función create de zkSync ERA, el método de codificación de direcciones es diferente al de Ethereum y OP. StarkNet utiliza una función hash única para calcular la dirección.
En las cadenas compatibles con EVM, se asume que el cálculo de direcciones para ERC-4337 es consistente en todas las cadenas. Sin embargo, los nuevos códigos de operación introducidos en un hard fork pueden causar cambios en el bytecode, lo que a su vez puede provocar que las direcciones de los contratos de cuenta de ERC-4337 en Ethereum y en L2 no coincidan. Un hard fork es una actualización importante del protocolo de blockchain que puede resultar en cambios incompatibles. Por ejemplo, si la cadena L2 no es compatible con el hard fork de Shanghái y no se especifica la versión de EVM durante la compilación, la introducción de push0 cambiará el bytecode. El bytecode es el código a nivel de máquina de los contratos inteligentes, que es ejecutado directamente por la máquina virtual de la blockchain.
![¿El futuro de la infraestructura de encriptación? Análisis de la abstracción de cuentas multichain]###https://img-cdn.gateio.im/webp-social/moments-52ccc7ebff94f6c548dd55bc61aad309.webp(
![¿El futuro de la encriptación de infraestructuras? Análisis de la abstracción de cuentas multichain])https://img-cdn.gateio.im/webp-social/moments-180475deec41c605ac65be9b2b494048.webp(
Ver originales
This page may contain third-party content, which is provided for information purposes only (not representations/warranties) and should not be considered as an endorsement of its views by Gate, nor as financial or professional advice. See Disclaimer for details.
9 me gusta
Recompensa
9
6
Compartir
Comentar
0/400
gas_fee_trauma
· hace18h
¿Qué es la firma abstracta? Hablar de ello es lo mismo que no hablar.
Ver originalesResponder0
AirdropLicker
· 07-12 13:37
Dinero Digital es la vida~ ¡Trabajador elegido por el cielo!
Ver originalesResponder0
UnluckyMiner
· 07-12 13:36
He minado ETH, el Rig de Minera se rompió, ahora la comunidad profesional está chismeando.
Ver originalesResponder0
WenMoon42
· 07-12 13:27
¿Por qué sigue hablando el tonto de Comercio de criptomonedas de la Cadena de bloques EthCC?
Ver originalesResponder0
SeasonedInvestor
· 07-12 13:19
el partido eth nunca caerá
Ver originalesResponder0
PensionDestroyer
· 07-12 13:19
¿Cuándo podremos usar la Billetera de manera tan sencilla como Alipay?
Detalles de la tecnología de abstracción de cuentas multichain: la seguridad y conveniencia de la billetera encriptada llegan a una revolución
Análisis de la tecnología de abstracción de cuentas multicanal: dirección futura del infraestructura de encriptación
Del 8 al 11 de julio de 2024, la reunión anual de la comunidad de Ethereum, EthCC, se llevará a cabo en Bruselas, Bélgica. Como el evento de intercambio de tecnología y comunidad de Ethereum más grande de Europa, esta edición de EthCC invita a más de 350 expertos de primera línea de la industria de la blockchain a dar conferencias. Entre ellos, un desarrollador de blockchain hizo una profunda exposición sobre el tema "abstracción de cuentas multichain".
Los puntos clave de la presentación son los siguientes:
La abstracción de cuentas (AA) se centra en la abstracción de firmas y la abstracción de pagos. La primera permite a los usuarios elegir de manera flexible el mecanismo de verificación, mientras que la segunda ofrece múltiples opciones de pago para transacciones, brindando así una experiencia de usuario más segura y conveniente.
ERC-4337 y AA nativo tienen diferencias en el diseño de las funciones de entrada en las fases de verificación y ejecución. Cada uno de sus métodos de implementación tiene diferentes restricciones para verificar transacciones y ejecutar pasos.
Al implementar ERC-4337 en cadenas compatibles con EVM, es necesario prestar especial atención a las diferencias en los protocolos de Rollup y las diferencias en la forma de calcular direcciones, ya que estos dos puntos clave pueden resultar en diferencias en los detalles de implementación entre L1 y L2.
A continuación se detallan los contenidos de la presentación:
Introducción a la abstracción de cuentas
1. Definición de la abstracción de cuentas
La abstracción de cuentas (AA) se compone principalmente de dos conceptos clave: la abstracción de firmas y la abstracción de pagos.
La abstracción de firma permite a los usuarios elegir libremente el mecanismo de verificación, ya no limitado a algoritmos de firma digital específicos. Esto significa que los usuarios pueden utilizar formas más diversas para verificar su identidad y transacciones, como la biometría, la firma múltiple, etc. La abstracción de pago ofrece diversas formas de pago de transacciones, como pagar con tokens ERC-20 o que un tercero patrocine las tarifas de transacción. Los tokens ERC-20 son el estándar de token más común en Ethereum, permitiendo la creación de activos digitales intercambiables. Esta flexibilidad puede mejorar significativamente la seguridad y la experiencia del usuario.
2. Análisis del estándar ERC-4337
Actualmente, la cuenta externa de Ethereum (EOA) presenta algunas limitaciones en los métodos de firma y en el diseño de pagos. EOA es una cuenta de usuario común controlada por una clave privada, que solo puede utilizar algoritmos de firma y métodos de pago fijos. ERC-4337 aborda estos problemas introduciendo mecanismos de gestión de cuentas y procesamiento de transacciones más flexibles.
Principales características de ERC-4337:
Estructura userOp: El usuario envía userOp al Bundler, que agrupa múltiples userOp y llama a la función handleOps del contrato EntryPoint para su procesamiento. userOp es la abreviatura de operación del usuario, que contiene la información de la transacción que el usuario desea ejecutar. Bundler es un servicio intermedio encargado de recopilar y empaquetar las operaciones del usuario.
Contrato EntryPoint: como el "sistema operativo" para el procesamiento de transacciones, sus principales funciones incluyen:
El contrato EntryPoint es el núcleo de ERC-4337, que unifica todos los puntos de entrada para las operaciones de abstracción de cuentas.
3. Introducción a la AA nativa
En la AA nativa, cada cuenta es un contrato, y el mecanismo de procesamiento de transacciones está directamente integrado en el protocolo de la blockchain. Esto significa que la función de abstracción de cuentas está incorporada en el diseño subyacente de la blockchain, en lugar de implementarse como una capa adicional.
Actualmente, las formas de implementación de la abstracción de cuentas en las diferentes redes de blockchain:
En estas redes, Arbitrum, Optimism, Base, Linea y Scroll son soluciones de escalado Layer 2 de Ethereum, diseñadas para mejorar la velocidad de procesamiento de transacciones y reducir costos. Polygon PoS es una red de cadena lateral que proporciona soporte de escalabilidad para Ethereum. StarkNet y zkSync Era son soluciones Layer 2 que utilizan tecnología de pruebas de conocimiento cero, mientras que Aztec se centra en ofrecer funciones de protección de la privacidad.
Análisis comparativo entre ERC-4337 y AA nativo
1. Diseño de roles del sistema
El sistema AA necesita resolver los siguientes problemas clave:
Gas es la unidad de cálculo en la red de Ethereum, utilizada para medir los recursos computacionales necesarios para ejecutar operaciones. El pool de memoria es un área temporal donde se almacenan las transacciones pendientes de procesamiento.
ERC-4337 completa estas funciones en colaboración con los contratos Bundler y EntryPoint. En la AA nativa, los usuarios envían userOps directamente a los operadores/ordenadores del servidor oficial.
Tomando StarkNet como ejemplo, el Sequencer se encarga de todas estas tareas. zkSync Era es completado por el Operator junto con el contrato del sistema bootloader(. Tanto el Sequencer como el Operator son nodos responsables de la ordenación y ejecución de transacciones.
) 2. Diseño de interfaz de contrato
En diferentes implementaciones, la interfaz del contrato de cuenta presenta similitudes, todas incluyen funciones de entrada para los siguientes pasos:
Las funciones de entrada de la etapa de "verificación" de ERC-4337 y AA nativo son fijas, mientras que en la etapa de "ejecución" solo el punto de entrada de AA nativo es fijo.
3. Limitaciones de la fase de verificación
Debido a que no hay limitaciones de costo para validar transacciones, esto puede llevar a que el pool de memoria sufra ataques DoS. Un ataque DoS se refiere a agotar los recursos del sistema mediante una gran cantidad de solicitudes inválidas, lo que impide que las solicitudes normales sean procesadas. Por lo tanto, cada implementación ha establecido algunas limitaciones en la fase de validación.
ERC-4337 define los códigos de operación deshabilitados y las restricciones de acceso a almacenamiento. Los códigos de operación son instrucciones en la máquina virtual de blockchain, utilizadas para llevar a cabo operaciones específicas. zkSync Era, por su parte, ha flexibilizado el uso de algunos OpCode, pero aún limita que la lógica del contrato solo pueda acceder a sus propios espacios de almacenamiento y no puede acceder a variables globales. StarkNet también no permite llamadas a contratos externos.
4. Restricciones de la fase de ejecución
zkSync requiere que se confirme la bandera del sistema al realizar llamadas al sistema, para asegurar que los desarrolladores de cuentas interactúan conscientemente con los contratos del sistema. La llamada al sistema se refiere al proceso de solicitar servicios centrales del sistema operativo. En la fase de ejecución, ERC-4337 y StarkNet no tienen restricciones especiales.
5. Procesamiento de números aleatorios
Cada implementación también tiene diferencias en el diseño de números aleatorios:
El número aleatorio ### nonce ( se utiliza en la blockchain para prevenir ataques de repetición de transacciones, cada transacción utiliza un nuevo valor de nonce.
) 6. Implementación de la primera transacción
El despliegue de un contrato de cuenta se refiere a la creación de una nueva instancia de contrato inteligente en la cadena de bloques, como cuenta del usuario.
7. Diseño especial de zkSync
zkSync permite a los usuarios transferir ETH directamente desde una EOA de Ethereum a zkSync, obteniendo una cuenta predeterminada sin necesidad de desplegar un contrato de cuenta personalizado. Esta cuenta tiene la misma dirección que la EOA de Ethereum, puede funcionar como una EOA y está controlada por la clave privada correspondiente de la EOA de Ethereum.
![¿El futuro de la infraestructura de encriptación? Análisis de la abstracción de cuentas multicanal]###https://img-cdn.gateio.im/webp-social/moments-f354ad716da09da261319761d128a6f0.webp(
Diferencias en la implementación de ERC-4337 en L1 y L2
Al implementar ERC-4337 en cadenas compatibles con EVM, existen dos diferencias clave principales:
) 1. Diferencias en los protocolos
En el diseño de Rollup, L2 necesita subir datos a L1 para garantizar la seguridad y la liquidación. L1 se refiere a la cadena principal ### como la red principal de Ethereum (, y L2 es una capa de expansión construida sobre L1. En el ERC-4337, los costos relacionados ) como la tarifa de seguridad de L1 y la tarifa de blob ( deben incluirse en el Gas de prevalidación. Blob es la abreviatura de objeto binario grande, utilizado para almacenar grandes cantidades de datos. Cómo contabilizar con precisión estos costos de carga en el Gas de prevalidación es un desafío importante.
) 2. Diferencias de dirección
En la función create de zkSync ERA, el método de codificación de direcciones es diferente al de Ethereum y OP. StarkNet utiliza una función hash única para calcular la dirección.
En las cadenas compatibles con EVM, se asume que el cálculo de direcciones para ERC-4337 es consistente en todas las cadenas. Sin embargo, los nuevos códigos de operación introducidos en un hard fork pueden causar cambios en el bytecode, lo que a su vez puede provocar que las direcciones de los contratos de cuenta de ERC-4337 en Ethereum y en L2 no coincidan. Un hard fork es una actualización importante del protocolo de blockchain que puede resultar en cambios incompatibles. Por ejemplo, si la cadena L2 no es compatible con el hard fork de Shanghái y no se especifica la versión de EVM durante la compilación, la introducción de push0 cambiará el bytecode. El bytecode es el código a nivel de máquina de los contratos inteligentes, que es ejecutado directamente por la máquina virtual de la blockchain.
![¿El futuro de la infraestructura de encriptación? Análisis de la abstracción de cuentas multichain]###https://img-cdn.gateio.im/webp-social/moments-52ccc7ebff94f6c548dd55bc61aad309.webp(
![¿El futuro de la encriptación de infraestructuras? Análisis de la abstracción de cuentas multichain])https://img-cdn.gateio.im/webp-social/moments-180475deec41c605ac65be9b2b494048.webp(