Aller au contenu
ecdsa.com

BIP-137 (format de message signé)

Le format Bitcoin de signature de messages qui utilise une signature ECDSA récupérable de 65 octets dont l’octet d’en-tête encode à la fois l’identifiant de récupération et le type d’adresse : 27–30 P2PKH à clé non compressée, 31–34 à clé compressée, 35–38 P2SH-P2WPKH, 39–42 P2WPKH.
Autres graphiesBIP-137BIP137Bitcoin signed messagesignmessage

Le message est précédé du préfixe « Bitcoin Signed Message » avec des octets de longueur, haché en double SHA-256 et signé avec secp256k1 ; le vérificateur récupère la clé publique à partir de la signature, dérive l’adresse du type indiqué par l’en-tête et la compare à l’adresse annoncée. Les signatures sont échangées en base64.

Il dérive de signmessage de Bitcoin Core, qui ne prend en charge que P2PKH, et les plages d’en-tête SegWit n’ont jamais été implémentées de façon cohérente : certains portefeuilles, dont Electrum et Trezor, utilisaient les plages P2PKH pour les adresses SegWit. BIP-137 ne peut pas du tout exprimer les adresses Taproot, multisig ou de script, et c’est pourquoi BIP-322 le remplace. Le vérificateur de messages Bitcoin accepte les deux formats.

Normes et références

Tous les termes