It seems like I did all my recent hardware wallet test with a trezor device, and meanwhile the other stayed broken because of recent changes.
The main two issues that this diff fixes are:
- `KeyStore.get_tx_derivations` now returns a dict indexed by xpubkeys as bytes, and the code still expected it to use hex strings
- updating the signatures in the coin dict returned by `Transaction.inputs()` no longer has any effect, as the dicts are build on demand for convenience but are no longer used by Transaction
In addition to this, D14567 introduced a bug for satochip when computing the has of the tx preimage by hashing the hex version of the preimage instead of bytes. The `Hash` function supports both bytes and strings as inputs, but it does not assume that strings are hex encoded bytes but rather text to be encoded as "utf-8"