Pavol Rusnak
6689b9c22f
common/protob: add GetAddress.ignore_xpub_magic field
2021-01-21 23:46:29 +01:00
Pavol Rusnak
88889472eb
feat(python): add btc get-descriptor command
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
matejcik
5feb76f603
fix(python): do not log "resumed session" if there is no id
2020-12-11 11:44:01 +01:00
matejcik
4d4d0e7216
fix(python): do not call EndSession in bootloader mode ( fixes #1379 )
2020-12-11 11:41:15 +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
cd829a99de
style(python/src): use new syntax for typing
2020-12-01 15:52:29 +01:00
Martin Milata
8fd12f4373
fix(tests): run test_softlock_instability on emulator only
2020-12-01 12:35:11 +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
Pavol Rusnak
225cd15732
fix(python): drop references to beta-wallet.trezor.io
2020-11-16 09:45:42 +01:00
matejcik
5005a61eaf
fix(python): update trezorctl multisig feature to new API
2020-10-30 10:25:51 +01:00
matejcik
a36ccd7e6f
feat!(python): drop Mapping protocol support from MessageType
2020-10-30 10:25:51 +01:00
matejcik
8c460dcbf3
feat(python): improve error message when prev_txes are not provided
2020-10-30 10:25:51 +01:00
matejcik
3d6d1a56ac
feat(python): implement API compatibility with trezorlib 0.12
2020-10-30 10:25:51 +01:00
Andrew Kozlik
9e5d5bd5f9
feat: Add support for experimental field flag in protobuf.
2020-10-23 15:07:15 +02:00
Andrew Kozlik
b636e959f5
chore(python): Support TXORIGINPUT and TXORIGOUTPUT in trezorlib.
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
443e0c101e
chore(common): Add orig_hash and orig_index fields to TxInput and TxOutput.
2020-10-23 15:07:15 +02:00
Martin Milata
0376670404
feat(common): expose 'unstable' option in generated code
2020-10-16 13:53:31 +02:00
Martin Milata
3b138b4f98
feat(python): add experimental_features setting
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
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
matejcik
6dda240f5c
test(python): add flake8-requirements
2020-09-29 11:30:40 +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
01b66a5858
fix(python): always fill TransactionType.lock_time
2020-09-23 16:00:10 +02:00
matejcik
9ee7eee1eb
chore!(python): bump trezorlib version because of breaking API change
2020-09-23 16:00:10 +02:00
matejcik
08d896f2f9
chore(tests): update to kwargs usage and new btc.sign_tx API
2020-09-23 16:00:10 +02:00
matejcik
b41021a5fb
chore(python): fix kwargs usage
2020-09-23 16:00:10 +02:00
matejcik
5ddf1dfafb
feat!(python): modify btc.sign_tx api to accept kwargs
...
Because we can't pass SignTx anymore because it has required fields and
the caller is not supposed to fill out those.
Instead you can send arbitrary kwargs that match signtx fields.
BREAKING CHANGE: argument `details: SignTx` is no longer accepted.
2020-09-23 16:00:10 +02:00
matejcik
ef4022fbf5
auto: regenerate protobuf classes
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
Martin Milata
76a1760764
python: support SafetyChecks.PromptTemporarily
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
9f066e877d
common: add SafetyCheckLevel to Features
2020-09-18 09:02:40 +02:00
Andrew Kozlik
5d745d5d04
common/protob: Add commitment_data to TxInputType.
2020-09-08 19:36:10 +02:00
matejcik
ffe3b5487d
python: ignore failures of EndSession call, so that end_session() does not raise
2020-08-28 15:37:06 +02:00
matejcik
e0583dd5cb
all: use a specific error code for "invalid session"
2020-08-28 15:37:06 +02:00
matejcik
e96a9e8d39
python/trezorctl: make use of EndSession
2020-08-28 15:37:06 +02:00
matejcik
4f92d2b14d
python: call EndSession when requested
2020-08-28 15:37:06 +02:00
matejcik
17736e8fba
python/trezorctl: fix output of 'btc get-address' help text
2020-08-27 15:19:53 +02:00
matejcik
d19f00b26c
python/trezorctl: fix minor bugs in 'set homescreen'
2020-08-27 13:44:20 +02:00
matejcik
fb1deb6156
python/trezorctl: improve 'set homescreen' command
2020-08-25 13:17:21 +02:00
matejcik
a14634c389
python: make PIL optional in the toif module, add size check
2020-08-25 13:17:08 +02:00
matejcik
032a65e1cf
python: export toif as public module
2020-08-25 11:30:33 +02:00
Martin Milata
43b7ccefc7
python/trezorctl: remove --skip-vendor-header from firmware-update
2020-08-25 11:16:04 +02:00
Martin Milata
29861e076b
python: fix cli --file handling
...
It seems that Click doesn't do the right thing when argument and hidden
option with the same name exist, which was introduced in commit
2678e64a99
.
2020-08-25 11:07:34 +02:00
Ferdinando M. Ametrano
b3d483dd6b
python: silenced unused variables ( #1202 )
2020-08-24 10:56:18 +02:00
Martin Milata
6319fcfe4a
python: fix trezorctl lisk sign-message address parsing
2020-08-18 13:45:49 +02:00
Andrew Kozlik
9da715e025
python: Fix UnboundLocalError in trezorctl btc get-address.
2020-08-12 17:43:51 +02:00
Pavol Rusnak
5536fbb98a
python: use stdlib blake2s on python 3.6+
...
commit 6d407c84d7
did not replace everything
2020-08-10 23:35:38 +02:00
matejcik
4029fc1e1c
python: remove superfluous .keep file
2020-08-05 16:45:56 +02:00
matejcik
35c3af87dd
python: rename unsafe_prompts to safety_checks
2020-08-05 16:45:56 +02:00
matejcik
769ccf52c6
python: fix behavior of client.ping() when device is locked
2020-08-05 16:45:56 +02:00
matejcik
efcaf7bda6
python/btc: improve missing signature detection
2020-08-05 16:45:56 +02:00
matejcik
037bef3a38
python: fix logging of protobuf repeated enums
2020-08-05 16:45:56 +02:00
matejcik
c244503e1f
python/trezorctl: add aliases for firmware-update
2020-08-05 16:45:56 +02:00
matejcik
d5fe57012d
python: bump version before release
2020-08-05 16:45:56 +02:00
matejcik
2678e64a99
python/trezorctl: improve file-based arguments
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
95f33a77c7
python/trezorctl: support multisig addresses in get-address
2020-08-05 16:45:56 +02:00
Andrew Kozlik
62d66a713c
python: Add cancel_authorization() to trezorlib.
2020-08-04 17:32:44 +02:00
Andrew Kozlik
5c1f197602
common/protob: Add CancelAuthorization message.
2020-08-04 17:32:44 +02:00
Andrew Kozlik
85cf79169c
python: Support preauthorized operations in trezorlib.
2020-08-04 17:32:44 +02:00
Andrew Kozlik
84c1324290
python: Add authorize_coinjoin() to trezorlib.
2020-08-04 17:32:44 +02:00
Andrew Kozlik
2c30dd62fc
common: Add DoPreauthorized message.
2020-08-04 17:32:44 +02:00
Andrew Kozlik
bbab13f6e7
common/protob: Add AuthorizeCoinJoin message.
2020-08-04 17:32:44 +02:00
gabrielkerekes
a5d3b63912
Refactor trezorlib transaction key checking
2020-07-30 17:17:03 +02:00
gabrielkerekes
f2ee450410
Include metadata in transaction signing
2020-07-30 17:17:03 +02:00
gabrielkerekes
c29d297a77
Set default values to client functions parameters
2020-07-30 17:17:03 +02:00
gabrielkerekes
93b9f35678
Update trezorlib
...
Add certificates, withdrawals and metadata hash
2020-07-30 17:17:03 +02:00
gabrielkerekes
e92baf5b02
Update protobuf
2020-07-30 17:17:03 +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
Pavol Rusnak
cec87bba50
core: remove mono bold font variant (not used anywhere)
2020-07-27 23:22:34 +02:00
Gabriel Kerekeš
d2c1624602
Cardano shelley update 2/3 ( #1112 )
2020-07-27 13:11:23 +02:00
gabrielkerekes
e1615e60ec
Update Cardano to support Shelley era 1/3
...
Update protobuf
- Previous transactions don't need to be sent anymore, because fee is
included in the transaction now. Thus transactions_count can be
removed from CardanoSignTx message and the CardanoTxAck and
CardanoTxRequest messages can be removed altogether.
- CardanoTxInputType.type is unused so remove it
Add NULL (None type) serialisation to CBOR
- Transaction metada must either have a valid structure or CBOR NULL
must be used (if metadata is empty) - it can't be simply left out.
Add protocol_magics file
- Just to have a nicer way of representing protocol magics
Update transaction signing
- Previous transactions no longer need to be requested
- Output building is simplified, since fee doesn't need to be calculated
- Remove transaction class since it is no longer needed (only functions
remained)
- Reorder functions so it reads top to bottom
Add protocol magic to byron address on testnet
- This has always been a part of the spec, but it hasn't been
implemented before, because it wasn't really needed.
Update trezorlib
Update tests
- Transaction messages are no longer required
- Expected values are different since tx format changed
- Common values in test cases have been extracted
Remove unused file
- Progress was used when receiving previous transactions
Add CRC check to output address validation
2020-07-27 13:04:49 +02:00
matejcik
fdcb64ac24
all: rename protobuf unsafe_prompts
to safety_checks
2020-07-24 16:37:58 +02:00
matejcik
1109250dcf
core: add option to allow unsafe prompts
2020-07-24 16:37:58 +02:00
matejcik
c964ff702d
python: disallow setting auto-lock without PIN
2020-07-10 14:05:52 +02:00
Andrew Kozlik
a973c3bc6e
python: Add get_ownership_id() and get_ownership_proof() to trezorlib.
2020-07-03 11:17:19 +02:00
Andrew Kozlik
533de50588
common/protob: Add GetOwnershipId message.
2020-07-03 11:17:19 +02:00
Andrew Kozlik
6c523d09e0
tests/sign_tx: Don't expect signatures to be returned for external inputs.
2020-07-03 11:17:19 +02:00
Andrew Kozlik
956ea9a94f
common: Add ownership_proof field to TxInputType.
2020-07-03 11:17:19 +02:00
Andrew Kozlik
c723c78529
common/protob: Add GetOwnershipProof message.
2020-07-03 11:17:19 +02:00
Andrew Kozlik
cc655575c8
common: Add witness field to TxInputType.
2020-07-03 11:17:19 +02:00
Tomas Susanka
14a8da9c28
common: remove underscore from 'overwintered' field
...
Due to some Suite/Connect compatibility issues.
2020-07-01 13:56:32 +00:00
Tomas Susanka
ca3dd2bfb9
common: skip deprecated fields during generation; deprecate overwintered field in Zcash
2020-06-30 16:02:21 +02:00
matejcik
312d6ea822
python: fix padding in first chunk ( fixes #1082 )
2020-06-25 11:23:26 +02:00
Tomas Susanka
e534ae3ad7
legacy, core: rename Features.pin_cached to unlocked and unify
2020-06-19 21:26:36 +02:00
matejcik
6f53ca0ac6
core: rework wait_layout()
...
The original wait_layout was unreliable, because there are no guarantees
re order of arrival of the respective events. Still, TT's event handling
is basically deterministic, so as long as the host sent its messages
close enough to each other, the order worked out.
This is no longer the case with the introduction of loop.spawn: TT's
behavior is still deterministic, but now ButtonAck is processed *before*
the corresponding wait_layout, so the waiting side waits forever.
In the new process, the host must first register to receive layout
events, and then receives all of them (so the number of calls to
wait_layout must match the number of layout changes).
DebugLinkWatchLayout message must be version-gated, because of an
unfortunate collection of bugs in previous versions wrt unknown message
handling; and this interests us because upgrade-tests are using
wait_layout feature.
2020-06-04 16:18:46 +02:00
matejcik
5d823ff5ea
core: use ButtonRequestType.PinEntry for PIN entry
2020-06-04 16:18:46 +02:00
matejcik
bbfce4e303
common: introduce ButtonRequestType.PinEntry
2020-06-04 16:18:46 +02:00
matejcik
fc6c99c6f9
tests: disable PIN detection, all PIN uses must be explicit
2020-06-04 16:18:46 +02:00
matejcik
b68cc5abda
python/debuglink: implement use_pin_sequence support for trezor-core
2020-06-04 16:18:46 +02:00
matejcik
62ced317cd
python/debuglink: proto -> messages
2020-06-04 16:18:46 +02:00
matejcik
ee32806bb2
python/debuglink: add debuglink message logging
2020-06-04 16:18:46 +02:00
matejcik
6069173252
python/debuglink: clean out debuglink methods
2020-06-04 16:18:46 +02:00
matejcik
0600d87c8c
common: rename ClearSession to LockDevice, introduce EndSession
2020-06-04 16:18:46 +02:00
matejcik
83d3acb0a6
python: fix dead code in protobuf pretty-printing
2020-05-29 12:27:42 +02:00
Tomas Susanka
9dfc08ca61
core/bitcoin: drop decred_script_version
2020-05-21 19:14:39 +02:00
matejcik
29db769185
tests: update test vectors to use correct paths
2020-05-15 14:08:29 +02:00
matejcik
aeaa402b75
python: fix PASSPHRASE_TEST_PATH
2020-05-15 14:08:29 +02:00
Tomas Susanka
15e33b42c0
python: style
2020-05-05 07:05:53 +00:00
Serge
e900173b9c
python/trezorctl: del an outdated mesage
2020-05-05 06:46:49 +02:00
Serge
4e25c396d2
python/trezorctl: display embedded v2 image fingerprint ( fixes #977 )
2020-05-05 06:46:49 +02:00
matejcik
59f43514be
python: convert chunks to bytes when reading from hid
2020-05-04 10:16:15 +02:00
matejcik
7ebbccdbba
python/debuglink: support conditional expected_responses
2020-04-25 18:27:29 +02:00
matejcik
5885978c83
Merge branch 'release/2020-04'
2020-04-15 15:00:23 +02:00
Dusan Klinec
25b6e9058f
xmr: proto - add fields for protocol optimization
2020-04-13 22:19:56 +02:00
matejcik
1b50877545
tests: streamline TrezorFailure exception usage
2020-03-26 11:30:06 +01:00
matejcik
a40f1e00ed
python: add period at end of sentence
2020-03-26 11:30:06 +01:00
matejcik
2402853b9c
python: simplify outdated firmware warning (full message is still used in the exception)
2020-03-26 11:30:06 +01:00
matejcik
f52c087cb6
python/trezorctl: implement common client and exception handling ( fixes #226 )
2020-03-26 11:30:06 +01:00
matejcik
b440ca1ec5
python: drop deprecated name CallException
2020-03-26 11:30:06 +01:00
matejcik
7a85d93d94
python/debuglink: properly use session_counter for debuglink transport
2020-03-26 11:30:06 +01:00
matejcik
af05e0927f
python/trezorctl: nicer output for list-devices
2020-03-26 11:30:06 +01:00
matejcik
b801f1a9cf
python/trezorctl: help user find the right firmware version ( fixes #823 )
2020-03-26 11:30:06 +01:00
matejcik
2112da7ab5
python/trezorctl: send raw bytes to device ( fixes #116 )
2020-03-26 11:30:06 +01:00
matejcik
9a330f3475
python: unify protobuf-encoding code paths
...
Protobuf encoding now happens in TrezorClient, and transports get encoded blobs
to (chunkify and) send. This is a better design because transports don't need
to know about protobuf.
It also lays groundwork for sending raw bytes feature (#116 )
This commit also removes all vestiges of ProtocolV2 which was never used and
will probably need to be redesigned from the ground up anyway. The code is
still ready for protocol flexibility.
2020-03-26 11:30:06 +01:00
matejcik
9d29952a15
python: move out deprecated ckd_public
2020-03-26 11:30:06 +01:00
matejcik
5dfb01c25d
python: drop old Electrum compatibility code
2020-03-26 11:30:06 +01:00
matejcik
6ccf22225c
python: drop coins.json ( fixes #752 )
2020-03-26 11:30:06 +01:00
matejcik
325dae890e
python: completely drop trezorlib.coins and trezorlib.tx_api
2020-03-26 11:30:06 +01:00
matejcik
5a526888cf
python: move json_to_tx to btc.from_json, add test cases
2020-03-26 11:30:06 +01:00
matejcik
d2dd78f979
python: drop TxApi and coin specializations in json_to_tx
2020-03-26 11:30:06 +01:00
matejcik
208bac8653
common: drop capricoin blockbook servers
2020-03-26 11:30:06 +01:00
matejcik
ffdb299c61
all: drop Capricoin support [NO BACKPORT]
2020-03-20 14:19:30 +00:00
matejcik
e2035b4972
all: drop Horizen and BIP-115 support [NO BACKPORT]
2020-03-20 14:19:07 +00:00
matejcik
27803ee8c1
all: drop overwintered field from transaction
2020-03-20 14:18:27 +00:00
Pavol Rusnak
817b922850
all: add extra_data and timestamp fields to coin specification
2020-03-20 14:18:27 +00:00
Andrew Kozlik
e51ed5bf05
trezorlib: Regenerate coins.json.
2020-03-17 11:53:48 +01:00
Andrew Kozlik
ac78d1e2f3
trezorctl: Validate PIN digits and length.
2020-03-17 11:53:48 +01:00
Andrew Kozlik
2f905a1157
core/webauthn: Add algorithm and curve to WebAuthnListResidentCredentials response.
2020-03-12 15:45:26 +01:00
Michail Brynard
c2635a4773
python: fix encoding errors in Stellar
2020-03-02 16:01:15 +01:00
matejcik
b916072389
common: restore PassphraseAck.state
2020-02-24 15:15:09 +01:00
matejcik
5523c7bbef
tests: add SD card format feature tests
2020-02-20 12:51:48 +01:00
matejcik
ddee77ecb6
core: add SD clearing via debuglink
2020-02-20 12:51:48 +01:00
Tomas Susanka
ff1bb67abc
common: return the PasshraseType button request
2020-02-20 08:04:35 +00:00
matejcik
e61b7d28e9
all: do not send state in PassphraseAck (not needed for compatibility)
2020-02-13 15:44:50 +01:00
matejcik
3959600760
python/protobuf: do not warn for unknown enum values ( fixes #832 )
2020-02-13 15:37:14 +01:00
matejcik
cdb7a7eb68
Merge pull request #840 from trezor/matejcik/sys-exit
...
wipe code activation tests
2020-02-13 15:11:33 +01:00
matejcik
0ec628ccd4
legacy: fix CALLBACK checker
2020-02-12 17:18:51 +01:00
matejcik
1cc1382153
python/trezorctl: improve get-session
2020-02-12 17:18:50 +01:00
matejcik
81a03edf61
python/debuglink: add docstrings, rename functions for clearer usage
2020-02-12 15:38:18 +01:00
matejcik
271da3fa39
python: add detailed logging to emulator runner
2020-02-12 13:31:58 +01:00
matejcik
7a253a6c0b
python/debuglink: properly clean up at end of "with client"
2020-02-12 13:31:31 +01:00
matejcik
94b85efba1
python/debuglink: make pin sequences configurable
2020-02-12 10:36:42 +01:00
Tomas Susanka
2c0504ad1c
Merge pull request #803 from trezor/passphrase
...
Passphrase Redesign
2020-02-11 16:01:59 +01:00
matejcik
1ebaaa7e77
python/emulator: increase tolerances
...
This should help in CI where things can sometimes take a long time.
2020-02-11 13:20:35 +01:00
matejcik
a375460afc
python/emulator: fix timeout parameter in emulator.wait()
2020-02-11 13:20:35 +01:00
matejcik
05a1d6f771
core/debug: add "show arbitrary screen" capability, for easier prototyping
2020-02-11 11:53:34 +01:00
matejcik
c01d04f26e
common/protob: drop a default field declaration
...
which triggers nanopb bug https://github.com/nanopb/nanopb/issues/487
2020-02-11 11:53:34 +01:00
matejcik
4b0d8d5f6d
python/trezorctl: tweak error message in get-session
2020-02-10 16:22:48 +01:00
matejcik
7f63cf28b0
python: only set session_id from Features on firmwares that send it
2020-02-10 16:15:45 +01:00
matejcik
d4343ad8b7
python/trezorctl: add get-session
2020-02-10 16:14:21 +01:00
matejcik
8d93503c9c
python: do not send deprecated state in PassphraseAck on T1
2020-02-10 15:38:26 +01:00
matejcik
f7608f55ff
python: implement backwards compatibility for pre-2.3.0 firmwares
2020-02-10 13:01:47 +01:00
matejcik
4c9689d7a7
common: return deprecated fields to protobuf, to allow cross-version compatible code
2020-02-10 12:35:28 +01:00
Tomas Susanka
56dc952495
common: fix PassphraseAck.on_device id
2020-02-07 14:19:01 +00:00
Pavol Rusnak
73ed2f3450
legacy: small nitpicks related to the new passphrase handling
2020-02-07 11:41:03 +00:00
matejcik
ee07b32f52
python: fix debuglink usage of get_passphrase
2020-02-07 11:41:02 +00:00
matejcik
7513a65f9a
python: move passphrase-on-host logic to UI class
2020-02-07 11:41:01 +00:00
matejcik
23ad62e719
python: bump versions
2020-02-07 11:41:01 +00:00
Tomas Susanka
dc53df772f
python: passphrase on host is the default for T1
2020-02-07 11:41:01 +00:00
Tomas Susanka
d5763d9cab
all: implement code review comments
2020-02-07 11:41:01 +00:00
Tomas Susanka
f3553f63f1
common: remove PassphraseRequest.on_device completely
2020-02-07 11:41:00 +00:00
Tomas Susanka
c65b57affb
core, legacy: remove passphrase_cached
2020-02-07 11:41:00 +00:00
Tomas Susanka
1ae5813cab
legacy: bump version to 1.9.0
2020-02-07 11:41:00 +00:00
Tomas Susanka
a3f3d4fcdb
remove ping.passphrase/pin
2020-02-07 11:41:00 +00:00
Tomas Susanka
466dc4732d
core/passphrase: add button requests
2020-02-07 11:40:59 +00:00
Tomas Susanka
cd09f9ce94
all: modify passphrase source to always on device
2020-02-07 11:40:59 +00:00
Tomas Susanka
eafd57c301
common, core: add passphrase entry capability
2020-02-07 11:40:58 +00:00
Tomas Susanka
90d5cdfd5b
all: rework passphrase
...
The `on_device` field is being moved to PassphraseAck, State messages
are removed. Features newly contain `session_id`.
2020-02-07 11:40:58 +00:00
matejcik
d28e33ef02
core/headertool: support generating vendor headers with explicit size
2020-02-05 12:23:34 +01:00
matejcik
0a052806c7
python: kill emulator if it doesn't become ready in time
...
this fixes a problem in upgrade-test, when one emulator fails to come up
and then blocks all other tests.
the CI task will still be failed, but at least we'll know at a glance
that it is a timeout problem
2020-01-28 16:15:09 +01:00
matejcik
37ea0773ea
python: do not preload prev_txes, drop dependency on coins.json
2020-01-24 17:51:43 +01:00
matejcik
8dce2cf98c
core: introduce emulator runner ( fixes #466 )
2020-01-23 18:43:20 +01:00
matejcik
05131c328d
python: trezorctl should not print empty line if result is None
2020-01-23 15:50:28 +01:00
matejcik
c151fdeefd
python: add wait-for-emulator command
2020-01-23 15:50:28 +01:00
Pavol Rusnak
a95405b693
python: don't use py3.6+ format strings yet
2020-01-21 16:29:13 +00:00
matejcik
4d7e3c8a23
python: use TREZOR_PATH in get_default_client
2020-01-20 17:33:00 +01:00
matejcik
1b04d1caa7
core/tools: drop tools obsoleted by headertool
2020-01-20 17:32:59 +01:00
matejcik
9341f0d584
core: improve building of vendor headers
2020-01-20 17:32:59 +01:00
matejcik
cc29b22f91
core/tools: introduce headertool
2020-01-20 17:32:58 +01:00
matejcik
b26a430b85
python/firmware: shorten names for vendor header fields
2020-01-20 17:32:58 +01:00
matejcik
3fc3231254
python/firmware: simplify calculate_code_hashes
2020-01-20 17:32:58 +01:00
matejcik
40477b836e
python/firmware: make header_digest function more intelligent
2020-01-20 17:32:58 +01:00
matejcik
18d4bd30a3
python/firmware: add production and development boardloader keys
2020-01-20 17:32:58 +01:00
matejcik
15bd35824b
python/cosi: improve API
...
cosi.verify was renamed to verify_combined, because it is pretty much
ed25519.verify, and the new name implies what it does in terms of the
CoSi scheme: verify a signature with already-combined public keys.
cosi.verify_m_of_n signature was simplified by not requiring the `n`
parameter, which is not important for verification. The updated function
was renamed to cosi.verify, because this is the standard CoSi
verification operation: given signature, digest, required number of
signatures, sigmask, and a list of public keys, verify that enough
signatures are indicated and that they sign the digest.
2020-01-20 17:32:58 +01:00
matejcik
941087179f
python/firmware: clarify firmware image types
2020-01-20 17:32:58 +01:00
matejcik
ab82382b1e
python/firmware: make header digest function public
2020-01-20 17:32:57 +01:00
matejcik
6cd976fdee
python/firmware: support bootloader headers
2020-01-20 17:32:57 +01:00
matejcik
7e6b39cd8e
python/firmware: mark reserved fields as private
2020-01-20 17:32:57 +01:00
matejcik
fb2c57d3c9
python/firmware: improve handling of bootloader keys
2020-01-20 17:32:57 +01:00
Dušan Klinec
af6a607b39
common/xmr: message changes optimizing runtime and memory ( #786 )
2020-01-12 22:24:18 +01:00
Tomas Susanka
51ef963738
tests: introduce UI tests for core
2020-01-03 14:28:27 +00:00
matejcik
b7c0a93d18
python: bump version in setup.py
2019-12-30 13:03:36 +01:00
robert
afc897d693
trezorctl: add u2f-counter to recover
2019-12-29 12:25:54 +01:00
matejcik
700c5e4f32
python: fix expand-words functionality in recovery ( fixes #778 )
2019-12-27 11:34:10 +01:00
Pavol Rusnak
d6a3725955
common: remove coins with no trezor compatible wallets
2019-12-15 18:19:36 +00:00
Pavol Rusnak
e5bdf0d51b
Merge pull request #742 from trezor/language
...
common: change language field to IETF BCP 47 language tag
2019-12-12 18:07:54 +01:00
Szymon Lesisz
21b6ab3e98
common: update zcash consensus branch_id (Blossom fork) ( #745 )
2019-12-11 16:27:28 +01:00
Pavol Rusnak
7646b97dca
common: divisibility -> decimals
2019-12-09 17:43:47 +01:00
matejcik
a46fd6f508
core: auto-generate FIDO icons
2019-12-09 16:31:46 +01:00
Pavol Rusnak
bb8d809a6d
common: change language field to IETF BCP 47 language tag
2019-12-08 11:27:10 +01:00
Pavol Rusnak
3d50bb5ed8
common: add Peercoin, regenerate coins
2019-12-05 09:43:32 +00:00
Andrew Kozlik
1bc8226a50
common, core: Add wipe_code_protection to the Features message.
2019-11-25 12:32:20 +01:00
Andrew Kozlik
83fab3c220
trezorctl: Add set wipe-code command.
2019-11-25 12:32:20 +01:00
Andrew Kozlik
4381511930
common: Add ChangeWipeCode message.
2019-11-25 12:32:20 +01:00
matejcik
34913a328a
all: disallow most RecoveryDevice fields in dry-run ( fixes #666 )
2019-11-20 12:27:57 +01:00
matejcik
b6d46e93e1
python: auto-generate OPTIONS.rst
2019-11-18 11:50:07 +01:00
matejcik
65bb8cdf4e
python/trezorctl: only accept json for sign-tx, document the format
2019-11-18 11:50:07 +01:00
matejcik
8f2b22a8f5
python: add more protobuf tests
2019-11-18 11:50:07 +01:00
matejcik
bd9bf4e2bc
python: rename webauthn and u2f to fido
2019-11-18 11:50:07 +01:00
matejcik
8e4de5e929
python/trezorctl: split trezorctl into separate modules
...
Instead of all commands (like `load-device`, `change-pin`,
`tezos-sign-tx`, `ethereum-verify-message`...) living in trezorctl.py,
each functional group is now defined in a separate file.
With that, better structuring of the trezorctl command becomes
available:
- instead of `trezorctl set-label`, use `trezorctl set label`
- instead of `trezorctl change-pin`, use `trezorctl set pin`
- instead of `trezorctl enable-passphrase`, use `trezorctl set
passphrase enabled`
For common commands, such as `sign-tx`, it is possible to use the
currency name or shortcut:
- `trezorctl btc sign-tx`
- `trezorctl ethereum sign-tx`
- `trezorctl xtz sign-tx`
- `trezorctl doge sign-tx`
etc.
Some aliases have been retained for better compatibility. For others,
refer to `trezorctl --help` and `trezorctl <command> --help`.
2019-11-18 11:50:07 +01:00
matejcik
862e582ec1
tests: make {needs,no}_backup flags available in test suite
2019-11-13 16:48:35 +01:00
matejcik
fd8aed6105
all: drop XPRV feature of LoadDevice
2019-11-13 16:48:35 +01:00
Pavol Rusnak
16af7f1353
common: add {needs,no}_backup flags to LoadDevice, make it debug only
2019-11-13 16:48:35 +01:00
Tomas Susanka
90edad55fc
python and tests: typos
2019-11-13 13:28:07 +00:00
Tomas Susanka
ef9900ee52
python: get u2f counter
2019-11-13 10:55:52 +00:00
Tomas Susanka
2a20287882
common/protobuf: add message for retrieving an increased u2f counter
2019-11-13 10:55:52 +00:00
EDmitry
e286bd46f9
Field "sender" is renamed to "from" in eosio ABI for un/delegatebw
2019-11-11 11:56:25 +01:00
matejcik
3349f737df
python/debuglink: prevent race with recovery homescreen eating debuglink decisions
2019-11-07 11:27:45 +01:00
Pavol Rusnak
0040b916d2
common/defs: remove inactive coins
2019-11-03 10:44:22 +00:00
Andrew Kozlik
6cc44b133c
tests/webauthn: Account for the increased limit on the number of resident credentials.
2019-11-01 16:14:16 +01:00
apollo
18c926a34b
common/defs: fix zcore signing ( #669 )
2019-11-01 00:18:03 +01:00
Pavol Rusnak
5fe2f7e59c
common/protob: remove ButtonRequest.data field
2019-10-24 11:11:43 +02:00
Adrian Nagy
384275ac73
core/tezos: support the new protocol update (005-BABYLON)
2019-10-23 17:53:10 +02:00
matejcik
32074c7bff
python/udp: make socket timeout configurable
2019-10-22 17:06:49 +02:00
matejcik
c970ad437d
tests: improve layout_lines API
2019-10-22 17:06:49 +02:00
matejcik
598e828844
python: ensure client session counter is never negative
2019-10-22 17:06:49 +02:00
matejcik
a8fc569016
debug: add support for general layout waiting
2019-10-22 17:06:49 +02:00
matejcik
370b2c4c49
tests: add click-based recovery test
2019-10-22 17:06:49 +02:00
matejcik
06e10f948d
protobuf: send x/y coordinates, allow waiting for layout change
2019-10-22 16:55:30 +02:00
Tomas Susanka
0511cc8b8c
core: add final mypy fixes!
2019-10-22 14:36:25 +00:00
Tomas Susanka
8f34b4c5de
Merge pull request #628 from trezor/tsusanka/sdprotect-fix
...
Skip sd protect test on device
2019-10-22 15:40:03 +02:00
Pavol Rusnak
ddd9bee059
common/defs: regenerate coins
2019-10-22 09:03:32 +00:00
matejcik
ccd1940ea8
tests: more assertions on sd_protect
2019-10-21 12:11:51 +02:00
Pavol Rusnak
178d58c763
common/defs: remove BTDX as it has no Trezor compatible wallet
2019-10-21 09:48:19 +00:00
Pavol Rusnak
4e5b60ec2b
common/defs: remove BITC per maintainer request
2019-10-20 17:11:43 +00:00
Pavol Rusnak
3ebc79f9b2
common/defs: remove MEC per maintainer request
2019-10-19 17:14:32 +00:00
Pavol Rusnak
9b7a2095b3
common/defs: update coins info
2019-10-18 10:14:33 +00:00
Pavol Rusnak
89794b89ae
python: regenerate coins.json
2019-10-17 15:25:48 +00:00
Tomas Susanka
f0cd99c545
common/protob: add sd card/protection to Features
2019-10-17 15:58:12 +02:00
sidhujag
de4c7bb855
common/defs: add SYS
2019-10-17 06:45:47 +00:00
Pavol Rusnak
d17ced9305
common/defs: remove ZCL as per maintainer request
2019-10-16 20:50:45 +00:00
Pavol Rusnak
d28bc3c3a6
common/defs: remove BSD - website does not exist, maintainer not reachable
2019-10-16 10:18:33 +00:00
Pavol Rusnak
3e20c51dbf
common/defs: remove MTNS - maintainer not reachable
...
website does not exist, backends don't work
2019-10-16 10:15:19 +00:00
apollo
74bcc05e2e
common/defs: add ZCR ( #611 )
2019-10-11 21:01:11 +02:00
Andrew Kozlik
564b24191e
debug: Add left and right swipe direction to DebugLinkDecision message and unify terminology around swipe direction.
2019-10-10 14:56:49 +02:00
Sirak Ghazaryan
8317774e06
common/defs: enable CRW ( #600 )
2019-10-07 14:39:37 +02:00
Tomas Susanka
1c676d7394
build: make gen
2019-10-02 20:53:30 +02:00
matejcik
4ec7e203d5
python: make style
2019-09-26 16:48:16 +02:00
matejcik
afe41d5fcf
python: clear state with clear_session ( fixes #525 )
2019-09-26 15:50:41 +02:00
matejcik
4338e17757
python/trezorctl: dump raw protobuf bytes with -vv ( fixes #117 )
2019-09-26 15:41:42 +02:00
Pavol Rusnak
e05c6f8983
trezorctl: load-device -s will set label to SLIP-0014 if unset via -l
2019-09-23 14:38:50 +02:00
matejcik
4eb98c254a
tests: only allow input_flow in a with-block
2019-09-20 15:47:34 +02:00
Pavol Rusnak
8da121ff5c
core+python: regenerate coins
2019-09-19 20:17:35 +02:00
Pavol Rusnak
df7094eb01
common/defs: regenerate support
2019-09-19 18:07:18 +02:00
Pavol Rusnak
68513a0b39
Merge pull request #538 from trezor/andrewkozlik/fido2-signcount
...
Disable FIDO2 signature counter for some relying parties
2019-09-19 17:00:51 +02:00
matejcik
8b4db0f074
trezorctl: use capabilities to detect Shamir backup ( fixes #445 )
2019-09-19 16:46:07 +02:00
Tomas Susanka
cefb1cf4fd
core: refactor slip39
2019-09-19 16:38:29 +02:00
Andrew Kozlik
315a30b42b
core/webauthn: Disable FIDO2 signature counter for some relying parties
2019-09-19 16:16:58 +02:00
Pavol Rusnak
5628d1254d
python: regenerate coins.json
2019-09-19 15:45:57 +02:00
Andrew Kozlik
f867b43251
trezorctl: Add sd-protect command.
2019-09-18 18:53:42 +02:00
Andrew Kozlik
06fc676cc9
common/messages: Add SdProtect message.
2019-09-18 18:53:42 +02:00
Andrew Kozlik
0677a8e570
Merge pull request #522 from trezor/andrewkozlik/fido2-mgmt
...
FIDO2 resident credential management
2019-09-17 20:35:53 +02:00
Pavol Rusnak
ae6d02edf5
python: typo in trezorctl
2019-09-17 18:35:04 +02:00
Andrew Kozlik
3e2ae5e469
trezorctl: Implement credential management command.
2019-09-17 18:32:31 +02:00
Andrew Kozlik
091053507d
common/messages: Add credential management message.
2019-09-17 18:32:31 +02:00
matejcik
d1f36f42c0
trezorctl: properly check firmware_present ( fixes #224 )
2019-09-17 16:05:30 +02:00
Pavol Rusnak
8cd9ea49de
python: introduce --bitcoin-only option to trezorctl firmware-update
2019-09-07 19:12:37 +02:00
Tomas Susanka
9e42a73650
build: make gen
2019-09-02 08:25:58 +02:00
TheCreator
64034c6d7d
common: enable UNO ( #472 )
2019-09-01 09:47:58 +02:00
matejcik
68e6a0077b
style: fix import order in trezorlib/misc.py
2019-08-29 15:19:02 +02:00
matejcik
5b8f542436
python: do not accept bytes for str protobuf fields
...
fixes #283
also adds typing information to misc.py
2019-08-29 15:07:50 +02:00
matejcik
ab74f55a95
python: improve ethereum_sign_tx
2019-08-29 15:07:50 +02:00
matejcik
3209e82018
python: refresh features after ClearSession
...
ClearSession will clear pin and password caches, which would otherwise
not be reflected in Features
2019-08-29 15:07:50 +02:00
Pavol Rusnak
1a71c7a3e8
common: rename Features.features to Features.capabilities
2019-08-28 15:02:30 +02:00
Pavol Rusnak
dde4c12796
common: add Feature.ShamirGroups to features
2019-08-28 09:25:11 +02:00
Pavol Rusnak
93f18b09bd
core+python: regenerate Features
2019-08-27 17:30:49 +02:00
matejcik
3e90c7fe20
python/trezorctl: add warning when initializing a T1 with Shamir
...
fixes #445
2019-08-27 17:01:25 +02:00
matejcik
9ce2fceabe
python: make gen_check fail if coins.json are outdated
2019-08-23 12:48:23 +02:00
matejcik
8e5aac9016
python: bump version to 0.11.5 (unreleased), add changelog
2019-08-22 18:15:37 +02:00
matejcik
132c827833
python: implement decoding of protobuf packed repeated fields
...
also add typing
fixes #426
2019-08-22 18:15:33 +02:00
Pavol Rusnak
cc184a0a30
common: introduce Features.features enum
2019-08-20 14:38:31 +02:00
Pavol Rusnak
2e59a1f445
python: add --beta switch to trezorctl firmware_update command
2019-08-16 18:43:43 +02:00
matejcik
9814f886ce
gen: regenerate coins.json
2019-08-12 12:57:25 +02:00
matejcik
6d407c84d7
python: use stdlib blake2s on python 3.6+
2019-08-12 12:57:25 +02:00
matejcik
aa19f9d737
python: show enum number in debug outputs
2019-08-12 12:57:25 +02:00
matejcik
67b879ac07
python: restructure package
...
This deserves some explanation.
* tests were moved to separate python/tests subdir
* trezorlib was moved to python/src, so that it does not exist on
PYTHONPATH by default
(see https://blog.ionelmc.ro/2014/05/25/python-packaging/ for details)
* everything was updated to understand the new structure
* trezorctl was changed from a top-level executable script to a module
`trezorlib.cli.trezorctl` and is installed via the entry_points
mechanism.
This should make it work normally on Windows!
The package should be installable as normal through pip and pipenv, no
changes are needed on that side.
The source package from pypi will include unit tests. (Device tests were
completely moved out). Wheel will exclude them, because users don't need
them.
That shrinks the .whl from 520 kB to 270 - nice!
python: reorganize remaining unit tests
2019-08-12 12:57:25 +02:00