消息签名是一种通过钱包私钥对指定消息进行签名的方式。它可以在不发起任何链上转账的前提下,向第三方证明你拥有某个钱包地址的控制权。常见于账户验证、平台地址认证、DApp 登录等场景。
imToken(v2.21.0 起) 支持 ETH (包含 Layer2 和 EVM 兼容网络)以及 BTC 的消息签名功能。
操作指南
如何进行 ETH 消息签名
1. 打开 imToken,切换至你需要签名的 ETH 账户(或相关 EVM 兼容网络账户)。
2. 点击账户首页 > 按钮进入账户详情页,选择「消息签名」。
3. 输入需要签名的消息内容,仔细核对钱包地址和消息内容。
4. 确认无误后点击「下一步」,完成消息「签名」。
5. 签名完成后,点击「复制」即可将签名结果提交给验证方,或返回原页面继续完成验证。
如何进行 BTC 消息签名
1. 打开 imToken,切换至你需要签名的 BTC 账户。
2. 点击账户首页 > 按钮进入账户详情页,选择「消息签名」。
3. 输入需要签名的消息内容,并根据验证方的要求选择签名格式。
💡imToken 支持以下三种 BTC 消息签名格式:
• Standard:传统 BTC 消息签名格式,适合只支持旧版 Bitcoin Signed Message 验证流程的平台。
• BIP-137:在传统格式基础上补充了更多地址格式的区分,适用于 Trezor、Ledger 等硬件钱包相关的验证,以及明确要求 BIP-137 的平台。
• BIP-322:更通用的消息签名方案,适合明确要求 BIP-322 或需要更广泛地址 / 脚本兼容性的场景。
注:如果验证方未明确说明格式,建议先联系确认其支持的格式。点此详细了解:BTC Sign Message 支持哪些签名格式?
4. 仔细核对钱包地址、消息内及签名格式,确认信息无误后点击「下一步」进行签名。
5. 签名完成后,点击「复制」即可将获取签名结果。
常见问题
Q1: 消息签名需要支付矿工费吗?
不需要。消息签名只是利用私钥在本地对一段文本进行加密证明,并不属于链上交易,也不会被记录在区块链上。
Q2: 为什么消息签名在第三方网站验证失败?
验证失败通常由以下原因导致,请依次排查:
• 账户地址不匹配:核对签名时使用的账户地址和所在网络,是否与验证方要求的一致;
• 消息内容不一致:检查签名消息是否与要求完全一致。空格、换行和大小写错误均会导致失败,建议直接复制粘贴;
• 签名格式错误:BTC 拥有 Standard / BIP-137 / BIP-322 等多种格式。若选错格式,验证方将无法识别,请联系验证方确认其支持的格式。
Q3: 消息签名有安全风险么?
单纯的文本消息签名本身是安全的。但是,恶意网站可能会通过先诱导消息签名来进一步实施诈骗。签名前请确认请求来自可信平台,并仔细核对签名地址和消息内容。若签名内容与预期不符或无法理解,请取消操作。