Commit graph

1510 commits

Author SHA1 Message Date
Mark Friedenbach
588d54890b Format: Fix indentation 2017-04-02 14:30:01 -04:00
Mark Friedenbach
71d52fa0b6 CT: Switch to standard CConfidentialValue::IsCommitment() API instead checking the size of the commitment vector directly 2017-04-02 14:30:01 -04:00
Mark Friedenbach
22d1f49c0b [Hard-Fork] CT/CA: Put the asset surjection proof, value range proof, and issuance rangeproofs under the witness commitment 2017-04-02 14:30:01 -04:00
Mark Friedenbach
449b827ebb CT/CA: Enforce validity of confidential commitments via CConfidentialCommitment::IsValid() 2017-04-02 14:28:18 -04:00
Mark Friedenbach
cd6b2929c8 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-04-02 14:28:18 -04:00
Mark Friedenbach
7c35c08302 CT/CA: Unify CTxOutAsset and CTxOutValue into a single templated abstract base class 2017-04-02 14:28:18 -04:00
Mark Friedenbach
9db43d8b48 CT: Move CTxOutValue::vchNonceCommitment into CTxOut 2017-04-02 14:28:18 -04:00
Mark Friedenbach
203fa8f7a9 CT: Move CTxOutValue::vchRangeproof into CTxOut 2017-04-02 14:28:18 -04:00
Mark Friedenbach
c88fec9660 CA: Move CTxOutAsset::vchSurjectionproof into CTxOut 2017-04-02 14:28:18 -04:00
Mark Friedenbach
96221efaab CT: CTxOutValue::IsAmount() -> CTxOutValue::IsExplicit() 2017-04-02 14:28:18 -04:00
Mark Friedenbach
e2077844f6 CA: CTxOutAsset::vchAssetTag -> CTxOutAsset::vchCommitment 2017-04-02 14:28:18 -04:00
Mark Friedenbach
343bf9176f CA: CTxOutAsset::IsAsset() -> CTxOutAsset::IsExplicit() 2017-04-02 14:28:18 -04:00
Mark Friedenbach
8135667a12 CA: CTxOutAsset::IsAssetCommitment() -> CTXOutAsset::IsCommitment() 2017-04-02 14:28:18 -04:00
Jorge Timón
a14aa412c6 fixup! CA: Use fee asset instead of BITCOINID 2017-04-02 14:28:18 -04:00
Mark Friedenbach
944d602526 CA: Switch CTxOutAsset::GetAssetID() to return a constant reference to the stored asset ID rather than perform unnecessary memory reallocation. 2017-04-02 14:28:18 -04:00
Mark Friedenbach
83456d6037 CA: CAssetID -> CAsset 2017-04-02 14:28:18 -04:00
Mark Friedenbach
6e8f1b7247 CA: uint256 -> CAssetID 2017-04-02 14:25:06 -04:00
Gregory Sanders
a17f01014d ATMP: Remove assertion from state mutation 2017-04-02 14:23:35 -04:00
Gregory Sanders
829f2023d5 VerifyAmounts: break out asserts into result checks only 2017-04-02 14:23:35 -04:00
Gregory Sanders
3602ce6197 Refactor verifyamounts to accept all 4 (un)blinded configurations 2017-04-02 14:23:35 -04:00
Mark Friedenbach
cc4c550286 CA: Add implementation of asset derivation functions. 2017-04-02 14:23:35 -04:00
Gregory Sanders
6339f7d019 Explicit fee outputs: remove extra vData 2017-04-02 14:23:35 -04:00
Gregory Sanders
4e49c307b0 Rangeproof commits to scriptpubkey 2017-04-02 14:21:30 -04:00
Gregory Sanders
f97475b4e5 Allow arbitrary assets for fees 2017-04-02 14:21:30 -04:00
Gregory Sanders
5bd72c12fe Make sure coinbase has no fees 2017-04-02 14:21:30 -04:00
Gregory Sanders
d9ab0e3edf Replace nTxFee with explicit output fees 2017-04-02 14:21:30 -04:00
Gregory Sanders
e0ecf588dd Greatly simplify coinbase balance checking 2017-04-02 14:21:30 -04:00
Gregory Sanders
589761f799 DEMO ONLY: issuance skeleton 2017-04-02 14:21:30 -04:00
Gregory Sanders
bb2f08d84e SurjectionProof caching 2017-04-02 14:18:27 -04:00
Gregory Sanders
33bc0906ad Enable multithreaded validation of surjection proofs 2017-04-02 14:18:27 -04:00
Gregory Sanders
05bc6db085 Consensus: Add asset type to CTxOut and validation 2017-04-02 14:05:25 -04:00
Mark Friedenbach
78c1556679 CT: Rename nCommitmentSize -> nCommittedSize 2017-04-02 14:05:25 -04:00
instagibbs
87ccc27273 Adapt daemon functionality to updated libsecp 2017-04-02 14:05:25 -04:00
Gregory Sanders
6252e5c2dc GetBlockSubsidy is always 0 2017-02-02 10:59:07 -05:00
Gregory Sanders
d224e2eb52 Retry bitcoind RPC connection upon warmup error code return 2017-02-02 10:59:01 -05:00
Gregory Sanders
c868ef325e Fix IsConfirmedBitcoinBlock, clean up CallRPC 2017-02-02 10:59:01 -05:00
Jonas Nick
bb1f44f8a6 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-02-02 10:59:00 -05:00
instagibbs
934023c7ea Add parent genesis hash to chainparams, simplify checks 2017-02-02 10:58:57 -05:00
instagibbs
9009318556 Better error report for failed BitcoindRPCCheck 2017-02-02 10:58:56 -05:00
instagibbs
6b77b1af06 CheckInputs: Fix DoS erroneous DoS ban during mempool relay 2017-02-02 10:58:56 -05:00
instagibbs
c136e0ac78 Enforce all ISM upgrades immediately 2017-02-02 10:58:56 -05:00
instagibbs
15c2a60226 Enable P2SH in ConnectBlock regardless of timestamp 2017-02-02 10:58:56 -05:00
instagibbs
7154c1f9ad Rangeproof caching 2017-02-02 10:58:56 -05:00
instagibbs
33609ed3ea Multithreaded amount commitment and range proof checking 2017-02-02 10:58:56 -05:00
instagibbs
56aa82fc2d Move amount verification to main 2017-02-02 10:58:56 -05:00
Pieter Wuille
5b2053211e Zero value coinbase output are exempt from fixed destination 2017-02-02 10:58:56 -05:00
Pieter Wuille
d212526c24 Add witness commitment when there are only txout witnesses 2017-02-02 10:58:56 -05:00
instagibbs
e637e5a5da block header commits to height 2017-02-02 10:58:56 -05:00
instagibbs
a75159e1f8 block validation on script error of properly signed block 2017-02-02 10:58:51 -05:00
instagibbs
9c62706831 Startup RPC check, failed block queue setup 2017-02-02 10:58:51 -05:00