1
0
mirror of https://github.com/trezor/trezor-firmware.git synced 2024-11-30 03:18:20 +00:00
Commit Graph

689 Commits

Author SHA1 Message Date
Andrew Kozlik
567cbd0250 feat(legacy): Support Taproot in weight calculation. 2021-11-18 22:39:32 +01:00
Andrew Kozlik
e30ccabed3 feat(legacy): Show path warning for SignMessage. 2021-11-18 22:39:32 +01:00
Andrew Kozlik
98ad54b7ee chore(legacy): Disable Taproot where it's not supported. 2021-11-18 22:39:32 +01:00
Andrew Kozlik
fa4d74ad30 feat(legacy): Support Taproot signature verification. 2021-11-18 22:39:32 +01:00
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
Andrew Kozlik
05cbda4a7a fix(legacy): ignore compiler check for emulator
[no changelog]
2021-11-09 13:50:50 +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
Ondrej Mikle
5224ea4afe fix(legacy/bootloader): compress firmware verification public keys 2021-11-04 09:40:02 +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
0b077fea8a fix(core & legacy): explicit compiler versions 2021-09-27 15:42:29 +02:00
Ondrej Mikle
e982181148 style(core & legacy): buggy compiler checks 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
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
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
Pavol Rusnak
8531b35280
fix(legacy/intermediate_fw): don't erase the whole firmware sector (#1626)
Co-authored-by: Andrew Kozlik <42678794+andrewkozlik@users.noreply.github.com>
2021-05-22 12:15:56 +02:00
Pavol Rusnak
4f1274c9c4 fix(legacy): set STAY_IN_BOOTLOADER_FLAG before the reboot of intermediate_fw 2021-05-21 15:18:59 +02:00
Ondřej Vejpustek
34f5d508b0 refactor(legacy): move wait_random into separate file 2021-05-21 13:42:53 +02:00
Pavol Rusnak
0c46b79ebf fix(legacy): don't erase firmware and storage in intermediate firmware
if the storage has been already initialized
2021-05-13 17:59:39 +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
ee1fda3f7f docs(legacy/bootloader): use towncrier for generating CHANGELOG.md 2021-05-04 14:18:01 +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
Pavol Rusnak
40bd66ded4
chore(legacy): fix last commit 2021-04-23 15:51:11 +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
f606b71881
fix(legacy): update intermediate_fw version to 1.10.0 2021-04-21 18:49:09 +02:00
Pavol Rusnak
f93a8514e8
fix(legacy): update embedded bootloader hash 2021-04-21 16:00:09 +02:00
Pavol Rusnak
1f6fe62fd2
build(legacy): don't try to build intermediary_fw for emulator 2021-04-20 22:08:01 +02:00
Pavol Rusnak
c6dc708fe6
build(legacy): build bootloader and intermediary_fw in docker 2021-04-20 21:37:06 +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
01e7700333 fix(legacy): Flip bitmaps correctly. 2021-03-26 14:49:21 +01: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
mcudev
b50f1e0b89 openocd: separate stlink configs deprecated - now combined 2021-03-09 11:41:55 +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
cd62a79ec2
docs(legacy): fix bootloader changelog 2021-03-03 16:27:42 +01:00
Pavol Rusnak
4d2237b32b fix(legacy): refactor oledDrawBitmap and oledDrawBitmapFlip
into a single function
2021-03-03 16:23:53 +01:00
Pavol Rusnak
72691a93d5 fix(legacy): cleanup bitmaps, use 1-bit PNG, update generate script 2021-03-03 16:23:53 +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
10cb634a45
fix(legacy): change STAY_IN_BOOTLOADER_FLAG to 0x0FC35A96
to have hamming distance greater than 2 from zero
2021-03-03 16:18:31 +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
b625b74bc7
chore(legacy): fix version in bootloader readme 2021-03-03 12:06:59 +01:00
Ondrej Mikle
9787ebfd21
chore(legacy): update Changelogs 2021-03-03 12:06:58 +01:00
Ondrej Mikle
de09d27c44
chore(legacy): bump version of intermediate_fw to match bootloader 2021-03-03 12:06:58 +01:00
Ondrej Mikle
f9917e8d47
feat(legacy): add 'stay in bootloader' bootloader to firmware' 2021-03-03 12:06:58 +01:00
Ondrej Mikle
10be0230a5
chore(legacy): bump bootloader version 2021-03-03 12:06:58 +01:00
Pavol Rusnak
1a71dcd0c5
chore(legacy): unify {go,return}_to_bootloader => stay_in_bootloader 2021-03-03 12:06:57 +01:00
Ondrej Mikle
040d09397c
feat(legacy): grab 'go to bootloader flag' as soon as possible 2021-03-03 12:06:57 +01:00
Ondrej Mikle
1c38819bf9
chore(legacy): fix demo build 2021-03-03 12:06:57 +01:00
Ondrej Mikle
64f29d5697
chore(legacy): fix emulator build 2021-03-03 12:06:57 +01:00
Ondrej Mikle
90fe2047c8
chore(legacy): cstyle 2021-03-03 12:06:57 +01:00
Ondrej Mikle
37306350c0
feat(legacy): pushing 'go to bootloader flag' to bootloader main 2021-03-03 12:06:56 +01:00
Ondrej Mikle
0ad63ca245
feat(legacy): linker script go to bootloader absolute address definition 2021-03-03 12:06:56 +01:00
Ondrej Mikle
1699d33cfa
feat(legacy): reboot to bootloader supervisor call constants 2021-03-03 12:06:56 +01:00
Ondrej Mikle
65aa3b49d9
feat(legacy): add supervisor call for reboot to bootloader 2021-03-03 12:06:56 +01:00
Pavol Rusnak
90a50adc1e
fix(legacy): correctly import SDL2 (#1485) 2021-02-18 11:58:04 +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
Pavol Rusnak
105f203a1f fix(legacy): fix emulator build on darwin 2021-01-22 22:24:21 +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
b9c0b3969b
legacy+core: unify error codes in bootloaders (#1347) 2020-11-18 11:21:57 +01:00
Pavol Rusnak
50fdd183c2
ci: enable editorconfig checks, fix whitespace issues 2020-11-11 14:43:50 +01:00
Tomas Susanka
09a8d4229e feat(ci): introduce yamllint 2020-11-10 10:27:47 +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
Tomas Susanka
d72c2287fb
docs: add feature to 1.8.0 bootloader changelog (#1308) [skip ci] 2020-10-15 14:02:55 +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
Pavol Rusnak
c1dd07a2e4
core+legacy: update dates in changelogs 2020-09-02 15:36:36 +02:00
matejcik
e0583dd5cb all: use a specific error code for "invalid session" 2020-08-28 15:37:06 +02:00
matejcik
58621711d1 legacy: implement EndSession 2020-08-28 15:37:06 +02:00
Pavol Rusnak
8c2e20c26b
legacy/firmware: validate script type only in full-mode known_path_check (#1216)
(cherry picked from commit 07bd330d98)
2020-08-24 12:54:24 +02:00
Pavol Rusnak
07bd330d98
legacy/firmware: validate script type only in full-mode known_path_check (#1216) 2020-08-24 12:54:00 +02:00
Tomas Susanka
d080464cc5 core, legacy: bump versions (also in changelogs) 2020-08-24 09:31:49 +02:00
Andrew Kozlik
ae71735e62 legacy/signing: Ask user to confirm custom nLockTime. 2020-08-21 21:30:15 +02:00
Pavol Rusnak
146ee7af89 update changelogs 2020-08-21 21:30:15 +02:00
Pavol Rusnak
e2632b16dc legacy: show passphrase on device 2020-08-21 21:30:15 +02:00
Pavol Rusnak
ed989eb76a
legacy/intermediate_fw: fix optflags 2020-08-21 15:02:43 +02:00
Ondrej Mikle
ff3b10a329
legacy/intermediate_fw: Intermediate firmware for T1 (#1084)
* legacy/intermediate_fw: skeleton FW with RAM shim function

* legacy/intermediate_fw: reboot from RAM

* legacy/intermediate_fw: flash erase from RAM

* legacy/intermediate_fw: port flash erase body from cm3

* legacy/intermediate_fw: erase works with flash unlock

* legacy/intermediate_fw: wait for flash controller ready

* legacy/intermediate_fw: cleanup and add comments

* legacy/intermediate_fw: disable IRQ before reboot

* legacy/intermediate_fw: also erase storage

* legacy/intermediate_fw: style

* legacy/intermediate_fw: dialogs for update bootloader/erase FW

* legacy/intermediate_fw: style

* legacy/intermediate_fw: add bootloader replacement code

* legacy/intermediate_fw: add CI build script for intermediate FW

* legacy/intermediate_fw: call bootloader update

* legacy/intermediate_fw: add bootloader update dependency

* legacy/intermediate_fw: change setup() at start of main

* legacy/intermediate_fw: deduplicate code

* docs: table for MEMORY_PROTECT combinations that work on T1

* legacy/intermediate_fw: deduplicate code

* legacy/intermediate_fw: check if running in privileged mode

* legacy/intermediate_fw: style

* legacy/intermediate_fw: ChangeLog

* legacy/intermediate_fw: make version match latest bootloader included

* legacy/intermediate_fw: style
2020-08-21 14:58:13 +02:00
Pavol Rusnak
503ac8d801 legacy: allow spending coins from Bitcoin paths if the coin ...
has implemented strong replay protection via SIGHASH_FORKID
2020-08-21 11:49:03 +02:00
Pavol Rusnak
5359509483 legacy: refactor check_cointype into a separate function 2020-08-21 11:49:03 +02:00
Pavol Rusnak
fd87c62b68 common/defs: remove coins with no Trezor-compatible wallets 2020-08-19 19:29:18 +02:00
Pavol Rusnak
fd2ddbfb03
core+legacy: expand month names in changelogs 2020-08-05 23:07:11 +02:00
Pavol Rusnak
3fffa9ae68
common/defs: enable XVG 2020-08-05 12:10:52 +02:00
Pavol Rusnak
1eca04b7b2
legacy: update changelog 2020-08-05 12:02:04 +02:00
Pavol Rusnak
568da98199
legacy: refactor path_mismatched function and revert its logic 2020-08-05 11:54:33 +02:00
Andrew Kozlik
5c1f197602 common/protob: Add CancelAuthorization message. 2020-08-04 17:32:44 +02:00
Andrew Kozlik
2c30dd62fc common: Add DoPreauthorized message. 2020-08-04 17:32:44 +02:00
Andrew Kozlik
bbab13f6e7 common/protob: Add AuthorizeCoinJoin message. 2020-08-04 17:32:44 +02:00
Andrew Kozlik
7d07161efe common/fido: Unify application labeling between U2F and FIDO2. 2020-07-30 15:29:54 +02:00
Martin Milata
f4c9d0a040 legacy: rename TxInfo field overwintered to is_zcashlike
For v3 transaction format see:
https://zips.z.cash/zip-0202#transaction-format-version-3
2020-07-30 15:14:18 +02:00
Martin Milata
b8063e882b legacy: drop zcash v3 tx signing support 2020-07-30 15:14:18 +02:00
Andrew Kozlik
38074a4e59
legacy: print inverted question mark for nonprintable characters 2020-07-27 16:29:03 +02:00
Pavol Rusnak
89d701ed08
core+legacy: bump versions (also in changelogs) 2020-07-27 13:59:49 +02:00
Pavol Rusnak
e97413e8c5
legacy: convert old changelogs to new format 2020-07-27 12:13:43 +02:00
Pavol Rusnak
8dacad0782
core/bootloader: update protobuf definitions 2020-07-26 00:00:37 +02:00
Tomas Susanka
34bd57006f core, legacy: set version of the upcoming release in Changelog 2020-07-24 12:33:46 +02:00
Martin Milata
48e1dc957f legacy: raise error on auto-lock value out of range 2020-07-22 21:38:42 +02:00
Pavol Rusnak
52ae0bec71
legacy: add missing SDL2_image to Makefile 2020-07-10 16:31:50 +02:00
Pavol Rusnak
2b9613c8a0
legacy: add changelog entry 2020-07-09 15:54:42 +02:00
Andrew Kozlik
24bf352577 legacy: Support multiple change-outputs. 2020-07-09 15:51:23 +02:00
matejcik
2c8e5f527b all: rename changelogs to .md for highlighting 2020-07-08 10:43:40 +02:00
matejcik
a19a9a318a all: improve changelog formatting 2020-07-08 10:43:40 +02:00
matejcik
476cf2ee8f core, legacy: more changelog entries 2020-07-08 10:43:40 +02:00
Andrew Kozlik
533de50588 common/protob: Add GetOwnershipId message. 2020-07-03 11:17:19 +02:00
Andrew Kozlik
956ea9a94f common: Add ownership_proof field to TxInputType. 2020-07-03 11:17:19 +02:00
Andrew Kozlik
c723c78529 common/protob: Add GetOwnershipProof message. 2020-07-03 11:17:19 +02:00
Andrew Kozlik
cc655575c8 common: Add witness field to TxInputType. 2020-07-03 11:17:19 +02:00
Tomas Susanka
3a3e5739b0 core, legacy: update changelogs 2020-07-02 09:09:34 +00:00
Tomas Susanka
ca3dd2bfb9 common: skip deprecated fields during generation; deprecate overwintered field in Zcash 2020-06-30 16:02:21 +02:00
matejcik
e6e3043096 all: implement support for pre-overwinter prevtx (fixes #1030) 2020-06-30 15:19:31 +02:00
Tomas Susanka
e534ae3ad7 legacy, core: rename Features.pin_cached to unlocked and unify 2020-06-19 21:26:36 +02:00
Tomas Susanka
4239e8d551 legacy: set initialized in storage to false if no mnemonic is present 2020-06-19 09:06:30 +02:00
Tomas Susanka
f8b2f0bb7b changelogs: change also bootloader changelogs to the new format 2020-06-11 15:48:38 +00:00
Tomas Susanka
9979af3cd2 changelogs: start using more detailed changelog 2020-06-11 17:43:40 +02:00
Tomas Susanka
56fe5adcfc Merge branch 'release/2020-06' 2020-06-10 06:51:18 +00:00
Tomas Susanka
41966c60db legacy: initialized field in Features is true only if mnemonic is stored 2020-06-05 11:07:01 +02:00
matejcik
6f53ca0ac6 core: rework wait_layout()
The original wait_layout was unreliable, because there are no guarantees
re order of arrival of the respective events. Still, TT's event handling
is basically deterministic, so as long as the host sent its messages
close enough to each other, the order worked out.

This is no longer the case with the introduction of loop.spawn: TT's
behavior is still deterministic, but now ButtonAck is processed *before*
the corresponding wait_layout, so the waiting side waits forever.

In the new process, the host must first register to receive layout
events, and then receives all of them (so the number of calls to
wait_layout must match the number of layout changes).

DebugLinkWatchLayout message must be version-gated, because of an
unfortunate collection of bugs in previous versions wrt unknown message
handling; and this interests us because upgrade-tests are using
wait_layout feature.
2020-06-04 16:18:46 +02:00
matejcik
0600d87c8c common: rename ClearSession to LockDevice, introduce EndSession 2020-06-04 16:18:46 +02:00
Tomas Susanka
8859d103f4 core, legacy: bump versions 2020-06-03 15:39:25 +00:00
Tomas Susanka
e2629eb921 core, legacy: update Changelogs to reflect the release 2020-06-03 15:35:30 +00:00
Tomas Susanka
81553df02f legacy: add ToS dialog to recovery
(cherry picked from commit 28b22cef22)
2020-05-29 05:41:00 +00:00
Tomas Susanka
28b22cef22 legacy: add ToS dialog to recovery 2020-05-28 14:52:56 +02:00
Andrew Kozlik
e6745bce43 legacy/signing: Don't force nJoinSplit to be 0 for prev_tx in overwintered. This was dead code until we started validating prevout amounts. 2020-05-24 14:36:37 +00:00
Andrew Kozlik
386be6ff09 legacy/signing: Check inputs for amount field only when amount is required. 2020-05-24 14:36:37 +00:00
Andrew Kozlik
d34428eeb3 legacy/signing: add checks for version_group_id and branch_id fields 2020-05-24 14:36:37 +00:00
Andrew Kozlik
5aea566eb5 legacy/signing: validate prevout amount in all cases 2020-05-24 14:36:37 +00:00
Tomas Susanka
675ff459db core, legacy: update changelogs 2020-05-22 11:55:55 +00:00
Tomas Susanka
9dfc08ca61 core/bitcoin: drop decred_script_version 2020-05-21 19:14:39 +02:00
Ondřej Vejpustek
ef9eb7b7a4 legacy/stellar: change price format 2020-05-21 16:21:32 +02:00
Tomas Susanka
47f104bceb core, legacy: bump versions 2020-04-24 17:12:20 +00:00
Andrew Kozlik
2e29f7bba6 legacy/u2f: Add bogus app ID used by Firefox to indicate error in U2F. Figure out which error to display based on past U2F_AUTHENTICATE check-only requests on the same channel. 2020-04-24 10:38:41 +02:00
Pavol Rusnak
4b5a84eab7
core+legacy: update changelogs 2020-04-16 14:20:18 +02:00
Tomas Susanka
ae4f927a45 tests: test incorrect script type 2020-03-20 14:19:31 +00:00
Andrew Kozlik
175d708ebc legacy: Drop obsolete check for ANYONECANSPEND segwit outputs. 2020-03-20 14:19:31 +00:00
Tomas Susanka
d0d41c884e legacy: move script type checks to separate functions and unify with core 2020-03-20 14:19:31 +00:00
matejcik
da89a17ce5 all: add checks for prev_hash size 2020-03-20 14:19:31 +00:00
Tomas Susanka
64584e271c legacy, core: add and unify validation checks 2020-03-20 14:19:30 +00:00
Tomas Susanka
71a39bc0d7 legacy: check inputs' and outputs' script types 2020-03-20 14:19:30 +00:00
matejcik
adea7d6b35 all: make timestamp mandatory on timestamp-enabled coins 2020-03-20 14:19:07 +00:00
matejcik
e2035b4972 all: drop Horizen and BIP-115 support [NO BACKPORT] 2020-03-20 14:19:07 +00:00
matejcik
ed464f3d47 all: ensure expiry, timestamp and extra_data are blocked as appropriate 2020-03-20 14:18:27 +00:00
matejcik
27803ee8c1 all: drop overwintered field from transaction 2020-03-20 14:18:27 +00:00
matejcik
c9fd3f77a5 all: add overwintered field to coin specification 2020-03-20 14:18:27 +00:00
Pavol Rusnak
817b922850 all: add extra_data and timestamp fields to coin specification 2020-03-20 14:18:27 +00:00
Tomas Susanka
0903159d9b core, legacy: make sure OPRETURN ouput is not marked as change 2020-03-20 14:17:44 +00:00
Tomas Susanka
a513f7429b legacy: forbid unnecessary fields in OPRETURN output 2020-03-20 14:17:44 +00:00
Andrew Kozlik
b2dc5813fe legacy, tests: Check for invalid PIN. 2020-03-17 11:53:48 +01:00
Tomas Susanka
a63e6fc4ef core+legacy: update changelogs 2020-02-27 13:21:17 +00:00
Pavol Rusnak
ec199b19a9
legacy: use 2 page pagination to show xpubs in multisig get_address 2020-02-27 11:42:52 +00:00
Pavol Rusnak
5c01a9459c
legacy: show xpubs with multisig get_address 2020-02-24 17:36:50 +01:00
matejcik
b916072389 common: restore PassphraseAck.state 2020-02-24 15:15:09 +01:00
Tomas Susanka
f93f6e445b legacy: store multiple sessions/caches at the same time 2020-02-21 14:40:42 +01:00
matejcik
ddee77ecb6 core: add SD clearing via debuglink 2020-02-20 12:51:48 +01:00
Pavol Rusnak
d2bcccf0ae
Merge pull request #847 from trezor/prusnak/bootloader-restart
legacy/bootloader: soft reset after firmware upload
2020-02-19 18:20:49 +01:00
Pavol Rusnak
581e46ff87
Merge pull request #845 from trezor/prusnak/webusb-popup
Don't show WebUSB popup in firmware, in bootloader only if no firmware present
2020-02-19 18:18:01 +01:00
Pavol Rusnak
23ffc87236
legacy/bootloader: soft reset after firmware upload
originally submitted by @kedoubitcoin
2020-02-19 17:14:36 +00:00
Tomas Susanka
3d91a0643d legacy: add comment to startup.S 2020-02-19 14:51:29 +00:00
Tomas Susanka
cfa14dcca0 legacy: improve script/setup
I believe the files were not cleared properly and switching between
emulator and firmware builds may have been troublesome.

Two changes:

1. `git clean` cleans only in the working tree and subdirectories.
We need to clear the related projects as well.

2. `vendor/QR-Code-generator/c/qrcodegen.{o,d}` are not git ignored
and since we use the `X` flag they are not removed. Changing to `x`,
which also removes untracked files.
2020-02-18 13:39:24 +00:00
matejcik
e61b7d28e9 all: do not send state in PassphraseAck (not needed for compatibility) 2020-02-13 15:44:50 +01:00
matejcik
cdb7a7eb68
Merge pull request #840 from trezor/matejcik/sys-exit
wipe code activation tests
2020-02-13 15:11:33 +01:00
Pavol Rusnak
215020a592
legacy: show webusb popup only in bootloader and only if firmware is not installed 2020-02-12 21:01:06 +00:00
matejcik
0ec628ccd4 legacy: fix CALLBACK checker 2020-02-12 17:18:51 +01:00
matejcik
c14429c445 all: shut down emulator on error_shutdown 2020-02-12 13:31:31 +01:00
Tomas Susanka
2c0504ad1c
Merge pull request #803 from trezor/passphrase
Passphrase Redesign
2020-02-11 16:01:59 +01:00
matejcik
3d1fefe38a legacy: make sure nanopb_generator is ready 2020-02-11 13:19:37 +01:00
matejcik
05a1d6f771 core/debug: add "show arbitrary screen" capability, for easier prototyping 2020-02-11 11:53:34 +01:00
matejcik
ff702c7d7f common: add proper markers for deprecated messages 2020-02-10 15:38:26 +01:00
Pavol Rusnak
73ed2f3450
legacy: small nitpicks related to the new passphrase handling 2020-02-07 11:41:03 +00:00
Tomas Susanka
f21c13f0bd
legacy: remove redundant failure response 2020-02-07 11:41:01 +00:00
Tomas Susanka
c65b57affb
core, legacy: remove passphrase_cached 2020-02-07 11:41:00 +00:00
Tomas Susanka
1ae5813cab
legacy: bump version to 1.9.0 2020-02-07 11:41:00 +00:00
Tomas Susanka
a3f3d4fcdb
remove ping.passphrase/pin 2020-02-07 11:41:00 +00:00
Tomas Susanka
48fe192103
legacy: clear up passphrase usage 2020-02-07 11:41:00 +00:00
Tomas Susanka
b5d6aaf77c
tests: test PassphraseAck options 2020-02-07 11:41:00 +00:00
Tomas Susanka
041a95f738
legacy: new passphrase redesign draft 2020-02-07 11:40:59 +00:00