Martin Milata
11ffee0b45
refactor(core/rust/ui): use AsRef instead of Deref
...
[no changelog]
2022-12-12 16:00:42 +01:00
tychovrahe
387af03842
fix(core/rust): optimize keyboard behavior
...
[no changelog]
2022-12-09 22:35:39 +01:00
Martin Milata
fc3ee87c25
feat(core/bitcoin): SignMessage: whitelist T1 firmware signing address_n
...
[no changelog]
2022-12-09 15:43:11 +01:00
Martin Milata
b12de5d861
feat(core): CoSi collective signatures
2022-12-09 15:43:11 +01:00
Martin Milata
701d75d6d8
fix(core/rust/ui): handle very long scrollbars on Model T
...
[no changelog]
2022-12-07 16:47:30 +01:00
Martin Milata
4135b00708
refactor(core/rust): support for StrBuffer slicing
...
[no changelog]
2022-12-06 10:40:32 +01:00
Martin Milata
452857757a
feat(core/rust/ui): support ask_pagination flag in confirm_blob
...
[no changelog]
2022-12-06 00:26:25 +01:00
Martin Novak
58276a7443
feat(core/ethereum, legacy/ethereum): add support to Ledger Live legacy derivation path
2022-11-30 14:23:47 +01:00
tychovrahe
38548f02f2
feat(core/rust): special shape erase button
...
[no changelog]
2022-11-30 13:49:12 +01:00
Martin Milata
a61a46808e
fix(core/rust/ui): no hyphens when breaking monospace lines
...
[no changelog]
2022-11-29 21:03:06 +01:00
Martin Milata
3b92923caa
feat(core/rust/ui): on-the-fly conversion of bytes to hexadecimal representation
...
[no changelog]
2022-11-29 21:03:06 +01:00
tychovrahe
4c7060186a
fix(core): fix display blinking by increasing backlight pwm frequency
2022-11-24 13:22:30 +01:00
matejcik
ff2d1c3f1f
feat(core/ui): drop T1 UI ( fixes #2639 )
...
[no changelog]
2022-11-24 13:03:34 +01:00
matejcik
95d26fe04a
feat(core/ui): drop UI1 remnats
...
[no changelog]
2022-11-24 13:03:34 +01:00
grdddj
61277bd80a
feat(core/ui): implement webauthn layouts for UI2
...
[no changelog]
2022-11-24 13:03:34 +01:00
matejcik
e80712f4d9
chore(core/rust/ui): workaround for "re-enter wipe code"
...
[no changelog]
2022-11-24 13:03:34 +01:00
matejcik
4200539546
refactor(core/rust/ui): redesign Label to make use of TextLayout machinery
...
also replace LabelStyle with TextStyle
[no changelog]
2022-11-24 13:03:34 +01:00
matejcik
3f6ea00e02
feat(core/rust/ui): expose text_max_height and baseline
...
[no changelog]
2022-11-24 13:03:34 +01:00
matejcik
615c8a0e64
fix(core/embed): better clamping of coordinates
...
[no changelog]
2022-11-24 13:03:34 +01:00
matejcik
9708175d19
fix(core/rust): improve & document safety of slice operations
...
[no changelog]
2022-11-24 13:03:34 +01:00
tychovrahe
0d733d8e22
feat(core): change display type for model R
...
[no changelog]
2022-11-24 11:37:52 +01:00
tychovrahe
1bad41ddb0
fix(core/rust): fix success animation
...
[no changelog]
2022-11-21 22:20:35 +01:00
matejcik
d1126b85be
feat(rust): expose micropython lists as slices
...
[no changelog]
2022-11-21 18:15:48 +01:00
Martin Milata
58d0788986
fix(core/ui): show fee rate in confirm_total
...
[no changelog]
2022-11-21 15:59:48 +01:00
grdddj
bd6f3d5f46
chore(core/ui): delete altcoin.py file
2022-11-21 14:08:47 +01:00
grdddj
f48890afb3
chore(tests): make all the device tests work with UI2
2022-11-21 14:08:47 +01:00
grdddj
5187be91fe
chore(tests): fix click, upgrade and persistence tests for new UI
2022-11-21 14:08:47 +01:00
grdddj
2cbb9efeca
feat(core/ui): implement all layouts raising NotImplementedError
2022-11-21 14:08:47 +01:00
grdddj
ae525fed26
chore(core/ui): delete unused arguments to layouts
2022-11-21 14:08:47 +01:00
grdddj
d045e0089d
feat(core/ui): delete old UI code
2022-11-21 14:08:47 +01:00
Martin Milata
1a9f3c18dd
Merge branch 'release/22.11'
...
Conflicts:
common/defs/coins_details.json
core/src/apps/ethereum/networks.py
core/src/apps/ethereum/tokens.py
tests/ui_tests/fixtures.json
2022-11-16 18:33:31 +01:00
grdddj
1852059e87
feat(changelog): add changelog entry for micropython optimizations
2022-11-10 14:08:28 +01:00
grdddj
579ee06b6f
feat(tools): add tool for frozen_mpy bytecode analysis
2022-11-10 14:08:28 +01:00
grdddj
b95cb34e0c
feat(tools): add ignore file for upysize tool
2022-11-10 14:08:28 +01:00
grdddj
107c222631
chore(core): decrease TT_v2 UI size by 390 bytes
2022-11-10 14:08:28 +01:00
grdddj
bd7513f2df
chore(core): decrease crypto size by 60 bytes
2022-11-10 14:08:28 +01:00
grdddj
8bb73ffebe
chore(core): decrease storage size by 210 bytes
2022-11-10 14:08:28 +01:00
grdddj
55bb61d404
chore(core): decrease bitcoin size by 1740 bytes
2022-11-10 14:08:28 +01:00
grdddj
45b4b609db
chore(core): decrease monero size by 2630 bytes
2022-11-10 14:08:28 +01:00
grdddj
16f1d3da86
chore(core): decrease base and handlers by 300 bytes
2022-11-10 14:08:28 +01:00
grdddj
0c8528821f
chore(core): decrease cardano size by 2290 bytes
2022-11-10 14:08:28 +01:00
grdddj
26fd0de198
chore(core): decrease ethereum size by 17250 bytes
2022-11-10 14:08:28 +01:00
grdddj
0c3423b1c7
chore(core): decrease webauthn size by 1270 bytes
2022-11-10 14:08:28 +01:00
grdddj
3711fd0f19
chore(core): decrease common size by 5200 bytes
2022-11-10 14:08:28 +01:00
grdddj
5e7cc8b692
chore(core): decrease debug size by 240 bytes
2022-11-10 14:08:28 +01:00
grdddj
a29ea11ea2
chore(core): decrease management size by 1440 bytes
2022-11-10 14:08:28 +01:00
grdddj
48b4c5aaba
chore(core): decrease homescreen size by 280 bytes
2022-11-10 14:08:28 +01:00
grdddj
11fc2d36f7
chore(core): decrease misc size by 430 bytes
2022-11-10 14:08:28 +01:00
grdddj
d182ac5b53
chore(core): decrease nem size by 1550 bytes
2022-11-10 14:08:28 +01:00
grdddj
32125ef51f
chore(core): decrease zcash size by 300 bytes
2022-11-10 14:08:28 +01:00
grdddj
164be3ac8f
chore(core): decrease tezos size by 860 bytes
2022-11-10 14:08:28 +01:00
grdddj
80ab7f1c29
chore(core): decrease eos size by 1kb
2022-11-10 14:08:28 +01:00
grdddj
47b924cbec
chore(core): decrease binance size by 460 bytes
2022-11-10 14:08:28 +01:00
grdddj
f8f3f1bc55
chore(core): decrease ripple size by 1170 bytes
2022-11-10 14:08:28 +01:00
grdddj
9c0c3852f5
chore(core): decrease stellar size by 1400 bytes
2022-11-10 14:08:28 +01:00
grdddj
f25119e44d
chore(core): import trezor.messages in TYPE_CHECKING branch - saving 1kb
2022-11-10 14:08:28 +01:00
grdddj
d1732ae9bc
chore(core): delete unused variables
2022-11-10 14:08:28 +01:00
grdddj
756a97a95d
chore(core): delete unused functions
2022-11-10 14:08:28 +01:00
grdddj
52558c7b96
chore(core): use more const to decrease space
2022-11-10 14:08:28 +01:00
grdddj
49765830de
chore(core): add underscores to private constants to reduce code size
2022-11-10 14:08:28 +01:00
matejcik
f1c7129d06
feat(core/model_r): only refresh screen on display_refresh
...
Given that on Model R we have a frame buffer, let's not push out pixels
one by one.
[no changelog]
2022-11-08 15:03:21 +01:00
tychovrahe
7cc62c2f37
fix(core): fix layout flow for UI2
...
[no changelog]
2022-11-08 00:15:34 +01:00
Andrew Kozlik
3707f19aee
feat(core): Do not confirm coordinator identifier on Trezor.
...
[no changelog]
2022-11-07 18:40:35 +01:00
Martin Milata
4e800b6ffd
fix(core/tests/monero): docker command line
...
[no changelog]
2022-11-04 15:11:24 +01:00
tychovrahe
a89d139dc9
feat(core): increase clock frequency to 180 MHz
2022-11-04 15:10:55 +01:00
Martin Milata
e778ec4af4
chore(core/rust/ui): avoid nested Child as LayoutObj root
...
[no changelog]
2022-11-03 16:50:03 +01:00
Andrew Kozlik
2f03ace311
chore(common): Rename "unstable" protobuf tag to "experimental_message".
...
[no changelog]
(cherry picked from commit 3d645d609a
)
2022-11-02 14:59:22 +01:00
Andrew Kozlik
3d645d609a
chore(common): Rename "unstable" protobuf tag to "experimental_message".
...
[no changelog]
2022-11-02 14:58:01 +01:00
Martin Milata
2dcf09db34
chore(common): update chains and tokens
2022-11-02 12:03:22 +01:00
Martin Milata
eff8e08a9c
chore(common): update chains and tokens
2022-11-01 21:02:41 +01:00
matejcik
ce307c9484
feat(common): mark CoSi fields as required
...
[no changelog]
2022-11-01 14:56:00 +01:00
matejcik
0577847352
refactor(core/tools): update headertool
...
[no changelog]
2022-11-01 14:56:00 +01:00
matejcik
6905f9c486
refactor(core): remove remote signing functionality from headertool
...
[no changelog]
2022-11-01 14:56:00 +01:00
Martin Milata
bf7587574d
chore(core): bump version to 2.5.4
...
[skip_ci]
2022-11-01 14:03:31 +01:00
grdddj
47a749d683
chore(proto): remove default value from NEM payload
...
[no changelog]
2022-11-01 10:57:27 +01:00
Martin Milata
f38858617b
docs(core): changelog for 2.5.3
2022-10-31 23:17:18 +01:00
tychovrahe
6e36f479db
fix(core/rust): fix prompt rendering over warning in pin keyboard
...
[no changelog]
2022-10-31 22:23:26 +01:00
Andrew Kozlik
a1ffdcaa8d
chore(core): Add CoinJoin request public key.
...
[no changelog]
2022-10-31 16:27:26 +01:00
Andrew Kozlik
91e38ebd03
fix(core): Change precision of CoinJoin fee rate in unit tests.
...
[no changelog]
2022-10-31 16:27:26 +01:00
David Misiak
51a8e18c8d
feat(cardano): add preprod and preview testnets
2022-10-31 16:08:39 +01:00
David Misiak
ec83d0187f
chore(cardano): update ui tests, add changelog
2022-10-31 16:08:39 +01:00
David Misiak
3b289a4d2c
chore(cardano): update voting public key bech32 prefix
2022-10-31 16:08:39 +01:00
David Misiak
c36870defa
chore(cardano): rename Catalyst to governance
2022-10-31 16:08:39 +01:00
David Misiak
ab02f7a400
feat(cardano): add support for CIP36 Catalyst registration format
2022-10-31 16:08:39 +01:00
David Misiak
02dad0225b
refactor(cardano): shorten catalyst parameters variable name
2022-10-31 16:08:39 +01:00
Martin Milata
40a405abea
fix(core/rust/ui): remove extraneous Child wrappers
...
[no changelog]
2022-10-31 14:40:40 +01:00
Andrew Kozlik
c7fb908146
chore: Change precision of CoinJoin fee rate percentage from 8 to 6 decimal digits.
2022-10-27 17:37:48 +02:00
Andrew Kozlik
0d042421c3
fix(core): Improve rounding of CoinJoin fees by deferring division.
2022-10-27 17:37:48 +02:00
Andrew Kozlik
0bd9314bb9
chore(core): Do not check total mining fee in CoinJoin.
2022-10-27 17:37:48 +02:00
Andrew Kozlik
7a02be077f
tests(core): Implement CoinJoin requests in unit tests.
2022-10-27 17:37:48 +02:00
Andrew Kozlik
1df65d1a0c
feat(core): Implement CoinJoin requests.
2022-10-27 17:37:48 +02:00
Andrew Kozlik
d2df761067
fix(core): No need to derive script_pubkey for external inputs.
2022-10-27 17:37:48 +02:00
Andrew Kozlik
b3a383efac
chore(core): Move node derivation outside of input_derive_script().
2022-10-27 17:37:48 +02:00
Andrew Kozlik
afd900f9b1
feat(common): Add CoinJoin request message.
...
[no changelog]
2022-10-27 17:37:48 +02:00
Andrew Kozlik
3c8ba37eb5
feat(core): Include coin name in CoinJoin fee per vB format.
...
[no changelog]
2022-10-26 14:02:03 +02:00
Andrew Kozlik
318d31d111
refactor(core): Move _get_fee_rate_str() to common and optionally add coin shortcut.
...
[no changelog]
2022-10-26 14:02:03 +02:00
Andrew Kozlik
3594de8c7f
fix(core): Improve CoinJoin dialog wording.
...
[no changelog]
2022-10-26 14:02:03 +02:00
Andrew Kozlik
627ef9748f
feat(core): Remove coin name from CoinJoin confirmation dialog.
...
[no changelog]
2022-10-26 14:02:03 +02:00
Andrew Kozlik
b7f86ec158
feat(core): Improve CoinJoin busy screen.
...
[no changelog]
2022-10-26 14:02:03 +02:00
grdddj
fac4e2f157
chore(xmr): delete unused code
...
[no changelog]
2022-10-25 21:36:03 +02:00
Dusan Klinec
26711857e8
refactor(xmr): remove old BP code
2022-10-25 21:36:03 +02:00
grdddj
8668eba936
feat(core/ui): implement altcoin screens for UI2
...
[no changelog]
2022-10-24 13:38:31 +02:00
grdddj
be93dad604
chore(core/ui): unify UI2 layouts that raise when not confirmed
...
[no changelog]
2022-10-24 13:38:31 +02:00
grdddj
23a0a37a45
feat(core/rust/ui): support longer passphrases
...
[no changelog]
2022-10-22 17:01:09 +02:00
tychovrahe
da83d98539
refactor(core/rust): use icon blending for three-color icons
...
[no changelog]
2022-10-22 12:20:42 +02:00
Martin Milata
50259b1084
chore(core): remove OTF files of TT Hoves fonts
...
The fonts are commercially licensed unlike the rest of this repository.
They have been moved to a private repository.
[no changelog]
2022-10-22 01:39:53 +02:00
Martin Milata
18352acce8
feat(core/rust/ui): replace TT Hoves Medium with DemiBold style
...
[no changelog]
2022-10-22 01:39:53 +02:00
Martin Milata
be7f1c3f7e
fix(core/rust/ui): avoid flickering in hold to confirm
...
[no changelog]
2022-10-21 21:02:39 +02:00
Martin Milata
a7c3a07ef1
refactor(core/rust/ui): implement confirm_properties layout
...
[no changelog]
2022-10-21 21:02:39 +02:00
tychovrahe
86f2dacc6e
fix(core): re-introduce touch event filtering
...
[no changelog]
2022-10-21 14:24:10 +02:00
Martin Milata
f956966fda
build(core/rust): workaround failing build_unix_debug
...
[no changelog]
2022-10-21 13:05:31 +02:00
matejcik
ac6936d65d
fix(core/debug): separate buffer for debuglink to prevent BufferLock deadlocks
...
[no changelog]
2022-10-19 14:24:59 +02:00
tychovrahe
d0f1095842
fix(core): expose USB_CHECK for all models
...
[no changelog]
2022-10-19 11:31:03 +02:00
tychovrahe
d3469f8310
fix(core/rust): optimize pin keyboard rendering for TT UI2
...
[no changelog]
2022-10-18 10:17:36 +02:00
Andrew Kozlik
ee8c596b1a
refactor(core): Use a list of presigned inputs in Bitcoin signing.
...
Co-authored-by: Ondřej Vejpustek <ondrej.vejpustek@satoshilabs.com>
2022-10-17 15:20:46 +02:00
Andrew Kozlik
5dddb06e2b
refactor(core): Replace Bitcoin signing progress functions with a class.
2022-10-17 15:20:46 +02:00
Andrew Kozlik
d815a7d6de
chore(core): Use C implementation of Bech32 decode.
2022-10-17 15:20:46 +02:00
Andrew Kozlik
cc054050a5
feat(core): Improve Bitcoin signing progress display.
2022-10-17 15:20:46 +02:00
Andrew Kozlik
8ef5e5120a
feat(core): Verify ownership proofs before transaction approval in BTC signing.
2022-10-17 15:20:46 +02:00
Andrew Kozlik
5b453c88ed
feat(core): Add serialize option to SignTx.
2022-10-17 15:20:46 +02:00
Pavol Rusnak
029e47e1e8
chore(common/defs/fido): add proton
...
[no changelog]
2022-10-17 12:02:54 +02:00
Vladyslav Burzakovskyy
e7ff43272c
chore(common/defs/fido): add invity
...
[no changelog]
2022-10-14 16:28:51 +02:00
tychovrahe
c750113d57
fix(tests): fix rust tests with ASAN
...
[no changelog]
2022-10-13 10:51:43 +02:00
matejcik
cac98ad7d4
feat(core/rust): implement storage wrapper layer
...
[no changelog]
2022-10-13 09:18:20 +02:00
grdddj
0f549c02da
feat(core): add -r option to emu.py to allow for screen recording
...
[no changelog]
2022-10-12 13:44:53 +02:00
matejcik
7a09c21bf5
chore(core): fix import in key generator
2022-10-11 12:11:53 +02:00
Andrew Kozlik
0ba966b979
fix(core): Fix bug in SetBusy when running CI tests.
...
[no changelog]
2022-10-10 20:32:36 +02:00
Andrew Kozlik
5bbfd40df6
feat(core): Add set_int() and get_int() to storage cache.
...
[no changelog]
2022-10-10 20:32:36 +02:00
tychovrahe
11748b7641
fix(build): fix ASAN build with num_derive crate
...
[no changelog]
2022-10-10 13:49:50 +02:00
tychovrahe
99eaaae28e
build(core): redistribute content in flash
...
[no changelog]
2022-10-03 09:43:53 +02:00
Dusan Klinec
90771ebb59
fix(xmr): fix tx sending to an integrated address
2022-09-30 13:47:06 +02:00
tychovrahe
fb08536b6a
feat(core): icon and images using new format
2022-09-29 21:50:10 +02:00
tychovrahe
f7b9bb4ef8
feat(core/rust): use dma2d to improve rendering performance, implement text over image and icon over icon functions
2022-09-29 21:50:10 +02:00
tychovrahe
223d1b20fb
refactor(core): change fonts organization
2022-09-29 21:50:10 +02:00
tychovrahe
b9647d1296
fix(core): fix flashing usb disconnected error
...
[no changelog]
2022-09-26 13:31:04 +02:00
tychovrahe
a4d0ec3926
fix(core/rust): fix flickering in UI2 hold to confirm screen
...
[no changelog]
2022-09-22 10:03:56 +02:00
Martin Milata
7c11dec7f6
refactor(core/rust/ui): Font as repr(u8) enum
...
[no changelog]
2022-09-16 13:57:32 +02:00
Martin Milata
ef504d40fc
perf(core/rust/ui): use 16-bit coordinates
...
[no changelog]
2022-09-16 13:57:32 +02:00
Martin Novak
dd168d2893
feat(core,legacy): display only sat instead of sat BTC
2022-09-15 08:01:24 +02:00
tychovrahe
e3d5c178f1
feat(core): enable bus fault and usage fault handlers
...
[no changelog]
2022-09-13 15:04:40 +02:00
Martin Novak
a41cfadbf1
feat(core,legacy): Extend decimals of fee rate to 2 digits
2022-09-09 15:28:31 +02:00
Dusan Klinec
2fe40f70a6
fix(xmr): fixes #2453 , incorrect address display
2022-09-09 14:07:30 +02:00
Martin Milata
5a9c2a1363
feat(core/rust/ui): recovery layouts
...
[no changelog]
2022-09-07 16:46:47 +02:00
Martin Milata
5052594789
refactor(core/rust/ui): simplify button height computation
...
[no changelog]
2022-09-07 16:46:47 +02:00
Martin Milata
885ae2a943
refactor(core/rust/ui): add should_show_more
...
[no changelog]
2022-09-07 16:46:47 +02:00
Martin Milata
a5cff25209
fix(core/rust/ui): expose method for completely repainting layout
...
[no changelog]
2022-09-07 16:46:47 +02:00
Martin Milata
3b629a1ea4
refactor(core/rust/ui): layouts for SLIP-39 backups
...
[no changelog]
2022-09-07 16:46:47 +02:00
Martin Milata
4782afbae3
refactor(core/rust/ui): layouts for BIP-39 backups
...
[no changelog]
2022-09-07 16:46:47 +02:00
Martin Milata
4ff2c99f0a
refactor(core/rust/ui): add show_info and show_error
...
[no changelog]
2022-09-07 16:46:47 +02:00
Martin Milata
f0d5f9069a
refactor(core/rust/ui): text centering in Paragraphs
...
Only works for paragraphs, not formatted text.
[no changelog]
2022-09-07 16:46:47 +02:00
Martin Milata
247d9d267a
feat(core/rust/ui): explicit breaks for Paragraphs
...
[no changelog]
2022-09-07 16:46:47 +02:00
matejcik
7ba7eff118
refactor(core/rust): more explicit buffer semantics, StrBuffer::alloc
...
[no changelog]
2022-09-06 16:27:22 +02:00
Ondrej Mikle
77cdf4b43c
fix(core): consider device in USB suspend connected if it was configured before
...
[no changelog]
2022-09-05 09:36:32 +02:00
Tomas Krnak
031bac4a9b
feat(core): add support for Zcash unified addresses
2022-08-30 21:15:49 +02:00
Andrew Kozlik
054b5456d2
chore(core): Decrease ECMULT_GEN_PREC_BITS to save 32kB of flash space.
2022-08-30 15:53:44 +02:00
Andrew Kozlik
b5cb9cb035
feat(core): Allow Any type in is_type_of().
...
[no changelog]
2022-08-30 15:53:44 +02:00
Andrew Kozlik
77be3653b4
feat(core): Implement SLIP-0025 CoinJoin accounts.
2022-08-30 15:53:44 +02:00
Andrew Kozlik
9d89c3cb1b
feat(common): Add UnlockPath message.
...
[no changelog]
2022-08-30 15:53:44 +02:00
grdddj
c53177fe89
feat(core): show fee rate when replacing transaction
2022-08-30 10:20:54 +02:00
grdddj
d5b0650cc2
feat(tests): add possibility to run device/UI tests in parallel
2022-08-29 15:47:36 +02:00
tychovrahe
837988f61e
fix(core/rust): fix uzlib window allocation
...
[no changelog]
2022-08-29 10:11:45 +02:00
tychovrahe
dd823097b4
fix(core/rust): fix UI2 loader position
...
[no changelog]
2022-08-26 09:56:43 +02:00
Ondrej Mikle
72228e35cf
feat(core): show red error header when USB data not connected
2022-08-25 16:42:29 +02:00
Ondrej Mikle
a0287698d5
feat(core): show blue dot when USB data not connected
2022-08-25 16:42:29 +02:00
Martin Milata
005e4203a7
refactor(core/rust/ui): text theme struct
...
[no changelog]
2022-08-25 16:33:41 +02:00
matejcik
20ac679651
build(core/rust): enable panic_immediate_abort for firmware
2022-08-23 11:26:34 +02:00
Andrew Kozlik
d089fd3187
feat(core): Implement SetBusy message.
2022-08-22 18:15:29 +02:00
Andrew Kozlik
792dadfc4d
feat(common): Add SetBusy message.
...
[no changelog]
2022-08-22 18:15:29 +02:00
Pavol Rusnak
c962d3520b
Merge branch 'release/22.08'
2022-08-22 11:10:45 +02:00
matejcik
0b4ccf45fc
style(core/rust): less expensive conversion from known good utf8 string
2022-08-18 15:22:48 +02:00
matejcik
0fb66d3527
feat(core/rust): unwrap! macro to trigger nicer behavior than the built-in
2022-08-18 15:22:48 +02:00
matejcik
0b52ffb914
feat(core/rust): const geometry
...
Make sure all geometry functions are const. This seems semantically correct and achieves a small space saving.
2022-08-18 15:22:48 +02:00
tychovrahe
6cf92fd748
feat(core): Introduce stack overflow detection by moving stack to the start of RAM
2022-08-16 17:03:06 +02:00
tychovrahe
cc2bfd9c39
feat(core/rust): autoclosing popup for Model R with success animation
2022-08-12 13:30:24 +02:00
tychovrahe
1697be2de8
feat(core/rust): added success animation and rust icon rendering
2022-08-12 13:30:24 +02:00
tychovrahe
820182c6b0
feat(core/rust): expose uzlib functions to rust
2022-08-12 13:30:24 +02:00
tychovrahe
68598f00af
feat(core/rust): hold to confirm animation for Model R
2022-08-12 13:30:24 +02:00
tychovrahe
107e22c814
feat(core/rust): glyph and text rendering in rust
2022-08-12 13:30:24 +02:00
tychovrahe
af77816c2f
feat(core/rust): expose display offset handling to rust
2022-08-12 13:30:24 +02:00
tychovrahe
29a5b0a770
feat(core/rust): implement interpolate color and color table functions in rust
2022-08-12 13:30:24 +02:00
tychovrahe
7f2a995c54
refactor(core/rust): separate lerp and animations
2022-08-12 13:30:24 +02:00
tychovrahe
ce142ffe08
feat(core/rust): make ButtonPos hit function public to enable reuse
2022-08-12 13:30:24 +02:00
tychovrahe
f538547d5b
feat(core): optimize touch controller communication
2022-08-08 15:52:26 +02:00
matejcik
ef47c26272
chore(core,legacy): bump versions
...
[skip_ci]
[no changelog]
2022-08-03 13:10:05 +02:00
matejcik
0d87b55ba4
chore(docs): regenerate changelogs
2022-08-02 22:26:27 +02:00
Andrew Kozlik
fa5e7feda6
fix(crypto): Fix nonce bias in CoSi signing.
2022-08-02 20:38:04 +02:00
Andrew Kozlik
ad5a572b75
chore(common): Deprecate data field in CosiCommit message.
2022-08-02 20:38:04 +02:00
matejcik
114376f734
feat(core/strings): use thousands separator ( fixes #2394 )
2022-08-02 20:35:49 +02:00
matejcik
a6410693b3
Revert "feat(core): implement firmware dumping"
...
This reverts commit 37c61c1381
.
2022-08-02 17:12:07 +02:00
Andrew Kozlik
8ca785925d
fix(core,legacy): Fix tx_weight to tx_size conversion.
...
[no changelog]
2022-08-02 14:30:38 +02:00
matejcik
00095c5787
chore: update tokens & networks
2022-08-02 13:57:31 +02:00
Andrew Kozlik
90792eb438
fix(core): Fix Decred transaction weight calculation.
2022-08-01 15:10:34 +02:00
Andrew Kozlik
426eae4dfc
fix(core): Ensure correct order when verifying external inputs in Bitcoin signing.
2022-07-28 17:14:05 +02:00
TychoVrahe
a762e75fee
fix(core): reintroduce touch controller initialization without power down/up in firmware, fix model R firmware initialization
2022-07-26 15:09:43 +02:00
Ondrej Mikle
4d3d9f5d7e
docs(core): documentation on embedded C+Rust debug
2022-07-26 11:24:27 +02:00
Andrew Kozlik
421eec1d3b
feat(core): Add get_base_weight() to TxWeightCalculator.
...
[no changelog]
2022-07-20 18:23:34 +02:00
Andrew Kozlik
0ce2c079b0
feat(core): Account for minimum registrable output amount in CoinJoin checks.
...
[no changelog]
2022-07-20 18:23:34 +02:00
grdddj
38f7d32d94
feat(rust): add more details into panic handler
2022-07-20 12:46:01 +02:00
grdddj
9dc73427fb
feat(rust): add print! macro for logging into terminal
2022-07-20 12:46:01 +02:00
grdddj
8bfbe9da01
fix(ui): import type component inside if TYPE_CHECKING branch
2022-07-20 12:46:01 +02:00
gabrielkerekes
b9e2ca9a9d
chore(cardano): add changelog and update ui fixtures
2022-07-04 15:58:27 +02:00
gabrielkerekes
1a68650c43
feat(cardano): add support for hiding some details during tx signing
2022-07-04 15:58:27 +02:00
gabrielkerekes
2f9435570d
feat(cardano): add tx signing show details prompt
2022-07-04 15:58:27 +02:00
gabrielkerekes
11f8e81083
chore(cardano): update changelog
2022-07-04 15:58:27 +02:00
David Misiak
ba7fb2cb54
feat(cardano): allow required signers in more signing modes
2022-07-04 15:58:27 +02:00
David Misiak
4017434cc1
feat(cardano): add support for babbage features
2022-07-04 15:58:27 +02:00
David Misiak
11c4b25cb0
feat(cardano): allow datum hash in non-script outputs
2022-07-04 15:58:27 +02:00
David Misiak
f7d0507a65
feat(cardano): add support for chunked embedded CBOR
2022-07-04 15:58:27 +02:00
David Misiak
99a7c48e64
feat(cardano): add babbage data types
2022-07-04 15:58:27 +02:00
David Misiak
687a981d12
chore(cardano): update changelog
2022-07-04 15:58:27 +02:00
David Misiak
8a229edcb3
refactor(cardano): shorten identifiers in addresses, certs, aux data
2022-07-04 15:58:27 +02:00
David Misiak
50ad00a3c0
refactor(cardano): use module imports for addresses, certs, aux data
2022-07-04 15:58:27 +02:00
David Misiak
2753faa7b0
refactor(cardano): shorten identifiers
2022-07-04 15:58:27 +02:00
David Misiak
1ae6b68eaf
refactor(cardano): use module imports for messages, layout
2022-07-04 15:58:27 +02:00
David Misiak
0836e91faa
refactor(cardano): inline validation errors
2022-07-04 15:58:27 +02:00
David Misiak
2724d29968
refactor(cardano): introduce Signer and its subclasses
2022-07-04 15:58:27 +02:00
Christian Reitter
c5d22b4395
fix(core): correct range in error message
2022-07-01 14:50:19 +02:00
matejcik
8c3d3c6548
chore: bump black to 22.3
...
changes:
* exponent operator ** now allows no spaces around itself: https://github.com/psf/black/issues/538
* optional unicode marker u"" is no longer allowed
[no changelog]
2022-06-29 14:35:16 +02:00
matejcik
c7b6e8986e
fix(core/rust): fix overflow in tests by properly using 0-terminated strings
...
[no changelog]
2022-06-29 09:24:54 +02:00
matejcik
fce188fb96
fix(core/ui): fix char boundary bug in Rust layout
2022-06-28 18:01:02 +02:00
Martin Milata
ccf364f1da
refactor(core/ui): DebugLink swipe for rust layouts
...
[no changelog]
2022-06-28 18:01:02 +02:00
Martin Milata
c9ca7cd544
feat(core/rust/ui): bitcoin layouts
...
[no changelog]
2022-06-28 18:01:02 +02:00
Martin Milata
dd9a7d30e5
refactor(core/rust/ui): expose page count to python
...
[no changelog]
2022-06-28 18:01:02 +02:00
Martin Milata
ee1497b87e
refactor(core/rust/ui): hold-to-confirm for paged content
...
[no changelog]
2022-06-28 18:01:02 +02:00
Martin Milata
24a1f2e25e
refactor(core): remove unused parameter from display_qrcode
...
[no changelog]
2022-06-28 18:01:02 +02:00
Martin Milata
9f0ebf6d1a
refactor(core/rust/ui): arbitrary controls for Dialog component
...
[no changelog]
2022-06-28 18:01:02 +02:00
matejcik
62ab48d2e6
chore(core/monero): add changelog entry for HF15
2022-06-28 16:21:29 +02:00
Dusan Klinec
2d36c4e8f3
fix(core/monero): add missing view_tags to hf15
2022-06-28 16:21:29 +02:00
Andrew Kozlik
892f3e348d
fix(crypto): Remove public key from the ed25519 signing API.
...
[no changelog]
2022-06-27 18:59:08 +02:00
Pavol Rusnak
95daa2fda3
chore(common/defs): replace consensus_branch_id with overwintered bool flag
...
[no changelog]
2022-06-27 12:39:03 +02:00
mcudev
1ec62e9c86
common/defs/fido: update fastmail
2022-06-27 11:09:31 +02:00
tychovrahe
c33f92bd72
feat(core): add RGB LED driver for Model R
2022-06-22 09:28:31 +02:00
matejcik
2aa427a6e3
feat(core/rust): make Rust buildable without Micropython
...
Features `micropython` and `protobuf` are defined. Protobuf implies micropython
because our protobuf impl is pretty much _for_ micropython.
The respective subdirs are included only if the matching feature is defined.
util.rs is moved to micropython because it mostly concerns micropython interop
ResultExt, useful only for ui_debug, is moved to ui::util.
A new module `trezorhal::time` is provided. It mirrors functionality of
`micropython::time` via stmlib functions. The intended use is to always use
functions from `trezorhal::time`. The right micropython variants are used when
micropython is available, otherwise the pure stmlib versions are called.
ui::*::layout is conditional for micropython feature, because it only concerns
micropython layouts. If we want to reuse layouts defined there, we will need to
export them to not depend on Objs and Qstrs etc.
2022-06-16 13:08:07 +02:00
mcudev
7d37109eb8
common/defs/fido: add cloudflare
2022-06-14 15:12:51 +02:00
matejcik
37d5597965
feat(core/rust): direct write to display memory for better performance on TT hardware
2022-06-14 15:09:03 +02:00
matejcik
57b12c2807
feat(core): expose display pixeldata accessors from C
2022-06-14 15:09:03 +02:00
tychovrahe
61482d0795
feat(core/rust): expose raw pixel access to rust
2022-06-14 15:09:03 +02:00
Ondrej Mikle
7b7318c3aa
feat(core/boardloader): add fixed-address boardloader capablities field
2022-06-13 18:18:25 +02:00
Jan Pochyla
c3b82fd651
feat(core/rust): add trezorhal bindings
2022-06-08 14:42:04 +02:00
Dusan Klinec
1e9acf10fa
fix(xmr): remove inv8 optimization as in xmr master
2022-06-08 08:59:34 +02:00
dependabot[bot]
cc795407d0
build(deps): bump regex from 1.5.4 to 1.5.6 in /core/embed/rust/fuzz
...
Bumps [regex](https://github.com/rust-lang/regex ) from 1.5.4 to 1.5.6.
- [Release notes](https://github.com/rust-lang/regex/releases )
- [Changelog](https://github.com/rust-lang/regex/blob/master/CHANGELOG.md )
- [Commits](https://github.com/rust-lang/regex/compare/1.5.4...1.5.6 )
---
updated-dependencies:
- dependency-name: regex
dependency-type: indirect
...
Signed-off-by: dependabot[bot] <support@github.com>
2022-06-07 12:20:02 +02:00
dependabot[bot]
3c31d24f50
build(deps): bump regex from 1.5.4 to 1.5.6 in /core/embed/rust
...
Bumps [regex](https://github.com/rust-lang/regex ) from 1.5.4 to 1.5.6.
- [Release notes](https://github.com/rust-lang/regex/releases )
- [Changelog](https://github.com/rust-lang/regex/blob/master/CHANGELOG.md )
- [Commits](https://github.com/rust-lang/regex/compare/1.5.4...1.5.6 )
---
updated-dependencies:
- dependency-name: regex
dependency-type: indirect
...
Signed-off-by: dependabot[bot] <support@github.com>
2022-06-07 11:18:41 +02:00
Martin Novak
2663801108
perf(firmware): do not initialize touch controller in firmware
2022-06-02 10:30:53 +02:00
matejcik
c77066065e
chore(core/rust): bump cty to 0.2.2
...
this fixes signedness of char on Mac M1
2022-06-01 16:35:33 +02:00
matejcik
38a36a131f
chore: rename BIP39_WORDS to BIP39_WORD_COUNT
2022-06-01 16:35:33 +02:00
matejcik
dfa4b1d9a1
build: add bip39_english.o where appropriate
...
[no changelog]
2022-06-01 16:35:33 +02:00
matejcik
6319a5a9d0
feat(core/rust): BIP-39 wordlist operations in Rust
2022-06-01 16:35:33 +02:00
Pavol Rusnak
59f78d06b1
chore(common/defs/fido): add kraken
...
[no changelog]
2022-06-01 14:52:15 +02:00
matejcik
d3f24f6e17
feat(core): provisionally gate RebootToBootloader under experimental features
2022-06-01 14:50:59 +02:00
matejcik
e66ed079b0
feat(core): show confirmation dialog before rebooting
2022-06-01 14:50:59 +02:00
Ondrej Mikle
60db3e3e52
fix(core/bootloader): do not wait for touch if we know we are staying in bootloader
2022-06-01 14:50:59 +02:00
Ondrej Mikle
49462dc283
chore(core/bootloader): bump over unreleased version
2022-06-01 14:50:59 +02:00
Ondrej Mikle
c563c987e1
feat(core): jump back and stay in bootloader for TT via reverse SVC call trampoline
2022-06-01 14:50:59 +02:00
Pavol Rusnak
6589f020c6
fix(legacy,core): use sat/vB only for segwit and sat/B otherwise
...
[no changelog]
2022-05-30 10:51:47 +02:00
grdddj
5671bd037b
chore(core): add type hints to emu.py
2022-05-25 16:12:47 +02:00
Martin Novak
85f0d3a741
feat(core,legacy): show fee rate when signing transaction
2022-05-25 14:43:45 +02:00
David Misiak
a1eaa465aa
chore(cardano): remove legacy types
2022-05-23 11:08:52 +02:00
Ondřej Vejpustek
a198b390ff
fix(legacy,core): fix size of secp256k1-zkp context
...
[no changelog]
2022-05-20 17:29:07 +02:00
grdddj
14a0bc13ce
chore(docs): mention that .mako files are rendered by make templates
...
[no changelog]
2022-05-19 14:09:16 +02:00
grdddj
6dc4426151
feat(ui): setup homescreen and label for model R
...
[no changelog]
2022-05-19 14:09:16 +02:00
Martin Milata
c5f1bec474
Merge branch 'release/22.05'
2022-05-18 12:43:53 +02:00
matejcik
187ca8ad50
feat(core/rust): List::from_iter
...
[no changelog]
2022-05-17 15:56:26 +02:00
matejcik
b3b3e0efa4
tests(core/rust): ability to set up MicroPython env for testing
...
warning: super hacky!
[no changelog]
2022-05-17 15:56:26 +02:00
Ondřej Vejpustek
db0da196a8
chore(vendor): update secp256k1-zkp to latest
2022-05-16 16:23:18 +02:00
Martin Milata
c257a8a687
fix(core/ui/rust): painting of overlapping Maybe<T> components
...
[no changelog]
2022-05-16 13:54:43 +02:00
Martin Milata
b5dfda6a1d
fix(core/rust/ui): support longer PIN
...
[no changelog]
2022-05-16 13:54:43 +02:00
Martin Milata
31e63f688e
fix(core/rust/ui): implement warning for PIN dialog
...
[no changelog]
2022-05-16 13:54:43 +02:00
Martin Milata
3dcdffe203
refactor(core/rust/ui): emit event when component tree is initialized
...
[no changelog]
2022-05-16 13:54:43 +02:00
Martin Milata
7b5c618576
refactor(core/rust/ui): erase button clears PIN after 2s
...
[no changelog]
2022-05-16 13:54:43 +02:00
Martin Milata
e58736f746
feat(core/rust/ui): show PIN digits when touched
...
[no changelog]
2022-05-16 13:54:43 +02:00
Dusan Klinec
5e6582a3fe
feat(xmr): add support for HF15, BP+
2022-05-16 12:37:24 +02:00
Dusan Klinec
14e08ca9db
fix(xmr): remove 8192B from firmware image so it can fit to the memory
...
- old BP GI, HI constants are shortened to reduce firmware size
2022-05-16 12:37:24 +02:00
Dusan Klinec
25d32a8144
feat(xmr): implement bp+, refactor, code cleanup
...
- implement BulletProof plus verifier and prover
- use bulletproof exception to signalize proof generation failed and should be tried again. More robust, fixes bug that was not triggered yet (return tuple did not work properly in all situations)
- precomputed 2**i vector is removed as it can be easily computed
- BP code cleanup, minor optimizations, comments
2022-05-16 12:37:24 +02:00
matejcik
0c1eb0c30d
feat(core/tools): support @overloads in generated mocks
...
[no changelog]
2022-05-16 12:37:24 +02:00
Dusan Klinec
98ec1fb067
chore(core/monero): update test binary to newest version
...
[no changelog]
Co-authored-by: Martin Milata <martin@martinmilata.cz>
2022-05-16 12:37:24 +02:00
matejcik
221a7c9973
fix(core): drop support for __slots__ from obj_eq / obj_repr
...
__slots__ are unsupported in micropython
[no changelog]
2022-05-16 12:37:24 +02:00
Dusan Klinec
33c174491f
refactor(core/monero): Monero code cleanup
...
* remove support for HF12 and below
* remove MLSAG support
* clean up monero cryptography naming
* get rid of "optional first argument" pattern, in favor of mandatory argument that is allowed to be None
(and fix several bugs related to this feature)
Co-authored-by: grdddj <jiri.musil06@seznam.cz>
Co-authored-by: Martin Milata <martin@martinmilata.cz>
Co-authored-by: matejcik <ja@matejcik.cz>
2022-05-16 12:37:24 +02:00
matejcik
99c817bad4
fix(core/emulator): make sure SDL keyboard and quit events are always processed
...
fixes #973
2022-05-16 10:59:48 +02:00
grdddj
feb96c84b0
chore(core/rust): use clippy for all features
2022-05-16 10:49:04 +02:00
tychovrahe
55bfab3976
build(core): skip bootloader and boardloader compilation for Model 1
2022-05-10 16:49:23 +02:00
tychovrahe
8a092bde21
feat(core): add smaller loader for model R
2022-05-10 16:49:23 +02:00
tychovrahe
bd476769cc
feat(core): add reset state on display clear on model R. Added to rest of the models as noop.
2022-05-10 16:49:23 +02:00
tychovrahe
58041036f5
feat(core): set colors for monochromatic displays
2022-05-10 16:49:23 +02:00
tychovrahe
0e778cf16d
fix(core): fix display_icon function - incorrect boundaries checks
2022-05-10 16:49:23 +02:00
tychovrahe
f7a3aad9bd
feat(core): initial Model R display implementation with framebuffer
2022-05-10 16:49:23 +02:00
tychovrahe
936c84bac6
feat(core): added button support for Model R
2022-05-10 16:49:23 +02:00
grdddj
7804893179
feat(core/rust): create model_tr feature
...
Make event.rs shared among all features, under src/ui/event.rs.
[no changelog]
2022-05-06 11:44:52 +02:00
grdddj
12da7f301d
feat(core): allow for model R in firmware build
...
As model R will run on the same computational hardware as model T,
memory_R.ld is just a symbolic link to memory_T.ld.
[no changelog]
2022-05-06 11:44:52 +02:00
grdddj
6b5f578d02
feat(core): implement basic R emulator
...
Can be built by `TREZOR_MODEL=R make build_unix`, `make build_unix_frozen` does not work yet.
All the dialogs are not very pretty, they are just meant to work.
2022-05-06 11:44:52 +02:00
Martin Milata
692ea1415e
chore(core): bump version to 2.5.2
...
[skip_ci]
2022-05-04 12:09:14 +02:00
Martin Milata
85a26d2c95
docs(core): changelog for 2.5.1
2022-05-03 23:00:25 +02:00
Martin Milata
29bab9e8a4
chore(common): update chains and tokens
2022-05-03 23:00:25 +02:00
Andrew Kozlik
d16b44bad6
feat(core): Verify signatures of all original inputs in replacement transactions.
2022-05-03 22:14:40 +02:00
Andrew Kozlik
9bce153623
feat(core): Warn about unverified external inputs.
2022-05-03 22:14:40 +02:00
Andrew Kozlik
b1c6b42201
fix(core): Stricter Bitcoin transaction checks.
2022-05-03 22:14:40 +02:00
matejcik
e47bcee4a4
fix(core): streamline progress animation disabling
2022-05-03 19:00:04 +02:00
matejcik
37c61c1381
feat(core): implement firmware dumping
2022-05-03 19:00:04 +02:00
Andrew Kozlik
485ee6e209
feat(core): Show progress in GetFirmwareHash.
2022-05-03 19:00:04 +02:00
Andrew Kozlik
822b1c344f
feat(core): Return fw_vendor in firmware Features message.
2022-05-03 19:00:04 +02:00
Andrew Kozlik
1da446a8fb
refactor: Move flash_init to emulator main.
2022-05-03 19:00:04 +02:00
Andrew Kozlik
106ab65e21
feat(core): Implement GetFirmwareHash message.
2022-05-03 19:00:04 +02:00
Andrew Kozlik
6fe2d76dc1
feat(common): Add GetFirmwareHash message.
2022-05-03 19:00:04 +02:00
Tomas Krnak
e166aef820
test(core): add test for zip244
2022-05-02 16:07:31 +02:00
Tomas Krnak
9985a72c6a
feat!(core): support Zcash v5 transaction format
...
This implements:
- ZIP-225: Version 5 Transaction Format
- ZIP-244: Transaction Identifier Non-Malleability
BREAKING CHANGE: Zcash prevouts are not verified (as in Taproot). Zcash replacement transactions are not supported.
2022-05-02 16:07:31 +02:00
Tomas Krnak
670d11d627
feat(core): add tx
argument to create_sig_hasher
method
2022-05-02 16:07:31 +02:00
Pavol Rusnak
a411a964e1
fix(core): re-enable passing of TREZOR_EMULATOR_RASPI flag
...
to re-enable build of Emulator for Raspberry Pi with a display
related to commit daf0d77
which removed the functionality from the makefile
but we missed that there is now no way how to pass the flag to emit the #define
[no changelog]
2022-04-29 13:55:11 +02:00
Martin Milata
18c8304339
fix(core): leftover TREZOR_MODEL defines
...
[no changelog]
2022-04-28 16:47:22 +02:00
Pavol Rusnak
8f1d33d5f9
build(core,legacy): remove gcc, use cc instead of gcc
...
for firmware builds we still use arm-none-eabi-gcc via $(PREFIX)gcc
[no changelog]
2022-04-27 15:48:14 +02:00
TychoVrahe
7912a7d0d3
build(core,storage): fix conditional compilation for different Trezor models
...
* build(core,storage) - Fix conditional compilation for different trezor models
* build(core) - Rename MODEL_* macro to TREZOR_MODEL_*, remove the original TREZOR_MODEL macro (replaced by conditional compilation for QSTR generation)
* build(core) - fixed missing TREZOR_MODEL to TREZOR_MODEL_x changes
[no changelog]
2022-04-26 13:47:40 +02:00
Martin Milata
49dbc92782
fix(core/ui): add missing sources to build
...
[no changelog]
2022-04-19 17:35:15 +02:00
tychovrahe
0a735ead1e
build(core) - Move comments to separate lines to avoid spaces being added to the value
2022-04-13 17:26:14 +02:00
Ondřej Vejpustek
8356d0a572
fix(crypto): use zero auxiliary data in BIP340
2022-04-12 16:22:42 +02:00
matejcik
a9b46f0249
fix(core/rust): be more defensive about strings coming in from uPy
2022-04-11 16:49:58 +02:00
matejcik
8dd7a22f8b
refactor(core/rust): disallow creating byte buffers from &str
2022-04-11 16:49:58 +02:00
matejcik
32c3320f07
refactor(core/rust): pass around &str instead of [u8] in most places
2022-04-11 16:49:58 +02:00
matejcik
785dc7f4d7
feat(core/rust): introduce StrBuffer
...
it is a variant of Buffer specifically for accepting python `str`
2022-04-11 16:49:58 +02:00
Ondrej Mikle
2ced50ed16
fix(core): update JLink command line flashing parameters
...
[no changelog]
2022-04-11 12:26:01 +02:00
Martin Milata
1f612580f7
feat(core): enable UI tests for redesigned UI
...
[no changelog]
2022-04-07 17:58:41 +02:00
Martin Milata
2f987c3c5e
refactor(core/ui): remove dependencies on old layouts
...
[no changelog]
2022-04-07 17:58:41 +02:00
Martin Milata
2a3f0c16bd
ci(monero): update test executable, enable more tests
2022-04-07 16:28:12 +02:00
Martin Milata
38f4ab0983
feat(core/rust/ui): return Layout results as singleton objects
...
[no changelog]
2022-04-04 13:32:07 +02:00
Martin Milata
4cf917c7cb
build(core): fix TREZOR_EMULATOR_DEBUGGABLE
...
[no changelog]
2022-04-04 13:32:07 +02:00
Jan Pochyla
36829cfa8f
feat(core/rust): Add obj_module! macro
...
[no changelog]
Co-authored-by: Martin Milata <martin@martinmilata.cz>
2022-04-04 13:32:07 +02:00
Martin Milata
30ec1802f4
chore(core): bump version to 2.5.1
...
[skip_ci]
2022-03-30 21:57:54 +02:00
Pavol Rusnak
9a8e257619
fix(core): fix SDL2 include path
...
[no changelog]
2022-03-29 12:22:11 +02:00
Pavol Rusnak
334f7bbbe6
chore(common): defs cleanup
...
- drop Gamecredits - they became an ERC-20 token in 2020
- drop Nix - dead coin
- drop Polis - coin became a BEP-20 token and later Olympus network in 2021
2022-03-25 14:27:30 +01:00
matejcik
61718aff49
feat(tools): make pyright_tool more user-friendly
...
[no changelog]
* passed in directory respects absolute and relative paths instead of
working "from repository root"
* we don't require the enableTypeIgnoreComments to be set so both
`pyright` and `pyright_tool` can work with the same config at the same
time
* use click's magic functionality to deal with missing / unreadable /
unwriteable files
* read the error results via a pipe, do not write to filesystem unless
requested
* simplified logic regarding "test mode"/"dev mode"
* renamed `--log` to more typical `--verbose`
* use pathlib more extensively
2022-03-23 14:55:05 +01:00
Martin Milata
45276963c0
fix(core): fix timers for rust layouts
...
[no changelog]
2022-03-23 13:40:45 +01:00
Martin Milata
4eefaffac9
fix(core/rust/ui): recovery/passphrase keyboard fixes
...
[no changelog]
2022-03-23 13:40:45 +01:00
Martin Milata
efe25a6ab4
fix(core/rust/ui): pin keyboard tweaks
...
[no changelog]
2022-03-23 13:40:45 +01:00
Martin Milata
d51072b8c1
refactor(core/rust/ui): unhardcode screen size
...
[no changelog]
2022-03-23 13:40:45 +01:00
Jan Pochyla
801679bccf
chore(core/rust): Add dynamic place system
2022-03-22 16:08:50 +01:00
David Misiak
915781bfb1
chore(cardano): update changelog and ui tests
2022-03-18 14:32:54 +01:00
David Misiak
fec4fa2257
refator(cardano): validate map key order in HashBuilderDict
2022-03-18 14:32:54 +01:00
David Misiak
a36fc6cadc
fix(cardano): display tADA in testnet transactions
2022-03-18 14:32:54 +01:00
David Misiak
1f20c49536
feat(cardano): allow device-owned outputs in plutus txs
2022-03-18 14:32:54 +01:00
David Misiak
117c3c932f
fix(cardano): update testnet protocol magic
2022-03-18 14:32:54 +01:00
David Misiak
962f689e8a
feat(cardano): display tx id for plutus txs
2022-03-18 14:32:54 +01:00
David Misiak
f0e230642b
fix(cardano): display reward addresses for withdrawals
2022-03-18 14:32:54 +01:00
David Misiak
9f9535abb3
feat(cardano): add key hash stake credentials
2022-03-18 14:32:54 +01:00
David Misiak
2262602967
feat(cardano): add support for plutus transactions
2022-03-18 14:32:54 +01:00
David Misiak
1388912762
fix(cardano): add map key canonical order validation
2022-03-18 14:32:54 +01:00
David Misiak
143af80aea
fix(cardano): add input validation
2022-03-18 14:32:54 +01:00
David Misiak
48587d83fe
feat(cardano): add support for output datum hash and script data hash
2022-03-18 14:32:54 +01:00
David Misiak
2b3a53a6ae
feat(cardano): add support for network id in tx body
2022-03-18 14:32:54 +01:00
Pavol Rusnak
6052e71bbb
fix(core): fix build with FEATURE_FLAGS.SECP256K1_ZKP=False
...
[no changelog]
2022-03-18 12:03:41 +01:00
matejcik
cdca0bad9e
fix(core): do not drop cashaddr prefix for QR code
...
[no changelog]
2022-03-18 11:59:04 +01:00
Pavol Rusnak
edb87359eb
feat(core): headless emulator implies disabled animations
...
[no changelog]
2022-03-18 11:58:04 +01:00
Andrew Kozlik
9e346b05da
chore(core): Don't check fairness of mining fees in CoinJoin.
...
[no changelog]
2022-03-17 15:46:01 +01:00
Andrew Kozlik
94d1a49eea
chore(core): Rework checking of CoinJoin parameters.
...
[no changelog]
2022-03-17 15:46:01 +01:00
Andrew Kozlik
8be6689150
chore(common): Rework AuthorizeCoinJoin message parameters.
...
[no changelog]
2022-03-17 15:46:01 +01:00
Andrew Kozlik
556e8a147a
chore(core): Make CoinJoin checks more lenient.
...
[no changelog]
2022-03-17 15:46:01 +01:00
Andrew Kozlik
605e128ca0
chore(core): Simplify path warning UI.
2022-03-17 09:44:03 +01:00
Andrew Kozlik
94fa6d2515
feat(core): Guess weight of unverified external inputs.
2022-03-17 09:44:03 +01:00
Andrew Kozlik
43f1d67289
feat(core): Support unverified external inputs.
2022-03-17 09:44:03 +01:00
Andrew Kozlik
c9e6ca30c9
feat(core): Ensure input's script type and path match the scriptPubKey.
2022-03-17 09:44:03 +01:00
matejcik
0b9f7db742
fix(core): support structs as array elements ( fixes #2167 )
2022-03-10 13:04:54 +01:00
matejcik
4e2129e0a0
feat(core): automatically choose best QR encoding
2022-03-10 11:27:21 +01:00
grdddj
b9858f00c5
chore(tools): simplify build_protobuf file sources creation
2022-03-04 11:42:51 +01:00
grdddj
3d505874aa
feat(ci): create pyright tool and include it in CI
...
[no changelog]
2022-03-02 15:43:50 +01:00
matejcik
db9f89ed4e
chore(core): update Bitcoin testcases to use valid prevtxes
...
[no changelog]
Co-authored-by: grdddj <jiri.musil06@seznam.cz>
2022-02-28 15:45:29 +01:00
matejcik
bbf286e050
fix(core/debug): only wait for layout when _enabling_ watch_layout
2022-02-21 14:37:25 +01:00
matejcik
390411098a
build(core): enable ui_debug for non-frozen emulator
2022-02-18 11:27:23 +01:00
matejcik
59b5f48dc1
build(core): fix echo invocation for dash
2022-02-18 11:27:23 +01:00
Jan Pochyla
4c027a688c
chore(core/rust): Simplify LayoutObj
2022-02-18 11:27:23 +01:00
Jan Pochyla
2b6f1a4d5c
chore(core/rust): Use MultiTapKeyboard in passphrase
2022-02-17 15:17:11 +01:00
Jan Pochyla
3c337723b2
chore(core/rust): Add mnemonic keyboards
2022-02-17 15:17:11 +01:00
Pavol Rusnak
c6667fa0c2
feat(core): verify bip340 pubkeys used in p2tr addresses
...
Co-Authored-By: Ondřej Vejpustek <ondrej.vejpustek@satoshilabs.com>
2022-02-16 10:25:15 +01:00
Pavol Rusnak
b9bbd5fcd7
chore: update dependencies
...
[no changelog]
Co-Authored-By: Martin Milata <martin@martinmilata.cz>
2022-02-15 13:28:03 +01:00
Andrew Kozlik
d52a59e37b
feat(core): Show "signature is valid" dialog when VerifyMessage succeeds.
2022-02-11 15:36:00 +01:00
Andrew Kozlik
4d40d6dbfc
feat(core): Support Electrum signatures in VerifyMessage.
2022-02-11 15:36:00 +01:00
Andrew Kozlik
473657fd44
chore(core): Tweak validation of pre-authorized GetOwnershipProof.
...
In pre-authorized GetOwnershipProof requests ensure that the commitment data
starts with a length-prefixed name of the CoinJoin coordinator.
[no changelog]
2022-02-11 13:56:27 +01:00
Martin Milata
80655747d0
test(core/rust/ui): pagination unit test
...
[no changelog]
2022-02-10 14:57:42 +01:00
Martin Milata
ab0eef5de0
fix(core/rust/ui): adjust spacing for confirm_action
...
[no changelog]
2022-02-10 14:57:42 +01:00
Martin Milata
5378492ea9
chore(core/rust): wireframe rendering for ui debugging
...
[no changelog]
2022-02-10 14:57:42 +01:00
Martin Milata
10650af1fa
refactor(core/rust/ui): paragraphs breaking
...
Also fix corner case.
[no changelog]
2022-02-10 14:57:42 +01:00
Martin Milata
b5da6dc911
refactor(core/rust): geometry/display API improvements
...
[no changelog]
2022-02-10 14:57:42 +01:00
Martin Milata
f2b8822d76
refactor(core): improve build-time option for old/new UI
...
[no changelog]
2022-02-10 14:57:42 +01:00
Martin Milata
b64c69c3ff
feat(core/rust/ui): implement confirm_action
...
[no changelog]
2022-02-10 14:57:42 +01:00
Martin Milata
6d1227d839
feat(core/rust/ui): SwipePage: add buttons, auto-disable scrolling
...
[no changelog]
2022-02-10 14:57:42 +01:00
Martin Milata
695d80bf54
refactor(core/rust/ui): uPy buffer support for TT buttons
...
[no changelog]
2022-02-10 14:57:42 +01:00
Martin Milata
f167a2bef2
feat(core/rust/ui): add model T title bar
...
[no changelog]
2022-02-10 14:57:42 +01:00
Martin Milata
c7b33e2bc0
feat(core/rust/ui): add new icons
...
[no changelog]
2022-02-10 14:57:42 +01:00
Martin Milata
b46901bc8b
feat(core): add TT Hoves fonts, introduce medium variant
...
Co-authored-by: Pavol Rusnak <pavol@rusnak.io>
[no changelog]
2022-02-10 14:57:42 +01:00
matejcik
abc593d19a
tests: drop skip_ui support
2022-02-08 16:34:54 +01:00
Jan Pochyla
d979efc3ca
chore(core/rust): Try to simplify pagination a bit
...
[no changelog]
2022-02-08 15:40:37 +01:00
Martin Milata
8fb28e4af5
feat(core/rust): impl Paginate for Paragraphs
...
[no changelog]
2022-02-08 15:40:37 +01:00
Martin Milata
f29ccf6009
fix(core/rust): UI tweaks
...
[no changelog]
2022-02-08 15:40:37 +01:00
Martin Milata
48f29ee0b9
refactor(core/rust): return bounding box after laying out text
...
[no changelog]
2022-02-08 15:40:37 +01:00
Martin Milata
7271606ca2
feat(core): smaller debug square on T1
...
[no changelog]
2022-02-08 15:40:37 +01:00
Martin Milata
bea696dfc9
feat(core/rust): Paginated for T1
...
[no changelog]
2022-02-08 15:40:37 +01:00
Martin Milata
19b2358084
refactor(core/rust): T1 title bar
...
[no changelog]
2022-02-08 15:40:37 +01:00
Martin Milata
7f224ab36d
refactor(core/rust): model-agnostic Paginated
...
[no changelog]
2022-02-08 15:40:37 +01:00
matejcik
c236dfc814
style(core): type object
doesn't have __slots__
2022-02-08 14:27:23 +01:00
matejcik
a1c62098e9
fix(core/ethereum): implement hold-to-confirm for eip1559 transactions
2022-02-08 14:27:23 +01:00
grdddj
5d76144ef5
chore(common): always use resolve() when accessing parent of the Path
...
[no changelog]
2022-02-07 14:05:27 +01:00
Jan Pochyla
a3c79bf4f7
feat(core/rust): Add Paginated component
2022-02-01 10:51:02 +01:00
Jan Pochyla
a7a305d34d
fix(core/rust): Fix request_complete_repaint for components without any Child descendants
2022-02-01 10:51:02 +01:00
Jan Pochyla
129363f080
feat(core/rust): Add Trace to Paragraph[s], improve size calculation
2022-02-01 10:51:02 +01:00
Jan Pochyla
d2c8c66385
feat(core/rust): First shot at Paragraphs API
2022-02-01 10:51:02 +01:00
Jan Pochyla
8c47b94b79
feat(core/rust): Add experimental LinearLayout
2022-02-01 10:51:02 +01:00
Jan Pochyla
3dd3d7f87b
feat(core): Add HoldToConfirm example, improve Loader and animation frame support
2022-02-01 10:51:02 +01:00
Jan Pochyla
117a0bd518
feat(core): Add preliminary anim frame support
2022-02-01 10:51:02 +01:00
Jan Pochyla
be3e99b96d
feat(core): Add WiP Loader & generic Animation type
2022-02-01 10:51:02 +01:00
matejcik
87a7e94f5c
feat(core/rust): add saturating multiplication by f32 to Duration
2022-02-01 10:51:02 +01:00
Andrew Kozlik
83686d1be2
chore(core): Add HashContextInitable protocol class.
2022-01-31 18:00:22 +01:00
Andrew Kozlik
f17a435cdf
refactor(core): Rename bitcoin_varint to compact_size.
2022-01-31 18:00:22 +01:00
Andrew Kozlik
0e58218f5f
feat(core): Implement Bitcoin payment requests.
2022-01-31 18:00:22 +01:00
Andrew Kozlik
d0c3a6a2fa
chore(core): Add mac field to Address message.
...
[no changelog]
2022-01-31 18:00:22 +01:00
Andrew Kozlik
2ac3d0acb4
feat(core): Implement GetNonce command.
2022-01-31 18:00:22 +01:00
Andrew Kozlik
0959947a88
chore(common): Add GetNonce, Nonce and TxAckPaymentRequest message.
...
[no changelog]
2022-01-31 18:00:22 +01:00
Jan Pochyla
baffe8fdf3
chore(core/rust): Add int variant to tracing
2022-01-28 09:58:49 +01:00
Jan Pochyla
5b0686f09a
chore(core/rust): Forbid unsafe in components
...
To be expanded to other modules.
2022-01-28 09:58:49 +01:00
Jan Pochyla
12deedf3f6
chore(core/rust): Add backlight fading fn
2022-01-28 09:58:49 +01:00
Jan Pochyla
a54ca9cb05
chore(core/rust): Add micropython::time::sleep
2022-01-28 09:58:49 +01:00
Jan Pochyla
334a143b76
chore(core/rust): Split FormattedText into separate mod
2022-01-28 09:58:49 +01:00
Jan Pochyla
d5a74a8614
chore(core/rust): Rename Text to FormattedText
2022-01-28 09:58:49 +01:00
Jan Pochyla
39263144b7
chore(core): Various little improvements in Rust UI
2022-01-28 09:58:49 +01:00
Jan Pochyla
998210d569
feat(core): Add Instant and Duration types
2022-01-28 09:58:49 +01:00
grdddj
8524f4b6ba
feat(ui): InfoConfirm layout accepting DebugLinkDecision
...
[no changelog]
2022-01-27 13:15:04 +01:00
Andrew Kozlik
ba4f046d6f
feat(common): Add INFO button to DebugLinkDecision.
...
[no changelog]
2022-01-27 13:15:04 +01:00
Pavol Rusnak
37bd121394
chore(core/embed): check for negative values in trezor_get_uint
...
[no changelog]
2022-01-26 16:22:50 +01:00
Martin Milata
98b1159b0b
Merge branch 'release/22.01'
...
Conflicts:
core/src/apps/ethereum/tokens.py
2022-01-19 15:24:51 +01:00
Andrew Kozlik
ebc07fd6db
ci: Suppress libSDL memory leaks.
...
[no changelog]
2022-01-19 15:22:03 +01:00
Andrew Kozlik
49ae8848db
fix(core): Fix memory leaks in emulator.
...
[no changelog]
2022-01-19 15:22:03 +01:00
Andrew Kozlik
39b64b8569
fix(core): Fix stack-use-after-scope in display.c.
...
[no changelog]
2022-01-19 15:22:03 +01:00
Martin Milata
e3541997f0
ci(core): run nightly device tests with AddressSanitizer
...
[no changelog]
2022-01-19 15:22:03 +01:00
Pavol Rusnak
4a71d15b1d
chore(core/embed): refactor trezor_obj_get_uint64 into trezorobj.h
...
[no changelog]
2022-01-19 11:16:47 +01:00
Alois Klink
5c4703c9bb
fix(core,legacy): Fix domain-only ethTypedData
...
When doing Ethereum signTypedData, and the primaryType="EIP712Domain",
we completely ignore the "message" part and only sign the domain.
According to the community, this is technically allowed by the spec,
and may be used by ETH smart contracts to save on gas.
Test case generated by @MetaMask/eth-sig-util's library.
See: https://ethereum-magicians.org/t/eip-712-standards-clarification-primarytype-as-domaintype/3286
2022-01-14 14:22:46 +01:00
Andrew Kozlik
cdf2129b73
fix(core): Fix proof of ownership sighash computation.
2022-01-10 11:14:36 +01:00
Andrew Kozlik
88a08e3512
chore(core): Increase maximum CoinJoin coordinator name length to 36 (2 lines).
2022-01-10 11:14:36 +01:00
matejcik
e20879189f
style(core): remove old-style annotations (Set, Tuple, Union)
2022-01-07 21:41:17 +01:00
matejcik
5e1dce35b3
style(core): remove unused type:ignore comments
2022-01-07 21:41:17 +01:00
matejcik
80f6463799
style(core): define obj_eq and obj_repr so that they pass type-check
2022-01-07 21:41:17 +01:00
matejcik
456959545c
docs(core): add changelog for type-checking
2022-01-07 21:41:17 +01:00
matejcik
228c4db646
style(core): improve types in rlp.py
2022-01-07 21:41:17 +01:00
matejcik
8d8cfd6692
build: fully replace mypy with pyright
...
[no changelog]
2022-01-07 21:41:17 +01:00
matejcik
45787307ca
style(core): support AnyStr in all hash function arguments
2022-01-07 21:41:17 +01:00
matejcik
dec89ea59e
refactor(core): convert if/elif chains to if-chains
...
This way AST parsers won't get stack exceeded (because an elif counts as
an else { if {}} to an AST parser apparently?) and so automated tools
will like tokens.py and friends.
2022-01-07 21:41:17 +01:00
matejcik
c3f2db3be5
refactor(core): improve type signature of bech32.convertbits
2022-01-07 21:41:17 +01:00
grdddj
9fc5bb546b
style(core): full pyright-based type-checking
...
Changes many fields to required -- as far as we were able to figure out,
signing would fail if these fields aren't provided anyway, so this
should not pose a compatibility problem.
Co-authored-by: matejcik <ja@matejcik.cz>
2022-01-07 21:41:17 +01:00
matejcik
9c5945a888
chore(core): add fake typing module (not included in build)
2022-01-07 21:41:17 +01:00
matejcik
1bfaec10e9
build(core): rewrite build_mocks with pathlib, add symlinks to ../mocks
2022-01-07 21:41:17 +01:00
matejcik
bda1fa9912
build(core): exclude all "from typing" imports from build
2022-01-07 21:41:17 +01:00
FujiCoin
33c243be8d
feat(common): enable taproot for Fujicoin, fix xpub versions
...
* fix fujicoin params
* add test_fujicoin/test_send_p2tr
* fix test
* fix serialized_tx.hex()
* Recreated based on a new transaction
* make gen, some fixes
Co-authored-by: matejcik <ja@matejcik.cz>
2022-01-05 12:43:34 +01:00
Pavol Rusnak
b0e0280465
chore: drop obsolete fw_vendor_keys field from Features
...
[no changelog]
2022-01-03 14:23:58 +01:00
Pavol Rusnak
35d40cc164
fix(core): change logic of vendor header comparison
...
Previously we checked whether the current vendor header and
the new vendor header are the same by comparing the embedded keyset.
What originally looked like a good idea is not that good, because
this disallows us from ever changing the vendor header signing keys
without causing erasure of the storage during the version update.
This commit fixes that by changing the logic to comparing just the
vendor string.
Change of function names is purely cosmetic:
* vendor_keys_hash -> vendor_header_hash
* check_vendor_keys_lock -> check_vendor_header_lock
2022-01-03 14:23:58 +01:00
Martin Milata
3f12742669
chore(common): update coin support status
2021-12-28 12:42:43 +01:00
Martin Milata
c0dbcf37e4
chore(common): update chains and tokens
2021-12-28 12:42:43 +01:00
gruve-p
3ab036a1d1
feat(common): enable Taproot on Groestlcoin
...
Add additional device tests for GRS
Add P2TR GetAddress for GRS mainnet and testnet
Add SignTX spending taproot UTXO (The resulting transaction from the SignTx device test was successfully mined on Testnet.)
2021-12-20 22:49:36 +01:00
Alisina Bahadori
77ab865386
feat(legacy): Implement EIP-712 signing
2021-12-19 20:36:30 +01:00
Carlosbogo
dd1240ef53
docs: update links in changelogs ( #2013 )
...
fixes #2011
2021-12-17 14:53:21 +01:00
Pavol Rusnak
56f0e2c5de
fix(core): add missing include
...
we were using `FILE` and `fprintf` without including the stdio header
2021-12-14 19:57:21 +01:00
Pavol Rusnak
30a77a76bc
chore(legacy): rename MEMORY_PROTECT flag to PRODUCTION to match core naming ( #2003 )
2021-12-12 15:45:10 +01:00
Martin Milata
ff5f965c44
Merge branch 'release/21.12'
...
Conflicts:
tests/device_tests/test_msg_signtx_invalid_path.py
tests/ui_tests/fixtures.json
2021-12-08 14:53:56 +01:00
Martin Milata
1734957685
build(core): update rust edition to 2021
...
[no changelog]
2021-12-07 17:12:43 +01:00
Andrew Kozlik
ef5994d9f3
feat(core): Support ownership proofs for Taproot addresses.
2021-12-06 18:23:48 +01:00
Martin Milata
e9fd1fc49f
build(core/emulator): build with -fPIE
...
Otherwise "cargo test" fails with errors like:
Compiling trezor_lib v0.1.0 (embed/rust)
error: linking with `cc` failed: exit status: 1
|
= note: ld: build/unix/rust/debug/build/trezor_lib-a046f8e3db087595/out/libcore_lib.a(obj.o): relocation R_X86_64_32S against `.rodata.types.1' can not be used when making a PIE object; recompile with -fPIE
2021-12-06 16:25:59 +01:00
Martin Milata
38c526719c
chore(core): bump version to 2.4.4
...
[skip_ci]
2021-12-01 14:45:47 +01:00
matejcik
949dfe1f5d
docs(core/cardano): add derivation scheme docs
2021-11-29 13:34:01 +01:00
Ondřej Vejpustek
f664734060
test(core): add unit tests for bip340
2021-11-26 20:16:59 +01:00
Ondřej Vejpustek
046beb4fde
test(core): fix secp256k1 unit tests
2021-11-26 20:16:59 +01:00
Martin Milata
7cc9f13605
refactor(core/rust): allow model_t1 and model_tt at once
...
[no changelog]
2021-11-24 15:36:34 +01:00
Martin Milata
52f719ad81
ci: add core unit test t1
...
[no changelog]
2021-11-24 15:36:34 +01:00
Martin Milata
afd7cb3b01
feat(core/rust): add example layout for T1
...
[no changelog]
2021-11-24 15:36:34 +01:00
Martin Milata
4d60c10330
feat(core/rust): add support for T1 UI
...
[no changelog]
2021-11-24 15:36:34 +01:00
Martin Milata
3c49ef2f62
feat(core/rust): exposing vararg functions to uPy
...
[no changelog]
2021-11-24 15:36:34 +01:00
Ondrej Mikle
219e08d81e
build(core): keep bootloader image even for non-production builds
...
[no changelog]
2021-11-23 16:29:38 +01:00
Martin Milata
595b14254c
docs(core): changelog for 2.4.3
2021-11-23 14:57:25 +01:00
Andrew Kozlik
9052133fca
fix(core): Ensure user is warned about non-standard paths.
2021-11-23 14:57:25 +01:00
Martin Milata
aa3784f726
build(core): place secp256k1-zkp in FLASH2 to make space for bootloader
...
[no changelog]
2021-11-23 14:51:11 +01:00
Martin Milata
d656f88572
style(all): reformat with clang-format 13.0
2021-11-19 10:54:31 +01:00
Ondřej Vejpustek
ad38d8e324
refactor(crypto,core): make zkp_context_init() return status
2021-11-18 19:05:40 +01:00
Ondřej Vejpustek
f918cf9a27
fix(core): fix typos in modtrezorcrypto-bip340.h
2021-11-18 19:05:40 +01:00
Ondřej Vejpustek
3612620268
build(crypto,core): make secp256k1-zkp context as small as possible
2021-11-18 19:05:40 +01:00
Andrew Kozlik
221977ad9d
chore(core): Convert SIGHASH_* consts to SigHashType enum.
2021-11-13 13:33:46 +01:00
Andrew Kozlik
aaceb5bcc6
chore(core): Remove USE_SECP256K1_ZKP_BIP340 build option.
2021-11-13 13:33:46 +01:00
Andrew Kozlik
ae35086bb9
refactor(core): Rename Hash143 to SigHasher and replace preimage_hash() with two functions.
2021-11-13 13:33:46 +01:00
Andrew Kozlik
398cea8f40
test(core): Add unit tests for BIP-341 signature hash.
2021-11-13 13:33:46 +01:00
Andrew Kozlik
03b1b3bc6b
feat(core): Show path warning for SignMessage.
2021-11-13 13:33:46 +01:00
Andrew Kozlik
ef2ad57ec8
fix(core): Fix CoinJoin approval check.
...
After fixing the TxWeightCalculator the approver needs to account for the
weight of the coordinator's output.
2021-11-13 13:33:46 +01:00
Andrew Kozlik
56ac799626
feat(core): Support external inputs in TxWeightCalculator.
2021-11-13 13:33:46 +01:00
Andrew Kozlik
f9f0b517e2
feat(core): Support Taproot in TxWeightCalculator.
2021-11-13 13:33:46 +01:00
Andrew Kozlik
a635876807
test(core): Add multisig unit tests for TxWeightCalculator.
2021-11-13 13:33:46 +01:00
Andrew Kozlik
9b579094c0
fix(core): Fix TxWeightCalculator.
...
- Refactor TxWeightCalculator to count inputs and outputs itself.
- Fix witness data weight by adding the weight of the witness stack item count
for each input in segwit transactions and removing the weight of the
nonsensical extra inputs count.
- Get multisig pubkey count from multisig.nodes or multisig.pubkeys like in
multisig_get_pubkeys().
- Fix size of multisig script length encoding in segwit (varint vs. OP_PUSH).
- Improve comments.
2021-11-13 13:33:46 +01:00
Andrew Kozlik
a5bd1643fc
fix(core): Fix OP_PUSH writing.
2021-11-13 13:33:46 +01:00
Andrew Kozlik
7653efb415
chore(core): Disable Taproot for altcoins.
2021-11-13 13:33:46 +01:00
Andrew Kozlik
c0f853dc78
chore(core): Disable ownership proof generation for Taproot.
2021-11-13 13:33:46 +01:00
Andrew Kozlik
475b95b11e
feat(core): Disable prevtx streaming for Taproot.
2021-11-13 13:33:46 +01:00
Andrew Kozlik
84e31310a1
feat(core): Support Taproot in SignatureVerifier.
2021-11-13 13:33:46 +01:00
Andrew Kozlik
a17cdb7cfa
feat(core): Implement Taproot signing.
2021-11-13 13:33:46 +01:00
Andrew Kozlik
381e8bc85a
feat(core): Implement the BIP-341 common signature message computation.
2021-11-13 13:33:46 +01:00
Andrew Kozlik
99e4ed6f42
chore(core): Support script_pubkey parameter for Bitcoin inputs.
2021-11-13 13:33:46 +01:00
Andrew Kozlik
630c06e782
feat(core): Support Taproot scripts.
2021-11-13 13:33:46 +01:00
Andrew Kozlik
68ad1b07d2
feat(core): Recognize Taproot inputs.
2021-11-13 13:33:46 +01:00
Pavol Rusnak
57fddcfd9d
feat(core): recognize Taproot change-outputs
2021-11-13 13:33:46 +01:00
Andrew Kozlik
dd7ed61939
feat(core): Implement GetAddress for taproot.
2021-11-13 13:33:46 +01:00
Pavol Rusnak
6406f0640d
feat(core): introduce PATTERN_BIP86 to keychain
2021-11-13 13:33:46 +01:00
Andrew Kozlik
ae41f7dec8
fix(core): Fix bip340 module build.
2021-11-13 13:33:46 +01:00
Andrew Kozlik
59c0f4383d
feat(core): Add key tweaking functions to trezorcrypto.bip340.
2021-11-13 13:33:46 +01:00
Andrew Kozlik
bec0634bae
feat(core): Improve message signing UI.
...
- Add "Confirm message" subheader to SignMessage and VerifyMessage.
- Unify font for SignMessage and VerifyMessage to fixed-width font.
- Fix device tests.
2021-11-10 17:35:57 +01:00
Andrew Kozlik
cf14e06aa0
feat(core): Show address confirmation in SignMessage.
2021-11-10 17:35:57 +01:00
Andrew Kozlik
bc4a56b2c0
feat(core): Support no_script_type option in SignMessage.
2021-11-10 17:35:57 +01:00
Andrew Kozlik
c2f1850abb
feat(common): Add no_script_type option to SignMessage.
2021-11-10 17:35:57 +01:00
matejcik
0870befe58
docs: add changelogs
2021-11-10 13:57:57 +01:00
matejcik
c38efaa9a5
chore: make bitcoin-only checker happy
2021-11-10 13:57:57 +01:00
matejcik
72924a016f
tests(core): add unit tests for Icarus and Icarus-Trezor, fix failing tests
2021-11-10 13:57:57 +01:00
matejcik
10e338e005
feat(core/cardano): allow derivation type selection
2021-11-10 13:57:57 +01:00
matejcik
f6f52445bd
feat(core/cardano): support Icarus, Icarus-Trezor, and Ledger derivations
2021-11-10 13:57:57 +01:00
matejcik
f0ae16069c
fix(core): do not send passphrase_protection field when device is locked ( fixes #1807 )
2021-11-10 13:57:57 +01:00
matejcik
f818f4bc23
feat(core): derive Cardano seed together with normal seed, if requested
2021-11-10 13:57:57 +01:00
matejcik
387466e073
refactor(core): separate Cardano cryptography into its own module
2021-11-10 13:57:57 +01:00
matejcik
eacaffd079
fix(core/ethereum): use built-in ethereum_pubkeyhash() in get_address
2021-11-10 13:57:57 +01:00
matejcik
faa807f995
feat(core): show progress for SLIP39 derivation
...
fixes #1842
2021-11-10 13:57:57 +01:00
matejcik
8caac218ec
feat(core/cardano): indicate whether Cardano seed should be derived
2021-11-10 13:57:57 +01:00
matejcik
bc75d05772
chore(common/defs/fido): add coinbase u2f
...
[no changelog]
2021-11-08 15:55:01 +01:00
Pavol Rusnak
a3b83685ef
fix(core): fix emulator build on Apple Silicon
...
[no changelog]
2021-11-08 11:00:04 +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
Martin Milata
1979bcc39c
chore(common): bring back eth:xDAI
2021-11-02 15:05:14 +01:00
grdddj
73238135d6
feat(core/ethereum): EIP-712
...
Based on original contribution by Max Kupriianov <xlab@hey.com>
Implemented EIP-712 typed data signatures in Ethereum app.
Add eth_abi into pyproject deps
device test for EIP 712
fixed hex decoding for address
fixup! fixed hex decoding for address
code quality, more pythonic code, removing unused imports
running black and isort on changed files
trezorctl file input for EIP 712 data signing
fixup! code quality, more pythonic code, removing unused imports
fixup! fixup! code quality, more pythonic code, removing unused imports
necessary changes after rebase to master
unit tests for sign_typed_data.py
new protobuf messages, working for nonarray types
simplified and verified solution for our simple data
support for simple arrays, without their confirmation
reverting protobuf value messages to bytes, appropriate changes
showing arrays in Trezor, code quality improvements
data validation on Trezor, minor improvements
using custom types for storing type data instead of dicts, addressing feedback from review
moving helper functions to its own file, tests for decode_data
additional overall tests
support for arrays of structs
adding support for metamask_v4_compat variable
using HashWriter object to collect the final hash continously
minor improvements in code quality
validate_field_type function
streaming values from client without saving them, missing UI
prototype of streamed UI using confirm_properties
accounting for bytes in data, more data types in integration tests
rebase on master, using f-strings
minor fixes and improvements from code review
StructHasher class for the whole hashing process
mypy and style changes
asking users whether to show structs and arrays
protobuf descriptions to fix make defs_check
unifying comments, mypy fix
unit tests for StructHasher class
UI fixtures, skipping device tests for T1
addressing majority of code review comments about code quality and structure
changing file structure - layouts, helpers, sign_typed_data
decode_data renaming and docstring, renaming unit test file
using tuples instead of lists in elifs
layout improvements
excluding core/src/apps/common/confirm.py file from the PR
True/False returning layout with Show more button
code review layout improvements
forgotten br_type argument to should_show_more
2021-11-02 14:27:01 +01:00
grdddj
082b7ecd91
feat(core): plural function supports "key/keys" string
...
Previously function did not work for words ending with "y" and vowel before that
2021-11-02 14:27:01 +01:00
grdddj
ecc0f6c445
fear(core/ui): add should_show_more layout function
...
Also adding `hold` argument into confirm_blob function
2021-11-02 14:27:01 +01:00
grdddj
b1a3618c17
refactor(core/ethereum): rename address.py to helpers.py
2021-11-02 14:27:01 +01:00
Martin Milata
9a7e6c2900
chore(common): update chains and tokens
2021-11-01 16:43:02 +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
ea1b7fbd54
chore(common): update chains and tokens
2021-11-01 13:58:48 +01:00
Martin Milata
87cc44e73a
chore(common): update coins support status
...
[no changelog]
2021-11-01 13:58:48 +01:00
matejcik
0e6669bd10
feat(core/stellar): show start/end timestamps in human readable format
2021-10-29 11:00:30 +02:00
matejcik
f7c340f333
feat(core/bitcoin): show lock_time as human readable datetime
2021-10-29 11:00:30 +02:00
matejcik
1d72085b5c
feat(core): implement conversion from timestamp to datetime
2021-10-29 11:00:30 +02:00
matejcik
e972839ac7
style(all): fix pylint complaints
...
[no changelog]
2021-10-27 13:13:15 +02:00
matejcik
f88f568f1e
feat(all): enable pylint globally
...
[no changelog]
with a whitelisted set of checks that can be expanded in the future if
we need something
2021-10-27 13:13:15 +02:00
matejcik
84c310a2ba
chore(core): remove forgotten and unused apps/common/confirm.py
...
[no changelog]
2021-10-27 13:13:15 +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
Pavol Rusnak
7b2825e68e
fix(common): rebrand brhodium to xrhodium
2021-10-26 12:01:08 +02:00
Ondřej Vejpustek
a924bd4dc6
build(core): do not link gen_context.o to trezor_lib
2021-10-25 14:41:28 +02:00
Ondřej Vejpustek
dbfc7d241f
chore(vendor,crypto): bump version of secp256k1-zkp
2021-10-25 14:41:28 +02:00
Ondřej Vejpustek
29ce860d46
refactor(core,crypto): rename schnorr to BIP340
2021-10-25 14:41:28 +02:00
Ondřej Vejpustek
15bb085509
refactor(core,crypto): make public key derivation functions return
...
status
2021-10-25 14:41:28 +02:00
Ondřej Vejpustek
172f399b29
style(core): fix style
2021-10-25 14:41:28 +02:00
Ondřej Vejpustek
7ac0bdd215
feat(core): make core use Schnorr signatures
2021-10-25 14:41:28 +02:00
Ondřej Vejpustek
26463eb3ce
feat(core): make core use ecdsa from secp256k1_zkp wherever possible
2021-10-25 14:41:28 +02:00
Pavol Rusnak
9e0cfa6783
fix(core): we don't need separate linker script for zkp
2021-10-25 14:41:28 +02:00
Pavol Rusnak
d505edaaa0
fix(core): set ECMULT_GEN_PREC_BITS = 4 for secp256k1_zkp
...
the setting configures size of precomputed static context
size = 64 * (1 << ECMULT_GEN_PREC_BITS) * (256 / ECMULT_GEN_PREC_BITS)
for ECMULT_GEN_PREC_BITS == 2 the size is 64 * 512 == 32 KB
for ECMULT_GEN_PREC_BITS == 4 the size is 64 * 1024 == 64 KB
for ECMULT_GEN_PREC_BITS == 8 the size is 64 * 8192 == 512 KB
2021-10-25 14:41:28 +02:00
Pavol Rusnak
0d6bc43fd5
feat(core): enable secp256k1-zkp
2021-10-25 14:41:28 +02:00
Pavol Rusnak
47e17aab4d
fix(core): fix build on aarch64
...
by adding nlraarch64.c to SConscript.unix
2021-10-22 14:15:21 +02:00
Martin Milata
3882b89be9
fix(core/ethereum): ask before showing paginated data field
2021-10-19 17:13:28 +02:00
Martin Milata
e6c42b7fa6
fix(core/ui): fix off-by-one in in_area
2021-10-19 17:13:28 +02:00
Martin Milata
8eb4bcff29
feat(core/ui): allow text without header
2021-10-19 17:13:28 +02:00
David Misiak
13c4fb97df
fix(cardano): forbid multisig pool registration [no changelog]
2021-10-19 15:25:39 +02:00
Andrew Kozlik
13cbb59082
feat(common): Add script_pubkey field to TxInput message.
2021-10-18 19:58:56 +02:00
Andrew Kozlik
9d03112846
feat(core): Implement sending to taproot addresses.
2021-10-18 13:36:05 +02:00
Pavol Rusnak
ea0fb08fed
feat(core): add witness version to encode_bech32_address()
2021-10-18 13:36:05 +02:00
Pavol Rusnak
dbc464750b
feat(common): enable Taproot on Bitcoin
2021-10-18 13:36:05 +02:00
Pavol Rusnak
7e64ccbaf9
feat(core): add BIP-350 test cases to test_trezor.crypto.bech32
2021-10-18 13:36:05 +02:00
Pavol Rusnak
a45e103875
fix(core): remove 3 BIP-173 test cases from test_trezor.crypto.bech32
...
because they encode segwit program > 0 and these should no longer
be encoded with Bech32 but rather with Bech32m
2021-10-18 13:36:05 +02:00
Pavol Rusnak
9aa07c7f96
feat(core): update bech32.py 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
fea240ed40
feat(core): add support for Taproot descriptors
2021-10-18 13:36:05 +02:00
Pavol Rusnak
4ed9f00c73
feat(common): add support for Taproot input and output scripts
2021-10-18 13:36:05 +02:00
matejcik
b6837d19b7
fix(core/nem): fix NEM usage of format_amount
...
[no changelog]
2021-10-13 11:53:17 +02:00
amadejpapez
85ba7c12ba
style(all): use f-strings for formatting
...
[no changelog]
2021-10-13 11:53:17 +02:00
matejcik
32be2c09b9
feat(core): enable f-strings for micropython
...
[no changelog]
2021-10-13 11:53:17 +02:00
gabrielkerekes
4aaf6db9a2
chore(cardano): update docs, changelog and ui test fixtures
2021-10-11 15:16:24 +02:00
gabrielkerekes
1f33ab420d
feat(cardano): update transaction signing for multisig
2021-10-11 15:16:24 +02:00
gabrielkerekes
21281d7cf4
feat(cardano): add support for script addresses derivation
2021-10-11 15:16:24 +02:00
gabrielkerekes
dd9652cd07
feat(cardano): add get-native-script-hash call
2021-10-11 15:16:24 +02:00
gabrielkerekes
54909681a8
feat(cardano): add support for 1854 and 1855 path roots
2021-10-11 15:16:24 +02:00
Martin Milata
70bb0ee04f
fix(core): bitcoin-only all_modules.py
2021-10-07 15:26:49 +02:00
Jan Pochyla
901580817d
chore(core/rust): fixes and formatting
...
[no changelog]
2021-10-07 15:01:55 +02:00
Jan Pochyla
5eefcffc7c
chore(core): prepare for fuzzing targets
...
First, we change the Protobuf definition includes to use an exact path relative to our crate's directory, instead of the OUT_DIR. This fixes build when a combination of stable and nightly toolchains is used (nightly is needed for the fuzzing targets).
Another change is a slight fix in the panic handler conditional compilation. Fuzzing is using the crate with `features = ["test"]`, but doesn't turn on the `test` cfg.
[no changelog]
2021-10-07 15:01:55 +02:00
Jan Pochyla
2703d714c2
feat(core): add Rust UI components, layouts, text rendering
...
[no changelog]
2021-10-07 15:01:55 +02:00
Ondrej Mikle
b905ac04ef
fix(core/emulator): Use -Og instead of -O0 in debug emulator builds to avoid segfault
...
[no changelog]
2021-10-05 14:10:47 +02:00
Pavol Rusnak
b03b688f2d
fix(core): avoid accidental build with broken stack protector (boardloader)
2021-09-29 12:48:31 +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
c30091b9c5
refactor(core/stellar): replace confirm_timebounds_stellar with confirm_properties
2021-09-24 10:30:19 +02:00
matejcik
1dcfdebf7a
feat(all): make Stellar timebounds required
2021-09-24 10:30:19 +02:00
matejcik
98f0496b2c
feat(core/stellar): add type checking to Stellar app
2021-09-24 10:30:19 +02:00
matejcik
1b601b3e08
feat(common): strong typing for Stellar protobuf messages
...
BREAKING CHANGE: StellarAssetType is renamed to StellarAsset.
The name StellarAssetType is reused for the corresponding enum.
Enums are introduced in several other places. Their values correspond to
allowed values of (previously int) fields so this should not pose a
compatibility problem.
Many fields are now required. We believe that this should not pose a
compatibility problem, because all known interfaces to Stellar signing
actually accept Stellar XDR on input, whose required fields match the
protobuf schema.
2021-09-24 10:30:19 +02:00
Martin Milata
81e66cb024
style(core/rust): enable clippy lints
...
[no changelog]
2021-09-23 14:22:40 +02:00
Martin Milata
bd005e33df
refactor(core): decouple T1 button handling from touch
...
[no changelog]
2021-09-23 12:30:13 +02:00
matejcik
d0efdfa715
fix(core/rust): enable "test" feature for Rust unit test
2021-09-21 12:43:31 +02:00
Jan Pochyla
2c8dec93a6
feat(core): Split unix main, link core obj into Rust test target
2021-09-21 12:43:31 +02:00
matejcik
7a17124b43
refactor(core/rust): do not rely too much on new_exception helpers
2021-09-21 12:43:31 +02:00
matejcik
5e452dc57c
refactor(core/rust): propagate unsafety of raise_exception
2021-09-21 12:43:31 +02:00
matejcik
806beb77d2
feat(core/rust): improve catch_exception, make use of Rust 1.55
2021-09-21 12:43:31 +02:00
matejcik
795ed2d339
fix(core/rust): fix "unnecessary unsafe" warning
...
[no changelog]
2021-09-21 12:43:31 +02:00
matejcik
31de21718f
feat(core/rust): introduce Obj.is_null()
...
[no changelog]
2021-09-21 12:43:31 +02:00
matejcik
b666895303
feat(core/rust): catch, handle and propagate uPy exceptions
2021-09-21 12:43:31 +02:00
matejcik
8abcb6f8cc
chore(core/rust): allow unused macros
...
[no changelog]
2021-09-21 12:43:31 +02:00
Jan Pochyla
7c65f0357a
feat(core/rust): Implement exception catching in Rust
...
chore(core): Add test for Rust exc catching
chore(core): Document exception catching in Rust
[no changelog]
2021-09-21 12:43:31 +02:00