Escrito por: Mundus Security Compilado por: Deep Tide TechFlow
El EIP-6963 recientemente propuesto tiene como objetivo resolver los problemas conflictivos que surgen cuando los usuarios intentan usar múltiples proveedores de billetera dentro de un solo navegador web. En este caso, estos problemas de conflicto pueden conducir a una experiencia de usuario degradada, impedir que los usuarios controlen su interfaz Ethereum y complicar el proceso de interacción con dApps.
Introducción al problema
Actualmente, los proveedores de billeteras que ofrecen extensiones de navegador deben inyectar su proveedor de ethereum (según el estándar EIP-1193) en el objeto de ethereum del navegador. Este mecanismo crea un problema para los usuarios que han instalado varias extensiones de navegador. Las extensiones del navegador se cargan en las páginas web en un orden impredecible y errático, lo que hace imposible que los usuarios elijan su propia billetera Ethereum en el objeto Ethereum. Por lo general, la última billetera que se carga es la que aparece en la página de control.
EIP-6963: Solución propuesta
Para abordar esto, EIP-6963 propone un mecanismo existente para reemplazar el proveedor EIP-1193 de ethereum. La propuesta presenta un conjunto de eventos de ventana para habilitar un protocolo de comunicación bidireccional entre las bibliotecas de Ethereum y los scripts inyectados proporcionados por las extensiones del navegador. Esta solución optimiza la interoperabilidad entre múltiples proveedores de billeteras, reduce la barrera de entrada para nuevos proveedores de billeteras y mejora la experiencia del usuario en la red Ethereum.
La propuesta describe una interfaz de información de proveedor estandarizada (EIP6963ProviderInfo), que es esencial para completar la ventana emergente de selección de billetera. También destaca la importancia de declarar la interfaz del proveedor (EIP6963ProviderDetail), que deja la interfaz del proveedor EIP-1193 sin cambios para la compatibilidad con versiones anteriores.
Las propiedades clave en la interfaz de información del proveedor incluyen:
walletId: Identificador global único del proveedor de la billetera (por ejemplo, io.dopewallet.extension o awesomewallet).
**uuid: **Identificador único local compatible con UUID v4.0 para el proveedor de la billetera.
nombre: Nombre legible por humanos del proveedor de la billetera (por ejemplo, DopeWalletExtension o Awesome).
icono: Un URI que apunta a una imagen, debe ser un cuadrado con una resolución mínima de 96x96px. Se recomiendan PNG y WebP o formatos de imagen vectorial como SVG. El equipo de la propuesta desaconseja enfáticamente el uso de formatos con pérdidas como JPG/JPEG.
En términos de activación de eventos, tanto la biblioteca Ethereum como el proveedor de la billetera usan la función dispatchEvent para emitir eventos y addEventListener para observar eventos. Cuando la biblioteca Ethereum se inicializa, emite un evento "eip6963:requestProvider" y el proveedor de la billetera emite un evento "eip6963:announceProvider", junto con detalles de su interfaz e información del proveedor.
Impacto de EIP-6963
Según estimaciones optimistas, la aceptación e implementación de EIP-6963 puede demorar entre tres y seis meses. Este desarrollo podría conducir a una nueva historia de billeteras para fines de año, lo que podría romper la hegemonía de los principales proveedores de billeteras como Metamask y crear un entorno más competitivo entre los proveedores.
Las billeteras como Coin98, Coinbase Wallet, Trust Wallet, Phantom, Taho, Rabby, Frame, XDEFI, Rainbow, Zerion, Spot, Frontier, MEW, Dawn Wallet, Blockwallet, Bitski, SafePal, BitKeep y MathWallet están listas para beneficiarse de esto. desarrollo
pros y contras:
EIP-6963 plantea algunos problemas de seguridad a considerar.
ventaja:
NINGÚN PUNTO ÚNICO DE FALLA: Al permitir múltiples proveedores de billetera, hemos eliminado el problema de un único punto de falla. Esto es beneficioso en términos de seguridad, ya que significa que si un proveedor de billetera sufre un ataque o falla técnica, los usuarios tienen alternativas disponibles.
Reducir la dependencia de un solo proveedor: Actualmente, la comunidad de Ethereum depende en gran medida de un solo proveedor, MetaMask. Esto presenta un riesgo potencial porque si MetaMask se ve comprometida, la mayoría de los usuarios de Ethereum se verán afectados. Al admitir múltiples billeteras, EIP-6963 distribuye el riesgo.
Control de usuario mejorado: La capacidad de elegir múltiples proveedores de billetera brinda a los usuarios un mayor control sobre su seguridad. Los usuarios pueden elegir un proveedor de billetera que coincida con sus preferencias de seguridad personal y nivel de confianza.
defecto:
** Mayor superficie de ataque: ** La implementación de EIP-6963 aumenta la superficie de ataque. Esto se debe a la mayor cantidad de proveedores de billeteras que pueden ser atacados por actores malintencionados. Todos los proveedores de billeteras deben cumplir con altos estándares de seguridad para minimizar este riesgo.
**Riesgos potenciales de la utilización de imágenes SVG: **EIP-6963 propone usar imágenes SVG como íconos para proveedores de billeteras. Sin embargo, las imágenes SVG pueden contener código Java, lo que puede presentar un riesgo de secuencias de comandos entre sitios (XSS). Si bien el EIP especifica que las imágenes SVG se deben representar con etiquetas para evitar la ejecución de Java, esta recomendación solo puede ser verificada por terceros o auditores de cada implementación.
Impacto de reemplazar ethereum: Si bien EIP no interrumpe directamente las aplicaciones existentes al reemplazar ethereum, sugiere hacerlo después de que los usuarios elijan una billetera. Esta recomendación solo puede ser verificada en cada implementación por un tercero o auditor.
en conclusión
EIP-6963 tiene como objetivo mejorar la interoperabilidad entre múltiples proveedores de billeteras, reducir las barreras de entrada para nuevos proveedores y mejorar la experiencia del usuario en la red Ethereum. Al mismo tiempo, el impacto en la seguridad es complejo.
Los usuarios, los proveedores de billeteras y los desarrolladores de bibliotecas de Ethereum deben cumplir con las mejores prácticas para garantizar que el ecosistema de Ethereum permanezca seguro.
Al implementar esta propuesta, el ecosistema Ethereum puede evolucionar hacia un entorno más amigable y competitivo, beneficiando tanto a los proveedores de billeteras como a sus usuarios.
Ver originales
El contenido es solo de referencia, no una solicitud u oferta. No se proporciona asesoramiento fiscal, legal ni de inversión. Consulte el Descargo de responsabilidad para obtener más información sobre los riesgos.
Análisis de resolución de conflictos de billetera múltiple EIP-6963
Escrito por: Mundus Security Compilado por: Deep Tide TechFlow
El EIP-6963 recientemente propuesto tiene como objetivo resolver los problemas conflictivos que surgen cuando los usuarios intentan usar múltiples proveedores de billetera dentro de un solo navegador web. En este caso, estos problemas de conflicto pueden conducir a una experiencia de usuario degradada, impedir que los usuarios controlen su interfaz Ethereum y complicar el proceso de interacción con dApps.
Introducción al problema
Actualmente, los proveedores de billeteras que ofrecen extensiones de navegador deben inyectar su proveedor de ethereum (según el estándar EIP-1193) en el objeto de ethereum del navegador. Este mecanismo crea un problema para los usuarios que han instalado varias extensiones de navegador. Las extensiones del navegador se cargan en las páginas web en un orden impredecible y errático, lo que hace imposible que los usuarios elijan su propia billetera Ethereum en el objeto Ethereum. Por lo general, la última billetera que se carga es la que aparece en la página de control.
EIP-6963: Solución propuesta
Para abordar esto, EIP-6963 propone un mecanismo existente para reemplazar el proveedor EIP-1193 de ethereum. La propuesta presenta un conjunto de eventos de ventana para habilitar un protocolo de comunicación bidireccional entre las bibliotecas de Ethereum y los scripts inyectados proporcionados por las extensiones del navegador. Esta solución optimiza la interoperabilidad entre múltiples proveedores de billeteras, reduce la barrera de entrada para nuevos proveedores de billeteras y mejora la experiencia del usuario en la red Ethereum.
La propuesta describe una interfaz de información de proveedor estandarizada (EIP6963ProviderInfo), que es esencial para completar la ventana emergente de selección de billetera. También destaca la importancia de declarar la interfaz del proveedor (EIP6963ProviderDetail), que deja la interfaz del proveedor EIP-1193 sin cambios para la compatibilidad con versiones anteriores.
Las propiedades clave en la interfaz de información del proveedor incluyen:
En términos de activación de eventos, tanto la biblioteca Ethereum como el proveedor de la billetera usan la función dispatchEvent para emitir eventos y addEventListener para observar eventos. Cuando la biblioteca Ethereum se inicializa, emite un evento "eip6963:requestProvider" y el proveedor de la billetera emite un evento "eip6963:announceProvider", junto con detalles de su interfaz e información del proveedor.
Impacto de EIP-6963
Según estimaciones optimistas, la aceptación e implementación de EIP-6963 puede demorar entre tres y seis meses. Este desarrollo podría conducir a una nueva historia de billeteras para fines de año, lo que podría romper la hegemonía de los principales proveedores de billeteras como Metamask y crear un entorno más competitivo entre los proveedores.
Las billeteras como Coin98, Coinbase Wallet, Trust Wallet, Phantom, Taho, Rabby, Frame, XDEFI, Rainbow, Zerion, Spot, Frontier, MEW, Dawn Wallet, Blockwallet, Bitski, SafePal, BitKeep y MathWallet están listas para beneficiarse de esto. desarrollo
pros y contras:
EIP-6963 plantea algunos problemas de seguridad a considerar.
ventaja:
defecto:
en conclusión
EIP-6963 tiene como objetivo mejorar la interoperabilidad entre múltiples proveedores de billeteras, reducir las barreras de entrada para nuevos proveedores y mejorar la experiencia del usuario en la red Ethereum. Al mismo tiempo, el impacto en la seguridad es complejo.
Los usuarios, los proveedores de billeteras y los desarrolladores de bibliotecas de Ethereum deben cumplir con las mejores prácticas para garantizar que el ecosistema de Ethereum permanezca seguro.
Al implementar esta propuesta, el ecosistema Ethereum puede evolucionar hacia un entorno más amigable y competitivo, beneficiando tanto a los proveedores de billeteras como a sus usuarios.