
Account abstraction (AA) ha supuesto un avance transformador en el ecosistema de Ethereum, modificando de raíz la gestión de cuentas y la interacción de los usuarios con la blockchain. Esta guía exhaustiva analiza en detalle el funcionamiento, los beneficios y la implementación de account abstraction, con especial énfasis en EIP-4337, la última propuesta que permite la AA sin modificaciones a nivel de protocolo en Ethereum.
Account abstraction marca un cambio de paradigma en la gestión de cuentas en Ethereum. Para entender la AA, primero hay que diferenciar los dos tipos de cuentas en Ethereum: externally owned accounts (EOA) y contract accounts (CA). Las EOA son cuentas tradicionales controladas mediante claves privadas y frases semilla, lo que exige proteger las credenciales criptográficas. Por otro lado, las contract accounts se rigen por código de smart contract, ofreciendo lógica programable para la gestión de cuentas.
Account abstraction consiste en desacoplar la fuente de la transacción de la firma y actualizar las EOA para funcionar de forma similar a las CA. Así, los smart contracts pueden controlar las EOA, dando lugar a smart contract wallets. El resultado es una gestión de cuentas más flexible y accesible, superando las limitaciones de las EOA tradicionales. Al permitir esta actualización, la AA habilita nuevas posibilidades para los usuarios: mecanismos de seguridad avanzados, autorización flexible de transacciones y una experiencia notablemente mejorada.
La comunidad de Ethereum ha acogido con entusiasmo account abstraction gracias a su potencial para simplificar y mejorar la gestión de cuentas. Su principal ventaja reside en la flexibilidad que aporta a las operaciones on-chain. Las EOA tradicionales tienen funciones limitadas, pero con la AA, los usuarios acceden a lógica programable adaptable a múltiples casos de uso.
La seguridad es otra gran ventaja de la AA. Ahora es posible implementar esquemas multifirma, recuperación social y otras funciones avanzadas antes inaccesibles para las EOA. Esto reduce de forma significativa el riesgo de pérdida permanente de fondos por extravío de claves privadas o frases semilla. Además, la AA soluciona numerosos problemas de experiencia de usuario, como la necesidad de disponer de ETH para comisiones de gas y la imposibilidad de agrupar transacciones. En conjunto, estas mejoras rebajan la barrera de entrada para quienes no son nativos del mundo cripto, acercando Ethereum al público general.
El desarrollo de account abstraction en Ethereum ha estado marcado por varias Ethereum Improvement Proposals (EIP) relevantes, que han moldeado el estado actual de la AA. Conocer esta evolución ayuda a valorar la importancia de EIP-4337.
EIP-2938 fue el primer intento de implementar AA convirtiendo las contract accounts en cuentas de primer nivel, capaces de pagar comisiones y ejecutar transacciones de manera independiente. EIP-3074, por su parte, propuso dos nuevos OpCodes, AUTH y AUTHCALL, para permitir que las EOA delegaran acciones a contratos, dando a los desarrolladores más flexibilidad en el diseño de objetos de transacción y mecanismos de verificación.
La atención mediática hacia account abstraction comenzó con EIP-2938 y EIP-3074. Sin embargo, ambas exigían modificaciones profundas en el protocolo de Ethereum a nivel de consenso, lo que suponía riesgos y grandes desafíos de implementación. Por ese motivo se paralizaron. La llegada de EIP-4337 marcó un punto de inflexión: permite la AA sin cambios en el protocolo, siendo una solución pragmática y de menor riesgo.
Al comparar distintas soluciones de AA, conviene entender por qué EIP-4337 es ahora el enfoque preferido. EIP-3074 ofrecía ventajas interesantes, pero requería dos nuevos códigos de operación en la capa de consenso, lo que obligaba a un hard fork y a cambios profundos en el protocolo, con grandes retos técnicos y de coordinación.
EIP-4337 apuesta por una aproximación de capa superior que no necesita modificar la capa de consenso. Esto reduce el riesgo y facilita la evolución si surgen problemas. La contrapartida es una mayor complejidad, ya que introduce componentes de infraestructura como bundlers y paymasters, aunque estos operan fuera del protocolo central y pueden actualizarse sin consenso global de la red.
EIP-4337 define un sistema sofisticado de componentes que hacen posible la account abstraction. Entenderlos es clave para comprender el funcionamiento de la propuesta. Los principales son:
Los objetos UserOperation son la base del sistema EIP-4337. No son transacciones tradicionales, sino seudotransacciones que agrupan todos los datos necesarios para actuar en nombre del usuario. Se crean para enviar transacciones, pero aún no están firmados del modo habitual.
El Entry point es un smart contract único que coordina la ejecución de UserOperations agrupadas. Valida y procesa las user ops, asegurando que cumplan los requisitos antes de ejecutarlas.
Los bundlers son nodos especializados que recogen UserOperations de un memory pool dedicado y las empaquetan en transacciones bundle. Pueden ser ejecutados por block builders o integrarse con la infraestructura existente de construcción de bloques. Su papel es clave para que las UserOperations se incluyan en los bloques y sean válidas.
Los wallet contracts son smart contract accounts propiedad de los usuarios, que implementan la lógica de validación de firmas y ejecución de transacciones basadas en UserOperations.
Las wallet factories son smart contracts encargados de desplegar nuevas smart contract wallets bajo demanda, permitiendo a los usuarios crearlas cuando lo necesiten.
Los aggregators son contratos auxiliares opcionales en los que las cuentas pueden delegar la validación de firmas agregadas, lo que puede reducir el coste de gas para operaciones múltiples.
Los paymasters representan una de las innovaciones más destacadas de EIP-4337, al permitir opciones flexibles de pago de gas: pueden patrocinar transacciones, aceptar pagos en tokens ERC-20 o aplicar lógicas personalizadas, mejorando mucho la experiencia de usuario.
El flujo de transacción con EIP-4337 difiere notablemente del modelo tradicional de Ethereum. Entenderlo es esencial para valorar la AA en la práctica. El proceso se divide en varias etapas, cada una con un papel clave en el ciclo de vida de la transacción.
Cuando un usuario quiere realizar una transacción bajo EIP-4337, crea primero un objeto UserOperation. Este recoge todos los datos necesarios: dirección del remitente, parámetros de gas como maxFeePerGas y maxPriorityFee, y datos específicos de la operación. Es relevante que el campo de firma se valida según la implementación de la cuenta, no por el protocolo.
Después de crearse, la UserOperation se envía a un memory pool específico, diferente al de las transacciones clásicas. Así se permite un tratamiento especializado de UserOperations sin afectar al flujo normal de la red.
Una vez en el memory pool, los bundlers —validadores específicos— procesan las UserOperations agrupándolas en transacciones bundle. Si actúan como block builders, pueden añadir directamente estos bundles a los bloques, siempre que las entry point transactions sean válidas. Si no lo son, colaboran con infraestructuras como mev-boost, mecanismos de separación proposer-builder o APIs RPC experimentales como eth_sendRawTransactionConditional.
Este proceso de agrupación es esencial para la eficiencia de EIP-4337, ya que permite ejecutar varias UserOperations en una sola transacción, disminuyendo costes y mejorando la capacidad de la red.
Cuando las UserOperations agrupadas llegan al contrato entry point, arranca el proceso de identificación y validación. El contrato ejecuta los paquetes de UserOperations validando cada operación. Para aceptar una UserOperation, el bundler debe invocar la función validateUserOp, que comprueba la firma y otros criterios definidos en la wallet.
Los bundlers mantienen una lista blanca de contratos entry point admitidos, asegurando que solo procesan UserOperations a través de contratos verificados. Esta validación es clave para la seguridad, evitando ejecuciones maliciosas o no válidas.
La fase final es la ejecución real de la UserOperation por parte del smart contract wallet. La wallet implementa la función ExecuteUserOp, que lleva a cabo la transacción solicitada. Los bundlers agrupan UserOperations en una transacción e inician la función handleOps del EntryPoint. Esta transacción se incluye en el siguiente bloque, finalizando el proceso.
Este flujo por etapas garantiza la validación y ejecución segura de las UserOperations, permitiendo la flexibilidad propia de account abstraction.
Para comprender a fondo las ventajas de las wallets AA, conviene compararlas con otros tipos. Las wallets EOA, el modelo tradicional en Ethereum, emplean externally owned accounts con costes y comisiones bajos, pero su funcionalidad es limitada: el usuario debe gestionar claves privadas y carecen de mecanismos de recuperación. Su seguridad depende totalmente del cuidado del usuario, lo que las expone a pérdidas o robos.
Las wallets MPC (Multi-Party Computation) también emplean EOA, pero distribuyen la gestión de claves entre diferentes partes, evitando puntos únicos de fallo. Mejoran la seguridad respecto a las EOA estándar, pero siguen recurriendo solo a firmas ECDSA y presentan menor compatibilidad con el ecosistema. Además, exigen revisar cuidadosamente las políticas de autorización de firmas off-chain y su transparencia.
Las wallets AA, basadas en contract accounts, son la opción más avanzada. Aunque tienen mayores costes de creación y comisiones, permiten pagos de gas en varias monedas, transacciones agrupadas, métodos de firma diversos y recuperación integrada. Eliminan la gestión manual de claves privadas y ofrecen seguridad a nivel de blockchain. No obstante, requieren auditorías exhaustivas de los contratos y del demand pool, y su compatibilidad con el ecosistema sigue en evolución.
Entender las diferencias entre EIP-3074 y EIP-4337 ayuda a comprender por qué la comunidad de Ethereum respalda mayoritariamente EIP-4337. EIP-3074 se postergó porque requería cambios en la capa de consenso. Propuso dos OpCodes que darían a las EOA capacidades de contrato, con ventajas e inconvenientes importantes.
EIP-3074 permite delegar el control de la EOA a un contrato, dando a los desarrolladores un marco flexible para crear esquemas de transacción innovadores, como trading agrupado, trading empaquetado y opciones avanzadas de pago de gas, sin que el usuario despliegue nuevos contratos.
También introduce contratos invocadores, que pueden aceptar pagos en tokens distintos de ETH. Estos intermediarios trustless permiten transacciones entre patrocinadores y beneficiarios, aumentando la flexibilidad del pago de gas. Además, EIP-3074 permitiría que cualquier EOA existente obtuviera capacidades de smart contract wallet sin desplegar un nuevo contrato, manteniendo compatibilidad con el ecosistema actual.
No obstante, EIP-3074 tiene grandes inconvenientes que motivaron su aplazamiento. El más crítico es la necesidad de modificar la capa de consenso, lo que podría requerir un hard fork y conlleva riesgos para la red y una compleja coordinación comunitaria.
Además, aunque dota a las EOA de algunas capacidades de contract account, sigue dependiendo de firmas ECDSA, lo que impide usar métodos de firma más avanzados o eficientes que mejorarían la seguridad y reducirían costes. Esta limitación restringe la flexibilidad que busca la account abstraction.
Aunque EIP-3074 está en pausa, sus ideas siguen vivas. EIP-5003 amplía EIP-3074 con el OpCode AUTHUSURP, que permite desplegar código en direcciones autorizadas por EIP-3074. Esta propuesta, junto a EIP-3607, abre un camino para migrar EOA a contract accounts.
Con EIP-5003, una EOA que haya autorizado otra dirección mediante EIP-3074 puede permitir que esta use AUTHUSURP para establecer el código de la EOA, convirtiéndola de facto en una contract account y permitiendo firmas más sofisticadas que ECDSA. Esta vía podría ser un puente entre el ecosistema actual y el futuro de account abstraction, aunque aún está en desarrollo.
Account abstraction, especialmente con EIP-4337, supone una evolución fundamental en la interacción de los usuarios con Ethereum. Al desacoplar la fuente de la transacción de la firma y permitir el control de las cuentas mediante smart contracts, la AA soluciona numerosos problemas que han frenado la adopción masiva. Los beneficios son claros y notables: mayor seguridad con lógica programable, opciones flexibles de pago de gas (soporte multimoneda, patrocinio de terceros), operaciones agrupadas y mecanismos de recuperación que eliminan el riesgo de perder claves privadas.
La aproximación de EIP-4337, al no requerir cambios en la capa de consenso, lo convierte en una solución práctica y segura frente a propuestas anteriores como EIP-3074. Aunque introduce complejidad con nuevos componentes como bundlers, paymasters y un memory pool específico, estos se sitúan fuera del protocolo y pueden evolucionar sin consenso global de red. A medida que Ethereum evolucione, la integración de account abstraction mediante EIP-4337 reducirá barreras de entrada y dotará a los usuarios experimentados de herramientas avanzadas para gestionar su actividad on-chain. La adopción masiva de wallets AA será un hito crucial para la expansión y accesibilidad de Ethereum.
EIP-4337 es un estándar de Ethereum para account abstraction, que habilita smart contract wallets con inicio de sesión social y transacciones sin gas. Utiliza UserOperations, Bundlers, EntryPoint y Contract Accounts para optimizar la experiencia de usuario.
EIP 4337 es una herramienta para crear funciones de account abstraction, mientras que EIP 7702 permite aplicar estas funciones en externally owned accounts ya existentes.
ERC-4337 es un estándar de Ethereum para account abstraction que permite a los smart contracts gestionar cuentas de usuario y transacciones sin depender de las wallet tradicionales. Busca mejorar la seguridad y la usabilidad.
No, EIP y ERC son diferentes. EIP (Ethereum Improvement Proposal) se refiere a propuestas de cambio en el protocolo, mientras que ERC (Ethereum Request for Comment) define estándares para tokens y smart contracts.








