Commit Graph

3668 Commits

Author SHA1 Message Date
ThomasV 11bbe31ae3 wizard: check xpub types before adding keystore 2017-10-27 12:04:26 +02:00
ThomasV a10e6b6436 fix xtype of ypub keys in plugins and bip39 seeds 2017-10-27 12:04:26 +02:00
ThomasV 0af700bda0 fix typo 2017-10-27 12:04:26 +02:00
ThomasV a220932711 serialize txin-type in xpub/xprv 2017-10-27 12:04:26 +02:00
SomberNight 0d0f8c5842 fix: payment request related stuff (qt crash, exporting, refresh bug) 2017-10-27 02:32:49 +02:00
ThomasV f6cc37d1d2 Merge branch 'master' of github.com:spesmilo/electrum 2017-10-26 11:23:41 +02:00
ThomasV ffc0cc3c1f Merge pull request #3123 from SomberNight/fix_parse_witness_coinbase
fix: transaction.parse_witness() for coinbase
2017-10-26 11:23:28 +02:00
SomberNight 1c31177d03 try to sweep p2pk outputs from old type WIF privkeys 2017-10-26 01:17:46 +02:00
SomberNight 32e88495ae fix: transaction.parse_witness() for coinbase 2017-10-26 00:40:08 +02:00
SomberNight fb47dbb75a tests: transaction.txid() 2017-10-26 00:35:18 +02:00
ThomasV 89240571d4 py3: socket.error is deprecated 2017-10-25 18:22:54 +02:00
ThomasV 1cbc794229 interface: catch py3 exceptions 2017-10-25 17:43:30 +02:00
SomberNight 1f102913e9 typo in wallet.import_private_key() 2017-10-25 06:54:51 +02:00
ThomasV 5665b42999 remove six 2017-10-24 14:04:16 +02:00
SomberNight 523de69b5e Introduced BasePlugin.can_user_disable(). TrustedCoin plugin can't be disabled by user. 2017-10-24 04:42:52 +02:00
ThomasV 6e0e5a8d57 wizard: allow segwit seed as cosigner 2017-10-23 06:42:34 +02:00
SomberNight 2457ac8774 fix #3091 2017-10-22 23:47:11 +02:00
ThomasV 7cf075c754 follow up b8c7edf070 2017-10-22 15:14:09 +02:00
SomberNight 29c34332ac fix: contacts import 2017-10-22 13:46:05 +02:00
ThomasV 8683d71711 fix: witness serialization 2017-10-22 12:39:36 +02:00
ThomasV b8c7edf070 return bytes in scan_barcode 2017-10-22 12:04:00 +02:00
SomberNight aa1289fa5d bitcoin.py AES: implement our own PKCS7 padding 2017-10-22 02:32:58 +02:00
ThomasV 198cc9d737 fix #2614: define non-linear scale for static fees 2017-10-21 11:15:59 +02:00
Dan Haiduc 5e589133c9 Update commands: output str(Decimals), not floats
The commands `listunspent` and `history` were using float.
Patched to consistently return strings of Decimal objects.
2017-10-20 21:35:18 +03:00
Antoine Riard 9ebca74724 fix: check_seed command import path 2017-10-20 12:03:02 -04:00
ThomasV 24442de8df fix command line interface for hardware wallets. fixes #3056 2017-10-19 11:59:36 +02:00
SomberNight f69f6a88e0 py3: signmessage cmd now again returns str 2017-10-17 20:15:33 +02:00
ThomasV 0a648e2b1c cleanup commented lines 2017-10-17 12:59:59 +02:00
ThomasV ed6b2d0abf add comment about pyaes issue 2017-10-17 12:55:13 +02:00
ThomasV a2048feb24 add segwit option for cmdline create 2017-10-17 11:45:55 +02:00
SomberNight 8a07c2654c fix: py3 in bitcoin.py: aes_encrypt_with_iv() and aes_decrypt_with_iv() 2017-10-17 07:36:04 +02:00
SomberNight d5dcdb01dd follow-up of prev commit: fix travis build (take 2) 2017-10-16 05:23:51 +02:00
SomberNight 3fe2af242e follow-up of prev commit: fix travis build 2017-10-16 05:11:05 +02:00
SomberNight 7ba233f2ab fix: storage upgrade of pre-2.8 imported key wallets, and tests 2017-10-16 04:37:01 +02:00
ThomasV ccf1f0f5d1 add class Simple_Wallet 2017-10-15 10:14:55 +02:00
ThomasV dc553ff108 fix #2991: encrypt wallet files created with command line 2017-10-15 09:18:14 +02:00
ThomasV 8d307ce1e8 rm failing test 2017-10-14 16:08:03 +02:00
ThomasV 0dbb976baf update unsigned tx format, so that imported wallets can sign all address types 2017-10-14 15:47:36 +02:00
SomberNight 26f439f34d tests: WalletStorage upgrades 2017-10-14 03:29:08 +02:00
ThomasV 319a31e64c Merge branch 'master' of github.com:spesmilo/electrum 2017-10-13 13:47:41 +02:00
ThomasV 3b8c8c712d fix #3038 2017-10-13 13:47:32 +02:00
SomberNight 8025d81ec0 fix #3035 2017-10-13 12:38:19 +02:00
ThomasV 628a9e0521 follow up afcc37ec34 2017-10-13 10:56:59 +02:00
ThomasV afcc37ec34 Merge pull request #3026 from SomberNight/missing_import_stat
fix: missing import 'stat' in network.py and simple_config.py
2017-10-13 10:55:18 +02:00
SomberNight f22f8c614f fix tests 2017-10-13 05:52:58 +02:00
SomberNight a5ffa69a3e storage: upgrade format version automatically in load_data() 2017-10-13 05:44:19 +02:00
ThomasV 1320b18d7e Merge pull request #3020 from SomberNight/tests_bitcoin1
tests: bitcoin.py
2017-10-13 04:39:01 +02:00
ThomasV 6a876775c4 Merge pull request #3024 from SomberNight/fix_convert_v14_redeem
fix: storage.convert_version_14() is missing redeem_scripts
2017-10-13 04:37:39 +02:00
SomberNight 8e007f026d fix: witness for non-segwit txins 2017-10-12 21:44:08 +02:00
SomberNight 0510bdb85b fix: missing import 'stat' in network.py and simple_config.py 2017-10-12 08:04:55 +02:00
SomberNight 2ad061eead fix: storage.convert_version_14() was missing redeem_scripts 2017-10-12 06:40:41 +02:00
SomberNight 681eb1ccb8 tests: for bitcoin.py, added new ones, and some refactoring for existing
new ones mainly include:
- privkey -> pubkey -> addr conversions
- xprv, xpub operations
2017-10-11 18:46:52 +02:00
SomberNight 843aec80d7 fix: bitcoin.is_minikey() was broken 2017-10-11 16:27:39 +02:00
SomberNight e406829904 fix: Imported_Wallet cannot spend from p2wpkh or p2wpkh-p2sh 2017-10-11 14:00:38 +02:00
ThomasV 6656154b78 add 'createnewaddress' command, separate from getunusedaddress 2017-10-11 12:24:55 +02:00
ThomasV de85b56e0a re-enable locktime 2017-10-11 12:24:55 +02:00
ThomasV d1657cd62c rm deprecated functions 2017-10-11 12:24:44 +02:00
ThomasV c72123d708 fix #3014 2017-10-11 01:04:46 +02:00
ThomasV e0635f5d08 Merge pull request #2320 from da2x/bugfixes
Tighten directory permissions
2017-10-10 20:11:26 +02:00
SomberNight 0a1ebea669 sweep txs are now always RBF 2017-10-10 19:53:28 +02:00
ThomasV 4836adff84 add cmdline support for 2fa wallets 2017-10-10 13:44:25 +02:00
ThomasV 401d8bc534 fix #2890 2017-10-10 11:48:27 +02:00
ThomasV 8fbabfd796 update delete_address for imported wallets 2017-10-10 11:38:30 +02:00
ThomasV 3f3d249ed1 follow up c810c6a356 2017-10-09 11:54:17 +02:00
ThomasV 26becedfb2 fix privkey serialization in commands 2017-10-09 11:53:47 +02:00
ThomasV 5873fe8eaf follow up previous commit 2017-10-09 10:45:43 +02:00
ThomasV b1cc81a6f6 fix #3011 2017-10-09 10:42:43 +02:00
ThomasV 5480b7dff5 add_input_info: add txin value for RBF with segwit inputs 2017-10-07 12:54:50 +02:00
ThomasV 332c5d41e6 return dict in get_addr_utxo 2017-10-07 12:52:52 +02:00
ThomasV 9aa3f2d9e2 add txin_type in add_input_info, remove inefficient search 2017-10-07 12:15:18 +02:00
ThomasV d28f603483 Allow comma separated address lists for from_addr 2017-10-07 11:54:28 +02:00
ThomasV c810c6a356 commands: use the same option names for RPC and command line. fixes #2875 2017-10-07 09:48:20 +02:00
ThomasV 6dd2b8b471 fix #2861: error message when password is missing 2017-10-07 08:19:14 +02:00
ThomasV fefcd7bbcd sweep: use scripthash rpc 2017-10-06 09:56:54 +02:00
SomberNight da480b1209 fix: v13 to v14 wallet (with Imported_KeyStore) conversion 2017-10-06 01:55:30 +02:00
gdvine 5ce8508cd5 Fix low value error message 2017-10-05 20:06:26 +01:00
ThomasV 15ab48aaa8 fix sweep 2017-10-05 20:08:16 +02:00
ThomasV 3dabb94046 convert wallet format for imported wallets 2017-10-05 19:40:41 +02:00
ThomasV 30069324d5 fix #2995 2017-10-05 17:10:30 +02:00
ThomasV e299df7b82 add message signing/decryption for segwit addresses 2017-10-05 14:44:44 +02:00
ThomasV 0bc53d34d1 improve error message (see #2991) 2017-10-05 10:34:20 +02:00
ThomasV 73c7fbcc69 Merge pull request #2964 from SomberNight/tests_wallet_keystore_bip39
tests: wallet-keystore integrity (bip39)
2017-10-05 10:10:57 +02:00
ThomasV 34a786ee43 fix export_private_key of Imported_Wallet 2017-10-05 09:44:37 +02:00
SomberNight 4aa385e0b3 follow-up of wallet.get_private_key() -> wallet.export_private_key() 2017-10-04 23:22:33 +02:00
ThomasV 901dda0898 Merge pull request #2981 from SomberNight/fix_tests_msg_signing
fix tests: message signing
2017-10-04 14:49:01 +02:00
ThomasV 988fb4e413 follow up 0f4b5abc15 2017-10-04 14:46:56 +02:00
SomberNight f917a565b3 fix tests: message signing 2017-10-04 13:28:00 +02:00
ThomasV 0f4b5abc15 add use_compressed_pubkeys field to keystores. fix #2973 2017-10-04 13:04:21 +02:00
ThomasV 6c215c895a Merge pull request #2971 from SomberNight/fix_saving_bip70_payreq
fix: saving payment request as bip70 file
2017-10-04 12:34:24 +02:00
ThomasV 9f6e174b4f fix #2961 2017-10-04 09:24:34 +02:00
SomberNight 67f418e94d fix: saving payment request as bip70 file 2017-10-04 02:12:52 +02:00
ThomasV 91ed74a95f Merge branch 'master' of github.com:spesmilo/electrum 2017-10-03 14:16:55 +02:00
ThomasV 4273c607b7 fix #2961 2017-10-03 14:16:43 +02:00
SomberNight 751be88059 tests: wallet-keystore integrity (bip39) 2017-10-03 03:30:40 +02:00
SomberNight 902ec2dc69 fix: unresolved variable _bytes in transaction.parse_redeemScript() 2017-10-03 01:34:45 +02:00
ThomasV 031b911dce fix cache with h2addr 2017-09-30 13:01:33 +02:00
ThomasV 34628533fb fix typo 2017-09-30 13:00:52 +02:00
ThomasV 1daecf285d Merge pull request #2950 from SomberNight/tests_wallet_keystore
tests: wallet-keystore integrity (seed->address)
2017-09-29 20:12:42 +02:00
ThomasV c73819a3d4 fix tests 2017-09-29 17:49:29 +02:00
ThomasV fed76bfffc Merge branch 'master' of github.com:spesmilo/electrum 2017-09-29 15:36:01 +02:00
ThomasV e8b564c0e7 Extend Wallet Import Format with txin type. Extend class Imported_Wallet. 2017-09-29 15:32:55 +02:00
SomberNight f3bbb52b91 tests: wallet-keystore integrity (seed->address) 2017-09-29 05:03:22 +02:00
ThomasV da0f51df37 Merge pull request #2943 from SomberNight/msg_signing_tests
tests: message signing
2017-09-27 07:51:34 +02:00
ThomasV 4864c802dd fix message signing #2939 2017-09-27 07:47:41 +02:00
SomberNight 7542bc9e35 tests: message signing 2017-09-27 03:57:49 +02:00
ThomasV 952049f74b fix #2915 2017-09-24 13:35:53 +02:00
ThomasV 2239cb9624 fix #2921 2017-09-24 10:18:08 +02:00
ThomasV 99bc43d8db Merge pull request #2911 from SomberNight/pyqt5
migration to PyQt5
2017-09-24 09:42:32 +02:00
ThomasV c43b48f4f5 Merge pull request #2917 from SomberNight/get_server
log: identify exception source in log for daemon/get_server
2017-09-24 09:40:33 +02:00
ThomasV 70983bb177 Merge pull request #2919 from SomberNight/currency_btce
finish BTCe to WEX renaming
2017-09-24 09:32:35 +02:00
SomberNight 48eab8f286 python3: exchange_rate.py 2017-09-24 02:53:17 +02:00
SomberNight 60dcf6ebfb finish BTCe to WEX renaming 2017-09-23 19:47:54 +02:00
SomberNight 296837d4a9 log: identify exception source in log for daemon/get_server 2017-09-23 18:44:06 +02:00
ThomasV 1522a00012 qrscanner: return str 2017-09-23 09:40:20 +02:00
ThomasV 9bdac1aae0 detect txintype in keystore. fix #2912 2017-09-23 09:39:12 +02:00
ThomasV 1bd60d4c3a fix #2880 2017-09-23 05:57:50 +02:00
SomberNight 4ac162f18b migration to PyQt5. initial commit. 2017-09-23 05:54:38 +02:00
ThomasV 3c7843eea5 revert 6e9b2a4459 2017-09-23 05:40:10 +02:00
ThomasV ab2d0f389c fix 2904 2017-09-23 05:26:03 +02:00
ThomasV 348ef7d72c Merge pull request #2902 from SomberNight/network_timeout
send server.version before subscriptions
2017-09-22 10:19:40 +02:00
ThomasV c186dc18d4 fix tests 2017-09-22 09:55:30 +02:00
SomberNight 2fbc70d860 Moving to virtual tx size instead of total tx size. 2017-09-22 09:49:05 +02:00
SomberNight 6e0c2cffd8 replace deprecated assertEquals 2017-09-21 06:07:52 +02:00
SomberNight f80d8b02ca Periodically poll fee estimates from server. 2017-09-21 01:19:05 +02:00
SomberNight 0e89745c2b send server.version before subscriptions 2017-09-20 15:21:41 +02:00
ThomasV c12c1685d7 serialize value of incomplete inputs in the witness field. fix p2wsh-in-p2sh deserialization 2017-09-18 09:41:19 +02:00
ThomasV fcea2a065d add support for p2wsh-in-p2sh 2017-09-18 08:52:06 +02:00
ThomasV 10b35e3545 follow-up 0abb38cf51 2017-09-17 17:09:22 +02:00
ThomasV 6b1d9ca315 add segwit option for make_seed command 2017-09-17 17:08:46 +02:00
ThomasV 5416a4ea8a serialize value for segwit-p2sh inputs too 2017-09-17 16:56:52 +02:00
Jochen Hoenicke 0abb38cf51 Fix parsing of witnesses
The lengths in the witness structure are `var_int` not pushes.

From BIP-141:
The `witness` is a serialization of all witness data of the transaction.
Each txin is associated with a witness field. A witness field starts
with a `var_int` to indicate the number of stack items for the txin. It is
followed by stack items, with each item starts with a `var_int` to
indicate the length. Witness data is NOT script.

This bug was triggered by tx
d379210d85c1346dafbfd60e3cbc5c5573e50b1f9576d39f177afb2b378f1b98
2017-09-17 16:56:25 +02:00
ThomasV fd1a676d45 remove command line segwit option 2017-09-17 16:34:22 +02:00
Alexx Saver 7b3a398d46 Removed BTCe and added WEX to exchange_rate.py
Notice: WEX uses RUR instead of RUB, but we return it as RUB to conform to ISO 4217.
2017-09-17 01:55:07 +04:00
ThomasV 23f36ea080 follow up previous commit 2017-09-16 11:00:20 +02:00
ThomasV 6e9b2a4459 do not send coins to witness scripts with non-zero version 2017-09-16 10:46:37 +02:00
SomberNight a339270c07 readability change: OP_n calculation from boolean arithmetic to ternary 2017-09-16 03:43:08 +02:00
SomberNight 653c7acb48 fix bech32 scriptPubKeys (OP_n), and tests 2017-09-16 02:19:26 +02:00
ThomasV a8a993d490 fix key type for bip49 2017-09-15 12:20:06 +02:00
ThomasV d7dc804b32 fix iteration bug 2017-09-15 12:07:57 +02:00
ThomasV 302dd3912d Merge pull request #2872 from SomberNight/p2pk_output_1
fix: p2pk output serialisation
2017-09-15 11:54:53 +02:00
SomberNight 33157d3718 fix: p2pk output serialisation 2017-09-15 05:50:12 +02:00
SomberNight 35e4eb6cc3 fix: set scriptSig when spending from coinbase 2017-09-15 05:36:13 +02:00
ThomasV f0fe84d959 check xkey type when we add the keystore, so that we cover all cases 2017-09-14 14:38:19 +02:00
ThomasV 123c5e3165 wizard: check seed_type before creating multisig 2017-09-14 14:00:29 +02:00
ThomasV 43e3f4d3d1 add segwit choice to wizard 2017-09-14 12:20:11 +02:00
SomberNight efd07f727a fix testnet 2017-09-14 02:06:08 +02:00
ThomasV c5f552f26a rm dead code 2017-09-13 15:12:50 +02:00
ThomasV 8b0db38f87 follow-up 3d4c64f9e 2017-09-13 14:54:52 +02:00
ThomasV 50ce062c39 update release notes and set version number to 3.0 2017-09-13 12:48:37 +02:00
ThomasV 7dbd612d5d Read default server list from file. Update list with 1.1 servers. Remove nolnet option. 2017-09-13 11:33:28 +02:00
ThomasV f1666f208b remove height parameter from blockchain.transaction.get 2017-09-13 11:33:28 +02:00
ThomasV 84962ea6f1 remove deprecated command: getutxoaddress 2017-09-13 11:33:28 +02:00
ThomasV 93e577e0cb Revert "segwit: add purpose to derivation"
This reverts commit f706fa07078fd01f24ded2dada7ad66eae8ff485.
2017-09-13 11:33:28 +02:00
ThomasV 7f9b473a98 protocol version 2017-09-13 11:33:28 +02:00
ThomasV ee36ec992c segwit: add purpose to derivation 2017-09-13 11:33:28 +02:00
ThomasV 9286deca57 fix test 2017-09-13 11:33:28 +02:00
ThomasV 63a1db1172 make xpub/xprv version information user-visible 2017-09-13 11:33:28 +02:00
ThomasV bd16e20a4d minor fix (parsing signatures) 2017-09-13 11:32:40 +02:00
ThomasV d9f2edf6b0 support native segwit transactions 2017-09-13 11:32:40 +02:00
ThomasV 68873d92f9 implement scripthash logic 2017-09-13 11:32:40 +02:00
ThomasV 8c5b6bdaf3 Read default server list from file. Update list with 1.1 servers. Remove nolnet option. 2017-09-13 11:30:30 +02:00
SomberNight cbc35d96c8 fix unresolved variable 2017-09-12 17:09:54 +02:00
ThomasV 6fda3733e4 Merge branch 'master' of github.com:spesmilo/electrum 2017-09-12 15:06:00 +02:00
ThomasV 7f58e23ed9 python3 update 2017-09-12 15:05:48 +02:00
SomberNight c50a460395 fixes #2858 2017-09-10 16:28:06 +02:00
WakiyamaP 0791b469e7 fix download failed blockchain headers 2017-09-08 10:57:22 +09:00
ThomasV 70af22c9e4 update scripts/servers to display server version 2017-09-07 09:41:21 +02:00
ThomasV 216e9403be cleanup six (no python2 support) 2017-09-04 14:43:31 +02:00
ThomasV f8c592f743 Merge pull request #2837 from ariard/fix_urllib
fix urllib.quote py2 to py3
2017-09-04 14:23:05 +02:00
ThomasV 6b871a7cfd mmonir python3 fix 2017-09-04 14:21:02 +02:00
Antoine Riard 5059898af2 fix urllib.quote py2 to py3 2017-09-04 06:13:55 -04:00
tadas.varanavicius c0073138dc Python 3 fixes for Segwit 2017-09-01 22:22:31 +03:00
ThomasV b7e8147ca8 Merge pull request #2621 from KoffeinFlummi/fiat-balance-addresses
Add optional Fiat balance column to addresses view
2017-09-01 06:30:13 +02:00
ThomasV f56a8702c2 support sending to segwit native addresses (bip173) 2017-08-31 19:05:03 +02:00
ThomasV 5f35081bc9 fix tests 2017-08-31 10:25:22 +02:00
ThomasV 4d3e079778 rename bc_address functions 2017-08-31 10:21:57 +02:00
ThomasV b9da5afa9d replace bitcoin.is_valid 2017-08-31 10:06:13 +02:00
ThomasV e853dde111 add segwit bech32 module 2017-08-31 09:59:54 +02:00
ThomasV 794baa16c8 move address_to_script to bitcoin.py 2017-08-31 09:59:40 +02:00
ThomasV 5f1d9cbcf5 separate network layer from synchronizer 2017-08-31 09:59:29 +02:00
ThomasV b86619ee30 Merge pull request #2760 from jhoenicke/trezorsegwit
[TREZOR] Added Segwit support.
2017-08-30 11:48:55 +02:00
ThomasV 936b92fa00 Merge pull request #2789 from linuxdaddy/master
Update paymentrequests.proto
2017-08-30 07:17:26 +02:00
ThomasV 1394346192 fix #2819 2017-08-30 06:38:57 +02:00
Jochen Hoenicke ec0de566a8 [TREZOR] Added Segwit support.
Following changes were necessary outside the TREZOR plugin.
- transaction.py: update_transaction handles segwit transactions.
- keystore.py: added a segwit parameter to bip44_derivation,
  use m/49' instead of m/44' for segwit.
2017-08-29 18:43:50 +02:00
ThomasV 5bf3b26476 segwit: use 12 bits of seed prefix 2017-08-27 14:30:01 +02:00
ThomasV 88bbaf0950 postpone x_pubkeys replacement (fix #2738) 2017-08-27 14:03:53 +02:00
ThomasV 2e567fc86a fix #2784 2017-08-27 10:48:41 +02:00
ThomasV 6d2b53cdca fix bip39 check 2017-08-27 10:02:15 +02:00
ThomasV 7b14516cc0 fix unicode in make_seed and getseed 2017-08-27 09:53:22 +02:00
ThomasV 8cb714fb70 fix #2801 2017-08-27 09:22:57 +02:00
ThomasV a9678aee78 bump version number and update release notes 2017-08-26 08:33:42 +02:00
ThomasV 227a553a99 update ripemd module for python3 2017-08-26 08:28:25 +02:00
ThomasV 4df5997940 catch wrap_socket timeouts 2017-08-26 08:28:25 +02:00
ThomasV 126bbff948 Revert "remove python implementation of ripemd160"
This reverts commit 56c4a8746f.
2017-08-26 08:28:25 +02:00
ThomasV 32dee14fd0 show error message when parsing empty tx 2017-08-26 08:28:24 +02:00
ThomasV 1a6e41cec8 python3 updates 2017-08-26 08:28:24 +02:00
ThomasV e02687bcf2 python3 updates 2017-08-26 08:28:24 +02:00
ThomasV d8e37644d3 python3 updates 2017-08-26 08:28:24 +02:00
ThomasV 108d7d39f0 python3: fix password decode 2017-08-26 08:28:24 +02:00
ThomasV 0fdf661845 python3: update storage 2017-08-26 08:28:24 +02:00