La mala experiencia del usuario es uno de los principales obstáculos para la adopción generalizada de criptografía en la actualidad. Los usuarios principales generales no piensan en la descentralización o en el futuro potencialmente brillante que
Y ahí es donde el web3 moderno se queda corto. Para muchos, ingresar al mundo de los contratos inteligentes, comprender los conceptos de blockchain e incluso configurar una billetera criptográfica parece demasiado complicado. Sin mencionar, por ejemplo, que puede perder su frase semilla fácilmente y sus fondos desaparecerán para siempre.
Sin embargo, la última implementación de EIP-4337 de Ethereum, implementada el 1 de marzo de 2023, aborda el problema de UX con una solución llamada Abstracción de cuenta. ¿Pero, qué es esto? ¿Realmente va a cambiar todo
En primer lugar, veamos algunos conceptos básicos que nos ayudarán a comprender mejor el concepto detrás de la abstracción de cuentas.
Hay dos tipos de cuentas en el ecosistema Ethereum:
Estas cuentas están controladas por individuos y no tienen ningún código complicado dentro de ellas. Dichas cuentas tienen un par de claves, privadas y públicas, que son necesarias para confirmar y ejecutar transacciones.
Un ejemplo obvio de una cuenta de propiedad externa es MetaMask Wallet.
Cuentas de contrato
Estas cuentas son básicamente contratos inteligentes que están controlados por el código. Las cuentas de contrato no requieren que los usuarios realicen la transacción manualmente y no tienen claves privadas.
Entonces, la principal diferencia entre las cuentas de contrato y las cuentas de propiedad externa es que las primeras se rigen por un código, mientras que las segundas las dictan los usuarios. Esto es importante de entender. Las cuentas de contrato inteligente pueden ejecutar cualquier lógica que esté programada en ellas (cualquier cosa y todo lo que el programador quiera), mientras que los EOA solo firman transacciones en la cadena de bloques.
Hasta hace poco, la única forma en que los usuarios podían interactuar con la red y realizar operaciones específicas como realizar transacciones de fondos entre billeteras o comprar
Para los desarrolladores de blockchain o aquellos que han estado en el espacio por un tiempo, usar un EOA es un proceso familiar.
Sin embargo, para los novatos y las generaciones mayores, esto es ciencia espacial.
Desde configurar una billetera, generar y recordar la clave privada, hasta comprar fondos, pagar tarifas de gasolina cada vez que desee transferir las monedas y no meterse con las direcciones: todo es demasiado complicado para aquellos que están acostumbrados a la comodidad de los modernos. servicios bancarios, que le permiten enviar dinero con solo hacer clic en un botón.
Y no termina ahí.
Cuando usa EOA, debe tener mucho cuidado con sus claves privadas y frases iniciales. Perderlos puede ser fatal, ya que ya no podrá acceder a sus fondos. Y si le roban su clave privada, los piratas informáticos tendrán acceso completo a todo su dinero digital.
En un sistema bancario tradicional, aunque pierdas tu tarjeta, el banco siempre puede bloquearla y enviarte una nueva.
No es de extrañar que solo una pequeña fracción de los usuarios esté dispuesta a correr el riesgo. E incluso para los usuarios inteligentes, que son conscientes de todos los riesgos posibles y saben cómo protegerse, trabajar con EOA todavía genera cierta tensión psicológica.
Para hacer que la tecnología blockchain sea más accesible y fácil de usar, los desarrolladores de Ethereum propusieron el concepto de abstracción de cuenta. Es una idea de permitir que los usuarios interactúen con la red a través de contratos inteligentes en lugar de EOA.
Pero ¿por qué, sin embargo? Bueno, una billetera de contrato inteligente puede ser más versátil que EOA, ya que tiene la capacidad de contener reglas y configuraciones distintas. Esto le da a las cuentas de contrato una gama mucho más amplia de capacidades.
Por ejemplo, la abstracción de cuenta y las cuentas de contrato permitirán que un usuario tenga diferentes claves privadas (para una billetera), que se distribuirán entre un grupo de personas y dispositivos de confianza. Si el usuario pierde el acceso a su clave principal, puede recurrir a estas personas y recuperar el acceso a sus fondos.
Y esta es solo una de las formas en que la abstracción de cuenta podría mejorar la experiencia del usuario.
Según Yoav Weiss, coautor de EIP-4337 junto con Vitalik Buterin:
"La abstracción de cuentas es una forma de atraer a los próximos mil millones de usuarios".
La abstracción de cuenta se implementa a través de
Sin embargo, de hecho, estas dos abreviaturas son diferentes: la Propuesta de mejora de Ethereum (EIP) primero debe ser aceptada por el sistema de gobierno en cadena antes de que pueda convertirse en una Solicitud de comentarios (ERC) de Ethereum.
Además, ERC es solo un componente de EIP, y analiza principalmente el protocolo y las pautas de desarrollo.
Antes de EIP-4337, propuesto en septiembre de 2021, había una serie de otros EIP relacionados con extracciones de cuentas en ETH:
EIP-86 en 2016 : la propuesta se centró en otorgar a los contratos inteligentes la capacidad de iniciar y autorizar transacciones.
EIP-2938 en 2020 : la propuesta tenía como objetivo crear un nuevo tipo de transacción.
EIP-3074 en 2020 : la propuesta se centró en ofrecer contratos inteligentes autoejecutables de manera más eficiente mediante el uso de un nuevo código de operación (bloque de construcción de contrato inteligente).
Ninguna de estas propuestas se implementó por una simple razón: todas requerían cambios en la infraestructura de red subyacente de Ethereum , y esto no puede suceder sin un acuerdo de consenso.
El EIP-4337 es diferente porque no requiere ningún cambio de protocolo . En cambio, propone construir una infraestructura de nivel superior sobre la existente.
De hecho, ERC-4337 ya se implementó desde el 1 de marzo de 2023 y los desarrolladores ya pueden crear aplicaciones utilizando la nueva lógica.
Todo el proceso se ve así:
Una billetera inteligente activa una " Operación de usuario ", un objeto de pseudo-transacción, que luego se agrega al mempool especial. Este mempool es esencialmente una cola de transacciones (aunque difiere del mempool regular de Ethereum).
Entonces, los bundlers , nuevos operadores descentralizados, actúan como mineros o validadores. Recuperan UserOperations del mempool, empaquetan múltiples operaciones de usuario en una sola transacción conocida como "transacción de paquete" y luego, los empaquetadores envían "el paquete" a un contrato inteligente global conocido como " EntryPoint *.*"
En la siguiente etapa, otra función llamada " handleOps " recibe el paquete y envía la información a la validación a través de " valideUserOp " y ejecuta la operación.
Los empaquetadores pagarán la tarifa de transacción (gas) asociada con la operación o serán recompensados por la cuenta del contrato del usuario o por un tercero conocido como "pagador", que podría ser una aplicación descentralizada o una billetera.
Hecho rápido:
La abstracción de cuentas trae muchas ventajas a los usuarios de cualquier nivel:
Ethereum Account Abstraction ofrecerá a los desarrolladores de contratos inteligentes, billeteras y aplicaciones más libertad cuando se trata de innovar la experiencia del usuario, ya que tendrán la capacidad de configurar reglas de cuenta a través del código. Esto permitirá una incorporación más fácil y un nivel general de servicios y conveniencia comparable al de los bancos tradicionales.
La nueva lógica de cuenta hará que las aplicaciones operen en ETH aún más
Autorización de firma múltiple : puede compartir credenciales de autorización con varias personas o dispositivos de confianza. Los desarrolladores también podrían configurar contratos de tal manera que las transacciones de cierto valor requieran la autorización de un cierto porcentaje (por ejemplo, 3/5) de las partes de confianza antes de que puedan ejecutarse.
Congelación de cuenta : en caso de pérdida o compromiso de un dispositivo, su cuenta puede protegerse de cualquier otro dispositivo autorizado para mantener sus fondos seguros.
Recuperación de cuenta : con los EOA, la pérdida de un dispositivo o el olvido de una frase inicial podría dejarlo sin acceso a sus activos de forma indefinida. Afortunadamente, con las billeteras de contrato inteligente, puede establecer cuentas confiables que permitan nuevos dispositivos y restablezcan el acceso.
Límites de transacciones : la instalación de límites diarios en la cantidad de valor que se puede transferir desde su cuenta en un día, una semana o un mes garantiza que si un pirata informático obtuviera acceso a ella, no podría borrar todo rápidamente.
Listas blancas : para garantizar la máxima seguridad de sus fondos, solo puede iniciar transacciones en direcciones que sepa que son seguras. Si una persona malintencionada obtuviera acceso a su clave privada, no podría transferir fondos a un destino no incluido en la lista blanca. E incluso entonces, dichos cambios solo pueden ocurrir una vez que varias firmas los validan, lo que significa que si un atacante quiere que su dirección se incluya en esta lista, primero debe obtener varias de sus claves de respaldo también.
La abstracción de cuentas también mejora la gestión del gas. Las aplicaciones tienen la capacidad de cubrir no solo las tarifas de gas de los usuarios, sino que también permiten el pago de dichos costos por parte de terceros, con tokens que no sean ETH. De esta manera, los usuarios no necesitan mantener un saldo de ETH para financiar sus transacciones: los contratos inteligentes intercambiarán tokens de usuario con ETH automáticamente.
Muchas aplicaciones, en particular los juegos, pueden beneficiarse de la implementación de sesiones de confianza, ya que hay una gran cantidad de pequeñas transacciones que deben validarse en poco tiempo. La aprobación manual de todas y cada una de las transacciones interferiría con la experiencia del juego; sin embargo, dar una aprobación permanente no es seguro. Las billeteras de contrato inteligente podrían proporcionar una solución alternativa al permitir que ciertas transacciones se aprueben por un tiempo predeterminado, hasta un cierto valor, o solo para direcciones específicas.
Hoy en día, cada transacción individual requiere una prueba de que el token correcto está actualmente cargado en su billetera. Pero con la tecnología de abstracción de cuentas, es como comprar en línea: usted llena una "canasta", hace clic en comprar y toda la lógica necesaria es manejada por el contrato en lugar de que el consumidor la ingrese manualmente.
Con las cuentas de contrato, puede realizar pagos "pull" iniciados por un emisor de facturas. Por ejemplo, una empresa de electricidad podría establecer un contrato de pago programado y dictar sus reglas, como la cantidad que cobrará cada mes o la frecuencia con la que iniciará los pagos en un día. Después de que los usuarios aprueben estos pagos de extracción predefinidos a través de su cuenta de contrato, los reembolsos de facturas automatizados se pueden realizar poco después de que llegue el día de pago.
Blockchain ahora se ha vuelto notablemente útil en una amplia variedad de aplicaciones de pago.
Al aprovechar las cuentas de contrato, los desarrolladores se liberan de las restricciones de los EOA existentes y pueden traer elementos ventajosos de web2 a web3 sin perder la descentralización por la que se esfuerzan. Aquí acabamos de mencionar algunos ejemplos de cómo la Abstracción de cuentas podría optimizar las experiencias de los usuarios, ¡sin embargo, existe un potencial ilimitado para nuevas ideas imaginativas que aún no han surgido!