1
0
mirror of https://github.com/trezor/trezor-firmware.git synced 2024-11-22 23:48:12 +00:00
Commit Graph

446 Commits

Author SHA1 Message Date
Andrew Kozlik
7597eb25ab feat(legacy): Disable prevtx streaming for Taproot. 2021-11-18 22:39:32 +01:00
Andrew Kozlik
c9d1ff93f5 feat(legacy): Implement Taproot signing. 2021-11-18 22:39:32 +01:00
Andrew Kozlik
9f65165887 feat(legacy): Introduce SIGHASH_ALL_TAPROOT. 2021-11-18 22:39:32 +01:00
Andrew Kozlik
6fbbd14f8c refactor(legacy): Refactor compile_input_script_sig(). 2021-11-18 22:39:32 +01:00
Andrew Kozlik
9a051df127 chore(legacy): Support script_pubkey parameter for Bitcoin inputs. 2021-11-18 22:39:32 +01:00
Andrew Kozlik
aed79eec65 chore(legacy): Recognize Taproot script types. 2021-11-18 22:39:32 +01:00
Andrew Kozlik
6c9c727359 feat(legacy): Implement GetAddress for taproot. 2021-11-18 22:39:32 +01:00
Andrew Kozlik
34e8284331 feat(legacy): Implement the BIP-341 common signature message computation. 2021-11-18 22:39:32 +01:00
Andrew Kozlik
78a9ab8123 feat(legacy): Add BIP86 paths to coin_path_check(). 2021-11-18 22:39:32 +01:00
Ondřej Vejpustek
9b1c5df451 feat(legacy): use secp256k1-zkp where possible 2021-11-18 19:05:40 +01:00
Ondřej Vejpustek
a22e6a688f build(legacy): build with secp256k1-zkp library 2021-11-18 19:05:40 +01:00
Andrew Kozlik
0737deedc4 fix(legacy): Fix split_message() to correctly handle strings that are not null-terminated. 2021-11-10 17:35:57 +01:00
Andrew Kozlik
d8de95767d feat(legacy): Use fixed font in SignMessage and VerifyMessage. 2021-11-10 17:35:57 +01:00
Andrew Kozlik
c60305d8f0 feat(legacy): Implement pagination in SignMessage and VerifyMessage. 2021-11-10 17:35:57 +01:00
Andrew Kozlik
5e6e56ac4d feat(legacy): Show address confirmation in SignMessage. 2021-11-10 17:35:57 +01:00
Andrew Kozlik
4146ab7f9e feat(legacy): Support no_script_type option in SignMessage. 2021-11-10 17:35:57 +01:00
Martin Milata
a01516389a chore(vendor): update QR-code-generator 2021-11-05 14:09:11 +01:00
Jun Luo
62b649ef5d refactor(common & core & legacy): Stellar, rename StellarCreatePassiveOfferOp to StellarCreatePassiveSellOfferOp. 2021-11-04 13:16:29 +01:00
Jun Luo
d064aae3f9 feat(common & core & legacy): Stellar, add support for StellarPathPaymentStrictSendOp. 2021-11-04 13:16:29 +01:00
Jun Luo
1dcb8e4913 feat(common & core & legacy): Stellar, add support for StellarManageBuyOfferOp. 2021-11-04 13:16:29 +01:00
Jun Luo
3a5768c4bf refactor(common & core & legacy): Stellar, rename StellarManageOfferOp to StellarManageSellOfferOp and rename StellarPathPaymentOp to StellarPathPaymentStrictReceiveOp. 2021-11-04 13:16:29 +01:00
grdddj
9d643808c1 chore(legacy): fix build after adding EthereumSignTypedData [no changelog] 2021-11-02 14:27:01 +01:00
Andrew Kozlik
eb90efd914 chore(crypto,core,legacy): Add return code to hdnode_fill_public_key().
[no changelog]
2021-11-01 16:39:53 +01:00
Andrew Kozlik
34621a6b6d fix(crypto,core,legacy): Check private key validity when deriving public key.
[no changelog]
2021-11-01 16:39:53 +01:00
Martin Milata
fa3c6140a6 feat(legacy/ethereum): support access lists in EIP-1559 transactions 2021-10-26 17:20:20 +02:00
Martin Milata
076c5b9cbe feat(legacy/ethereum): support for EIP-1559 transactions 2021-10-26 17:20:20 +02:00
Pavol Rusnak
b2ff86ff3a
fix(common): drop unusable coins BELL and ZNY (#1872)
there are no wallets that support Trezor and these coins
2021-10-26 13:09:34 +02:00
Andrew Kozlik
13cbb59082 feat(common): Add script_pubkey field to TxInput message. 2021-10-18 19:58:56 +02:00
Andrew Kozlik
926365b64e fix(legacy): Fix compile-time check of maximum protobuf message size. 2021-10-18 16:31:40 +02:00
Pavol Rusnak
60bd59fbad feat(crypto): update segwit_addr to support Bech32m 2021-10-18 13:36:05 +02:00
Pavol Rusnak
ac4cb88184 feat(common): add taproot field to coin definitions
enable for Bitcoin Testnet and Bitcoin Regtest
2021-10-18 13:36:05 +02:00
Pavol Rusnak
2035ff4569 feat(legacy): add support for Taproot descriptors 2021-10-18 13:36:05 +02:00
amadejpapez
85ba7c12ba style(all): use f-strings for formatting
[no changelog]
2021-10-13 11:53:17 +02:00
Martin Milata
83a81da37d fix(legacy): don't mention decred in btconly fw 2021-10-07 15:26:49 +02:00
Ondrej Mikle
a85d2483ff chore(legacy & core): changelogs added 2021-09-27 15:42:29 +02:00
Ondrej Mikle
6ea4b7b211 fix(core & legacy): better styled compiler checks 2021-09-27 15:42:29 +02:00
Ondrej Mikle
6b849b1d4d fix(core & legacy): avoid accidental build with broken stack protector 2021-09-27 15:42:29 +02:00
matejcik
1dcfdebf7a feat(all): make Stellar timebounds required 2021-09-24 10:30:19 +02:00
matejcik
4b8f52cd2f refactor(legacy): update to new Stellar protobuf usage
[no changelog]
2021-09-24 10:30:19 +02:00
Martin Milata
53e2573691 docs(core): fix dates in changelog 2021-09-16 18:41:06 +02:00
Martin Milata
35a41fd957 Merge branch 'release/21.09' into master
Conflicts:
	core/src/apps/ethereum/tokens.py
2021-09-16 17:28:36 +02:00
matejcik
d318a29343 fix(legacy/ethereum): set correct limit for SignTxEIP1559.to 2021-09-10 15:09:03 +02:00
matejcik
2ce0c8f188 fix(legacy): make use of Ethereum required 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
Tomas Susanka
1f5800a966 chore(legacy): generate Changelog 2021-08-26 14:54:27 +02:00
Andrew Kozlik
dd65780610 fix(legacy): Stricter protobuf field handling in Stellar. 2021-08-24 13:46:08 +02:00
matejcik
7aed8d535d feat(all): re-enable Firo (fixes #1767) 2021-08-23 11:43:57 +02:00
matejcik
becf5dcc53 chore(legacy): remove Lisk 2021-08-19 10:25:41 +02:00
matejcik
a39870449f fix(legacy): recognize SignTXEIP1559 on legacy build
[no changelog]
2021-08-10 11:00:29 +02:00
matejcik
9ab1891b22 feat(common): more required fields in messages-management
[no changelog]
2021-08-04 15:03:11 +02:00
matejcik
33a9a14eab feat(legacy/emulator): avoid busy loop when waiting for messages 2021-08-04 10:58:15 +02:00
Pavol Rusnak
397a2ab18e feat(legacy): make sure that known_bootloader check contains the hash of our bundled bootloader 2021-07-23 13:46:06 +02:00
Andrew Kozlik
c1843f9f9f style(legacy): Remove nested conditional operators. 2021-07-22 10:54:49 +02:00
Andrew Kozlik
7277a49047 fix(common): Add new rpId to Binance's FIDO definition. 2021-07-21 13:19:16 +02:00
Martin Milata
0d251fc01a Merge branch 'release/21.07' 2021-07-16 14:34:20 +02:00
Andrew Kozlik
24bb401638 fix(legacy,core): Fix operation source account encoding in Stellar. 2021-07-13 17:24:16 +02:00
Martin Milata
478bc81b86 chore(legacy): bump version to 1.10.3 2021-07-08 13:38:09 +02:00
Martin Milata
01c1ae426f docs: add security fixes to changelogs 2021-06-30 18:32:58 +02:00
Andrew Kozlik
5fb0f9a6c5 feat(legacy): Distinguish between known path checks and script type checks in coin_path_check(). 2021-06-30 18:25:58 +02:00
Andrew Kozlik
b8cb531098 feat(legacy): Check presence of multisig parameters in coin_known_path_check() for consistency with core checks. 2021-06-30 18:25: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
28421594c9 fix(legacy): Use short-circuit evaluation in coin_known_path_check(). 2021-06-30 18:25:58 +02:00
Andrew Kozlik
9b0e980c44 fix(legacy): Don't allow unknown paths in GetAddress. 2021-06-30 18:25:58 +02:00
Andrew Kozlik
3884232f74 feat(legacy): Restrict path ranges for account, change and address index. 2021-06-30 18:25:58 +02:00
Andrew Kozlik
a6390e4b82 fix(legacy): Allow known non-standard paths in GetAddress and SignTx. 2021-06-30 18:25:58 +02:00
Andrew Kozlik
18f4a47173 fix(legacy): Disable spending testnet coins from Bitcoin paths. 2021-06-30 18:25:58 +02:00
Martin Milata
a2d2405a11 docs(legacy/firmware): changelog for 1.10.2 2021-06-30 18:17:09 +02:00
Pavol Rusnak
8cfa5da1ce
docs: fix typos in comments
[skip_ci]
2021-06-30 15:41:55 +02:00
Andrew Kozlik
9ebfa936c0 docs(legacy/firmware): Fix dates in changelog. 2021-06-11 20:22:42 +02:00
Martin Milata
362504dfcd docs(legacy/firmware): changelog for blake256 fix 2021-06-11 20:22:42 +02:00
matejcik
97f49cf336 fix(legacy): fix protobuf build [no changelog] 2021-06-08 09:55:19 +02:00
matejcik
2fac964a29 chore(common): disable Firo support 2021-06-04 11:38:18 +02:00
Pavol Rusnak
fce3640848 fix(common): remove dead coin Hatch 2021-06-04 10:10:26 +02:00
Martin Milata
3976ef7261 chore(legacy/firmware): bump version to 1.10.2
[skip_ci]
2021-06-02 12:50:22 +02:00
Martin Milata
5f2b7b231b docs(legacy/firmware): changelog for 1.10.1 2021-05-24 18:58:48 +02:00
Andrew Kozlik
2dbde040c4 feat(legacy): Add safety_checks setting. 2021-05-24 17:47:43 +02:00
Ondřej Vejpustek
34f5d508b0 refactor(legacy): move wait_random into separate file 2021-05-21 13:42:53 +02:00
Pavol Rusnak
e09a74a79e refactor(legacy): rename check_bootloader to check_and_replace_bootloader 2021-05-13 17:59:39 +02:00
Martin Milata
ca5d173071 docs(legacy/firmware): changelog for 1.10.0 2021-05-13 14:35:54 +02:00
Martin Milata
97aa0fb517 docs(legacy/firmware): use towncrier for generating CHANGELOG.md 2021-05-04 14:18:01 +02:00
Martin Milata
f58c1634c6 docs(core): use towncrier for generating CHANGELOG.md 2021-05-04 14:18:01 +02:00
Tomas Susanka
300c27abb8 chore(legacy): bump version to 1.10.1; add soft-reset to changelog 2021-04-23 15:47:17 +02:00
Tomas Susanka
e82aacbc7c docs(legacy/changelog): add note on bootloader 2021-04-22 09:41:58 +02:00
Pavol Rusnak
f93a8514e8
fix(legacy): update embedded bootloader hash 2021-04-21 16:00:09 +02:00
Pavol Rusnak
73ae44f500 fix(legacy): rebuild bundled bootloader (deterministically) 2021-04-19 18:32:47 +02:00
Pavol Rusnak
0d37824b01 fix(legacy): show dialog before rebooting to bootloader 2021-04-15 18:01:09 +02:00
Alexis Hernandez
bb1c638d3b legacy: Update op_return max size to 150 bytes
The goal is to allow Trezor 1 to create TPoS contracts for Stakenet.

Last year, Stakenet introduced a hard-fork [1] to change the way TPoS contracts
are created, instead of a custom signature method, now it works with the
output from the signMessage method, while this works for Trezor T, it doesn't
work for Trezor 1 due to the 80 bytes limit on the OP_RETURN output while
Stakenet allows up to 150 bytes [2], in a gitter discussion [3] we concluded that
the change should be fine.

The hard-fork was introduced because we couldn't got our TPoS contracts PR accepted [4],
the OP_RETURN still contains the same data, its just stored in a different way:
- The TPoS address, where the coins to stake are stored, and where rewards are received.
- The merchant address, where the merchant receives its commission.
- The contract commission.
- The TPoS collateral signature (this is what uses the signMessage now).

At last, there is an example transaction creating a TPoS contract [5].

[1]: https://github.com/X9Developers/XSN/pull/154
[2]: https://github.com/X9Developers/XSN/blob/master/src/script/standard.h#L34
[3]: https://gitter.im/trezor/community?at=6064c41e940f1d555e2ea670
[4]: https://github.com/trezor/trezor-firmware/pull/140
[5]: https://xsnexplorer.io/transactions/858feb31097501cf68d698cde104cf778ec51ff3668e943404b549a5dd2f5792
2021-04-06 10:15:59 +02:00
Andrew Kozlik
a755e99ccc feat(legacy): Display nLockTime in human-readable form. 2021-03-26 14:49:21 +01:00
Andrew Kozlik
66823e2893 chore(core,legacy): Bump FIX_VERSIONs due to upgrade to storage version 3. 2021-03-25 14:24:41 +01:00
Andrew Kozlik
cbb0d82999 feat(legacy): Support 50 digit PIN and wipe code. 2021-03-25 14:24:41 +01:00
matejcik
56ee7d33a9 chore: add cardano changelogs 2021-03-18 10:30:03 +01:00
Andrew Kozlik
97a3223663 fix(legacy): Skip unused messages in nanopb. 2021-03-17 22:34:26 +01:00
Andrew Kozlik
a36439a57f fix(legacy): Improve compile-time checks of message sizes.
Distinguish between the maximum size of a protobuf-encoded message
and the maximum size of a C struct containing a decoded message.
2021-03-17 22:34:26 +01:00
Andrew Kozlik
54fec3742f fix(legacy): Improve error handling in msg_read_tiny().
When a message was unexpected and small enough, it raised a
DataError, which contradicted the reasoning about ignoring
unexpected messages. Now all unexpected messages are ignored
regardless of their size.

When a message was expected, but too big, it was ignored, which
made debugging difficult. Now it raises a DataError.
2021-03-17 22:34:26 +01:00
Andrew Kozlik
d3183776fa chore(legacy): Add compile-time checks for msg_tiny sizes. 2021-03-17 22:34:26 +01:00
Andrew Kozlik
838b2c2c77 fix(legacy): Replace magic numbers with USB_PACKET_SIZE and MSG_HEADER_SIZE. 2021-03-17 22:34:26 +01:00
Andrew Kozlik
9aec5409b9 feat(legacy): Allow decreasing output amount in RBF transactions. 2021-03-17 15:15:50 +01:00
Pavol Rusnak
a36d0c0fbe
docs(changelog): add public key to ECDHSessionKey 2021-03-08 16:52:44 +01:00
Roman Zeyde
78ab0a6a2d feat(legacy): add public_key to ECDHSessionKey 2021-03-08 15:59:00 +01:00
Pavol Rusnak
97b43499e5
fix(legacy): remove executable bit from legacy/firmware/bootloader.dat 2021-03-05 18:33:59 +01:00
Pavol Rusnak
60a6b8211e
docs(changelog): next bootloader/firmware version will be 1.10.0 2021-03-05 18:32:23 +01:00
Pavol Rusnak
4a82d6c9d5 fix(legacy): recompile bundled bootloader 2021-03-03 16:36:18 +01:00
Pavol Rusnak
3b80e9f228 fix(legacy): store only half of the logo64, use flip to render both parts 2021-03-03 16:23:53 +01:00
Pavol Rusnak
4b0f41d41e
fix(common): change msg_id of RebootToBootloader from 804 to 87 2021-03-03 12:07:00 +01:00
Ondrej Mikle
d0b630abfc
chore(legacy): return code for reboot call 2021-03-03 12:06:59 +01:00
Ondrej Mikle
18a05d467e
chore(legacy): fake handling emulator reset to bootloader 2021-03-03 12:06:59 +01:00
Ondrej Mikle
2dccbf99d4
chore(legacy): add reset to bootloader protobuf message 2021-03-03 12:06:59 +01:00
Ondrej Mikle
f9917e8d47
feat(legacy): add 'stay in bootloader' bootloader to firmware' 2021-03-03 12:06:58 +01:00
matejcik
0964517fe7 fix(legacy): do not query presence of newly-required protobuf fields 2021-02-10 10:56:52 +01:00
Andrew Kozlik
79fad70b05 fix: Improve wording when showing multisig XPUBS. 2021-01-26 15:09:37 +01:00
Pavol Rusnak
0519d86451
chore(legacy): simplify data2hex 2021-01-22 22:41:11 +01:00
Tomas Susanka
1006c8a0f1 chore(core,legacy): change versions to 1.9.5 and 2.3.6
This reverts commit 92535dc090.
2021-01-22 15:42:55 +01:00
Pavol Rusnak
47e701f54c
docs(legacy): update changelog
[skip_ci]
2021-01-22 14:30:50 +01:00
Pavol Rusnak
92535dc090
chore(core,legacy): change versions back to 1.9.4 and 2.3.5
[skip_ci]
2021-01-22 14:23:11 +01:00
Pavol Rusnak
1d3166017d feat(legacy): implement amount_unit for SignTx 2021-01-22 14:07:36 +01:00
Pavol Rusnak
cb4c5a72bf legacy: implement GetAddress.ignore_xpub_magic 2021-01-21 23:46:29 +01:00
Pavol Rusnak
4ed714ba47 common/defs: add xpub_magic_multisig_segwit_{native,p2sh} fields to coins 2021-01-21 23:46:29 +01:00
Pavol Rusnak
1e6259a476
docs: update changelogs
[skip_ci]
2021-01-08 14:33:28 +01:00
Pavol Rusnak
4d45a68fd0 legacy: return root_fingerprint in PublicKey 2021-01-08 14:17:09 +01:00
Pavol Rusnak
2f8d687405 feat(legacy): implement GetPublicKey.ignore_xpub_magic behaviour 2021-01-08 14:17:09 +01:00
Pavol Rusnak
91e60036e0 fix(legacy): show xpub instead of pubkey in GetPublicKey dialog 2021-01-08 14:17:09 +01:00
Pavol Rusnak
9ba1c9aa50 docs: mention that nanopb was bumped to 0.4.4 in changelogs
[skip_ci]
2021-01-06 13:52:09 +01:00
Pavol Rusnak
6739e4e5e1 docs: push releases 1.9.4 and 2.3.5 to February 2021
[skip_ci]
2021-01-06 09:10:06 +01:00
Pavol Rusnak
af716d0843 fix(legacy): update typo (we lock device after 5 seconds, not 2 seconds) 2021-01-04 19:55:41 +01:00
Pavol Rusnak
93215ae3c7 style: reformat with clang-format 11 2021-01-04 14:40:16 +01:00
Pavol Rusnak
1d151ab4fe legacy: fix typo 2020-12-29 17:37:37 +01:00
Tomas Susanka
d38540ca7a chore(legacy): bump version to 1.9.5 2020-12-18 19:39:21 +01:00
Andrew Kozlik
d252539125 fix(legacy): Support negative amounts in layoutConfirmTx(). 2020-12-17 16:33:33 +01:00
Andrew Kozlik
389f14d6c4 feat(legacy): Implement replacement transaction signing flow. 2020-12-17 16:33:33 +01:00
Andrew Kozlik
4ad1fbc133 chore(legacy): Create TxInfo struct in Bitcoin signing. 2020-12-17 16:33:33 +01:00
Andrew Kozlik
a2e35fabce chore(legacy): Rename variables in signing to match the names in core. 2020-12-17 16:33:33 +01:00
Pavol Rusnak
d8dd2f64a9
legacy: update release date for 1.9.4 2020-11-26 16:51:44 +01:00
Martin Milata
bf524854cd chore(legacy): missing changelog entry, formatting 2020-11-20 14:47:08 +01:00
Martin Milata
480332b803 fix(legacy): increase minimum auto-lock delay to 1 minute 2020-11-20 13:57:51 +01:00
Pavol Rusnak
c6e78e525a
fix: remove PIVX (#1359) 2020-11-20 12:12:42 +01:00
Pavol Rusnak
50fdd183c2
ci: enable editorconfig checks, fix whitespace issues 2020-11-11 14:43:50 +01:00
Andrew Kozlik
443e0c101e chore(common): Add orig_hash and orig_index fields to TxInput and TxOutput. 2020-10-23 15:07:15 +02:00
Andrew Kozlik
c67ecb984b chore(crypto): Move XPUB_MAXLEN and ADDRESS_MAXLEN from modtrezorcrypto to bip32.h. 2020-10-13 13:13:49 +02:00
Martin Milata
7d8fbacba7 feat(legacy): add auto_lock_delay_ms to Features 2020-10-02 11:06:16 +02:00
Pavol Rusnak
71058eedd5 chore(vendor/nanopb): update nanopb from 0.4.1 to 0.4.3 2020-09-24 10:52:31 +02:00
matejcik
c9348709e8 fix(legacy/nem): use levy only if provided 2020-09-24 10:52:31 +02:00
matejcik
0eed360037 chore: make tx type names shorter
as suggested by @andrewkozlik:
TxAckInputType -> TxInput
TxAckOutputType -> TxOutput
TxAckPrevTxType -> PrevTx
TxAckPrevInputType -> PrevInput
TxAckPrevOutputType -> PrevOutput
2020-09-23 16:00:10 +02:00
matejcik
5debebefc8 chore(legacy): update code to handle protobuf changes correctly 2020-09-23 16:00:10 +02:00
Andrew Kozlik
5d745d5d04 common/protob: Add commitment_data to TxInputType. 2020-09-08 19:36:10 +02:00
Martin Milata
047fcffde1 legacy: replace confusing Version group ID error message 2020-09-04 15:26:24 +02:00
Andrew Kozlik
e9ed0851b3 legacy: Stream prev_tx after confirmation. 2020-09-04 14:36:39 +02:00
Tomas Susanka
b99b8b3df3 Merge remote-tracking branch 'origin/release/2020-09' 2020-09-03 13:17:23 +02:00