trezor-firmware
trezor-firmware copied to clipboard
Implement anti-exfiltration protocol
This pull request implements anti-exfiltration protocol in core for
- Bitcoin-like transaction signing,
- Ethereum transaction signing and
- ownership proofs.
| core UI changes | device test | click test | persistence test |
|---|---|---|---|
| T2T1 Model T | test(screens) main(screens) |
test(screens) main(screens) |
|
| T3B1 Safe 3 | test(screens) main(screens) |
test(screens) main(screens) |
test(screens) main(screens) |
| T3T1 Safe 5 | test(screens) main(screens) |
test(screens) main(screens) |
test(screens) main(screens) |
| All | main(screens) |
@matejcik Please
- review introduced protobuf messages (https://github.com/trezor/trezor-firmware/pull/4826/commits/ba06f21a0ea9eccc8088239a6f6105288b86cfcc https://github.com/trezor/trezor-firmware/pull/4826/commits/98c317c34dd0e29a11c4b969383c27e5cb7deee4 https://github.com/trezor/trezor-firmware/pull/4826/commits/cb7ac84d8a1cedd09058f467b4fc41feda80df63)
- review the interface of the introduced trezorlib functions:
ethereum.sign_tx_new,ethereum.sign_tx_eip1559_new(https://github.com/trezor/trezor-firmware/pull/4826/commits/9ece9ae6c03881d1af9535915ba1dcebb6b2a4d1),btc.sign_tx(https://github.com/trezor/trezor-firmware/pull/4826/commits/34309b6d09cea2e13f938a820311690565d9e53b),btc.get_ownership_proof_new(https://github.com/trezor/trezor-firmware/pull/4826/commits/c931332b7517207e547a8845f76902f68701b97c). - decide what to with the aforementioned functions (keep both the old and the new / break compatibility and keep only the new)
@M1nd3r Please review the rest. Take special care to ensure that the anti-exfiltration protocol is implemented correctly in terms of security in terzorlib.