Volver

Introducción a la abstracción de cuentas en Flare con Etherspot y Web3Auth

Flare se compromete a proporcionar a los desarrolladores el mejor entorno de construcción posible, asociándose con Etherspot y Web3Auth para ayudarte a llevar la experiencia de usuario de tu dapp al siguiente nivel. Esta guía completa, escrita por Etherspot, describe el proceso de construcción de dapps con Account Abstraction en Flare.

Extracción de cuentas y ERC-4337

La experiencia del usuario desempeñará un papel crucial en la futura adopción de Web3. Desde las complejidades de la creación de carteras Web3 hasta la posesión obligatoria de tokens nativos de la cadena, la experiencia actual puede resultar frustrante tanto para los recién llegados como para los usuarios experimentados.

Para hacer frente a estos retos, surgió el concepto de Abstracción de Cuentas, que dio lugar a la Propuesta de Mejora de Ethereum EIP-4337, o ERC-4337. En el panorama actual de Ethereum, existen dos categorías principales de cuentas: Cuentas de Propiedad Externa (EOAs) y Cuentas de Contrato. Las EOA, gestionadas mediante claves privadas, interactúan con las cuentas de contrato para realizar transacciones. Mientras tanto, las cuentas de contrato son supervisadas por el código desplegado en la red.

El estándar ERC-4337 introduce la abstracción de cuentas en la red Ethereum, permitiendo que los contratos inteligentes funcionen como monederos y ejecuten transacciones en nombre de los usuarios. Este desarrollo pionero elimina la necesidad de que los usuarios gestionen claves privadas o conserven ETH para cobrar comisiones de gas.

ERC-4337 funciona sobre la cadena de bloques sin necesidad de modificar la propia cadena. Esto hace que sea inmediatamente aplicable, ya sea en Ethereum o en cualquier cadena EVM, sin modificaciones sustanciales en la infraestructura fundamental del blockchain. ERC-4337 consta de partes clave como UserOperations, Bundler, EntryPoint, Smart Account, Paymaster y Aggregator.

  • UserOperations: Sustituye a las transacciones tradicionales enviando las operaciones a un mempool de nivel superior.
  • Bundler: Actúa como intermediario, ensamblando transacciones basadas en UserOperations y enviándolas a la red.
  • Cuenta inteligente: La cuenta del usuario final, capaz de verificar las UserOperations y soportar funciones adicionales como la recuperación social y las multioperaciones.
  • Punto de entrada: Sirve como punto inicial de entrada de una UserOperation, determinando el flujo de ejecución de la transacción y especificando los contratos involucrados.
  • Pagador: Delega la responsabilidad de pagar las tasas de gas, ofreciendo flexibilidad en la gestión de los costes de transacción y la liquidación de las tasas con tokens ERC20.
  • Agregador: Gestiona y coteja los resultados de las UserOperations ejecutadas, mejorando la usabilidad y la eficiencia.

Cómo implementar Account Abstraction en cualquier dapp en Flare

Para los desarrolladores en Flare que quieran mejorar sus dapps y hacerlas compatibles con ERC-4337, Etherspot proporciona las herramientas esenciales. Con Prime AA SDK, Skandha Bundler y Arka Paymaster, Etherspot facilita la integración de las funciones de Abstracción de Cuenta. Estas características ofrecen beneficios tales como un onboarding tipo Web2, una experiencia multicadena sin fisuras, rampa de entrada/salida fiat, transacciones sin gas, guardianes de recuperación, y mucho más. Echa un vistazo a esta guía para integrar Etherspot Prime en tu dapp en Flare.

Si quieres sumergirte de lleno en el código, puedes ejecutar estos comandos en el terminal para clonar y desplegar una dapp funcional en Flare:

git clone https://github.com/taylorferran/etherspot-flare.git
cd etherspot-flare
npm i
npm run start

Otra forma de ponerse en marcha con Account Abstraction en Flare es utilizar Transaction Kit. Usando esta guía en vídeo puedes descubrir cómo interactuar con contratos inteligentes en coston2 a través de una dapp React:

Onboarding tipo Web2 con Etherspot y Web3Auth

Etherspot se une a Web3Auth para proporcionar una experiencia Web3 sin problemas a través de los inicios de sesión sociales. Esta colaboración permite a los usuarios iniciar sesión a través de plataformas como Twitter, Discord o Google, estableciendo una cartera de contratos inteligentes Etherspot para que puedan participar sin esfuerzo con dapps.

Aquí tienes un ejemplo de implementación de login social Web3Auth usando el SDK de Etherspot Prime. No olvides reemplazar WEB3AUTH_CHAIN_ID_HEX por 0x10 para Flare Testnet Coston, 0x72 para Flare Testnet Coston2 y 0xe para Flare Mainnet.

📚Etherspot Documentación 👉 https://etherspot.fyi/

📚Web3Auth Documentación👉https://web3auth.io/docs/index.html

Si tienes alguna pregunta sobre la integración, no dudes en ponerte en contacto con el equipo de Etherspot en Discord.

Por qué no unirse también a la Flare Ecosystem Call con Etherspot y Web3Auth el 28 de noviembre a las 13:00 UTC en X: https://twitter.com/i/spaces/1lDGLPYmrkoGm. Durante esta sesión, exploraremos los retos de UX en Web3, el impacto de Account Abstraction en el ecosistema de Flare, y cómo Etherspot y Web3Auth abordan estos retos, proporcionando ventajas tanto para desarrolladores como para usuarios.