Derivation paths and accounts
BitTool Signer derives a fixed set of accounts from each seed. Your wallet should use the same paths, or BitTool Signer will not find the key a request asks for.
Accounts
| Chain | Profile | Account path | Addresses | First address (test phrase) |
|---|---|---|---|---|
| Bitcoin | Native SegWit (P2WPKH) | m/84'/0'/0' | …/0/i receive, …/1/i change | bc1qcr8te4kr609gcawutmrza0j4xv80jy8z306fyu |
| Bitcoin | Taproot (P2TR, BIP86) | m/86'/0'/0' | same | bc1p5cyxnuxmeuwuvkwfem96lqzszd02n6xdcjrs20cac6yqjjwudpxqkedrcr |
| Bitcoin | Nested SegWit (P2SH-P2WPKH) | m/49'/0'/0' | same | 37VucYSaXLCAsxYyAPfbSi9eh4iEcbShgf |
| Bitcoin | Legacy (P2PKH) | m/44'/0'/0' | same | 1LqBGSKuX5yYUonjxT5qGfpUsXKYYWeabA |
| Bitcoin | Multisig cosigner, P2WSH | m/48'/0'/0'/2' | multisig only | — |
| Bitcoin | Multisig cosigner, P2SH-P2WSH | m/48'/0'/0'/1' | multisig only | — |
| EVM | Standard | m/44'/60'/0' | …/0/i | 0x9858EfFD232B4033E47d90003D41EC34EcaEda94 |
| TRON | Standard | m/44'/195'/0' | …/0/i | TUEZSdKsoDHQMeZwihtdoBiN46zxhGWYdH |
| Solana | Standard (Phantom, Solflare, Backpack …) | — | m/44'/501'/0'/0' | HAgk14JpMQLgt6rVgv7cBQFJWFto5Dqxi472uT3DKpqk |
| Solana | Trust Wallet style | — | m/44'/501'/0' | GjJyeC1r2RgkuoCWMyPYkCWSGSGLcz266EaAkLA27AhL |
| Solana | Legacy (root account) | — | m/44'/501' | D2PPQSYFe83nDzk96FqGumVU8JA7J8vj2Rhjc2oXzEi5 |
Notes:
- One EVM key for every EVM network. The same
m/44'/60'/0'/0/iaddresses are used on Ethereum, BNB Chain, Arbitrum, Base, OP Mainnet, Polygon, Gnosis and Avalanche. The network is part of the signing request, not the key. - TRON has its own account, at coin type 195. Do not reuse the EVM key for TRON, even though the address math is similar.
- Solana keys are fully hardened (SLIP-0010 Ed25519), so there is no Solana xpub. Each of the three presets is a single key that must be exported as its own address.
- Only account 0 is derived. Index
ican be any non-hardened value (0 to 231 − 1) for Bitcoin, EVM and TRON.
The master fingerprint
The master fingerprint is the first 4 bytes of HASH160(master public key), written as 8 hex digits. For the test phrase it is 73c5da0a. BitTool Signer shows it on every wallet card (as 73C5DA0A) and every pairing QR code carries it.
Put it in every signing request: in PSBT bip32Derivation and in the crypto-keypath of eth-, tron- and sol-sign-request. BitTool Signer uses it, together with the path and the expected key or address, to find the wallet that must sign.
The fingerprint is only 32 bits. It is a filter, not an identity: two different seeds can share one. Identify a paired wallet by its xpubs, never by the fingerprint alone.
Internally BitTool Signer identifies a wallet by walletKeyId = SHA-256("BitTool-Signer/WalletKeyId/v1" ‖ master public key ‖ master chain code). It is never exported and is not part of any QR format; it is mentioned here only so you know the fingerprint is not used as an identity inside the signer either.
Matching other wallets
| If the user's other wallet is… | It probably uses |
|---|---|
| A Bitcoin wallet (Sparrow, BlueWallet, Nunchuk …) | One of the four Bitcoin profiles; check its script type |
| MetaMask, Rabby, imToken, most EVM wallets | m/44'/60'/0'/0/i |
| TronLink, TokenPocket (TRON) | m/44'/195'/0'/0/i |
| Phantom, Solflare, Backpack | Solana standard m/44'/501'/0'/0' |
| Trust Wallet (Solana) | Solana m/44'/501'/0' |
| Ledger Live (Ethereum) | m/44'/60'/i'/0/0: only its first account (i = 0) is the same key |