1
0
mirror of https://github.com/trezor/trezor-firmware.git synced 2024-12-12 17:38:13 +00:00
Commit Graph

201 Commits

Author SHA1 Message Date
gabrielkerekes
dd9652cd07 feat(cardano): add get-native-script-hash call 2021-10-11 15:16:24 +02:00
matejcik
f083beb3c2 fix(python/trezorctl): fix "invalid value" of ChoiceType with default
[no changelog] as the changelog entry is explicitly added to previous
version
2021-09-07 13:37:23 +02:00
gabrielkerekes
b0c8590f00 feat(cardano): streamed transaction signing 2021-08-20 11:50:13 +02:00
matejcik
ee068b01ea chore(python): remove Lisk 2021-08-19 10:25:41 +02:00
Frederik Bolding
38fa9197ca feat(core,python): support for Ethereum EIP1559 transactions
Initial EIP1559 implementation

Fix a few small issues

Progress on Python lib implementation and firmware

Fix RLP length

Start fixing tests

Fix legacy transactions

Simplify API and logic

Add EIP1559 tests

Fix access list formatting

Fix UI visiblity issue

Fix commented out code

fix: correct linting issues

Fix access_list protobuf formatting

Remove unneeded code

Remove dead code

Check tx_type bounds for EIP 2718

Reduce code duplication

Prefer eip2718_type over re-using tx_type

Add more tests

Simplify format_access_list

Simplify sign_tx slightly

Change Access List format and add logic to encode it

Fix a bunch of small PR comments

Fix a linting issue

Move tests out of class and regenerate

Remove copy-pasted comments

Add access list to CLI

Simplify _parse_access_list_item

Fix small mistakes following rebase

Fix linting

Refactor to use a separate message for EIP 1559 tx

Simplify changed legacy code

Fix a few small PR comments

Fix linting

fix(legacy): recognize SignTxEIP1559 on legacy build

Fix PR comments
2021-08-10 11:00:29 +02:00
overcat
5cf873a03a feat(python/stellar): print a readable message when the user has not submitted a base64-encoded transaction envelope. 2021-08-06 13:14:57 +02:00
Jun Luo
543b9f407c refactor(python/stellar): Use Stellar Python SDK to parse Stellar transactions.
As a side effect, support for TransactionV1 format transaction is added.
2021-08-06 13:14:57 +02:00
matejcik
e7c40c9560 feat(python/trezorctl): trezorctl device reboot-to-bootloader 2021-07-29 15:32:42 +02:00
grdddj
13b8a6e54d fix(python/trezorctl): firmware download does not require connected trezor 2021-07-20 11:03:57 +02:00
grdddj
6bbc9a78f3 feat(python/trezorctl): improving and refactoring firmware CLI commands 2021-07-07 10:33:03 +02:00
gabrielkerekes
a3d0016a2f refactor(trezorlib/cardano): rename create_* functions
To avoid ambiguity between creating messages from parameters and parsing them from JSON.
2021-04-23 11:09:29 +02:00
gabrielkerekes
2313293477 feat(core/cardano): add support for catalyst voting registration 2021-04-23 11:09:29 +02:00
Pavol Rusnak
65cefbc879
docs: remove wallet.trezor.io references 2021-04-16 16:18:48 +02:00
mcudev
23abf7aff0 python/trezorctl: make bitcoin regtest a supported coin for trezorctl btc get-descriptor 2021-03-25 15:52:34 +01:00
matejcik
cb7152542d feat: drop DebugLinkShowText functionality 2021-03-18 10:59:51 +01:00
Pavol Rusnak
10edcb0d3a
doc(python): change wording from beta wallet to beta channel
[skip_ci]
2021-03-02 10:39:20 +01:00
Pavol Rusnak
48d1a7a880
fix(python): append checksum to descriptors (#1445) 2021-02-05 17:46:02 +01:00
Pavol Rusnak
81ae1d0ec0
fix(python): remove extraneous empty line from descriptors output
[skip_ci]
2021-02-03 14:58:30 +01:00
Rafael Korbas
e4c406822c Add multiasset sending and min validity to Cardano transactions 2021-01-27 18:26:40 +01:00
Rafael Korbas
44c7d23741 Cardano: map account paths to account numbers 2021-01-22 14:45:29 +01:00
Pavol Rusnak
88889472eb feat(python): add btc get-descriptor command 2021-01-08 14:17:09 +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
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
3d6d1a56ac feat(python): implement API compatibility with trezorlib 0.12 2020-10-30 10:25:51 +01:00
Martin Milata
3b138b4f98 feat(python): add experimental_features setting 2020-10-16 13:53:31 +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
Martin Milata
76a1760764 python: support SafetyChecks.PromptTemporarily 2020-09-18 09:02:40 +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
e96a9e8d39 python/trezorctl: make use of EndSession 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
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
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
matejcik
35c3af87dd python: rename unsafe_prompts to safety_checks 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
2678e64a99 python/trezorctl: improve file-based arguments 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
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
93b9f35678 Update trezorlib
Add certificates, withdrawals and metadata hash
2020-07-30 17:17:03 +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
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
f52c087cb6 python/trezorctl: implement common client and exception handling (fixes #226) 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
325dae890e python: completely drop trezorlib.coins and trezorlib.tx_api 2020-03-26 11:30:06 +01:00
Andrew Kozlik
2f905a1157 core/webauthn: Add algorithm and curve to WebAuthnListResidentCredentials response. 2020-03-12 15:45:26 +01:00
matejcik
1cc1382153 python/trezorctl: improve get-session 2020-02-12 17:18:50 +01:00
Tomas Susanka
2c0504ad1c
Merge pull request #803 from trezor/passphrase
Passphrase Redesign
2020-02-11 16:01:59 +01:00
matejcik
05a1d6f771 core/debug: add "show arbitrary screen" capability, for easier prototyping 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
d4343ad8b7 python/trezorctl: add get-session 2020-02-10 16:14:21 +01:00
matejcik
7513a65f9a
python: move passphrase-on-host logic to UI class 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
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
cd09f9ce94
all: modify passphrase source to always on device 2020-02-07 11:40:59 +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
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
matejcik
b26a430b85
python/firmware: shorten names for vendor header fields 2020-01-20 17:32:58 +01:00
matejcik
941087179f
python/firmware: clarify firmware image types 2020-01-20 17:32:58 +01:00
robert
afc897d693 trezorctl: add u2f-counter to recover 2019-12-29 12:25:54 +01:00
Pavol Rusnak
bb8d809a6d
common: change language field to IETF BCP 47 language tag 2019-12-08 11:27:10 +01:00
Andrew Kozlik
83fab3c220 trezorctl: Add set wipe-code command. 2019-11-25 12:32:20 +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
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
fd8aed6105 all: drop XPRV feature of LoadDevice 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
Andrew Kozlik
6cc44b133c tests/webauthn: Account for the increased limit on the number of resident credentials. 2019-11-01 16:14:16 +01: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
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
Andrew Kozlik
f867b43251 trezorctl: Add sd-protect command. 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
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
matejcik
3e90c7fe20 python/trezorctl: add warning when initializing a T1 with Shamir
fixes #445
2019-08-27 17:01:25 +02:00
Pavol Rusnak
2e59a1f445
python: add --beta switch to trezorctl firmware_update command 2019-08-16 18:43:43 +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