Firmware 2.3.4 vs 2.3.5 Bitcoin(like) paths

From Trezor Wiki
Jump to: navigation, search
Trezor Wiki/Glossary/Development/Cryptography standards and elements/ Firmware 2.3.4 vs 2.3.5 Bitcoin(like) paths


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 either cosigner or coin'
  • 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
Like Trezor? Get one here!