SomberNight
8be777e882
tx size estimation: handle uncompressed pubkeys
2017-11-24 04:24:54 +01:00
SomberNight
e373f50596
follow-up prev commit
2017-11-22 01:15:01 +01:00
SomberNight
a2a25e4738
better segwit tx size estimation
2017-11-21 23:02:45 +01:00
Justin Turner Arthur
857eb4ac1d
Remove unused imports. Explicitly import a few deep imports.
2017-11-13 02:28:00 -06:00
SomberNight
f8518c78d8
remove Transaction.requires_fee()
2017-11-09 22:15:47 +01:00
ThomasV
bf2c07ff2a
fix #3244
2017-11-08 14:48:46 +01:00
SomberNight
b28f8b3ebd
make tx deserialization more robust to ill-formed tx
2017-11-06 12:27:47 +01:00
ThomasV
358068a0c1
fix #3197 : parse pubkey
2017-11-03 15:31:20 +01:00
SomberNight
32e88495ae
fix: transaction.parse_witness() for coinbase
2017-10-26 00:40:08 +02:00
ThomasV
8683d71711
fix: witness serialization
2017-10-22 12:39:36 +02:00
SomberNight
8e007f026d
fix: witness for non-segwit txins
2017-10-12 21:44:08 +02:00
ThomasV
c72123d708
fix #3014
2017-10-11 01:04:46 +02:00
ThomasV
b1cc81a6f6
fix #3011
2017-10-09 10:42:43 +02:00
ThomasV
9aa3f2d9e2
add txin_type in add_input_info, remove inefficient search
2017-10-07 12:15:18 +02:00
ThomasV
9f6e174b4f
fix #2961
2017-10-04 09:24:34 +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
902ec2dc69
fix: unresolved variable _bytes in transaction.parse_redeemScript()
2017-10-03 01:34:45 +02:00
ThomasV
e8b564c0e7
Extend Wallet Import Format with txin type. Extend class Imported_Wallet.
2017-09-29 15:32:55 +02:00
ThomasV
ab2d0f389c
fix 2904
2017-09-23 05:26:03 +02:00
SomberNight
2fbc70d860
Moving to virtual tx size instead of total tx size.
2017-09-22 09:49:05 +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
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
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
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
SomberNight
cbc35d96c8
fix unresolved variable
2017-09-12 17:09:54 +02:00
SomberNight
c50a460395
fixes #2858
2017-09-10 16:28:06 +02:00
ThomasV
216e9403be
cleanup six (no python2 support)
2017-09-04 14:43:31 +02:00
tadas.varanavicius
c0073138dc
Python 3 fixes for Segwit
2017-09-01 22:22:31 +03:00
ThomasV
f56a8702c2
support sending to segwit native addresses (bip173)
2017-08-31 19:05:03 +02:00
ThomasV
794baa16c8
move address_to_script to bitcoin.py
2017-08-31 09:59:40 +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
88bbaf0950
postpone x_pubkeys replacement ( fix #2738 )
2017-08-27 14:03:53 +02:00
ThomasV
8cb714fb70
fix #2801
2017-08-27 09:22:57 +02:00
ThomasV
32dee14fd0
show error message when parsing empty tx
2017-08-26 08:28:24 +02:00
ThomasV
ab15ff3a00
updates for python3
2017-08-26 08:28:24 +02:00
Dmitry Sorokin
0693403358
sending fixed
2017-08-26 08:28:24 +02:00
Dmitry Sorokin
d304ccdf17
py3 in qtgui
2017-08-26 08:27:47 +02:00
Dmitry Sorokin
5be78950ca
py3
2017-08-26 08:27:47 +02:00
ThomasV
6bd66279b0
fix segwit script size
2017-08-03 07:22:49 +02:00
ThomasV
923f988b86
fix #2630
2017-07-24 17:29:14 +02:00
ThomasV
064b59c65e
fix #2566 #2519
2017-06-29 16:51:55 +02:00
ThomasV
91235ed7ac
fix #2565 : do not show traceback
2017-06-28 05:26:52 +02:00
ThomasV
6e51b7d60e
Merge pull request #2468 from bauerj/issue-2462
...
Parse transaction version field
2017-05-30 19:32:23 +02:00
Johann Bauer
534eaa9bd1
Parse transaction version field
...
Closes : #2462
2017-05-30 19:28:27 +02:00
ThomasV
d4e8f4beb6
Set sequence to MAXINT-1 to fix locktime (per bauerj)
2017-05-23 15:07:20 +02:00
ThomasV
183af4ae3a
remove sigtype in update_signature
2017-04-19 15:00:10 +02:00
ThomasV
f8fd1c14db
fix parse_sig
2017-04-18 12:31:42 +02:00
ThomasV
f7096010f0
add segwit to get_preimage_script
2017-04-18 11:12:46 +02:00
ThomasV
79bda98ba2
cleanup unused code
2017-04-18 10:48:09 +02:00
ThomasV
65bef5e228
parse pubkey in segwit_script
2017-04-12 16:33:35 +02:00
ThomasV
615a5b3f8e
fix #2356 : scriptSig parsing exception
2017-04-12 16:12:06 +02:00
ThomasV
f7212a4732
fix input_script and remove unused method inputs_without_script
2017-03-21 14:33:42 +01:00
ThomasV
1d84029173
input_script: return txin.scriptSig if available. replace txin.is_coinbase with type. fixes #2321
2017-03-21 09:08:16 +01:00
ThomasV
737a7f0bfb
fix #2302 : signing with imported wallet
2017-03-20 10:47:03 +01:00
ThomasV
2d8df85aab
use maxint-2 to signal RBF, in order to standardize with Bitcoin Core
2017-03-13 11:03:06 +01:00
ThomasV
e83d2b8772
fix typo
2017-03-05 16:15:50 +01:00
ThomasV
5ee4cf41a8
fix #2242
2017-03-05 16:14:13 +01:00
ThomasV
ff39068867
new wallet structure:
...
- store addresses instead of pubkeys
- derive pubkeys only for serialization
- fix #2024
2017-02-26 08:33:44 +01:00
ThomasV
9e1931587d
fix tests
2017-02-01 10:07:01 +01:00
ThomasV
aed2b04dbd
return txid for unsigned segwit transactions
2017-01-31 16:32:11 +01:00
ThomasV
b3c379b939
fix serialize bug for p2pk
2017-01-29 10:37:11 +01:00
ThomasV
6bfbc9a718
fix: replace remaining occurences of public_key_to_bc_address
2017-01-29 06:34:35 +01:00
ThomasV
3a64ec0f2e
Initial segwit support (testnet only)
2017-01-25 21:42:15 +01:00
ThomasV
25e4116393
do not crash tx.serialize if pubkeys are missing. fix #2113
2017-01-16 10:06:28 +01:00
ThomasV
d042d6e970
initial testnet support (petrkr)
2017-01-07 16:58:59 +01:00
neocogent
eb41e23f39
Add more fee info to tx details, update tx estimated_size method.
2016-12-09 12:36:57 +07:00
ThomasV
1e55f4fda0
fix fee computation in sweep
2016-10-08 11:17:53 +02:00
ThomasV
bfd7709ccd
move xpubkey logic to keystore and fix it
2016-08-17 15:25:16 +02:00
ThomasV
1159f85e05
Major refactoring
...
- separation between Wallet and key management (Keystore)
- simplification of wallet classes
- remove support for multiple accounts in the same wallet
- add support for OP_RETURN to Trezor plugin
- split multi-accounts wallets for backward compatibility
2016-08-12 11:02:28 +02:00
ThomasV
b0f6b8578e
fix issue #1865
2016-08-02 10:52:59 +02:00
ThomasV
8e219348e6
fix tx.is_final
2016-07-29 12:53:49 +02:00
ThomasV
f01f931e83
add extra checkbox for RBF
2016-05-23 17:34:33 +02:00
ThomasV
461cbd357a
support locktime
2016-05-18 11:58:27 +02:00
ThomasV
ede1fbdb1f
support non-final transactions (RBF)
2016-05-16 21:34:26 +02:00
ThomasV
c6d74d9ff9
reformatting
2016-05-16 21:32:58 +02:00
ThomasV
94dbfe6791
fix #1728
2016-03-20 19:05:38 +01:00
ThomasV
9659e8542d
fix transaction parsing from command line
2016-03-16 10:31:33 +01:00
ThomasV
305843999e
Relicensing
2016-02-24 10:20:30 +01:00
ThomasV
74c9a05757
kivy: add OutputList class
2016-02-17 11:40:05 +01:00
ThomasV
eb36884c66
move estimate_fee back to wallet
2016-02-02 12:26:28 +01:00
ThomasV
d200b236ae
replace tx.input, tx.output by methods, so that deserialize calls are encapsulated
2016-01-17 15:04:11 +01:00
ThomasV
321ab10742
detect RBF transactions
2016-01-17 14:28:17 +01:00
ThomasV
0d52911561
define constants for tx output types
2016-01-14 17:15:50 +01:00
ThomasV
da8fce1914
if available, use relayfee from server instead of hard coded value
2016-01-14 16:06:22 +01:00
ThomasV
026f9312a7
fix more type errors caused by jsonrpc (parsing floats and transactions)
2015-12-16 20:17:20 +01:00
ThomasV
30ace570d3
kivy: choice_dialog and load_wallet_by_name
2015-12-16 08:57:47 +01:00
Neil Booth
3eca419ef3
Fix typo.
...
One character makes all the difference.
2015-11-30 23:47:14 +09:00
Neil Booth
93bb09230c
Track tx size directly; calculate fees from that
...
This has several advantages. Fee calculation is now very fast,
as we don't need to keep reserializing the tx. Another is that
we can reason about the fees after adding a change output without
having to add it, recalculate the tx fee, and remove it again.
2015-11-29 15:40:11 +09:00
Neil Booth
a4dd5acc48
Prepare to calculate tx fee given a tx size
2015-11-29 12:41:54 +09:00
Neil Booth
90dee43998
Move estimated_fee to Transaction class
...
It's not a function of the wallet but of the transaction
so it more naturally belongs there.
2015-11-28 21:28:54 +09:00
ThomasV
fbb65416d3
remove --broadcast option for payto, and parse transactions from json 'hex' field
2015-10-20 13:08:32 +02:00
ThomasV
19ec56b923
fix: sign tx inputs with the new low s class
2015-10-18 12:23:21 +02:00
Roman Zeyde
aadbcca6f0
transaction: remove unused mmap-related code
2015-08-31 16:46:51 +03:00