消息先加上带长度字节的“Bitcoin Signed Message”前缀,再经过两次 SHA-256 哈希,然后用 secp256k1 签名;验证者从签名中恢复公钥,按头部指明的类型推导地址,并与声称的地址比较。签名以 base64 形式交换。
BIP-137 源自 Bitcoin Core 的 signmessage,后者只支持 P2PKH;SegWit 的头部取值范围也从未得到一致实现:包括 Electrum 和 Trezor 在内的一些钱包对 SegWit 地址使用了 P2PKH 的取值范围。BIP-137 完全无法表示 Taproot、多签或脚本地址,这正是 BIP-322 取代它的原因。比特币消息验证工具两种格式都支持。