Gregory Sanders
796072852d
Disallow 0-value fees
2017-06-16 12:02:16 -04:00
Gregory Sanders
2f7a9a5846
Replace nTxFee with explicit output fees
2017-06-16 12:02:16 -04:00
Gregory Sanders
f9fd37cc8e
Consensus: Add asset type to CTxOut and validation
2017-06-16 12:02:15 -04:00
Mark Friedenbach
4a831b6740
[Hard Fork] CA: Add asset field to CTxOut, modifying the serialization format of both transaction and witness data
2017-06-16 12:02:15 -04:00
Mark Friedenbach
0e984761f1
CA: Add CTxOutAsset class for holding asset tags and surjection proofs
2017-06-16 12:02:15 -04:00
Mark Friedenbach
2d1fdab4fa
CT: Add CTxOutValue::SetNull for API similarity with other bitcoin classes
2017-06-16 12:02:15 -04:00
Mark Friedenbach
2d0e0f72b4
[Move Only] CT: Move small methods of CTxOutValue class into header for inlining
2017-06-16 12:02:15 -04:00
Mark Friedenbach
a94fe6839f
[Hard Fork] CT: Swap meaning of serialization byte for explicit outputs
...
Previously 0 was explicit and 1 was original bitcoin format. This has been reversed such that the original bitcoin format is 0 and the new explicit format is 1.
This is by no means a necessary change, but it is a navel gazing fix that might as well be included since the format is changing anyway to allow compact explicit amounts.
2017-06-16 12:02:15 -04:00
Mark Friedenbach
5e32a07d4c
[Hard Fork] CT: Resize vchCommitment based on type (explicit or committed)
...
Previously all outputs had a fixed size (33 byte) commitment field.
With this change, explicit / unblinded outputs are serialized to 9 bytes,
saving 24 bytes of transaction space per explicit output.
2017-06-16 12:02:15 -04:00
Mark Friedenbach
ab72a3dc05
CT: Rename nCommitmentSize -> nCommittedSize
2017-06-16 12:02:15 -04:00
instagibbs
7501e0a1a0
Adapt daemon functionality to updated libsecp
2017-06-16 12:02:15 -04:00
Luke Dashjr
327b4f0185
Consensus support for blinded amounts
2017-06-15 14:30:08 -04:00
Luke Dashjr
b5f1b6dd38
Refactors in anticipation of blinded values
2017-06-15 14:20:38 -04:00
Matt Corallo
b8264355f1
Add explicit fee field to transaction
2017-06-15 14:20:38 -04:00
Suhas Daftuar
fc3d7db580
Optimize GetWitnessHash() for non-segwit transactions
...
Github-Pull: #9912
Rebased-From: 02c57b521a
2017-03-27 23:44:08 +02:00
isle2983
27765b6403
Increment MIT Licence copyright header year on files modified in 2016
...
Edited via:
$ contrib/devtools/copyright_header.py update .
2016-12-31 11:01:21 -07:00
Pieter Wuille
f6fb7acda4
Move CTxInWitness inside CTxIn
2016-12-04 23:47:12 -08:00
Pieter Wuille
81e3228fcb
Make CTransaction actually immutable
2016-12-02 18:37:43 -08:00
Pieter Wuille
da60506fc8
Add deserializing constructors to CTransaction and CMutableTransaction
2016-11-19 17:50:40 -08:00
Matt Corallo
190fd321ad
Remove unused CTxOut::GetHash()
2016-11-04 10:50:43 -04:00
Hampus Sjöberg
fdf82fba31
Adding method GetTotalSize() to CTransaction
...
GetTotalSize() returns the total transaction size (including witness) in
bytes.
2016-09-06 22:30:30 +02:00
MarcoFalke
fa785d1211
Use __func__ to get function name for output printing
2016-08-19 18:59:00 +02:00
Suhas Daftuar
2c06bae39e
Rename "block cost" to "block weight"
2016-07-18 13:28:26 -04:00
Pieter Wuille
2b1f6f9ccf
BIP141: Other consensus critical limits, and BIP145
...
Includes changes by Suhas Daftuar, Luke-jr, and mruddy.
2016-06-22 15:43:00 +02:00
Pieter Wuille
7030d9eb47
BIP144: Serialization, hashes, relay (sender side)
...
Contains refactorings by Eric Lombrozo.
Contains fixup by Nicolas Dorier.
Contains cleanup of CInv::GetCommand by Alex Morcos
2016-06-22 15:42:59 +02:00
Wladimir J. van der Laan
80d1f2e483
Merge #7184 : Implement SequenceLocks functions for BIP 68
...
b043c4b fix sdaftuar's nits again (Alex Morcos)
a51c79b Bug fix to RPC test (Alex Morcos)
da6ad5f Add RPC test exercising BIP68 (mempool only) (Suhas Daftuar)
c6c2f0f Implement SequenceLocks functions (Alex Morcos)
2016-02-12 17:03:46 +01:00
Alex Morcos
c6c2f0fd78
Implement SequenceLocks functions
...
SequenceLocks functions are used to evaluate sequence lock times or heights per BIP 68.
The majority of this code is copied from maaku in #6312
Further credit: btcdrak, sipa, NicolasDorier
2016-02-10 15:35:33 -05:00
MarcoFalke
fa24439ff3
Bump copyright headers to 2015
2015-12-13 18:08:39 +01:00
mruddy
af3208bfa6
Resolve issue 3166.
...
These changes decode valid SIGHASH types on signatures in assembly (asm) representations of scriptSig scripts.
This squashed commit incorporates substantial helpful feedback from jtimon, laanwj, and sipa.
2015-07-30 19:56:00 -04:00
Pieter Wuille
9e38d0f745
Separate core memory usage computation in core_memusage.h
2015-07-20 11:17:53 -04:00
Pieter Wuille
5098c47b24
Implement accurate memory accounting for mempool
2015-07-10 10:49:31 -04:00
Wladimir J. van der Laan
5a7304b69d
Move recently introduced CTransAction::IsEquivalentTo to CWalletTx
...
CTransAction::IsEquivalentTo was introduced in #5881 .
This functionality is only useful to the wallet, and should never have
been added to the primitive transaction type.
2015-07-02 20:57:39 +02:00
Tom Harding
b2b3619262
Implement CTransaction::IsEquivalentTo(...)
...
Define CTransaction::IsEquivalentTo(const CTransaction& tx)
True if only scriptSigs are different. In other words, true if
the two transactions are malleability clones. In other words,
true if the two transactions have the same effect on the
outside universe.
In the wallet, only SyncMetaData for equivalent transactions.
2015-04-11 19:03:58 -07:00
Pavel Janík
5262fde0ec
Remove whitespaces before double colon in errors and logs
2015-01-31 17:38:28 -05:00
Wladimir J. van der Laan
4f1524966a
Replace direct use of 0 with SetNull and IsNull
...
Replace x=0 with .SetNull(),
x==0 with IsNull(), x!=0 with !IsNull().
Replace uses of uint256(0) with uint256().
2015-01-05 15:45:34 +01:00
sandakersmann
f914f1a746
Added "Core" to copyright headers
...
Github-Pull: #5494
Rebased-From: 15de949bb9277e442302bdd8dee299a8d6deee60
2014-12-19 19:55:32 +01:00
Luke Dashjr
d227011184
MOVEONLY: core/ -> primitives/
2014-12-03 10:52:58 +00:00