ERC-4337: Abstracción de cuenta en Geminon

Geminon
5 min readMar 6, 2023

--

El pasado 1 de marzo se anunció en la WalletCon de Denver el muy esperado lanzamiento oficial de la propuesta EIP-4337 tras haber pasado la auditoría de seguridad de Open Zeppelin. El anuncio fue toda una sorpresa ya que no se esperaba que este nuevo estándar estuviera listo hasta dentro de bastante tiempo.

¿Qué es la abstracción de cuenta?

Existen dos tipos de cuenta en Ethereum: cuentas de usuario (External Owned Accounts, EOA) y cuentas de contrato (CA), también llamadas contratos inteligentes.

Las cuentas de contrato son en esencia programas informáticos almacenados en la blockchain con los cuales pueden interactuar los usuarios y también otros contratos, pero no pueden iniciar transacciones por sí mismas: las transacciones solo pueden ser enviadas a la blockchain desde una EOA.

Las EOA se utilizan generalmente mediante un monedero (wallet), que es un software que almacena la llave privada que permite firmar las transacciones de la cuenta y facilita funcionalidades básicas como enviar transferencias a otros usuarios y visualizar los saldos de la cuenta.

Los monederos actuales basados en EOAs tienen varias limitaciones importantes, especialmente en su usabilidad, ya que no existen opciones avanzadas para almacenar de forma segura la frase semilla (el conjunto de palabras que permite regenerar la llave privada y con ella el monedero) o la clave privada más allá de escribirlas en un soporte físico que puede perderse, ser robado o resultar destruido en un accidente, lo que supone un riesgo de pérdida de los activos en ciertos casos. Además existen otras limitaciones:

  • No permiten utilizar esquemas multi-firma, necesarios para cuentas de empresas e instituciones.
  • No se pueden personalizar las cuentas, e.g. implementar políticas de gasto.
  • El gas de las transacciones solo puede pagarse desde la propia EOA, lo que redunda en menos privacidad ya que siempre es necesario añadir fondos iniciales, generalmente desde un exchange.
  • No se pueden utilizar claves de sesión: cada transacción tiene que firmarse por separado.
  • No se pueden hacer lotes de operaciones para ahorrar gas.
  • No existe una forma fácil de dejar en herencia la cuenta sin comprometer su seguridad.

La propuesta EIP-4337 se creó en 2021, tras más de 5 años de trabajos, para permitir el uso de cuentas de contrato como monederos inteligentes sin necesidad de modificar la capa de consenso de Ethereum (por lo que finalmente se implementó como ERC-4337, a nivel de aplicaciones y no de protocolo), resolviendo así todas estas limitaciones descritas de las EOAs.

¿Por qué es tan importante?

En pocas palabras: la abstracción de cuenta elimina para los usuarios toda la complejidad asociada al uso de monederos cripto (claves privadas, frases semilla, firma de permisos a contratos, firma de transacciones, gas, etc.) y permite que cualquier teléfono móvil pueda convertirse en un monedero de hardware con solo descargar una aplicación, ya que ahora es posible almacenar la clave privada en el módulo de seguridad de hardware del teléfono, siendo casi tan seguro como un monedero de hardware (esta opción no existía para las EOA ya que las transacciones deben firmarse utilizando un algoritmo de cifrado de curva elíptica (ECDSA), que es distinto al que emplean los dispositivos móviles).

Pero lo más importante de todo es que el nuevo estándar ERC-4337 transforma un monedero cripto en algo que tiene todas las características de un banco real:

  • Se pueden establecer controles de acceso a la cuenta complejos, como por ejemplo 2FA.
  • Firma de transacciones con el teléfono (huella dactilar, reconocimiento facial, etc).
  • Establecer límites de gasto por transacción, diario o mensual.
  • Pagos recurrentes automáticos: recibos, nóminas, letras de préstamos…
  • Mecanismos descentralizados de recuperación de cuenta.
  • Posibilidad de que un tercero pague el gas de las transacciones.
  • Claves de sesión para jugar videojuegos en blockchain sin necesidad de firmar constantemente las transacciones.
  • “Interruptor de hombre muerto”, que permite dejar los activos de la cuenta en herencia.
  • Es posible implementar algoritmos de firma segura post-cuántica, con lo que las cuentas en Ethereum alcanzarían seguridad frente a computación cuántica incluso sin actualizar el protocolo.

En general es posible implementar a nivel de monedero cualquier funcionalidad o sistema de seguridad que los desarrolladores quieran programar, y además existe la posibilidad (si el monedero se implementa mediante un proxy) de que este sea actualizable sin necesidad de cambiar de dirección. Y todo ello manteniendo la autocustodia de los fondos de forma plenamente descentralizada.

En definitiva, la abstracción de cuenta es el avance tecnológico más importante que se ha hecho para la adopción masiva de cripto desde la propia creación de Bitcoin. Todavía faltan meses para que aparezcan las primeras aplicaciones que aprovechen esta tecnología, pero el hecho es que se acaba de romper la barrera para que cientos de millones de personas en todo el mundo puedan utilizar cripto en su día a día con la misma facilidad con la que usan la aplicación de su banco.

¿Cómo afecta a Geminon?

En las últimas semanas el equipo ha estado preparando la nueva hoja de ruta (Geminon v2) del proyecto para los próximos dos años. Aunque la presentación al público de las nuevas características de Geminon no tendrá lugar hasta dentro de unas semanas, podemos adelantar que uno de los objetivos finales que perseguimos con los nuevos desarrollos es la creación de una aplicación FinTech de banca digital plenamente descentralizada, construida aprovechando los beneficios de la tecnología de contratos inteligentes. Pues bien, resulta que esta idea que pretendemos desarrollar es exactamente una implementación de la abstracción de cuenta del estándar ERC-4337 que se acaba de presentar.

Esto resulta muy positivo por dos motivos: primero, porque siendo uno de los mayores avances de los últimos años para la adopción generalizada de las criptomonedas, Geminon se convierte ahora en uno de los primeros proyectos en aprovechar la idea y proponer una implementación completa de la misma, lo cual potenciará la atracción de capital al proyecto. Y segundo, porque al haberse desarrollado ya la base de la tecnología necesaria en forma de estándar ERC, ahora nos será mucho más sencillo desplegar una aplicación basada en el mismo.

Pronto haremos público el litepaper de Geminon v2 y podrás conocer en detalle los nuevos desarrollos que estamos preparando.

Síguenos en twitter (@geminonprotocol) y en nuestro canal de telegram para estar informado de todas las novedades del proyecto.

--

--