Andrew Kozlik
ac939c94aa
fix(core/tezos): Implement strict length checking.
...
(cherry picked from commit e7f44ebee8
)
2021-02-10 16:37:26 +01:00
matejcik
6fd355756c
fix(core/stellar): review usages of write_bytes_unchecked
...
(cherry picked from commit 781e9f4db8
)
2021-02-10 16:37:26 +01:00
matejcik
08edbca428
fix(core/eos): review usages of write_bytes_unchecked
...
(cherry picked from commit 5b5ed8cce1
)
2021-02-10 16:37:26 +01:00
matejcik
2231fe6842
feat(core): make protobuf.dump_uvarint more reusable
...
(cherry picked from commit 6acc1cd6ab
)
2021-02-10 16:37:26 +01:00
Andrew Kozlik
78a2ff16d4
fix(core): In apps.bitcoin ensure that get_address() fails for multisig if user's public key is not included.
...
(cherry picked from commit 77f5e90466
)
2021-02-10 16:37:26 +01:00
Martin Milata
391602ae99
refactor(core): turn show_address, show_pubkey, show_xpub into layouts
2021-02-10 13:57:19 +01:00
Martin Milata
03699f5639
refactor(core): turn show_success, show_warning into layouts
2021-02-10 13:57:19 +01:00
Martin Milata
f38abf9d89
refactor(core): introduce layouts
...
Layouts can be used by the application code to interact with user using
small number of dialogs or other groups of UI components. Each layout is
identified by name and takes some parameters. Most layouts will have an
implementation for each hardware model, mechanism is provided to import
the correct version so that application code can be oblivious to the
model.
This commit introduces the layout concept and converts a couple of
dialogs to use it.
2021-02-10 13:57:19 +01:00
Martin Milata
18cb429610
feat(core): introduce Text.format_parametrized()
2021-02-10 13:57:19 +01:00
Martin Milata
f1382bf892
refactor(core): model-dependent UI component directories
...
They now live under trezor.ui.components.tt. Later
trezor.ui.components.t1 will be added and application code will be
rewritten to not use them directly in order to work on both TT and T1.
2021-02-10 13:57:19 +01:00
matejcik
73a28e12f2
fix(core): create protobuf messages correctly
2021-02-10 10:56:52 +01:00
matejcik
14037d0c31
chore: regenerate protobuf classes
2021-02-10 10:56:52 +01:00
matejcik
bf562cfd4b
feat(core/misc): enable typing for misc app
2021-02-10 10:56:52 +01:00
matejcik
ccd241fe55
feat(core/cardano): enable typing for Cardano app
2021-02-10 10:56:52 +01:00
Pavol Rusnak
18b51b856b
common/fido: update icons for github, mojeid and slushpool ( #1456 )
2021-02-08 16:51:49 +01:00
matejcik
637ccadcb6
style(core): remove unused type:ignore comment after mypy upgrade
2021-02-05 10:44:09 +01:00
Rafael Korbas
e4c406822c
Add multiasset sending and min validity to Cardano transactions
2021-01-27 18:26:40 +01:00
Andrew Kozlik
79fad70b05
fix: Improve wording when showing multisig XPUBS.
2021-01-26 15:09:37 +01:00
Rafael Korbas
44c7d23741
Cardano: map account paths to account numbers
2021-01-22 14:45:29 +01:00
Pavol Rusnak
7f0e939359
feat(core): implement amount_unit for AuthorizeCoinJoin and SignTx
2021-01-22 14:07:36 +01:00
Pavol Rusnak
345ef52949
feat(proto): add amount_unit to AuthorizeCoinJoin and SignTx
2021-01-22 14:07:36 +01:00
Pavol Rusnak
f3d5de15ef
refactor(core): turn SECP256K1_ZKP into a firmware feature flag
2021-01-22 14:06:29 +01:00
Pavol Rusnak
e85ed74f8f
core: 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
6689b9c22f
common/protob: add GetAddress.ignore_xpub_magic field
2021-01-21 23:46:29 +01:00
Rafael Korbas
3a7a8e4d77
Disable "at least one output" restriction for Cardano, warn instead
2021-01-20 16:00:30 +01:00
mcudev
b8ffcadf94
common/defs/fido: add gemini webauthn ( #1416 )
2021-01-19 14:15:19 +01:00
matejcik
ed628ac4ba
feat(core): make usb endpoints registration nicer
2021-01-12 14:18:13 +01:00
matejcik
fc4e15fe77
feat(core): introduce and enforce limit on label length ( fixes #1399 )
2021-01-12 11:22:58 +01:00
matejcik
2d3a4d15fa
fix(core/ui): render_text uses correct font and color with item_offset
2021-01-11 16:47:59 +01:00
matejcik
24195d7c3e
fix(core/ui): use full line_width for content
2021-01-11 16:47:59 +01:00
matejcik
e4b113b4bb
fix(core/monero): make sure to pass strings to rendering
2021-01-11 16:47:59 +01:00
matejcik
fd502f122f
feat(core): implement pagination for sign/verify
2021-01-11 16:47:59 +01:00
matejcik
bbef9c650b
refactor(core): improve render_text behavior
...
* use less memory due to copy-less rendering
* implement linebreaking on embedded \n
2021-01-11 16:47:59 +01:00
Martin Milata
fa2e672f98
chore(core): monero: drop extraneous async/await
2021-01-11 12:14:13 +01:00
Pavol Rusnak
5728f54b78
core: return root_fingerprint in PublicKey
2021-01-08 14:17:09 +01:00
Pavol Rusnak
92452d54e5
feat(core): implement GetPublicKey.ignore_xpub_magic behaviour
2021-01-08 14:17:09 +01:00
Pavol Rusnak
e660a518c6
fix(core): show xpub instead of pubkey in GetPublicKey dialog
2021-01-08 14:17:09 +01:00
Pavol Rusnak
edb1243f64
feat(proto): add descriptors related fields to GetPublicKey/PublicKey
2021-01-08 14:17:09 +01:00
Andrew Kozlik
a609eb5e90
docs(core): Add comment about "Invalid original TXID" message.
2020-12-17 16:33:33 +01:00
Andrew Kozlik
06ce14096c
chore(core): Reject replacement transactions which involve negative
...
fees.
2020-12-17 16:33:33 +01:00
Andrew Kozlik
aeb021b159
chore(core): Improve naming of SLIP39's T9 mask lookup.
2020-12-15 13:41:42 +01:00
Pavol Rusnak
1187e4ddaf
style(common): use new syntax for typing in autogenerated protobuf enums
2020-12-01 15:52:29 +01:00
Pavol Rusnak
1e8673bf5f
style(core/apps): use new syntax for typing
2020-12-01 15:52:29 +01:00
Pavol Rusnak
a1dda836ec
style(core/src): use new syntax for typing
2020-12-01 15:52:29 +01:00
Martin Milata
ee64b65b26
refactor(core): call super().__init__() in subclasses
2020-11-30 14:48:08 +01:00
Martin Milata
fa1566cb71
refactor(core): call super().__init__() in Component and Layout subclasses
2020-11-30 14:48:08 +01:00
Pavol Rusnak
952adc5961
style(core): use PEP515 Underscores in Numeric Literals
2020-11-23 14:30:16 +01:00
matejcik
faa57e29db
build(core): include generated resources.py in repo
2020-11-20 18:55:35 +01:00
matejcik
58387a5f04
fix(common): drop Zilliqa token ( fixes #1318 )
2020-11-20 18:55:35 +01:00
matejcik
a89494f60c
chore(core): regenerate network and tokens lists
2020-11-20 18:55:35 +01:00
matejcik
4628c774aa
feat(core): re-allow unknown Ethereum networks, using Ethereum or Testnet paths ( fixes #1335 )
2020-11-20 18:55:35 +01:00
matejcik
7abe70e484
feat(core): improve ethereum tokens ui ( fixes #800 )
2020-11-20 18:55:35 +01:00
Rafael Korbas
b311bd4d4a
Add displaying of TTL to cardano transaction, align url validation with Ledger
2020-11-20 15:58:50 +01:00
Rafael Korbas
b261f789f3
Add support for stakepool registration to Cardano
2020-11-20 15:58:50 +01:00
Martin Milata
93d45f1aba
fix(core): increase minimum auto-lock delay to 1 minute
2020-11-20 13:57:51 +01:00
Andrew Kozlik
f421a213fd
feat(core): Inform user about transaction finalization in Bitcoin replacement transactions.
2020-11-20 13:52:48 +01:00
Pavol Rusnak
c6e78e525a
fix: remove PIVX ( #1359 )
2020-11-20 12:12:42 +01:00
matejcik
e6a1bf840f
fix(core): do not subclass range
...
micropython on real hw dislikes it for some reason
also it's completely unnecessary
2020-11-13 16:01:35 +01:00
Pavol Rusnak
50fdd183c2
ci: enable editorconfig checks, fix whitespace issues
2020-11-11 14:43:50 +01:00
matejcik
37d3bf56fa
fix(core): make sure run-time settings are reset after wipe ( fixes #1322 )
2020-11-05 15:33:38 +01:00
matejcik
50e648636f
doc(core): add references to schema specifications, add Purpose48 document
2020-11-05 14:30:11 +01:00
matejcik
665abe1e02
fix(core/bitcoin): validate path before asking to sign message (which could otherwise fail)
2020-11-05 14:30:11 +01:00
matejcik
f10084117b
feat(core/bitcoin): do not show path warning when GetAddress is called silently ( fixes #1206 )
2020-11-05 14:30:11 +01:00
matejcik
5a97a5111b
feat(core/ethereum): add SEP5 path schema as well as the compat schema
2020-11-05 14:30:11 +01:00
matejcik
a367426480
feat(core/bitcoin): use path schemas
2020-11-05 14:30:11 +01:00
matejcik
c0879f8625
feat(core/cardano): use path schemas
2020-11-05 14:30:11 +01:00
matejcik
f5c8138df6
feat(core): update most apps to use path schemas
2020-11-05 14:30:11 +01:00
matejcik
4ca8f7b0d6
style(core): use relative imports everywhere
...
except Monero, which has a rather complex structure and I don't want to
search&replace mess with it in case some of the things break memory
layout
2020-11-05 14:30:11 +01:00
matejcik
7fe5c804ff
feat(core): implement BIP-32 path schemas
2020-11-05 14:30:11 +01:00
Andrew Kozlik
70975008cd
chore (core): In apps.bitcoin skip confirmation of fee in PayJoin if the user is not increasing their contribution.
2020-10-23 15:07:15 +02:00
Andrew Kozlik
9e5d5bd5f9
feat: Add support for experimental field flag in protobuf.
2020-10-23 15:07:15 +02:00
Andrew Kozlik
b213a55428
chore(core): In apps.bitcoin move h_inputs back to bitcoin class.
2020-10-23 15:07:15 +02:00
Andrew Kozlik
4a0c5c371a
feat(core): In apps.bitcoin implement replacement transaction flow.
2020-10-23 15:07:15 +02:00
Andrew Kozlik
bd3fe1d789
chore(core): In apps.bitcoin create a separate class for transaction information.
2020-10-23 15:07:15 +02:00
Andrew Kozlik
469c131678
chore(core): In apps.bitcoin add confirm_replacement and confirm_modify_fee layouts.
2020-10-23 15:07:15 +02:00
Andrew Kozlik
7c2d690e45
chore(core): In apps.bitcoin allow get_tx_digest() to be used for original transactions.
2020-10-23 15:07:15 +02:00
Andrew Kozlik
ad6a0bc2a2
chore(common): Add new request types TXORIGINPUT and TXORIGOUTPUT.
2020-10-23 15:07:15 +02:00
Andrew Kozlik
5fc491c597
chore(core): In apps.bitcoin move BIP143 hashing back to a separate class.
2020-10-23 15:07:15 +02:00
Andrew Kozlik
443e0c101e
chore(common): Add orig_hash and orig_index fields to TxInput and TxOutput.
2020-10-23 15:07:15 +02:00
Andrew Kozlik
9a594f4784
fix(core): Fix CoinJoin anonymity gain check in bitcoin approver.
2020-10-16 19:16:37 +02:00
Martin Milata
830592f2d9
feat(core): add experimental_features setting
...
The setting is off by default. When it is enabled protobuf messages
marked UNSTABLE are rejected after decoding.
2020-10-16 13:53:31 +02:00
Martin Milata
0376670404
feat(common): expose 'unstable' option in generated code
2020-10-16 13:53:31 +02:00
Martin Milata
314cd260eb
feat(common): add experimental_features setting
2020-10-16 13:53:31 +02:00
Pavol Rusnak
d8534b5ee6
perf(core/extmod): replace HMAC Python implementation with C
...
We keep Python implementation of HMAC for Monero in
core/src/apps/monero/xmr/crypto/__init__.py
2020-10-12 16:33:13 +02:00
Andrew Kozlik
d90c3af6ea
docs(core): Fix typos in slip39.py.
2020-10-11 00:31:24 +02:00
Martin Milata
542f32d3b1
feat(core): add auto_lock_delay and display_rotation to Features
2020-10-02 11:06:16 +02:00
Martin Milata
b2c4bbdaa2
feat(common): add auto_lock_delay and display_rotation to Features
2020-10-02 11:06:16 +02:00
matejcik
e4785d47e0
style: apply black 20.8b1
2020-09-29 11:30:40 +02:00
Rafael Korbas
2173ad97bc
Refactor t<page number> to page<page_number> in cardano get_address call
2020-09-29 08:55:28 +02:00
Rafael Korbas
66dbdc2462
Enforce network id/protocol magic consistency for cardano show address
2020-09-29 08:55:28 +02:00
Juraj Muravsky
638977db7d
Swap path with address type on screen in cardano get address
2020-09-29 08:55:28 +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
244b264b47
chore(core): fix typing and kwargs usage
2020-09-23 16:00:10 +02:00
matejcik
ef4022fbf5
auto: regenerate protobuf classes
2020-09-23 16:00:10 +02:00
matejcik
37025e2a84
feat(core): use specialized protobufs in apps.bitcoin, enable typing
2020-09-23 16:00:10 +02:00
matejcik
b0a2297b14
feat(core): convert protobuf decoding errors to DataErrors
2020-09-23 16:00:10 +02:00
matejcik
6ba08526e1
fix(core): fix type annotations on CoinInfo
2020-09-23 16:00:10 +02:00
matejcik
90ee5f3d38
feat!: implement protobuf required fields and default values
...
BREAKING CHANGE: this makes arguments to protobuf constructors
keyword-only, and arguments corresponding to required fields are now
mandatory
2020-09-23 16:00:10 +02:00
Pavol Rusnak
f8489f16e4
fix(common/defs): remove FSN, ICX which migrated to mainnet
2020-09-23 11:31:09 +02:00
Martin Milata
cff4955f93
core: implement SafetyChecks.PromptTemporarily
...
Also reword safety checks confirmation dialogs.
2020-09-18 09:02:40 +02:00
Martin Milata
7d37b2c90f
common: add PromptTemporarily to SafetyChecks enum
2020-09-18 09:02:40 +02:00
Martin Milata
9d2ad96ad4
core: add SafetyCheckLevel to Features
2020-09-18 09:02:40 +02:00
Martin Milata
9f066e877d
common: add SafetyCheckLevel to Features
2020-09-18 09:02:40 +02:00
Andrew Kozlik
295710c37d
core/bitcoin: Check ownership proofs using the provided commitment data.
2020-09-08 19:36:10 +02:00
Andrew Kozlik
5d745d5d04
common/protob: Add commitment_data to TxInputType.
2020-09-08 19:36:10 +02:00
Dusan Klinec
9d7b0bf50c
xmr: fix new transaction type for CLSAG, HF=13
2020-09-07 17:50:38 +02:00
Andrew Kozlik
dad2852db9
core/bitcoin: Stream prev_tx after confirmation.
2020-09-04 14:36:39 +02:00
Tomas Susanka
ebc99435ab
Revert "core: remove ownership messages from the public api for now"
...
This reverts commit 0d5f00668f
.
2020-09-03 14:56:27 +02:00
Tomas Susanka
b99b8b3df3
Merge remote-tracking branch 'origin/release/2020-09'
2020-09-03 13:17:23 +02:00
Martin Milata
b8bb63fbef
core: drop unused FONT_SIZE constant
2020-09-01 19:57:46 +02:00
Tomas Susanka
19461398d7
core/cardano: reuse derived Shamir seed ( fixes #1007 )
2020-09-01 16:14:41 +02:00
Tomas Susanka
0d5f00668f
core: remove ownership messages from the public api for now
2020-09-01 15:56:57 +02:00
matejcik
e0583dd5cb
all: use a specific error code for "invalid session"
2020-08-28 15:37:06 +02:00
matejcik
4909821f35
core: implement EndSession
2020-08-28 15:37:06 +02:00
Martin Milata
df5421e7d6
common/defs: update maxfee_kb to 10USD/tx
...
Except bitcoin.
(cherry picked from commit f51fac3410
)
2020-08-25 18:06:54 +02:00
Martin Milata
f51fac3410
common/defs: update maxfee_kb to 10USD/tx
...
Except bitcoin.
2020-08-25 18:05:29 +02:00
Pavol Rusnak
41f5237967
common/defs: enable extra_data for FLO
...
(cherry picked from commit 534695313c
)
2020-08-24 11:08:02 +02:00
Pavol Rusnak
534695313c
common/defs: enable extra_data for FLO
2020-08-24 11:06:12 +02:00
Andrew Kozlik
f2d669ecdc
core/bitcoin: Use dynamic dispatch for confirmation dialogs in sign_tx.
2020-08-21 21:30:15 +02:00
Andrew Kozlik
02da5b7593
core/bitcoin: Show warning if nLockTime is set but ineffective due to all nSequence values being 0xffffffff.
2020-08-21 21:30:15 +02:00
Pavol Rusnak
cdf0f68bb0
core: show passphrase on device
2020-08-21 21:30:15 +02:00
Martin Milata
1b982659c4
core: fix boot loop after uploading invalid homescreen ( #1205 )
2020-08-21 12:00:42 +02:00
Pavol Rusnak
0620911e46
core: 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
Alexis Hernandez
96c38315df
common/defs: enable extra_data for XSN ( #1208 )
2020-08-20 20:40:30 +02:00
Andrew Kozlik
dd540a2ccd
core/ui: Initialize Qr class properly.
2020-08-20 18:13:09 +02:00
gabrielkerekes
431a25b119
Add Cardano README.md
2020-08-20 16:02:10 +02:00
Pavol Rusnak
c3ce9de3ea
core: regenerate coins+tokens
2020-08-19 19:29:18 +02:00
Martin Milata
3f21e8f400
core: display coin name when signing message
...
Also when verifying message.
2020-08-18 13:45:49 +02:00
Martin Milata
927ee0812b
core: add hard limit for transaction fees
...
The hard limit is set to 10*fee_warning_threshold. The limit is not
enforced when `safety_checks` is set to "Prompt".
2020-08-17 16:12:33 +02:00
Tomas Susanka
c9dc38c9f3
core: allow 49/x not 49/x' for Casa
2020-08-17 08:54:08 +02:00
Pavol Rusnak
d1973b7486
pipenv: update Pipfile
2020-08-08 18:03:32 +02:00
Pavol Rusnak
4e11735d22
core/modtrezorui: remove prefill from text functions
...
use display.bar where needed to prefill the areas
2020-08-07 15:08:14 +02:00
matejcik
51ea8ccecd
common: update token support
2020-08-07 11:49:26 +02:00
Pavol Rusnak
65805c9145
core: fix non-determinism in resources.py.mako
2020-08-05 17:10:22 +02:00
matejcik
cea634158a
core: make sure Homescreen is properly initialized ( fixes #1095 )
2020-08-05 14:22:06 +02:00
Tomas Susanka
16827c3135
core: make templates
2020-08-05 13:55:36 +02:00
gabrielkerekes
afa26e7560
Use correct paths for Cardano Byron witnesses
2020-08-04 20:35:13 +02:00
Andrew Kozlik
292d909235
core/base: Implement CancelAuthorization message.
2020-08-04 17:32:44 +02:00
Andrew Kozlik
8bcb3d8fb6
core/storage: Add delete() method to storage.cache.
2020-08-04 17:32:44 +02:00
Andrew Kozlik
5c1f197602
common/protob: Add CancelAuthorization message.
2020-08-04 17:32:44 +02:00
matejcik
cd86f9f477
core/bitcoin: make change check more robust against short paths
2020-08-04 17:32:44 +02:00
Andrew Kozlik
07d9b780a6
core/bitcoin: Change CoinJoin round ID length to 32 bytes and remove rate limiting.
2020-08-04 17:32:44 +02:00
Andrew Kozlik
377bff68f4
core/bitcoin: Implement DoPreauthorized message.
2020-08-04 17:32:44 +02:00
Andrew Kozlik
2c30dd62fc
common: Add DoPreauthorized message.
2020-08-04 17:32:44 +02:00
Andrew Kozlik
b9cfecb8b8
core/bitcoin: Support preauthorization in SignTx message for CoinJoin.
2020-08-04 17:32:44 +02:00
Andrew Kozlik
97fc9b74ab
core/bitcoin: Implement CoinJoinApprover.
2020-08-04 17:32:44 +02:00
Andrew Kozlik
d6ee542deb
core/bitcoin: Move transaction confirmation logic from Bitcoin to BasicApprover class.
2020-08-04 17:32:44 +02:00
Andrew Kozlik
00258f2d4d
core/bitcoin: Support preauthorization in GetOwnershipProof message.
2020-08-04 17:32:44 +02:00
Andrew Kozlik
c772de9d3c
core/bitcoin: Support preauthorization in @with_keychain decorator.
2020-08-04 17:32:44 +02:00