Firmware 2.3.4 vs 2.3.5 Bitcoin(like) paths
From Trezor Wiki
Trezor Wiki/Glossary/Development/Cryptography standards and elements/ Firmware 2.3.4 vs 2.3.5 Bitcoin(like) paths
Contents
FW 2.3.4[edit]
Allowed without warning:[edit]
The basic path schemas
- BIP44:
44'/coin'/account'/change/address
- BIP45:
45'/cosigner/change/address
- Purpose48:
48'/coin'/account'/[0,1,2]'/change/address
This firmware also allows any combination of the above schema components, so e.g.,
45’/cosigner/account’/change/change/address
The second component must always be coin'
, except for:
45'/X
, where X can be eithercosigner
orcoin'
- Coins that have fork_id and thus are replay-protected from Bitcoin (e.g. BCH) can also use
0'
in place of their own SLIP44 id.
The purpose field must match script type, so:
- 44 for SPENDADDRESS
- 45 or 48 for SPENDMULTISIG
- 48 or 49 for SPENDP2SHWITNESS
- 48 or 84 for SPENDWITNESS
Otherwise the purpose is not validated, so it can be used with any schema.
Allowed with warning:[edit]
All coins:[edit]
44'/coin'/*
45/*
48/coin'/*
Segwit coins:[edit]
49'/coin'/*
84'/coin'/*
Bitcoin, Testnet, Regtest:[edit]
49/coin
(unhardened, Casa compat)1/*, 4/*, 3'/*, 0x4741b11e/*
(Greenaddress compat)
FW 2.3.5[edit]
Allowed without warning:[edit]
The basic path schemas
- BIP44:
44'/coin'/account'/change/address
(script_type must be SPENDADDRESS, multisig must be unspecified) - BIP45:
45'/cosigner/change/address
(script_type must be SPENDADDRESS or SPENDMULTISIG, multisig must be specified) - Purpose48:
48'/coin'/account'/[0,1,2]'/change/address
(script_type must match the 4th field, multisig must be specified) - BIP49:
49'/coin'/account'/change/address
(script_type must be SPENDP2SHWITNESS, multisig is allowed) - BIP84:
84'/coin'/account'/change/address
(script_type must be SPENDWITNESS, multisig is allowed)
Same as in previous FW, coins that have fork_id are allowed to use 0’ for their SLIP44 id.
Bitcoin, Testnet, Regtest:[edit]
Note this is without warning unlike the previous FW
- GreenAddress: (any script type/multisig)
[1,4]/address
3'/[1-100]'/[1,4]/address
- Casa:
49/coin/account/change/address
(unhardened, script_type must be SPENDP2SHWITNESS, multisig is allowed)
Allowed with warning:[edit]
Same schemas as above, but script_type and multisig parameters are not enforced. So no wildcards are allowed anymore. In addition, the GreenAddress signing schema is allowed:
0x4741b11e
(this particular one-component path)0x4741b11e/6/address