1
0
mirror of https://github.com/trezor/trezor-firmware.git synced 2024-12-27 16:48:09 +00:00
Commit Graph

759 Commits

Author SHA1 Message Date
Karel Bilek
29ad78d57b Ignoring non-webusb devices 2018-02-02 19:30:11 +01:00
slush
ac09c8d7de Make all transport prefixes lowercase. 2018-02-02 19:20:03 +01:00
slush
03a11450c1 Adding bridge transport to TrezorDevice, using as default transport 2018-02-02 19:17:48 +01:00
slush
a4cdae39af Introducing TrezorDevice, removing concept of transports from trezorctl 2018-02-02 18:29:20 +01:00
Pavol Rusnak
646338c414
small nits of last commit 2018-02-01 10:31:47 +01:00
Karel Bilek
759316e96f Add webusb to transports
V2 protocol with debug link is not tested.
2018-02-01 10:25:01 +01:00
Pavol Rusnak
7b844f0379
add Sint64 to protobuf 2018-01-30 15:04:24 +01:00
slush
11fd72890c trezorctl: Do not display PASSPHRASE on screen. 2018-01-29 18:09:42 +01:00
slush
ab42e93718 trezorctl: Allow entering passphrase by environment variable PASSPHRASE. 2018-01-29 18:04:48 +01:00
Pavol Rusnak
5b3e992521
transport: update to new bridge API 2018-01-29 17:48:08 +01:00
Anton Kolesnyk
a8cd90c3ad Add varying url to broadcast tx, depending on the api 2018-01-15 00:25:05 +01:00
Anton Kolesnyk
28c9820b3d Fixes for BlockCypher API and Dogecoin. 2018-01-14 16:14:39 +01:00
Pavol Rusnak
694bc7ac11
protobuf: don't generate storage protobuf 2018-01-12 13:06:43 +01:00
Pavol Rusnak
8f6b2449be
sort imports in pb2py 2018-01-12 12:58:39 +01:00
Pavol Rusnak
78d2c07d34
regenerate pb messages 2018-01-12 12:54:06 +01:00
Pavol Rusnak
47cfa178e4
tests: fix test_msg_ethereum_signtx.py 2018-01-11 23:06:47 +01:00
Tomas Susanka
0c517c1565 tests/device: code style typos 2018-01-11 22:54:08 +01:00
Tomas Susanka
4bbf5880ce tests/device: ethereum sign tx with expected checks 2018-01-11 22:54:08 +01:00
Pavol Rusnak
0c5eac2f39
skip None and empty ([]) fields in proto messages 2018-01-07 18:07:13 +01:00
Pavol Rusnak
f587135b8d
fix last commit (also skip print statement) 2018-01-04 16:55:27 +01:00
Tomas Susanka
4e01971e4c client: expected field check fix 2018-01-04 16:48:16 +01:00
slush
c71f234a8b Added deprecation warning for Python2
Removed dependency to google's protobuf in bridge transport
Fixed PinRequest handling
2017-12-29 19:19:18 +01:00
Pavol Rusnak
6b31ac9753
fix typo 2017-12-27 01:44:26 +01:00
Anton Kolesnyk
956d5e7149 Add sign_tx support for Dogecoin 2017-12-27 01:39:06 +01:00
Pavol Rusnak
888b6f9171
fix file flags 2017-12-24 22:37:24 +01:00
Martin Skoviera
dac97ed5b6 Fixed enums in WordRequestType 2017-12-24 22:37:01 +01:00
Pavol Rusnak
70e6d13c23
device tests: simplify, drop unittest dependency 2017-12-23 22:03:24 +01:00
Pavol Rusnak
1881b0e6fd
device tests: re-enable ethereum tests for T2 again 2017-12-23 13:51:18 +01:00
Roman Zeyde
31c4836073 udp: fix __str__ method and allow simple enumeration 2017-12-23 13:43:51 +01:00
Roman Zeyde
f8a277dfba transport_bridge: fix messages' module import 2017-12-23 13:43:51 +01:00
Roman Zeyde
8689440d90 client: fix PinMatrixRequestType enum usage 2017-12-23 13:43:51 +01:00
Saleem Rashid
b3ef649f64 device_tests: Add test_decred_multisig_change 2017-12-23 13:42:59 +01:00
Saleem Rashid
2df19127fd device_tests: Add test_decred_send_change 2017-12-23 13:42:59 +01:00
Saleem Rashid
0926ab9bc8 device_tests: Clean up test_decred_send 2017-12-23 13:42:59 +01:00
Pavol Rusnak
41b75c5655
device_tests: use skip_t1 and skip_t2 markers 2017-12-19 19:24:40 +01:00
Saleem Rashid
2c00526d23 client: Remove DEFAULT_CURVE
The device should choose the default curve based on the coin or message.
2017-12-19 18:47:18 +01:00
Pavol Rusnak
c550e5c703
revert bytes/str change in tools.py 2017-12-19 16:10:37 +01:00
Pavol Rusnak
8a37c28ed6
fix typos in test names 2017-12-19 15:54:07 +01:00
Saleem Rashid
2996138341 protobuf: Call _fill_missing in __init__ 2017-12-19 13:16:22 +01:00
Saleem Rashid
1c8f03968c tests: Move to trezorlib.tests 2017-12-19 13:16:22 +01:00
Pavol Rusnak
753e91dff0
protobuf: encode to utf-8 bytestream 2017-12-18 22:44:54 +01:00
Pavol Rusnak
094d0b6ffb
revert ckd_public.py removal of bytes/string handling 2017-12-18 22:40:11 +01:00
Pavol Rusnak
c1b1bedb8c
ed25519: remove py2/py3 handling in ed25519 funcs as well 2017-12-18 22:34:15 +01:00
Pavol Rusnak
a9291e89c5
no need to use byteindex/iterbytes anymore 2017-12-18 22:26:55 +01:00
Saleem Rashid
9229f8b80a coins: Add Decred Testnet 2017-12-18 16:34:43 +01:00
Saleem Rashid
c48724eca6 client: Fix string encoding for Python 2 2017-12-17 22:10:40 +01:00
Pavol Rusnak
60329f0b65
fix typo 2017-12-17 03:23:37 +01:00
slush
653ed4a67b Added registering custom protobuf messages by application. 2017-12-17 03:17:37 +01:00
slush
da335049d7 Removed excessive logging 2017-12-17 02:58:35 +01:00
slush
3fedf44bf5 Bump version to 0.9.0a 2017-12-17 02:31:43 +01:00
slush
a27217811b Rework from Google's protobuf to pure-python protobuf implementation 2017-12-17 02:19:16 +01:00
Saleem Rashid
1193b0ee85 transport_udp: Support TREZOR_TRANSPORT_V1 2017-12-16 22:47:19 +01:00
slush
f5c1587396 Version moved from version.py to __init__.py 2017-12-02 18:48:44 +01:00
slush
59ef832424 Add 'trezorctl version' to track version of installed package 2017-12-02 18:31:57 +01:00
Pavol Rusnak
ae663ffe0c
client: don't accept non-numerical values for PIN 2017-11-28 19:59:06 +01:00
Jochen Hoenicke
69067c9280 Parse json floats as string
With python-2.7 the float values are sometimes rounded to unacceptable
levels, e.g. stripping the last two digits for values over 100k BTC.
This change parses floats as strings to avoid rounding.

