Rafael Korbas
bd4512b53a
fix(core/cardano): Allow stake pool registrations with zero margin
2021-03-18 09:35:08 +01:00
Andrew Kozlik
28918f46ec
test: Add device test for decreasing output amount in RBF.
2021-03-17 15:15:50 +01:00
JoeGruff
e3ea32a986
multi: Add decred staking.
...
Add two new input and four output script types.
Decred ticket purchases consist of a stake submission, op returns, and
change addresses. Although change addresses are allowed by consensus,
they are no longer used in practice and so have been given the
restrictions of a null pubkey and no value. Stake scripts are almost
identical to p2pkh or p2sh except for an extra opcode in front. Inputs
are currently only used in the form of one input three outputs with the
first output, or stake submission, paying to a public key hash, or with
two inputs and five outputs with the stake submission paying to a
multisig script hash. The op returns are directed to the user in the
case of one and the voting service provider and user in the case of two.
One of the sstx commitment for a ticket must pay back to the trezor
wallet. This is checked and an error is thrown if we don't find the
expected public key hash.
Because this adds the ability to create new types of outputs once the
ticket votes, two new input script types are also needed. A successful
vote will lead to a stake generation script that must be spent, and an
unsuccessful vote will lead to a revocation script that must be spent.
If we allowed stake change scripts to have a valid pubkey, that too
would require another op code, but we disallow those for output.
2021-03-17 12:16:08 +01:00
Roman Zeyde
7ce4e13bcf
feat(core): add public_key to ECDHSessionKey
2021-03-08 15:59:00 +01:00
Rafael Korbas
ceea21ec1f
feat(cardano): Format stake pool ids as bech32 instead of hex
2021-02-25 16:49:19 +01:00
Rafael Korbas
cf871ee754
fix(core/Cardano): do not show change output in byron-shelley transfers
2021-02-25 16:41:12 +01:00
Martin Milata
192d0dcf87
feat(core): hold homescreen to lock
2021-02-24 00:10:10 +01:00
Martin Milata
854a256b5a
test: wait longer for autolock
...
To reduce test failure probability.
2021-02-23 14:31:04 +01:00
Andrew Kozlik
8828fa76d3
test: Ensure that GetAddress and GetOwnershipId fail for multisig if user's public key is not included.
...
(cherry picked from commit e9c227f623
)
2021-02-11 10:26:44 +01:00
gabrielkerekes
d4dcd7bff9
fix(core/cardano): allow staking accounts beyond 100'
2021-02-11 09:55:23 +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
matejcik
d475248ef1
tests: use modified protobuf classes correctly
2021-02-10 10:56:52 +01:00
Pavol Rusnak
48d1a7a880
fix(python): append checksum to descriptors ( #1445 )
2021-02-05 17:46:02 +01:00
matejcik
a1cd0b0949
fix(tests): update shamir_mnemonic usage
2021-02-05 10:44:09 +01:00
matejcik
cdf55d2fac
tests: get rid of skip_ui ( fixes #1409 )
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
be2ca4772c
tests: add device tests for SignTx with amount_unit
2021-01-22 14:07:36 +01:00
Pavol Rusnak
7f0e939359
feat(core): implement amount_unit for AuthorizeCoinJoin and SignTx
2021-01-22 14:07:36 +01:00
Pavol Rusnak
2d4b91b52a
tests: adapt test_msg_getaddress_show to test GetAddress.ignore_xpub_magic
2021-01-21 23:46:29 +01:00
matejcik
02881fd800
feat(tests): use JSON descriptions in test identifiers
2021-01-21 15:26:04 +01:00
Pavol Rusnak
060df07272
fix(tests): fix trimming of fixture names to avoid collisions
2021-01-20 14:09:27 +01:00
matejcik
fc4e15fe77
feat(core): introduce and enforce limit on label length ( fixes #1399 )
2021-01-12 11:22:58 +01:00
matejcik
24195d7c3e
fix(core/ui): use full line_width for content
2021-01-11 16:47:59 +01:00
matejcik
6fbf93cab8
chore(tests): update UI fixtures as needed
2021-01-11 16:47:59 +01:00
matejcik
718d589acc
feat(tests): dump UI test report as you go
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
Pavol Rusnak
7b9f3c0462
feat(tests): add device tests for btc.get_descriptor
2021-01-08 14:17:09 +01:00
Pavol Rusnak
5e58835d18
feat(tests): test GetPublicKey.ignore_xpub_magic behaviour
2021-01-08 14:17:09 +01:00
Andrew Kozlik
97974c8d5b
chore(tests): Use strings instead of integers for script_type in tx_cache.
2020-12-22 17:10:33 +01:00
Andrew Kozlik
3be0138aae
test: Add device test for replacement transaction with invalid original signature.
2020-12-17 16:33:33 +01:00
Andrew Kozlik
9ab4efdbad
test: Enable and tweak RBF device tests for T1.
2020-12-17 16:33:33 +01:00
Martin Milata
8fd12f4373
fix(tests): run test_softlock_instability on emulator only
2020-12-01 12:35:11 +01:00
Tomas Susanka
bd0b91a229
fix(tests): fix extra ETH unknown token dialog for T1
2020-11-20 18:55:35 +01:00
matejcik
f83752a714
fix(tests): remove dropped EOSClassic test case
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
Andrew Kozlik
65a9636bb5
test: Add device test for RBF finalization.
2020-11-20 13:52:48 +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
b8e654d8e5
chore(tests): regenerate ui test fixtures
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
f3b6de399a
fix(tests): fix illegal paths in device tests
2020-11-05 14:30:11 +01:00
matejcik
a36ccd7e6f
feat!(python): drop Mapping protocol support from MessageType
2020-10-30 10:25:51 +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
2a19d70e98
test: Add device tests for replacement transaction flow.
2020-10-23 15:07:15 +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
Tomas Susanka
99e0faafb6
test(core): print fixtures suggestion after the test
2020-10-06 21:17:28 +02:00
Martin Milata
542f32d3b1
feat(core): 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
matejcik
08d896f2f9
chore(tests): update to kwargs usage and new btc.sign_tx API
2020-09-23 16:00:10 +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
9d2ad96ad4
core: add SafetyCheckLevel to Features
2020-09-18 09:02:40 +02:00
Andrew Kozlik
b00c4209ed
tests: Use correct commitment data in authorize_coinjoin tests.
2020-09-08 19:36:10 +02:00
Andrew Kozlik
4fc4152741
tests: Fix device tests for streamimg 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
Tomas Susanka
ba36cef369
tests: move fixtures to common directory, start with Cardano
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
e0ec5aa1e7
tests: clear session before each testcase
2020-08-28 15:37:06 +02:00
matejcik
46eb223b2a
tests: use new trezorlib locking/sessioning API where appropriate
2020-08-28 15:37:06 +02:00
matejcik
a08c34a624
tests: add tests for end_session
2020-08-28 15:37:06 +02:00
Tomas Susanka
a443a4a430
tests/upgrade: add support for filenames with revision
2020-08-27 20:24:32 +02:00
Tomas Susanka
b780785beb
tests: replace emulators URL
2020-08-27 20:01:23 +02:00
Andrew Kozlik
fb1f1acad6
tests: Add device test for nLockTime in Bitcoin.
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
Andrew Kozlik
ae71735e62
legacy/signing: Ask user to confirm custom nLockTime.
2020-08-21 21:30:15 +02:00
matejcik
af5e301a7c
tests: update device tests with added ButtonRequests where appropriate
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
68e119c2c6
tests: add tests for invalid paths
2020-08-21 11:49:03 +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
Martin Milata
75fa9dee77
test_msg_signtx: proto -> messages
2020-08-17 16:12:33 +02:00
Pavol Rusnak
4e7460b5d3
core/tests: update modified UI tests (SignMessage)
2020-08-07 15:08:14 +02:00
matejcik
5385617eda
core: increase address length limit to accomodate CRW ( fixes #1139 )
2020-08-07 12:45:43 +02:00
matejcik
a94c0d074d
tests: use improved API in authorize_coinjoin test
2020-08-05 16:45:56 +02:00
matejcik
e585d35f34
python: clarify session and feature management API
...
init_device() should be used to initialize a session. Reuses existing
session if available.
end_session() explicitly closes any existing session and requests a new
one
lock() enables soft-lock
clear_session() is the equivalent of lock() + end_session()
A new function ensure_unlocked() can be used to open a session and
prompt for PIN and passphrase before further operations.
2020-08-05 16:45:56 +02:00
matejcik
d776cc931b
tests: fix test_msg_webauthn on-device
...
by not asking for a full-capacity list of credentials, which will
usually not fit in an unfragmented chunk of memory
2020-08-05 13:47:35 +02:00
gabrielkerekes
8d39ba8314
Add test case for multiple inputs and regenerate UI fixtures
2020-08-04 20:35:13 +02:00
Andrew Kozlik
ad3f39d829
tests: Add device test for multiple CoinJoin authorizations in different sessions.
2020-08-04 17:32:44 +02:00
Andrew Kozlik
77b931e217
tests: Add device test for CancelAuthorization message.
2020-08-04 17:32:44 +02:00
Andrew Kozlik
3cbfb98f38
tests: Add device test for a CoinJoin transaction which does not give the user's outputs a gain in anonymity.
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
4fd229b500
tests: Add device tests for AuthorizeCoinJoin and CoinJoin SignTx.
2020-08-04 17:32:44 +02:00
Andrew Kozlik
377bff68f4
core/bitcoin: Implement DoPreauthorized message.
2020-08-04 17:32:44 +02:00
Tomas Susanka
5350bafa3e
core: regenerate UI fixtures due to previous commit
2020-08-04 13:32:53 +02:00
gabrielkerekes
12132ea64b
Fix rebase and regenerate ui tests
2020-07-30 17:17:03 +02:00
gabrielkerekes
7a1e773b49
Validate transaction metadata
2020-07-30 17:17:03 +02:00
gabrielkerekes
f2ee450410
Include metadata in transaction signing
2020-07-30 17:17:03 +02:00
gabrielkerekes
fce7a001af
Regenerate UI tests
2020-07-30 17:17:03 +02:00
gabrielkerekes
a729ef1c26
Update tests
...
Add certificates, withdrawals and metadata hash
2020-07-30 17:17:03 +02:00
Pavol Rusnak
063aba910d
core: rename emulator to trezor-emu-core
2020-07-30 15:27:34 +02:00
Martin Milata
10387e1869
core: drop zcash v3 tx signing support
2020-07-30 15:14:18 +02:00
gabrielkerekes
b66adae64b
Regenerate UI tests
2020-07-30 14:43:32 +02:00
gabrielkerekes
b5f3511c1c
Add support for script addresses in tx outputs
2020-07-30 14:43:32 +02:00
matejcik
741fca0156
tests: watch_layout must be explicit ( fixes #1142 )
2020-07-29 11:50:47 +02:00