🔥 距离 Gate.io WCTC S7 正式开赛仅剩 7 天
世界加密货币交易大赛即将开启,总奖池高达 $5,000,000
👉🏻 立即报名:https://gate.io/competition/wctc/s7?pid=APP&c=moments_gatePost&ch=druYjDaF
报名参赛,不仅有机会赢取高达百万美元的个人奖励,更有 Gate.io 专属周边大礼等你来拿
全球顶尖交易员正在集结,一场交易盛宴即将开启
🔗 活动详情: https://www.gate.io/announcements/article/44440
浅析多钱包冲突解决方案EIP-6963
撰写:Mundus Security
编译:深潮 TechFlow
最近提出的 EIP-6963 旨在解决用户在单个 Web 浏览器中尝试使用多个钱包提供程序时出现的冲突问题。在这种情况下,这些冲突问题可能会导致用户体验下降,阻碍用户对其以太坊界面的控制,并使与 dApp 交互的过程复杂化。
问题简介
目前,提供浏览器扩展的钱包提供程序必须将们的以太坊提供程序(根据 EIP-1193 标准)注入到浏览器的 ethereum 对象中。这种机制对安装了多个浏览器扩展的用户来说造成了一种问题。浏览器扩展以不可预测和不稳定的顺序加载到网页中,导致用户无法自主选择 ethereum 对象中的以太坊的钱包。通常,最后加载的钱包是弹出控制页面那个。
EIP-6963:提出的解决方案
为了解决这个问题,EIP-6963 提出了一种替代 ethereum 的 EIP-1193 提供程序的现机制。该提案引入了一组窗口事件,使以太坊库和浏览器扩展提供的注入脚本之间能够进行双向通信协议。这个解决方案优化了多个钱包提供程序之间的互操作性,降低了新钱包提供程序的准入门槛,并改善了以太坊网络上的用户体验。
该提案概述了一个标准化的提供程序信息接口(EIP6963ProviderInfo),这对于填充钱包选择弹出窗口至关重要。它还强调了宣布提供程序接口(EIP6963ProviderDetail)的重要性,这使得 EIP-1193 提供程序接口保持不变,以保证向后兼容性。
提供程序信息接口中的关键属性包括:
在触发事件方面,以太坊库和钱包提供程序都使用 dispatchEvent 函数来发出事件,并使用 addEventListener 来观察事件。当以太坊库初始化时,它会发出“eip6963:requestProvider”事件,而钱包提供程序则会发出“eip6963:announceProvider”事件,同时提供其提供程序接口和信息的详细信息。
EIP-6963 的影响
根据乐观估计,EIP-6963 的接受和实施可能需要大约三到六个月的时间。这一发展可能会在年底带来新的钱包故事,潜在地打破像 Metamask 这的领先钱包提供商的霸权,并在提供商之间营造更具竞争力的环境。
Coin98、Coinbase Wallet、Trust Wallet、Phantom、Taho、Rabby、Frame、XDEFI、Rainbow、Zerion、Spot、Frontier、MEW、Dawn Wallet、Blockwallet、Bitski、SafePal、BitKeep 和 MathWallet 等钱包有望从这一发展中获益。
优点和缺点:
EIP-6963 提出了一些需要考虑的安全问题。
优点:
缺点:
结论
EIP-6963 旨在增强多个钱包提供商之间的互操作性,降低新提供商的准入门槛,并改善以太坊网络上的用户体验。同时,对于安全性的影响是复杂的。
用户、钱包提供商和以太坊库开发人员必须遵守最佳实践,以确保以太坊生态系统保持安全。
通过实施这个提案,以太坊生态系统可以朝着更加用户友好和竞争环境的方向发展,既有利于钱包提供商,也有利于他们的用户。