メッセージには「Bitcoin Signed Message」のプレフィックスと長さのバイトが付けられ、SHA-256 を 2 回適用してハッシュ化したうえで secp256k1 で署名されます。検証者は署名から公開鍵を復元し、ヘッダーが示す種類のアドレスを導出して、主張されたアドレスと比較します。署名は base64 でやり取りされます。
BIP-137 は、P2PKH にしか対応していない Bitcoin Core の signmessage に由来します。SegWit 用のヘッダー範囲は一貫して実装されたことがなく、Electrum や Trezor を含む一部のウォレットは、SegWit アドレスにも P2PKH の範囲を使っていました。BIP-137 は Taproot、マルチシグ、スクリプトのアドレスをまったく表現できず、そのため BIP-322 に置き換えられつつあります。Bitcoin メッセージ検証ツールは両方の形式に対応しています。