490 / 736FP

Wallet Fingerprint

Short fingerprint of the wallet’s master key

After restoring a wallet, you want to know whether you are using the same keys as before. A Wallet Fingerprint is a short identifier that helps with that check. It usually identifies the wallet’s master public key under BIP32. Treat it as a comparison aid, not a replacement for a backup or final proof that the entire wallet matches.

A BIP32 fingerprint is the first 4 bytes of HASH160 of a compressed public key. HASH160 means SHA-256 followed by RIPEMD-160, two functions that produce numerical digests of data. The resulting 32 bits are usually displayed as 8 hexadecimal characters, using digits and letters. The chain code, additional data used to derive further keys, is not included in this short fingerprint.

Imagine having records of several wallets and needing to tell them apart. A fingerprint acts as a short label calculated from the public key in its precisely specified encoding. It is not a direct hash of the recovery words or private key. The label alone is not a receiving address, cannot sign a payment and cannot restore the keys. Recording it therefore does not replace a backup from which the wallet can actually be recovered. [1]

BIP32 creates a tree of keys: further keys branch out from a master key, like branches from a common trunk. An extended public key record, xpub, or private key record, xprv, includes its parent’s fingerprint—the key one level above. The master key has no parent, so that field contains 00000000. This is not its own fingerprint, however. An application may display the master key’s own fingerprint; before comparing, establish which value you are reading. [1]

The master key in public BIP32 test vector 1 has its own fingerprint 3442193e. Yet the parent field of its master xpub contains 00000000. There is no contradiction: one value describes the key itself, the other its absent parent. A test vector is a published set of inputs and expected results for checking software. Never use these publicly known values as the basis of a wallet holding your own money. [1]

PSBT is a package of transaction information that can be passed to a signing device. Under BIP174, it associates the master fingerprint with a derivation path: directions for reaching a particular public key. An Output Descriptor, a text description of keys and spending rules, can also record a key’s origin. When a signing device checks payment change, a matching fingerprint is not enough. It must derive and compare the actual key and the corresponding rules, so that it does not mistake someone else’s output for its own. [2] [3]

A short fingerprint saves space but has a limited range: 32 bits allow only 4294967296 values. Different keys can therefore share the same fingerprint. This is called a collision, and BIP32 explicitly requires software to handle it. A match alone does not verify every account, derivation path or script type—the rules for spending. Nor does it prove that you possess the required private keys. [1] [3]

First make sure you are comparing the same kind of fingerprint at the same level of the tree. A different result may point to a different seed, the secret basis of the keys, or a different passphrase, an additional password. Before drawing that conclusion, rule out a mix-up between the master and parent fields. Follow up a match by checking known addresses, derivation paths and spending rules. A fingerprint is a useful partial check, but cannot replace a properly stored backup and a verified recovery procedure. [1] [3]

For the clearest picture, read this entry together with HD Wallet, PSBT, BIP39 passphrase, Output Descriptor. The reverse links also lead from SeedQR.

DOC · 001BIP32 — Key identifiers and serializationSpecification DOC · 002BIP174 — Key origins and change detectionSpecification DOC · 003BIP380 — Output Script DescriptorsSpecification
Revised: Source-first · No investment advice