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