Commit graph

7927 commits

Author SHA1 Message Date
Mark Friedenbach
320c4de1ea CA: Remove TODO note that has already been done 2017-04-02 14:28:18 -04:00
Mark Friedenbach
2736802263 CT: Don't assume size of a serialized pubkey (removes a magic number). 2017-04-02 14:28:18 -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
Jorge Timón
f179f963e8 CA: Introduce -feeasset option 2017-04-02 14:28:18 -04:00
Mark Friedenbach
082fee5a1c CA: Remove unnecessary return statment after exception throw 2017-04-02 14:28:18 -04:00
Mark Friedenbach
c0cd48e639 CT: Remove residual code using the Elements alpha serialization prefixes 2017-04-02 14:28:18 -04:00
Mark Friedenbach
e9c8cf5051 CA: Standardize prefixes so that value and asset commitments use the same constant values for null/empty and explicit values. 2017-04-02 14:28:18 -04:00
Mark Friedenbach
31abc52e0a CA: Remove CAsset::ToString() as it is exactly identical in implementation to CAsset::GetHex(), and GetHex() more clearly matches up with the actual semantics. 2017-04-02 14:28:18 -04:00
Mark Friedenbach
063aae664f CA: Switch to CAsset::SetNull() API instead of assignment & default constructor. 2017-04-02 14:28:18 -04:00
Mark Friedenbach
3d46e206e3 CA: Switch to standard CAsset::IsNull() API instead of comparing against CAset() 2017-04-02 14:28:18 -04:00
Mark Friedenbach
baf3051cf0 CA: Change CAsset from a typedef of uint256 into its own class, so that it has stictly enforced semantics about its usage/API. 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
947920581e CA: Remove call to GetAssetID() that doesn't actually do anything (result is never used). 2017-04-02 14:28:18 -04:00
Jorge Timón
e6d57ef610 CA: fixup! Make CWallet::mapAssetLabels and CWallet::mapAssets private 2017-04-02 14:28:18 -04:00
Mark Friedenbach
b2d8685a41 CA: hashAssetIdentifier -> assetEntropy 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
d611d0eecd f'BlindOuputs succeeds if...' BlindOutputs now returns number of outputs blinded 2017-04-02 14:23:35 -04:00
Mark Friedenbach
bdcafff6b7 2WP: Remove residual traces of bitcoin serialization from src/primitives/transaction* 2017-04-02 14:23:35 -04:00
Gregory Sanders
34db2aa734 BlindOuputs succeeds if no blinding known/attempted 2017-04-02 14:23:35 -04:00
Mark Friedenbach
f39435a877 2WP: Separate mainchain and sidechain data structures into different classes, with the bitcoin data structures living in the src/primitives/bitcoin subdirectory. 2017-04-02 14:23:35 -04:00
Mark Friedenbach
2a0eda566a Tests: Disable bloom filter tests which depend on interaction between bitcoin serialization and Merkle blocks / bloom filters. These tests will have to be redone using elements-formatted blocks. 2017-04-02 14:23:35 -04:00
Gregory Sanders
f120b21baf GetWithdrawLockGenesisHash: break out asserts from computation 2017-04-02 14:23:35 -04:00
Gregory Sanders
09544893b8 calculate_contract: break out asserts from calculations 2017-04-02 14:23:35 -04:00
Gregory Sanders
e666b9eaf4 EvalScript: break out asserts from state changes 2017-04-02 14:23:35 -04:00
Gregory Sanders
9e10299f19 generate: assert split from state change 2017-04-02 14:23:35 -04:00
Gregory Sanders
882e07551b blindoutputs assert 2017-04-02 14:23:35 -04:00
Gregory Sanders
a17f01014d ATMP: Remove assertion from state mutation 2017-04-02 14:23:35 -04:00
Gregory Sanders
8cc75c7f00 BlindOutputs: break out asserts into checks only 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
25b89f3eef BlindOutput: Surjection proof init may fail 2017-04-02 14:23:35 -04:00
Gregory Sanders
0047e32b8c FundTransaction: better estimate final tx size 2017-04-02 14:23:35 -04:00
Gregory Sanders
87acf4ebb6 gettxout: return 'valuecommitment' if value blinded 2017-04-02 14:23:35 -04:00
Gregory Sanders
2b81178f29 [upstream] Don't filter label-named RPC commands 2017-04-02 14:23:35 -04:00
Gregory Sanders
f86b32e80d getrawtransaction: scriptpubkey type is 'fee' 2017-04-02 14:23:35 -04:00
Karl-Johan Alm
8c15763b7f [elements-tx] Add ASSET argument to MutateTxAddOutScript instead of only allowing the bitcoin asset. 2017-04-02 14:23:35 -04:00
Karl-Johan Alm
cb0f11f297 [elements-tx] Add ASSET argument to MutateTxAddOutAddr instead of only allowing the bitcoin asset. 2017-04-02 14:23:35 -04:00
Anditto Heristyo
a83902e70a Add example to sendtoaddress, generateasset, signblock, combineblocksigs, dumpblindingkey, and importblindingkey 2017-04-02 14:23:35 -04:00
Karl-Johan Alm
9953939542 [rpc] Include amount blinding factor in ListTransactions. 2017-04-02 14:23:35 -04:00
Karl-Johan Alm
2187936045 [squashme] Typo. 2017-04-02 14:23:35 -04:00