开发者进阶中级185 次阅读
DApp 集成钱包:连接、签名与链切换
EIP-1193 提供者模型是 DApp 与钱包之间唯一的通用接口,本文讲清连接、签名、链切换的完整流程与常见兼容坑。
#钱包#EIP-1193#签名#链切换#DApp
一句话结论
DApp 与浏览器钱包之间的事实标准是 EIP-1193 定义的注入提供者:钱包把一个提供者对象挂到页面上,DApp 通过统一的「请求」接口与它对话,而不是针对某个具体钱包写死代码。
提供者模型长什么样
EIP-1193 约定了提供者的最小接口:一个统一的方法用来发起请求,请求里带上方法名与参数,例如「请求账户」「请求签名」「请求发送交易」。这个模型的好处是:
- 钱包可替换:只要实现了同一套约定,DApp 不需要为每个钱包写一套适配。
- 职责清晰:钱包负责私钥、签名和广播,DApp 只负责组装意图和展示状态。
- 能力可探测:DApp 可以先问提供者支持哪些能力,再决定走哪条路径。
要注意提供者是注入到页面的全局对象,可能不存在。用户没装钱包、用的是手机浏览器、或者装了多个钱包争抢同一个全局对象,都会让连接失败。所以必须准备回退方案:引导用户去钱包的内置浏览器打开,或明确提示安装。
三种一定会遇到的状态
用户拒绝签名。这是正常操作,不是异常。把它当报错抛出,会让用户以为 DApp 坏了。
链不对。DApp 需要的链与用户当前所在链不一致时,要么引导用户切换,要么请求添加该网络。切换失败时要给出可复制的网络参数作为兜底。
会话中被改变。提供者会在账户切换、链切换时发出事件通知。不监听这些事件的 DApp,界面会长期停留在一个已经不存在的账户上。
签名该怎么设计
请求连接只代表用户交出了地址,不代表授权动他的资产——这一点用户常常误解,DApp 的文案要主动澄清。需要授权时,额度按需给,不要默认无限。需要用户签名时,能用 EIP-712 这类结构化签名就不要让用户盲签一串十六进制:用户能读懂自己在确认什么,才是最有效的防线。
给你的教训
- 不要把「用户拒绝」当异常,按取消处理,不弹错误弹窗、不重复弹窗。
- 连接后立刻监听账户与链的变化,随时同步界面状态。
- 每次签名都要说清签的是什么、会不会动资产,含糊的文案终会反噬信任。
- 把提供者能力当成「可能不存在」,未安装钱包、移动端、多钱包冲突都要有明确路径。
延伸阅读
动手教程
把这个概念用起来的分步实操,跟着做一遍比再读十篇都记得牢
钱包基础认知:自持钱包、托管钱包与钱包分类
把「钱包」这件事一次讲透:钱包里其实不存币,只保存私钥,资产永远记在链上;自持钱包与交易所托管钱包在控制权、责任与风险上的根本差别;浏览器扩展、手机 App、网页钱包、桌面客户端四种形态各自适合谁;热钱包与冷钱包如何按联网状态划分风险等级;EOA 外部账户与合约钱包(账户抽象 / 智能钱包)的本质区别;助记词钱包(HD 钱包)为什么一组词能管住所有地址;MetaMask、OKX Wallet、Rabby、Trust、imToken、Phantom 等主流钱包的横向对比与选型建议;最后给出「日常热钱包 + 储值冷钱包」的分层使用框架。
预计 25-35 分钟 →
硬件钱包从开箱到日常使用:完整设置流程
跟着做:如何官网选购、开箱验真、初始化设备、离线备份助记词、做一次恢复演练,再把它接入 MetaMask 日常使用,并养成固件与双核对的长期习惯。
预计 30-45 分钟 →
密码学基础:哈希、公私钥与地址
用零基础也能跟上的方式讲清区块链的三块密码学基石:哈希函数为什么单向、抗碰撞、有雪崩效应,<code>SHA-256</code> 与 <code>Keccak-256</code> 分别用在哪里;公钥与私钥的非对称关系、<code>secp256k1</code> 椭圆曲线、数字签名的签发与验签全流程;再一步步推导「私钥 → 公钥 → <code>Keccak-256</code> → 取后 20 字节 → 校验和地址」这条完整链路,讲透 <code>BIP-39</code> 助记词与 <code>BIP-32 / BIP-44</code> 派生路径,并分清签名≠交易、地址≠账户、私钥泄露=资产清零这些致命区别。
预计 25-35 分钟 →
Web3 钱包使用:从交易所走向自持
从「Not your keys, not your coins」讲起,手把手完成第一次自持:认识钱包类型、选择第一只钱包、从官网安装并创建、手抄 12 词助记词并离线保存、添加 Base / Arbitrum One / BNB Chain 网络与导入代币、从交易所提币到钱包的完整案例、Gas 设置与卡单加速、连接 DApp 的签名与授权管理,最后是钱包与交易所的分工和被盗应急顺序。
预计 20-30 分钟 →
相关问题
读者在这类操作前后最常搜索的问题
免责声明与合规提示内容更新日期:2026-10-29
- 本站全部内容仅用于技术学习与科普,不构成任何投资建议、要约或招揽。 数字资产价格波动剧烈,请独立判断并自行承担决策结果。
- 教程记录的是撰写时的产品界面与规则,相关产品更新频繁, 实际操作请以官方当前界面与公告为准。发现内容过时,欢迎在对应页面反馈。
想系统排查自己的安全习惯?从安全自查清单开始。