Gregory Sanders
a288fff697
Only track locks with explicit asset types that are bitcoin
2017-06-16 12:02:37 -04:00
Jorge Timón
21620bd6ab
Document -validatepegin in daemon help
2017-06-16 12:02:37 -04:00
Gregory Sanders
da87a78f98
give more accurate message for invalid block proof
2017-06-16 12:02:36 -04:00
Gregory Sanders
0bb5e092f3
f'Remove spendable 0-value outputs from consensus, wallet'
2017-06-16 12:02:36 -04:00
Gregory Sanders
4c33b2df83
f'Greatly simplify coinbase balance checking'
2017-06-16 12:02:36 -04:00
Gregory Sanders
6c3b1f25c0
Move asset issuance funcionality to own file
2017-06-16 12:02:35 -04:00
Gregory Sanders
05b245b9b5
CAssetIssuance validation
2017-06-16 12:02:35 -04:00
Mark Friedenbach
b4be08a70d
Format: Fix indentation
2017-06-16 12:02:35 -04:00
Mark Friedenbach
91f40de0c5
CT: Switch to standard CConfidentialValue::IsCommitment() API instead checking the size of the commitment vector directly
2017-06-16 12:02:34 -04:00
Mark Friedenbach
4c8f785185
[Hard-Fork] CT/CA: Put the asset surjection proof, value range proof, and issuance rangeproofs under the witness commitment
2017-06-16 12:02:34 -04:00
Mark Friedenbach
88a31dff93
CT/CA: Enforce validity of confidential commitments via CConfidentialCommitment::IsValid()
2017-06-16 12:02:34 -04:00
Mark Friedenbach
58c21ae15c
CT: Turn CTxOut::vchNonceCommitment into a CConfidentialCommitment subclass
...
Note: This changes the serialization of the nonce commitment, from an arbitrary length vector to an either 1 (null) or 33 (commitment) byte fixed format.
2017-06-16 12:02:34 -04:00
Mark Friedenbach
a2c0f11f8e
CT/CA: Unify CTxOutAsset and CTxOutValue into a single templated abstract base class
2017-06-16 12:02:34 -04:00
Mark Friedenbach
9ebe6371a1
CT: Move CTxOutValue::vchNonceCommitment into CTxOut
2017-06-16 12:02:34 -04:00
Mark Friedenbach
515bed6331
CT: Move CTxOutValue::vchRangeproof into CTxOut
2017-06-16 12:02:34 -04:00
Mark Friedenbach
2103355a30
CA: Move CTxOutAsset::vchSurjectionproof into CTxOut
2017-06-16 12:02:34 -04:00
Mark Friedenbach
690a403a6d
CT: CTxOutValue::IsAmount() -> CTxOutValue::IsExplicit()
2017-06-16 12:02:34 -04:00
Mark Friedenbach
6d3406185f
CA: CTxOutAsset::vchAssetTag -> CTxOutAsset::vchCommitment
2017-06-16 12:02:34 -04:00
Mark Friedenbach
37230ccc1b
CA: CTxOutAsset::IsAsset() -> CTxOutAsset::IsExplicit()
2017-06-16 12:02:34 -04:00
Mark Friedenbach
b1d487d3e7
CA: CTxOutAsset::IsAssetCommitment() -> CTXOutAsset::IsCommitment()
2017-06-16 12:02:33 -04:00
Jorge Timón
0f79b488a2
fixup! CA: Use fee asset instead of BITCOINID
2017-06-16 12:02:33 -04:00
Mark Friedenbach
8b2cb06617
CA: Switch CTxOutAsset::GetAssetID() to return a constant reference to the stored asset ID rather than perform unnecessary memory reallocation.
2017-06-16 12:02:33 -04:00
Mark Friedenbach
a25f6c6e08
CA: CAssetID -> CAsset
2017-06-16 12:02:33 -04:00
Mark Friedenbach
892cb984ae
CA: uint256 -> CAssetID
2017-06-16 12:02:33 -04:00
Gregory Sanders
d650674bca
ATMP: Remove assertion from state mutation
2017-06-16 12:02:18 -04:00
Gregory Sanders
29b8fe161b
VerifyAmounts: break out asserts into result checks only
2017-06-16 12:02:18 -04:00
Gregory Sanders
eccff6b060
Refactor verifyamounts to accept all 4 (un)blinded configurations
2017-06-16 12:02:17 -04:00
Mark Friedenbach
3836bad390
CA: Add implementation of asset derivation functions.
2017-06-16 12:02:17 -04:00
Gregory Sanders
cc49c12e0a
Explicit fee outputs: remove extra vData
2017-06-16 12:02:17 -04:00
Gregory Sanders
714e8fc0d0
Rangeproof commits to scriptpubkey
2017-06-16 12:02:16 -04:00
Gregory Sanders
dcc378adae
Allow arbitrary assets for fees
2017-06-16 12:02:16 -04:00
Gregory Sanders
cb2ee26d12
Make sure coinbase has no 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
553cdeea00
Greatly simplify coinbase balance checking
2017-06-16 12:02:16 -04:00
Gregory Sanders
a38c6b18b5
SurjectionProof caching
2017-06-16 12:02:16 -04:00
Gregory Sanders
13cdcfc979
Enable multithreaded validation of surjection proofs
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
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
Gregory Sanders
9ca9c5c997
GetBlockSubsidy is always 0
2017-06-16 12:02:14 -04:00
Gregory Sanders
15dadcd970
Retry bitcoind RPC connection upon warmup error code return
2017-06-16 12:02:14 -04:00
Gregory Sanders
285b10ce10
Fix IsConfirmedBitcoinBlock, clean up CallRPC
2017-06-16 12:02:14 -04:00
Jonas Nick
1287eaa0d9
QA: Allow setting the fedpeg script with a command line argument
...
- In both default and regtest modes
- The script is stored
- BaseSignatureChecker is used to pass it to the interpreter
Modified by jtimon
2017-06-16 12:02:13 -04:00
instagibbs
9f4ea3d03f
Add parent genesis hash to chainparams, simplify checks
2017-06-16 12:02:13 -04:00
instagibbs
cf232e8447
Better error report for failed BitcoindRPCCheck
2017-06-16 12:02:13 -04:00
instagibbs
00c60c7760
CheckInputs: Fix DoS erroneous DoS ban during mempool relay
2017-06-16 12:02:13 -04:00
instagibbs
9167fba9dc
Enforce all ISM upgrades immediately
2017-06-16 12:02:13 -04:00
instagibbs
420bdf211d
Enable P2SH in ConnectBlock regardless of timestamp
2017-06-16 12:02:13 -04:00
instagibbs
66ab07bd1b
Rangeproof caching
2017-06-16 12:02:13 -04:00
instagibbs
dfab197543
Multithreaded amount commitment and range proof checking
2017-06-16 12:02:13 -04:00