1
0
mirror of https://github.com/trezor/trezor-firmware.git synced 2024-11-27 09:58:27 +00:00
Commit Graph

1750 Commits

Author SHA1 Message Date
matejcik
ae4dd42d18 refactor(core/ethereum): reorganize sanity checks, disallow chain_id 0 2021-09-10 15:09:03 +02:00
matejcik
8931450d21 chore(common): enable Palm network 2021-09-10 15:09:03 +02:00
matejcik
e80077e0a4 feat(core/ethereum): enable type-checking for Ethereum app 2021-09-10 15:09:03 +02:00
matejcik
0c2863fc8d feat(core/ethereum): use TokenInfo object instead of tuples 2021-09-10 15:09:03 +02:00
matejcik
4b34e4c001 fix(core): allow AnyStr as parameter for unhexlify 2021-09-10 15:09:03 +02:00
matejcik
30b08d949b feat(common): add default values to EthereumSignTx fields
so that we can avoid Optional types for fields
2021-09-10 15:09:03 +02:00
matejcik
96ed53cc1c refactor(core,legacy): remove Wanchain special handling
now that Wanchain has proper chainID and we don't need to detect it by
magic.

[no changelog]
2021-09-10 15:09:03 +02:00
matejcik
639406b01f feat(all): make chain_id mandatory 2021-09-10 15:09:03 +02:00
arbitrarylink
f051225730 feat(core,legacy): add support for Ethereum 64-bit chain_id
* Changes from original PR

* Now that we are rejecting chain_ids of 0, we need to have the tests set the chain_ids to at least 1.

* Ran 'make gen' and uploaded changed files.

* Ran make style_check and fixed reported errors

* Added changelog files

* Reverted changes concerning chain_id 0 being rejected.

* Adds tests for MAX_CHAIN_ID and MAX_CHAIN_ID+1.  Also reverts MAX_CHAIN_ID to the previous value.

* Added missing whitespace around arithmetic operator.

Co-authored-by: Michael Hatton <michaelhatton@Michaels-Mini.fios-router.home>
2021-09-10 15:09:03 +02:00
Tomas Susanka
cec1f39a90 chore(core, legacy): bump versions
[no changelog]
2021-08-31 12:55:37 +02:00
matejcik
9276b17023 fix(common): regenerate support data
[no changelog]