Refactored get_url out of fetch_json to make it easier to add
new tx_api with a different url scheme.
2017-11-28 19:55:31 +01:00
Nicola Larosa
62541cc55f Fix encoding error in trezorlib.client.ProtocolMixin.load_device_by_mnemonic (#153) 2017-11-15 13:33:21 +01:00
Nicola Larosa
5d2d621055 Fix error when using trezorctl to connect to the trezor-core emulator. (#152)
* Fix error when using trezorctl to connect to the trezor-core emulator.

* Restore the ability to specify the host without the port
2017-11-13 22:15:09 +01:00
Pavol Rusnak
0d9ee4376d
use Mnemonic.normalize_string where possible 2017-11-13 22:13:32 +01:00
Pavol Rusnak
b9b11fa265
style: fix flake8 error 2017-11-08 21:25:15 +01:00
Pavol Rusnak
a5fc76d8c9
don't use generic Exception, but rather specific subclass 2017-11-06 11:10:23 +01:00
Jan Pochyla
fcd793e6e4 transport_hid: force V1 transport with env var 2017-10-31 13:51:13 +01:00
Pavol Rusnak
23d75bfc10
trezorctl: sign_tx command based on tx_sign_tool by mruddy 2017-10-24 00:50:01 +02:00
Pavol Rusnak
54426761c6
fix transport_hid for python2 2017-10-23 17:28:24 +02:00
Pavol Rusnak
5057e022c0
trezorlib: move ed25519cosi and ed25519raw from trezor-core 2017-10-04 00:38:53 +02:00
Pavol Rusnak
a71c33d123
trezorctl+client: add support for CoSi commit/sign 2017-10-03 18:43:28 +02:00
bithobbes
54df69a407 client.py: matrix recovery info: mention backspace
It is not obvious that it is possible to go back by backspace. Knowing this makes data entry much more comfortable.
2017-09-13 17:54:42 +09:00
Jan Pochyla
66ba2c20c0 transport: add TransportException
Fixes #134
2017-09-05 17:16:04 +02:00
Jan Pochyla
ac0184413d transport_hid: refcount for hid handle 2017-09-05 17:15:19 +02:00
Pavol Rusnak
dffa93bee3
fix last commit (newline eof) 2017-09-04 17:40:15 +02:00
Jan Pochyla
b60ab51f9b transport_hid: more strict interface detection 2017-09-04 17:30:07 +02:00
Pavol Rusnak
2a3f613242
hid: fix product_ids for v2 2017-09-04 14:31:15 +02:00
Jan Pochyla
52f96b3792 transport_hid: raise on missing debuglink 2017-09-04 13:44:19 +02:00
Jan Pochyla
8202971109 rework lazy connecting in client 2017-09-04 13:36:08 +02:00
Jan Pochyla
051f8e961b protocol: 2/3 compat fixes 2017-09-04 11:44:33 +02:00
Jan Pochyla
3d3c2a29d0 client: add missing close method
close() is implemented in some of the mixins to dispose of any resources.
2017-09-04 11:30:34 +02:00
mruddy
02437d166a fix v1 protocol 2017-09-03 19:34:01 +02:00
Saleem Rashid
eb1d66e27f trezorlib: Add nem_get_address 2017-09-03 19:05:29 +02:00
Saleem Rashid
58b56bead6 trezorctl: Add nem_sign_tx 2017-09-03 19:05:29 +02:00
Saleem Rashid
991d367416 trezorlib: Update Protocol Buffers 2017-09-03 19:05:29 +02:00
Jan Pochyla
888a1edafa fix style 2017-08-24 14:41:31 +02:00
Jan Pochyla
bc42eb68d6 transports: refactor, split protocol code 2017-08-24 14:29:27 +02:00
Pavol Rusnak
32fa08f38b
tests: remove estimate_tx_size 2017-07-31 14:00:26 +02:00
Saleem Rashid
b469519e26 client: fix matrix recovery, use named enums, use isdigit(), ignore broken E721 test 2017-07-31 13:35:31 +02:00
Pavol Rusnak
81d5170c10
tests: start rewriting device tests to pytest 2017-07-28 18:07:20 +02:00
Jan Pochyla
6df01fbfa3 TransportV2: adapt to recent changes
- remove checksum
- add sequence numbers
2017-07-28 15:58:20 +02:00
Jochen Hoenicke
9917d9ebfc
New unit tests for signing (bitcoin cash) 2017-07-27 21:51:00 +02:00
Pavol Rusnak
8133317172
add SignMessage.script_type 2017-07-24 16:11:38 +02:00
Pavol Rusnak
de6402e95e
implement set_flags (aka ApplyFlags) 2017-07-17 18:37:15 +02:00
Pavol Rusnak
d865c0ea31
trezorctl: load_device -s now loads SLIP-0014 mnemonic, --skip-checksum renamed to --ignore-checksum 2017-07-16 14:54:50 +02:00
Pavol Rusnak
23ab43d612
ethereum: implement EthereumSignMessage/EthereumVerifyMessage 2017-07-12 18:35:54 +02:00
Pavol Rusnak
c7a2c72a75
simplify SelfTest.payload 2017-07-10 19:08:16 +02:00
Pavol Rusnak
1727b9a9b6
add SelfTest.payload 2017-07-10 17:40:13 +02:00
Pavol Rusnak
f73fc33439
drop internal use of protobuf_json, use json_format provided by google.protobuf 2017-07-10 15:36:44 +02:00
Pavol Rusnak
b335d30b8d
use click in trezorctl 2017-07-05 12:55:38 +02:00
Pavol Rusnak
0ee1667c6f
trezorctl: cleanup 2017-07-05 12:55:38 +02:00
Pavol Rusnak
bcf54dbe94
trezorctl/client: add self_test 2017-07-03 18:49:03 +02:00
Pavol Rusnak
b9293d6bcb
regenerate protobuf 2017-07-03 18:42:21 +02:00
Pavol Rusnak
9a709832a9
tests: unit test for ResetDevice_skipbackup (and subsequent BackupDevice) 2017-06-28 18:04:19 +02:00
Pavol Rusnak
33f274d145
style: use flake8 2017-06-23 21:52:53 +02:00
Pavol Rusnak
71996c1e43
update protobuf, update tox.ini, prepare for BackupDevice 2017-06-23 19:26:35 +02:00
Roman Zeyde
0d76936174 Allow testing recovery with an initialized device 2017-06-23 00:08:59 +02:00
Pavol Rusnak
f50d547ce4
regenerate protobuf, added RecoveryDevice.dry_run 2017-06-22 12:38:57 +02:00
Pavol Rusnak
f880a09ae7
add protoc version and trezor-common revision to autogenerated files 2017-06-21 13:44:26 +02:00
Pavol Rusnak
609b8d4a4a
fix stderr.write usage 2017-06-20 16:36:40 +02:00
Pavol Rusnak
564e6590c2
use FirmwareErase.length field 2017-06-20 16:32:54 +02:00
Pavol Rusnak
e7a56899c6
more python3 compatibility 2017-06-19 00:00:26 +02:00
Pavol Rusnak
de2f9e7c14
protob: regenerate, fix using old failure codes 2017-06-18 23:18:23 +02:00
Roman Zeyde
a2db5a57f2 Fix client.py and protobuf_json.py for Python 3 support 2017-06-13 15:16:12 +02:00
Pavol Rusnak
e39021d7fd
add wire_tiny, wire_bootloader options 2017-05-29 14:07:48 +02:00
Pavol Rusnak
318355a896
update protobuf 2017-05-12 22:47:46 +02:00
Pavol Rusnak
2363db721a
fix stderr.write to use bytes 2017-05-03 17:50:37 +02:00
Peter Banik
a99e29a05f
Added coin_name argument to get_public_node and trezorctl (#108) 2017-04-21 19:23:59 +02:00
Peter Banik
ca1d3e5f39 Added Decred to coin list (#109) 2017-04-21 19:14:04 +02:00
Tomas Rojas
637d45b196 Configure Bridge only once per process (#107)
This saves a lot of time on requests retrieving config_signed.bin and
reconfiguring the bridge for every device enumeration or transport
instantiation.
2017-04-20 13:16:15 +02:00
Pavol Rusnak
504db8283b
add version and lock_time attributes to sign_tx function 2017-04-19 14:19:26 +02:00
Pavol Rusnak
bee9af1f90
use v1 transport for T2 bootloader (for now) 2017-04-12 17:54:34 +02:00
Pavol Rusnak
29348f4098
add new firmware update method, update protobuf 2017-04-12 14:11:42 +02:00
Pavol Rusnak
4758eb7b07
add more coins to coin expansion 2017-03-04 16:20:38 +01:00
mruddy
72ab93bd87 add a tx signing tool that handles bitcoin, testnet, and litecoin 2017-02-26 16:44:49 +01:00
mruddy
b29331ca40
fix UnboundLocalError cache_file referenced before assignment (#102) 2017-02-26 16:38:56 +01:00
mruddy
a2792cda19 load_device_by_mnemonic and recovery_device: expand unique mnemonic word prefix matches (#96) 2017-02-11 20:15:09 +01:00
mruddy
de94bf2247 load_device_by_mnemonic: normalize mnemonic before validation (#95) 2017-02-09 14:25:32 +01:00
Jochen Hoenicke
1dc3152c11 Make ScrambledWords default recovery method (#93)
For backwards compatibility, existing code should use the old recovery
method unless it explicitly states that it is compatible to the new
one.
2017-01-26 13:58:33 +01:00
Jochen Hoenicke
607893f9ac Ethereum: EIP-155 replay protection
Added chain_id parameter to sign tx (and updated protobuf).
Added a unit test with chain_id for Ropsten testnet.
trezorctl:
 - Fixed compatibility with new ethjsonrpc
 - added chain_id parameter
2017-01-22 19:13:21 +01:00
Jochen Hoenicke
4b98513ff7 Updated protobuf
Ethereum: sign_tx eip-155 change
2017-01-22 19:13:21 +01:00
Pavol Rusnak
795427588a
add trezor.io to supported vendors 2017-01-17 14:13:02 +01:00
Jochen Hoenicke
3e2cccf225 SegWit: Display address on Trezor 2017-01-02 21:43:49 +01:00
Pavol Rusnak
c86201dc5b
add Qt5 support for PinMatrixWidget 2016-11-28 18:03:52 +01:00
Pavol Rusnak
06cedd2150
move device (=TREZOR) tests to tests/device_tests, create tests/unit_tests for unit tests 2016-11-28 16:04:55 +01:00
Pavol Rusnak
ec966a0111
rename txcache files to json 2016-11-28 14:33:24 +01:00
Pavol Rusnak
725b64bede
update protobuf_json.py to be as close as possible to upstream
https://github.com/dpp-name/protobuf-json/blob/master/protobuf_json.py
2016-11-26 00:15:36 +01:00
Pavol Rusnak
0bba092741
add LGPLv3 headers to sources files 2016-11-25 22:53:55 +01:00
Pavol Rusnak
a6c489ab4b
update protobuf 2016-11-23 13:27:21 +01:00
Jochen Hoenicke
c935b51849
Support for matrix recovery
See issue trezor/trezor-mcu#96
2016-11-23 11:42:20 +01:00
Jan Pochyla
737200c7ef debuglink: fix debuglink for V2 2016-11-15 13:46:00 +01:00
Pavol Rusnak
046ced3f81
rework txapi class to use local cache, add txcache fixtures 2016-11-08 15:07:58 +01:00
Pavol Rusnak
2257117278
update protobuf 2016-11-05 21:58:32 +01:00
Pavol Rusnak
02c319f850
trezorctl: accept also cointype/a/b/c as get_address path 2016-10-29 15:11:56 +02:00
Pavol Rusnak
68d490917f
trezorctl: accept also m/a/b/c as get_address path 2016-10-29 14:59:57 +02:00
Pavol Rusnak
22faa4cafa
add msg_signtx_zcash unittest 2016-10-21 15:25:24 +02:00
Roman Zeyde
d1397c779c transport_hid: return sorted list of devices (#77)
This should be deterministic, since dict.values() order is unpredictable.
2016-10-14 19:55:06 +02:00
Pavol Rusnak
c6094dc9ad
verify_message now requires coin_name 2016-10-10 11:02:04 +02:00
Pavol Rusnak
bac91afca7
use usage_page to detect interfaces 2016-10-03 10:39:58 +02:00
Dominik Kozaczko
933bc12985 fix imports (#72) 2016-09-27 22:49:51 +02:00
Pavol Rusnak
25672288cf
use hid_version=2 for HidTransportV2 2016-09-26 20:52:33 +02:00
Pavol Rusnak
ec4e85b008
fix v2 protocol 2016-09-26 17:32:54 +02:00
Pavol Rusnak
ed9f7d838f
update protobuf 2016-09-26 12:46:38 +02:00
Jan Pochyla
80ffa27052 enable crc32, update protocol, add session closing 2016-09-21 16:51:29 +02:00
Jan Pochyla
4d3e4574ef add session request to TransportV2, add @session helper 2016-09-13 12:25:06 +02:00
Jochen Hoenicke
d9df63ad89 Allow leading 0x in data. Handle new contracts.
Specify 0x or "" as destination to create a new contract.
Leading 0x in data is just ignored (data must always be given in hex).
2016-08-23 01:19:22 +02:00
Jochen Hoenicke
c85600b9bd
Fix ethereum_sign_tx
- Workaround bug in rlp.utils.int_to_big_endian
- Command line tool now expects data to be a hexlified string
2016-08-19 23:15:38 +02:00
Pavol Rusnak
78c6328b36
fix ethereum_sign_tx 2016-08-10 18:30:04 +02:00
Jan Pochyla
e9427b04f3 fixes for latest V2 format, add checksum 2016-08-05 13:14:30 +02:00
Jochen Hoenicke
90122cf29a Fix for older python version 2016-07-19 21:37:54 +02:00
Jan Pochyla
a129b072d3 ignore socket.recv timeout in udp transport 2016-07-14 15:57:05 +02:00
Jan Pochyla
0f48e15c48 fix v2 transport 2016-07-13 17:41:08 +02:00
slush0
39e827a90a Reworked get_transport for hid/bridge. 2016-06-30 16:47:17 +02:00
Pavol Rusnak
3b4f226d48
cleanup transports 2016-06-30 16:23:07 +02:00
slush0
6aaa5928e2 Fixed _write_chunk for hid_version==2 2016-06-28 09:51:57 +02:00
slush0
9b409ae6a4 Refactored Bridge transport, WIP 2016-06-28 09:51:57 +02:00
slush0
514a7643f5 Bridge uses wallet.trezor.io for config file. 2016-06-28 09:51:57 +02:00
slush0
58fd1bb512 Reworked handling of DEVICE_IDS 2016-06-28 09:51:57 +02:00
slush0
97ce804cb7 Pipe w/ trezor1-emu works
UDP write to trezor2-emu works, reads to be tested
2016-06-28 09:51:57 +02:00
slush0
e8f76ebd03 WIP 2016-06-28 09:51:57 +02:00
Jochen Hoenicke
d5daf1d2f0
Fixed unit tests (also for Python 3)
Removed old unit tests for non-implemented functions (SimpleSignTx, Ecies).
2016-06-28 01:06:51 +02:00
Jochen Hoenicke
eac9c99e32
Bug fixes
- Ignore u2f interface instead of failing.
- Fix set_mnenomic in debug client
- Don't encode utf-8 mnenomics to byte arrays.
2016-06-28 00:56:03 +02:00
Jochen Hoenicke
e51fb2078f
new message SetU2FCounter 2016-06-28 00:55:46 +02:00
Jochen Hoenicke
c388d0837c
New debug messages 2016-06-28 00:53:46 +02:00
slush0
def164fbd4 Fixed typo in set_mnemonic 2016-06-26 22:03:03 +02:00
Pavol Rusnak
73864e2979
determine hid version 2016-06-23 18:38:34 +02:00
Pavol Rusnak
3fc42a8bff
update protobuf 2016-06-21 12:22:39 +02:00
Roman Zeyde
f60c42cd94 Add ECDH support to client 2016-06-12 15:39:04 +03:00
Roman Zeyde
bc13f8f0a0 Update protobuf definitions for ECDH support 2016-06-12 14:25:06 +03:00
Pavol Rusnak
4d0d3af4e7 Merge pull request #61 from Arachnid/ethereum
Implement ethereum_sign_tx
2016-05-27 10:30:32 +02:00
Nick Johnson
0c3449298c Implement ethereum_sign_tx 2016-05-27 07:13:23 +01:00
Pavol Rusnak
3a108ee8a5
fix pylint warnings 2016-05-26 17:20:44 +02:00
Nick Johnson
593406ef46 Rename to ethereum_get_address, use binascii.hexlify 2016-05-26 07:47:04 +01:00
Nick Johnson
67bd1c223e Add support for get_ethereum_address to trezorlib and trezorctl. 2016-05-24 20:33:17 +01:00
Nick Johnson
1dce3088f3 Update PB for Ethereum message types 2016-05-24 20:32:31 +01:00
Pavol Rusnak
54c8bfd1d4
import print function from future 2016-05-20 22:27:20 +02:00
Pavol Rusnak
1fe94e7fa5
more python3 fixes 2016-05-20 19:18:33 +02:00
Pavol Rusnak
fdc3cff1d6
use requests instead of urllib mess 2016-05-20 16:09:14 +02:00
Pavol Rusnak
f7cc1cd3a1
remove FIXME :) 2016-05-20 13:55:43 +02:00
Pavol Rusnak
de9b10fd90
more python3 stuff 2016-05-20 13:46:51 +02:00
Roman Zeyde
c567ceec94
transport_hid: fix buffer handling for Python 3 2016-05-20 13:46:51 +02:00
slush0
64fadde3e0
Passes first unit tests (against trezor-emu over transport_pipe).
WIP: Issue with console printing of protobuf messages (probably bug in protobuf for python3 itself).
WIP: Disabled Bridge transport because of json_protobuf incompatibility with python3.
WIP: Broken expectations of returned objects in unit tests
2016-05-20 13:46:51 +02:00
slush0
6ec2ff3eac
Preparation for python3 support (WIP) 2016-05-20 13:46:51 +02:00
Pavol Rusnak
79a64abd24
Merge branch 'master' of github.com:trezor/python-trezor 2016-05-20 13:31:22 +02:00
slush0
ab514b6bb5 Fixed UDP transport 2016-05-19 18:59:23 +02:00
Pavol Rusnak
828026dd40
Merge branch 'segwit' of github.com:jhoenicke/python-trezor 2016-05-19 11:59:19 +02:00
Pavol Rusnak
ec870f3a57
update protobuf, disable filecache 2016-05-19 11:50:33 +02:00
Jochen Hoenicke
aa3392fa7c SegWit support 2016-05-01 14:21:20 +02:00
slush0
0341e6f724 Removed unused imports 2016-04-30 02:37:46 +02:00
slush0
413ed2259a Added UDP Socket transport 2016-04-30 02:37:18 +02:00
Pavol Rusnak
8b7e6058ed
Revert "Added code to make trezor-agent work with keepkey."
This reverts commit 53e361b70b.

As requested by @dstanchfield here: https://github.com/trezor/python-trezor/pull/49#issuecomment-183486838
2016-02-12 23:11:57 +01:00
Pavol Rusnak
f3449fcbd7
fix spelling of TREZOR 2016-02-10 16:48:13 +01:00
Neil Booth
bc14e05998 ProtocolMixin: make expand_path static 2016-02-10 23:53:14 +09:00
Pavol Rusnak
f1868b72cd Merge pull request #49 from keepkey/master
Added code to make trezor-agent work with keepkey.
2016-02-10 15:37:39 +01:00
Pavol Rusnak
915cf0099e
fix interface number handling 2016-01-17 00:37:39 +01:00
Pavol Rusnak
fc1b12d80d
fix whitespace 2016-01-13 00:17:38 +01:00
Pavol Rusnak
a8a68ca5fc
fix typo 2016-01-13 00:15:30 +01:00
Pavol Rusnak
62e8b57ccf
cleanup old stuff 2016-01-12 20:13:17 +01:00
Kenneth Heutmaker
53e361b70b Added code to make trezor-agent work with keepkey. 2016-01-07 12:21:58 -08:00
Pavol Rusnak
c025595951
add iv parameter to encrypt_keyvalue/decrypt_keyvalue 2015-12-24 17:31:09 +01:00
Karel Bilek
f149e705f4 fixing bridge transport enumerate + init 2015-12-21 18:23:44 +01:00
Kefkius
a24861ba3f
Fix PyQt4 import 2015-11-24 14:33:35 -05:00
Pavol Rusnak
c2c70c5c6c
implement get_public_node.arguments --ecdsa-curve-name --show-display 2015-11-19 11:47:19 +01:00
Pavol Rusnak
ef00dfa403 update protobuf 2015-08-21 20:30:31 +02:00
Pavol Rusnak
b2bc509218 added description for pin entering 2015-08-21 15:16:27 +02:00
Roman Zeyde
b155b83ca5 update protobuf with ECDSA curve selection 2015-06-23 17:26:31 +03:00
Pavol Rusnak
16c07561b5 don't assign tx_api when not needed 2015-06-03 14:53:53 +02:00
Jochen Hoenicke
337fe029fd insight api: use hex code
The insight api transaction parser used to look at the assembly to
reconstruct the input and output scripts.  This patch changes it to
use the hex input directly.  This fixes parsing some instructions with
unknown opcodes (e.g. multisig inputs with "0" opcode).
2015-05-10 16:11:03 +02:00
Pavol Rusnak
e2a8f08581 add local version of filecache (used just for unittests), cache globally (to tmpdir) 2015-05-07 18:29:38 +02:00
Jochen Hoenicke
6cedf149d2 Don't spam the usb.
The connected logic was flawed.  After 10 s it would continuously
check if the device is still connected.  Now, we reset the timer
after every check.
2015-04-29 19:31:48 +02:00
Jochen Hoenicke
6f59de799a Verify the localback.net certificate 2015-03-05 11:15:53 +01:00
Jochen Hoenicke
9107aab76a Use right URL for bridge and keep-alive connection
The bridge is using https with a certificate signed for localback.net.

Use a session object (self.conn) to keep connection alive and
prevent costly ssl handshakes for every call.
2015-03-05 11:00:18 +01:00
nelisky
f3b7629a4f Prevent floating point issues when pushing output amount 2015-03-03 23:37:32 +00:00
nelisky
e4429242aa Allow insight_tx to be passed a dict object instead of an url 2015-03-03 23:36:51 +00:00
Pavol Rusnak
f74d31788c old PIN -> current PIN 2015-02-28 14:06:23 +01:00
Pavol Rusnak
45d9955bc2 speed up communication 2015-02-25 17:54:27 +01:00
Pavol Rusnak
049166d6c9 disable filecache by default 2015-02-22 14:40:21 +01:00
Pavol Rusnak
109cca5ab3 fix _customPrintFieldValue 2015-02-21 12:52:01 +01:00
Pavol Rusnak
68ef2d2262 implement SignIdentity/SignedIdentity 2015-02-20 18:50:53 +01:00
Pavol Rusnak
a996573c81 update pb 2015-02-20 16:47:23 +01:00
Pavol Rusnak
686b8cc4b8 update protobuf, introduce homescreen 2015-02-04 20:53:22 +01:00
Pavol Rusnak
85d8fa90c8 update protobuf, enable OP_RETURN 2015-02-04 15:47:44 +01:00
slush0
bb4d21ba65 Added feature check 2015-01-28 05:31:30 +01:00
slush0
bd7c575be3 Fixed testnet URL 2015-01-23 21:24:15 +01:00
Pavol Rusnak
7f222e3c1e update pb 2014-12-23 01:44:09 +01:00
Pavol Rusnak
399deeee67 add tests for multisig tx change confirmation 2014-12-20 23:45:40 +01:00
Pavol Rusnak
fdba11adeb update pb 2014-12-15 15:02:25 +01:00
slush0
77b6b5873d Compiled pb 2014-12-15 14:37:14 +01:00
Pavol Rusnak
bc07b044b0 update pb 2014-12-13 19:09:14 +01:00
Pavol Rusnak
63ee124254 test for ApplySettings.use_passphrase 2014-12-13 19:07:43 +01:00
slush0
bb88abab1e Reflects changes in multisig API: Pass HDNodeType+address_n instead of pubkeys 2014-12-12 22:19:30 +01:00
slush0
92bb796fd7 Compiled pb 2014-12-12 22:19:00 +01:00
Pavol Rusnak
c0d0b191d6 test_msg_getaddress_show test now supports multisig 2014-12-10 18:04:26 +01:00
Pavol Rusnak
4f7bd1be06 update pb 2014-12-10 15:43:00 +01:00
Pavol Rusnak
610547cf32 add button_wait feature for tests 2014-12-10 15:26:18 +01:00
slush0
bc9a43986f Compiled pb 2014-12-04 01:30:31 +01:00
Pavol Rusnak
87d3688ed7 update bitcore to insight in tx_api.py 2014-12-02 03:58:26 +01:00
Pavol Rusnak
608251bece update encrypt/decrypt message commands 2014-11-26 18:49:22 +01:00
Pavol Rusnak
a939d3de1d fix getpass usage 2014-11-23 13:28:09 +01:00
Pavol Rusnak
1c6ed65921 add more tests to test_msg_verifymessage 2014-11-07 01:59:44 +01:00
Pavol Rusnak
667577abc4 add screenshot feature (default disabled) 2014-11-07 01:59:44 +01:00
David Dworken
86a46933b5 Use getpass('') and confirm passphrase
Added getpass as a dependency
Switched pin entry from raw_input() to getpass.getpass('')
Switch passphrase entry from raw_input() to getpass.getpass('')
Ask user to confirm passphrase
2014-11-06 19:09:53 -05:00
Pavol Rusnak
f9e45d8e94 rework EncryptMessage/DecryptMessage 2014-11-04 02:43:21 +01:00
Pavol Rusnak
d65d7cb855 update protobuf 2014-10-30 00:48:06 +01:00
Pavol Rusnak
7963db8455 update protobuf 2014-10-22 19:48:45 +02:00
Timothy
e7cb1d474a Document transport_hid class 2014-08-26 14:06:19 +00:00
Timothy
78e9afae6e Document Transport class 2014-08-26 13:54:06 +00:00
Liz Fong-Jones
81a6a1a6d2 Fix missing %s in format string 2014-08-11 19:25:36 -04:00
Pavol Rusnak
ef87f2e1d3 add GetAddress.show_display; ButtonRequest_Address 2014-08-08 18:08:50 +02:00
Pavol Rusnak
3527a51669 update pb 2014-08-07 21:14:11 +02:00
Pavol Rusnak
c2de56eb46 add trezorlib/qt/__init__.py 2014-07-30 21:05:13 +02:00
Pavol Rusnak
608025419b config will stay in hex form (IE) 2014-07-27 16:22:24 +02:00
Pavol Rusnak
70dd320c1f fix protobuf_json while handling enums
use error field from trezord
2014-07-26 17:15:12 +02:00
Pavol Rusnak
a527456db5 add transport for bridge 2014-07-26 16:40:51 +02:00
slush0
aec4908fd7 HidTransport raises ConnectionException when disconnected during HID session 2014-07-10 00:44:46 +02:00
slush0
706807e0b6 Removed debugging print 2014-07-10 00:02:34 +02:00
slush0
0106e6b6fb Added '?' to pinmatrix 2014-07-09 23:41:17 +02:00
Pavol Rusnak
c31157fea1 print firmware fingerprint on upload 2014-07-02 22:59:12 +02:00
Pavol Rusnak
2d2e31fa50 refactor pprint (add new inspection fields, but comment them) 2014-06-27 17:04:10 +02:00
Pavol Rusnak
260a4322a6 add ClearSession message with unit test 2014-06-17 15:31:10 +02:00
Pavol Rusnak
a3d22dc56e add tests for EncryptMessage/DecryptMessage 2014-06-16 17:16:15 +02:00
Pavol Rusnak
1d84a35095 fix str+bool concat 2014-06-13 19:24:53 +02:00
Pavol Rusnak
cfc8fdc214 adapt new API of EncryptMessage / DecryptMessage 2014-06-13 16:42:23 +02:00
slush0
9b9f0e9415 Removed all outputs to stdout, uses stderr instead 2014-06-12 17:40:21 +02:00
Pavol Rusnak
8ea46f34a2 add EncryptMessage and DecryptMessage 2014-06-12 17:07:14 +02:00
slush0
f164e59d86 Redirects text UI to error log instead of stdout (useful for scripting) 2014-06-12 13:26:24 +02:00
slush0
e4fe84cb52 Added client.encrypt_keyvalue, client.decrypt_keyvalue 2014-06-06 14:40:07 +02:00
slush0
0f24602832 compiled pb 2014-06-06 14:39:50 +02:00
slush0
4e963cfd3c Fixed handling of coinbase tx 2014-05-28 14:38:44 +02:00
Pavol Rusnak
258e6e7fb2 rebuild pb 2014-05-26 00:59:42 +02:00
slush0
54bc7239ce Adde debug_processor to sign_tx() for unittest purposes 2014-04-18 18:56:12 +02:00
slush0
de1bef9533 Check if all signatures has been provided correctly 2014-04-18 18:10:00 +02:00
Pavol Rusnak
72753fa914 fix typo 2014-04-17 18:40:50 +02:00
Pavol Rusnak
c642605ad2 modify simplesigntx to match signtx semantics 2014-04-17 16:30:19 +02:00
slush0
1d46bd70a9 Reworked TransactionType (again) 2014-04-17 14:05:45 +02:00
slush0
96966309d3 Compiled pb 2014-04-17 14:05:38 +02:00
slush0
48ad2f6785 Updates stream signing algo 2014-04-17 08:32:50 +02:00
slush0
994ff45a30 Updated TransactionType 2014-04-17 08:32:50 +02:00
slush0
400f3e669f Reworked RequestTx 2014-04-10 15:23:35 +02:00
slush0
ff77261a61 Fixed bin_output 2014-04-10 15:23:35 +02:00
slush0
345f6d6814 Compiled pb 2014-04-10 15:23:35 +02:00
Pavol Rusnak
5dc0be857c update pb 2014-04-07 18:37:03 +02:00
slush0
2c5e663aa8 Fixed spacing 2014-04-02 20:07:08 +02:00
Pavol Rusnak
60df691bb2 make txapi class more universal 2014-04-02 19:31:47 +02:00
Pavol Rusnak
c3f74420a4 add OP_EQUAL to txapi parser 2014-04-02 19:18:14 +02:00
Pavol Rusnak
0ca0594077 parse sequence in txapi as well 2014-03-30 00:44:42 +01:00
Pavol Rusnak
49eec8b78e txapi cleanup 2014-03-29 21:31:17 +01:00
Pavol Rusnak
7a1e2827c8 check for known scriptPubKey asm 2014-03-28 21:48:48 +01:00
Pavol Rusnak
38ed16934f use bitcore for tx api 2014-03-28 21:34:15 +01:00
Pavol Rusnak
860aa753c9 put TXAPIs into one location 2014-03-28 19:51:56 +01:00
Pavol Rusnak
412528d522 fix PinMatrixRequest type enum 2014-03-28 16:26:48 +01:00
Pavol Rusnak
dc0d7fd1d6 initialize version/lock_time in TransactionType 2014-03-27 19:10:24 +01:00
Pavol Rusnak
51b9d4e177 recompile pb, adjust TransactionType constructors 2014-03-25 19:36:46 +01:00
Pavol Rusnak
8f870c54ed recompile pb 2014-03-23 20:01:19 +01:00
Pavol Rusnak
0a2e1b66c9 update pb 2014-03-14 21:10:02 +01:00
Pavol Rusnak
560e2a7038 rebuild pb 2014-03-13 15:01:50 +01:00
Pavol Rusnak
27070e84a9 support binary messages in sign/verify message 2014-03-11 18:06:38 +01:00
slush0
099cdd2578 Fixed load_device_by_xprv 2014-03-07 21:57:50 +01:00
Pavol Rusnak
4fc8868589 rename word variables in DebugLinkState message 2014-03-07 17:38:38 +01:00
Pavol Rusnak
ffa289967c adapt to new pb, small fixes 2014-03-01 12:08:43 +01:00
slush0
4b9cc6cb78 Added debug printing to debuglink communication 2014-02-25 19:31:31 +01:00
slush0
89d17297ce Compiled pb 2014-02-22 00:36:06 +01:00
slush0
ff31a7bebc Compiled pb 2014-02-21 22:42:14 +01:00
slush0
39348895f9 Fixed unittest for get_subnode CKD 2014-02-21 22:19:55 +01:00
slush0
e19c8881c0 Removed 'version' from HDNodeType & fixed unit tests 2014-02-21 22:16:13 +01:00
slush0
60e23c38d3 Compiled pb 2014-02-21 22:16:13 +01:00
slush0
4b69996244 Implemented DebugLink->word request 2014-02-21 22:16:13 +01:00
Pavol Rusnak
f2cb352ac3 don't pprint FirmwareUpload message 2014-02-21 19:13:14 +01:00
Pavol Rusnak
729fac2077 add coin param to get_public_node call; new test for getpublickey message 2014-02-21 18:57:21 +01:00
slush0
eae7d98b8a set_expected_responses enforces using 'with' statement 2014-02-21 07:28:10 +01:00
slush0
443ffab619 Added utf8 handling to sign_message/verify_message 2014-02-21 02:30:10 +01:00
slush0
58dee1a986 Improved utf8 handling 2014-02-21 01:48:11 +01:00
slush0
fabb952327 Compiled pb 2014-02-21 01:46:24 +01:00
slush0
dfeb6de331 Test for Reset Device 2014-02-20 19:15:43 +01:00
slush0
8e4611f56c Compiled pb 2014-02-20 19:14:31 +01:00
slush0
2a3e5ace6b Added TrezorClientDebug which prints wire messages to stdout 2014-02-20 16:09:58 +01:00
slush0
6e90d5763e Added debug printing 2014-02-20 16:01:17 +01:00
slush0
b6a280c380 Fixed passphrase request 2014-02-20 15:58:28 +01:00
Pavol Rusnak
b63418c8b8 add read_passphrase_protection to debuglink 2014-02-17 02:16:43 +01:00
Pavol Rusnak
8e6e3bb7be recompile pb 2014-02-17 00:19:36 +01:00
slush0
86a2a9f845 TrezorDebugClient: Removed expected_buttonrequests, added more generic expected_responses 2014-02-15 20:30:39 +01:00
slush0
f48cf157c7 Fixes HID detection on Mac 2014-02-13 19:04:51 +01:00
slush0
a117057dea Slightly refactored mixin structure, added debugging output 2014-02-13 17:20:40 +01:00
slush0
9b8462f71e typo 2014-02-13 16:54:58 +01:00
slush0
558f61e635 Heavily refactored TrezorClient 2014-02-13 16:47:52 +01:00
Pavol Rusnak
dc54376b15 use filecache module if possible 2014-02-09 04:47:19 +01:00
slush0
22dd34baa1 Compiled pb 2014-02-09 00:12:52 +01:00
slush0
262d493ce2 CallException has always code and message 2014-02-09 00:12:22 +01:00
slush0
e919f1bd30 Fixed expect_buttonrequests
Splitted simplesigntx
2014-02-08 23:15:38 +01:00
Pavol Rusnak
6ee8d7d949 and test_pings for combinations of input params 2014-02-07 11:31:12 +01:00
Pavol Rusnak
17e28c0e10 add asserts to debuglink tests 2014-02-07 01:47:55 +01:00
Pavol Rusnak
49cecb563d add test_debuglink test 2014-02-06 23:34:13 +01:00
slush0
aeb0db92de Compiled pb 2014-02-06 13:49:04 +01:00
slush0
7edf015914 Removed debug printing 2014-02-06 10:44:10 +01:00
slush0
39f4ade40b Implemented ButtonRequestType 2014-02-06 10:44:10 +01:00
slush0
b81c5be4c3 Compiled pb 2014-02-06 10:44:09 +01:00
Pavol Rusnak
1716093dbb compile pb once again 2014-02-05 22:15:05 +01:00
slush0
2a59a8e055 Added Ping.button_protection 2014-02-04 01:02:16 +01:00
slush0
229cfa3cd4 Compiled pb 2014-02-04 01:02:07 +01:00
slush0
60e6064d4e Configurable ping message 2014-02-04 00:31:44 +01:00
slush0
fa8c5e884f Compiled pb 2014-02-04 00:30:58 +01:00
slush0
a56700a03b Reworked HID path handling (to fix Windows issues) 2014-02-03 21:49:07 +01:00
Pavol Rusnak
d629a76689 print message size in _pprint 2014-02-03 17:37:39 +01:00
slush0
c9a348d4a9 Unit tests for signing messages 2014-02-03 16:17:13 +01:00
slush0
1fcb7e7fff Compiled pb 2014-02-03 16:17:02 +01:00
slush0
5a10692e86 Implemented RecoveryDevice 2014-02-02 18:27:44 +01:00
slush0
cbd1e36bb8 Compiled pb 2014-02-02 18:27:36 +01:00
slush0
845f874aea Added Features.initialized
Implemented wipe_device
2014-02-01 13:39:21 +01:00
slush0
e2c8ad0f90 Compiled pb 2014-02-01 13:39:06 +01:00
slush0
eb22fad568 protobuf text_format now prints in both binary and hex form 2014-02-01 11:57:59 +01:00
slush0
2782655320 Monkeypatching of google.protobuf.text_format 2014-02-01 11:29:44 +01:00
Pavol Rusnak
366a7aa07d monkeypatching: text formatting of protobuf messages 2014-01-31 21:21:53 +01:00
slush0
fe0e409e77 Implementation of ChangePin 2014-01-31 19:48:19 +01:00
Pavol Rusnak
24861a1b58 add check for expected type of message responses 2014-01-27 20:19:12 +01:00
slush0
1089f58eb5 Code cleanup 2014-01-27 16:57:32 +01:00
slush0
93d7fe5341 Estimate tx size 2014-01-16 23:08:20 +01:00
slush0
a1000528f3 Compiled pb 2014-01-16 23:04:48 +01:00
slush0
91b2b637b4 BIP32 public CKD 2014-01-14 14:29:18 +01:00
slush0
999194fa59 Compiled pb 2014-01-14 14:29:13 +01:00
slush0
20aa0faeb0 Compiled pb 2014-01-14 11:30:58 +01:00
slush0
b9925432cd Basic blockchain.info API
SimpleSignTx basic unit test
2014-01-13 04:44:57 +01:00
slush0
6aa8fbd1da Compiled pb 2014-01-13 04:44:35 +01:00
slush0
ca6ab18ae5 Fixes DebugLinkGetState 2014-01-12 16:17:22 +01:00
slush0
981cf2ce7a Fixed ApplySettings 2014-01-10 00:11:03 +01:00
slush0
e0ed224656 cmd allows textual bip32 paths with prime derivation
Implemented PassphraseRequest
2014-01-09 17:34:29 +01:00
slush0
4c55093f6a pb2json allow extra fields to merge with 2014-01-09 17:33:58 +01:00
slush0
323838d41e Compiled pb 2014-01-09 17:33:43 +01:00
slush0
3b19508a9d xprv checksum 2014-01-08 15:59:18 +01:00
slush0
dc671173d0 Implemented ResetDevice 2014-01-06 01:54:53 +01:00
slush0
f0e7c61cdd Compiled pb 2014-01-06 01:54:31 +01:00
slush0
e542c2dc29 Fixed load_device, including command line 2013-12-30 23:35:20 +01:00
slush0
56eb483f70 Added base58 decoder 2013-12-30 23:34:56 +01:00
slush0
b4ff6139ae Refactored code to follow trezor-common structures 2013-12-16 18:14:58 +01:00
Pavol Rusnak
d3df313442 cleanup protobuf mess 2013-12-16 17:40:25 +01:00
slush0
b7a2800b97 Compiled messages 2013-12-16 16:04:03 +01:00
slush0
a544af7c88 ckd public derivation 2013-12-16 16:03:38 +01:00
slush0
3ec7a7685a Signing messages, splitted protobuf 2013-11-26 17:29:50 +01:00
Pavol Rusnak
2720665743 use trezor-common submodule 2013-11-22 17:33:33 +01:00
slush0
12afba8385 Support for HID debug_link 2013-11-15 01:43:05 +01:00
Pavol Rusnak
de5bcf6dc5 add wire_in/wire_out enum options to protobuf 2013-10-29 15:30:29 +01:00
Pavol Rusnak
817cd6ea86 use same product id for bootloader mode as well 2013-10-22 16:22:04 +02:00
Pavol Rusnak
c01830462a add FirmwareErase message 2013-10-22 11:29:33 +02:00
Pavol Rusnak
f863e1e602 drop FirmwareUpdate.force field 2013-10-21 18:35:19 +02:00
Pavol Rusnak
624d500c84 use required fields for bootloader firmwareupload message 2013-10-20 16:00:30 +02:00
Pavol Rusnak
2587eff8fd use new hidapi api 2013-10-19 14:19:09 +02:00
Pavol Rusnak
57151ce1b3 fix usb ids 2013-10-19 14:00:58 +02:00
slush0
0b54b50ba2 firmware_update command 2013-10-12 17:41:55 +02:00
slush0
e33be1965e Compilled protobuf 2013-10-12 17:40:30 +02:00
slush0
4807ad2fc4 Compiled protobuf 2013-10-11 04:28:26 +02:00
slush0
121e189643 Implemented test of pin exponential backoff 2013-10-11 03:51:45 +02:00
slush0
b8ddd0279a Test of PIN cancel function 2013-10-10 17:18:02 +02:00
slush0
4e5c3740aa Added strength indicator (weak / fine / strong / ultimate) 2013-10-08 22:13:03 +02:00
slush0
69fa23ff57 Fixed GetMPK, get_device_id 2013-10-08 20:33:39 +02:00
slush0
83e8dd1c0e Mapping now uses MessageType enum from protobuf 2013-10-08 20:32:40 +02:00
slush0
2a41550d92 compiled protobuf 2013-10-08 20:29:02 +02:00