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

382 Commits

Author SHA1 Message Date
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