Summary
When importing a Keycard Shell account into Ambire via QR code, the "Ledger Legacy" option in Shell's Connect to software wallet → Others menu produces the same Ethereum address as the standard "Ethereum" option. These should be different addresses, and MetaMask handles this case correctly.
Background
Per the Keycard documentation, the three Ethereum-related Shell options export the same parent xpub but specify different child derivation patterns via the QR's crypto-keypath metadata:
| Shell option |
Parent xpub in QR |
Children pattern |
First address |
| Ethereum |
m/44'/60'/0' |
/x/x |
m/44'/60'/0'/0/0 |
| Others → Ledger Live (N) |
m/44'/60'/N' |
/x/x |
m/44'/60'/N'/0/0 |
| Others → Ledger Legacy |
m/44'/60'/0' |
/x (single-level) |
m/44'/60'/0'/0 |
Expected behavior
Scanning the "Ledger Legacy" QR should result in Ambire deriving m/44'/60'/0'/0, yielding a different first address than the "Ethereum" QR (m/44'/60'/0'/0/0).
Actual behavior
Ambire returns the same address for both QRs, suggesting it ignores the single-level child keypath in the BC-UR crypto-keypath and defaults to standard BIP44 two-level derivation regardless of what the QR specifies.
Steps to reproduce
- On Keycard Shell, go to
Connect to software wallet → Ethereum. Scan the QR with Ambire and note the imported address.
- On Shell, go to
Connect to software wallet → Others → Ledger Legacy. Scan the QR with Ambire.
- Observed: same address as step 1. Expected: different address.
Evidence the issue is specific to Ledger Legacy
I tested Others → Ledger Live with account N=2 (parent xpub m/44'/60'/2'). Ambire correctly produced a different address from the Ethereum standard option. This confirms Ambire correctly parses the parent xpub and derives addresses when the xpub differs — the bug is specifically that Ambire does not honor the single-level children pattern declared by the Ledger Legacy QR, where the parent xpub is the same as the standard case.
Comparison with MetaMask
MetaMask, given the same Ledger Legacy QR from Keycard Shell, correctly derives m/44'/60'/0'/0 and shows a different address from the Ethereum option.
Impact
Users with existing Ledger Legacy-path accounts cannot access them through Ambire when connecting via Keycard Shell QR. The current workaround is to import via MetaMask instead.
Environment
- Ambire Wallet version: 6.4.2
- Keycard Shell firmware: 1.2.1
- Browser / OS: Brave 1.89.141 / MacOS Tahoe 26.3.1 (a)
Summary
When importing a Keycard Shell account into Ambire via QR code, the "Ledger Legacy" option in Shell's
Connect to software wallet → Othersmenu produces the same Ethereum address as the standard "Ethereum" option. These should be different addresses, and MetaMask handles this case correctly.Background
Per the Keycard documentation, the three Ethereum-related Shell options export the same parent xpub but specify different child derivation patterns via the QR's
crypto-keypathmetadata:m/44'/60'/0'/x/xm/44'/60'/0'/0/0m/44'/60'/N'/x/xm/44'/60'/N'/0/0m/44'/60'/0'/x(single-level)m/44'/60'/0'/0Expected behavior
Scanning the "Ledger Legacy" QR should result in Ambire deriving
m/44'/60'/0'/0, yielding a different first address than the "Ethereum" QR (m/44'/60'/0'/0/0).Actual behavior
Ambire returns the same address for both QRs, suggesting it ignores the single-level child keypath in the BC-UR
crypto-keypathand defaults to standard BIP44 two-level derivation regardless of what the QR specifies.Steps to reproduce
Connect to software wallet → Ethereum. Scan the QR with Ambire and note the imported address.Connect to software wallet → Others → Ledger Legacy. Scan the QR with Ambire.Evidence the issue is specific to Ledger Legacy
I tested
Others → Ledger Livewith account N=2 (parent xpubm/44'/60'/2'). Ambire correctly produced a different address from the Ethereum standard option. This confirms Ambire correctly parses the parent xpub and derives addresses when the xpub differs — the bug is specifically that Ambire does not honor the single-level children pattern declared by the Ledger Legacy QR, where the parent xpub is the same as the standard case.Comparison with MetaMask
MetaMask, given the same Ledger Legacy QR from Keycard Shell, correctly derives
m/44'/60'/0'/0and shows a different address from the Ethereum option.Impact
Users with existing Ledger Legacy-path accounts cannot access them through Ambire when connecting via Keycard Shell QR. The current workaround is to import via MetaMask instead.
Environment