(cherry picked from commit eb34c0850e)
2021-08-27 13:40:20 +02:00
matejcik
eb34c0850e fix(common): regenerate support data
[no changelog]
2021-08-27 13:38:45 +02:00
Tomas Susanka
9a6451342a chore(core): generate Changelog 2021-08-26 14:52:52 +02:00
matejcik
174985619d chore(common): bump chains and tokens for release 2021-08-24 13:14:06 +02:00
matejcik
7aed8d535d feat(all): re-enable Firo (fixes #1767) 2021-08-23 11:43:57 +02:00
Martin Milata
f37ca13f1a refactor(core): disable SD, SBU, fatfs for T1 build 2021-08-20 12:22:13 +02:00
gabrielkerekes
2c65b00951 chore(cardano): add changelog entries 2021-08-20 11:50:13 +02:00
gabrielkerekes
8e3bc39b56 chore(cardano): update and format README 2021-08-20 11:50:13 +02:00
gabrielkerekes
7c3b5c86a5 fix(cardano): forbid mixing paths from multiple accounts in a single transaction 2021-08-20 11:50:13 +02:00
gabrielkerekes
28f0f60295 feat(cardano): update tests for streamed tx signing 2021-08-20 11:50:13 +02:00
gabrielkerekes
b0c8590f00 feat(cardano): streamed transaction signing 2021-08-20 11:50:13 +02:00
gabrielkerekes
d2a5be4e38 feat(cardano): prepare protobuf messages for streamed tx signing 2021-08-20 11:50:13 +02:00
matejcik
d33d61d84e chore(core): remove Lisk 2021-08-19 10:25:41 +02:00
Frederik Bolding
38fa9197ca feat(core,python): support for Ethereum EIP1559 transactions
Initial EIP1559 implementation

Fix a few small issues

Progress on Python lib implementation and firmware

Fix RLP length

Start fixing tests

Fix legacy transactions

Simplify API and logic

Add EIP1559 tests

Fix access list formatting

Fix UI visiblity issue

Fix commented out code

fix: correct linting issues

Fix access_list protobuf formatting

Remove unneeded code

Remove dead code

Check tx_type bounds for EIP 2718

Reduce code duplication

Prefer eip2718_type over re-using tx_type

Add more tests

Simplify format_access_list

Simplify sign_tx slightly

Change Access List format and add logic to encode it

Fix a bunch of small PR comments

Fix a linting issue

Move tests out of class and regenerate

Remove copy-pasted comments

Add access list to CLI

Simplify _parse_access_list_item

Fix small mistakes following rebase

Fix linting

Refactor to use a separate message for EIP 1559 tx

Simplify changed legacy code

Fix a few small PR comments

Fix linting

fix(legacy): recognize SignTxEIP1559 on legacy build

Fix PR comments
2021-08-10 11:00:29 +02:00
Martin Milata
b5710b820a docs(core): replace Purpose48 with BIP-48
https://github.com/bitcoin/bips/blob/master/bip-0048.mediawiki
2021-08-06 12:50:42 +02:00
gabrielkerekes
4f7c6b3586 feat(common): change all protobuf message type hints to strings
In order to support recursive protobuf messages, which will be needed by Cardano's native scripts.
[no changelog]
2021-08-05 12:10:30 +02:00
matejcik
725d1bd961 docs(core): add changelog entry 2021-08-04 15:03:11 +02:00
matejcik
f78363ecdc refactor(core/ui): do not use parameter for styling in get_next_u2f_counter 2021-08-04 15:03:11 +02:00
Martin Milata
2a91052b02 refactor(core/ui): move altcoin and webauthn layouts to separate file
Also fix types.
2021-08-04 15:03:11 +02:00
Martin Milata
31052007ff refactor(core): enable mypy for apps.management 2021-08-04 15:03:11 +02:00
Martin Milata
e57027fc5c refactor(core): convert apps.management.change_wipe_code to layouts 2021-08-04 15:03:11 +02:00
Martin Milata
5a0ea3f146 refactor(core): convert apps.management.recovery_device to layouts 2021-08-04 15:03:11 +02:00
Martin Milata
312876ab67 refactor(core): convert apps.management.reset_device to layouts 2021-08-04 15:03:11 +02:00
Martin Milata
574dcbc8a3 refactor(core): convert apps.common to layouts 2021-08-04 15:03:11 +02:00
Martin Milata
875cc0cb1a refactor(core): convert apps.webauthn to layouts 2021-08-04 15:03:11 +02:00
matejcik
9ab1891b22 feat(common): more required fields in messages-management
[no changelog]
2021-08-04 15:03:11 +02:00
matejcik
5dcb51458f chore(core/ui): drop no longer used confirm_proposals_tezos 2021-07-26 14:48:35 +02:00
matejcik
fcb5f88318 fix(core/bitcoin): nicer UI for ownership proofs 2021-07-26 14:48:35 +02:00
matejcik
b30c9f7584 refactor(core/stellar): use semantically appropriate layouts everywhere 2021-07-26 14:48:35 +02:00
matejcik
16b87e4d50 fix(core/stellar): fail cleanly when asset code has wrong length 2021-07-26 14:48:35 +02:00
matejcik
ad6976e01f refactor(core): use confirm_blob instead of confirm_hex in apps 2021-07-26 14:48:35 +02:00
matejcik
dcc38f5267 refactor(core/ui): replace confirm_hex, clarify API
Truncation options were removed.

Subtitle distinct from description was removed.

confirm_hex was replaced by confirm_blob. You should use confirm_blob
when displaying data that is not human readable and can be broken at any
character.

Also it is now possible to pass bytes, which are automatically converted
to hex.

For displaying addresses, a separate confirm_address is introduced,
which simply delegates to confirm_blob, but has a more limited
signature.

Analogously, there is confirm_text for text data (should maybe be used
in many places where we currently use confirm_metadata) and a
specialized confirm_amount.
2021-07-26 14:48:35 +02:00
matejcik
6d15e90ed3 refactor(core/ui): reorganize line width constants 2021-07-26 14:48:35 +02:00
matejcik
cb882df100 feat(core): in debug mode, dump contents of received protobuf messages
[no changelog]
2021-07-23 11:46:24 +02:00
Martin Milata
8da978981e perf(core): share wire buffer between wire and debuglink
[no changelog]
2021-07-22 15:12:22 +02:00
Martin Milata
582e1318c4 feat(core/emulator): support protobuf messages in memory dumps
[no changelog]
2021-07-22 13:31:11 +02:00
Andrew Kozlik
334103b089 refactor(core/crypto): Optimize DER encoding of signatures. 2021-07-22 10:54:49 +02:00
Andrew Kozlik
2964f2e855 refactor(core/cardano): Clean up variable_length_encode(). 2021-07-22 10:54:49 +02:00
Andrew Kozlik
97ca1e3341 chore(core): Add offset parameter to cbor.decode(). 2021-07-22 10:54:49 +02:00
Andrew Kozlik
7811204ed5 refactor(core/bitcoin): Use HashWriter in address derivation. 2021-07-22 10:54:49 +02:00
Andrew Kozlik
2c003052f5 refactor(core/bitcoin): Change CoinInfo.script_hash to be a HashContext. 2021-07-22 10:54:49 +02:00
Andrew Kozlik
27e6f35f78 refactor(core/bitcoin): Change scripts to use writer semantics. 2021-07-22 10:54:49 +02:00
Andrew Kozlik
8538f55edc refactor(core/bitcoin): Use global static buffer for Tx serialization. 2021-07-22 10:54:49 +02:00
Martin Milata
412d06fdfe docs(core+legacy): use towncrier for generating CHANGELOG.md
core/embed/boardloader/CHANGELOG.md
core/embed/bootloader/CHANGELOG.md
core/embed/bootloader_ci/CHANGELOG.md
legacy/intermediate_fw/CHANGELOG.md
2021-07-21 14:27:20 +02:00
Pavol Rusnak
d35071d732 docs(core+legacy): update changelogs to new format 2021-07-21 14:27:20 +02:00
Andrew Kozlik
7277a49047 fix(common): Add new rpId to Binance's FIDO definition. 2021-07-21 13:19:16 +02:00
Pavol Rusnak
f740515c85 fix(core,crypto): add more test cases from bip-173 2021-07-21 11:20:11 +02:00
Martin Milata
ceaf4da617 fix(core): explicitly refresh display on T1
[no changelog]
2021-07-20 22:00:42 +02:00
matejcik
2b3c75c4de fix(core): properly respond to USB events while on a paginated screen 2021-07-20 12:59:26 +02:00
matejcik
cf15dce326 refactor(core/ethereum): improve API of the rlp module 2021-07-19 13:59:28 +02:00
Pavol Rusnak
9a9b0eb052
fix(core): rename fw_or_type to image_type in keyctl-proxy to avoid confusion
part 2

somehow I did miss 3 more occurences
2021-07-18 23:11:09 +02:00
Martin Milata
0d251fc01a Merge branch 'release/21.07' 2021-07-16 14:34:20 +02:00
Pavol Rusnak
ff21ea3d5c fix(core): rename fw_or_type to image_type in keyctl-proxy to avoid confusion 2021-07-16 14:23:43 +02:00
Pavol Rusnak
cd9c4e478d docs(core): fix typo in keyctl-proxy help 2021-07-16 14:23:43 +02:00
Pavol Rusnak
0a951b8a77 fix(core): don't use format strings in keyctl-proxy 2021-07-16 14:23:43 +02:00
Pavol Rusnak
3d69ca1b1b chore(vendor): update nanopb to 0.4.5 2021-07-14 17:34:12 +02:00
matejcik
b41d4c71f0 feat(core/emulator): JSON memory map dump
use `trezor.utils.mem_dump("somefile.json")` in a key place, then
`analyze.py src/somefile.json` to look at what is going on
2021-07-14 13:50:24 +02:00
matejcik
fe6c131b14 feat(core/emulator): build emulator with -DSTATIC=
This is perhaps a cleaner way to expose all relevant structures for
memory analysis.
2021-07-14 13:50:24 +02:00
Andrew Kozlik
24bb401638 fix(legacy,core): Fix operation source account encoding in Stellar. 2021-07-13 17:24:16 +02:00
matejcik
46e0530764 fix(tests): auto-swipe by using only ButtonRequest.pages
(cherry picked from commit f8bb90366a)
2021-07-12 00:39:58 +02:00
matejcik
8e6a647e89 fix(core): do not send ButtonRequest on every paging event
partial revert of 54db2291f2 from #1671

(cherry picked from commit 1e1963f1ee)
2021-07-12 00:39:54 +02:00
matejcik
f8bb90366a fix(tests): auto-swipe by using only ButtonRequest.pages 2021-07-09 21:01:07 +02:00
matejcik
1e1963f1ee fix(core): do not send ButtonRequest on every paging event
partial revert of 54db2291f2 from #1671
2021-07-09 15:00:29 +02:00
Martin Milata
81869fc4b0 chore(core): bump version to 2.4.2
[skip_ci]
2021-07-08 13:38:29 +02:00
Martin Milata
f06a57237b style(core): trezorhal/random_delays.c 2021-07-07 14:39:24 +02:00
Martin Milata
01c1ae426f docs: add security fixes to changelogs 2021-06-30 18:32:58 +02:00
Andrew Kozlik
c067618828 fix(common): Fix incorrect SLIP-44 coin type for Bgold and SmartCash Testnets. 2021-06-30 18:25:58 +02:00
Andrew Kozlik
3e9f8a32ac fix(core): Fix insufficient BIP-32 path checks.
- Disable testnet coins from accessing Bitcoin paths.

- Restrict BIP-45 paths to Bitcoin and coins with strong replay protection.
2021-06-30 18:25:58 +02:00
Martin Milata
e67b3ab214 docs(core): changelog for 2.4.1
[skip_ci]
2021-06-30 18:21:56 +02:00
Pavol Rusnak
8cfa5da1ce
docs: fix typos in comments
[skip_ci]
2021-06-30 15:41:55 +02:00
Ondřej Vejpustek
24200e7424 fixup! fix(legacy): make RDI work on T1 2021-06-24 17:34:24 +02:00
Ondrej Mikle
daa94ac941 fix(legacy): make RDI work on T1 2021-06-24 17:34:24 +02:00
gabrielkerekes
cc14ffb3e3 docs(core): add changelog entries for Cardano 2021-06-24 11:09:32 +02:00
gabrielkerekes
db657615f4 fix(cardano): use OrderedMap for output tokens and withdrawals 2021-06-24 08:24:47 +02:00
gabrielkerekes
4e5772662c fix(cardano): don't allow duplicate withdrawals 2021-06-24 08:24:42 +02:00
gabrielkerekes
3cd2182b69 feat(core): introduce OrderedMap into CBOR serialisation
Items of an OrderedMap are included in CBOR as they come without sorting them in any way.
2021-06-24 08:22:39 +02:00
Ondřej Vejpustek
b8b0ae09d9 fix(core): use unprivileged shutdown where needed 2021-06-23 16:40:45 +02:00
Ondřej Vejpustek
5984fd6ad7 feat(core): jump to unprivileged mode after shutdown 2021-06-23 16:40:45 +02:00
Ondřej Vejpustek
40b4f679f9 feat(core): implement wrapper for svc_shutdown 2021-06-23 16:40:45 +02:00
Ondřej Vejpustek
311288407e docs(core): document shutdown_privileged 2021-06-23 16:40:45 +02:00
Ondřej Vejpustek
4968d7da53 feat(core): implement svc shutdown 2021-06-23 16:40:45 +02:00
Ondřej Vejpustek
cca9d4b1c4 refactor(core): rename shutdown to shutdown_privileged 2021-06-23 16:40:45 +02:00
Ondřej Vejpustek
7686eb355a fix(core): fix import of random delays 2021-06-23 16:40:45 +02:00
matejcik
47c2be9f13 docs(core): add changelog entry for altcoin layouts 2021-06-23 11:51:18 +02:00
matejcik
015c47d564 chore(core): export PropertyType to fix mypy errors 2021-06-23 11:51:18 +02:00
matejcik
da4442bbd7 feat(core): auto-hexlify in confirm_properties 2021-06-23 11:51:18 +02:00
matejcik
41c5d773e2 refactor(core): put property key+value on the same screen 2021-06-23 11:51:18 +02:00
matejcik
3c4eb04346 feat(core/monero): cache Monero testing chain between runs 2021-06-23 11:51:18 +02:00
Martin Milata
178b575465 refactor(core): convert apps.nem to layouts 2021-06-23 11:51:18 +02:00
Martin Milata
dd3b689ded refactor(core): convert apps.eos to layouts 2021-06-23 11:51:18 +02:00