Commit Graph

404 Commits

Author SHA1 Message Date
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