-
Notifications
You must be signed in to change notification settings - Fork 725
[zPIV][Cleanup] Zerocoin Cleanup 3: remove old ZK proofs #1293
New issue
Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.
By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.
Already on GitHub? Sign in to your account
[zPIV][Cleanup] Zerocoin Cleanup 3: remove old ZK proofs #1293
Conversation
2246c1c to
d2d8019
Compare
d2d8019 to
c9551a6
Compare
|
Rebased on master. |
furszy
left a comment
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
Few annoying warnings that would be nice to clean. The rest is looking good.
./libzerocoin/CoinSpend.h:47:38: warning: private field 'params' is not used [-Wunused-private-field]
const AccumulatorAndProofParams* params;
^
./libzerocoin/CoinSpend.h:71:27: warning: private field 'params' is not used [-Wunused-private-field]
const ZerocoinParams* params;
^
./libzerocoin/CoinSpend.h:98:31: warning: private field 'ap' is not used [-Wunused-private-field]
const IntegerGroupParams *ap, *bp;
^
./libzerocoin/CoinSpend.h:98:36: warning: private field 'bp' is not used [-Wunused-private-field]
const IntegerGroupParams *ap, *bp;
Save old AccumulatorProofOfKnowledge, SerialNumberSignatureOfKnowledge and CommitmentProofOfKnowledge legacy classes (only functions for serialize-deserialize the old spends) inside CoinSpend.h
c9551a6 to
29c02c7
Compare
|
Removed ZerocoinParams private fields (and related constructors). |
furszy
left a comment
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
ACK 29c02c7
Fuzzbawls
left a comment
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
ACK 29c02c7
29c02c7 [Cleanup] Remove ZerocoinParams from legacy CoinSpend classes (random-zebra) a038651 [zPIV][Cleanup] Remove old CoinSpend proofs files (random-zebra) 26f407a [Cleanup][zPIV] Remove Acc Witness (random-zebra) 0052be4 [Cleanup][zPIV] Start removing old/unused zerocoin spend validation code (random-zebra) Pull request description: Based on top of #1291 . Old (v2) `CoinSpend` proofs are no longer checked. We can thus remove most of `AccumulatorProofOfKnowledge`, `SerialNumberSignatureOfKnowledge` and `CommitmentProofOfKnowledge`. We save only the structure and serialize methods (inside `CoinSpend.h`) to be able to parse them from the chain. ACKs for top commit: furszy: ACK 29c02c7 Fuzzbawls: ACK 29c02c7 Tree-SHA512: f4198443bf760fb398badff5bb31579bb0feb97677bbd55b23a136c07e35d3150588883ef7645f9f6122a0bbf394180d78012916e9bff41597756666945106ab
79dccae [Trivial][RPC] Fix spendzerocoin num of arguments (random-zebra) c9aefbf [Doc] Update rel notes: remove zPIV backup - mintchange/minimizechange (random-zebra) 35dae21 [Cleanup][Trivial] Remove unused variable nStakeSetUpdateTime in wallet (random-zebra) f95af41 [Wallet][Cleanup] Refactor zPIV legacy functions at the end of wallet.* (random-zebra) 565b963 [Wallet][RPC] Remove fMintChange / fMinimizeChange from zc spends/mints (random-zebra) 76b7386 [Wallet][zPIV] Remove auto-backups. Lock minting only for tests. (random-zebra) Pull request description: Builds on top of #1293 . This removes zerocoin backups and locks minting only for tests. Mints and v2 spends are rejected from mempool. Removes `fMintChange/fMinimizeChange` options from RPC functions. Cleans up unused variables and functions. Zerocoin specific implementations have been moved from wallet.cpp to a new file wallet_zerocoin.cpp in the wallet directory. ACKs for top commit: furszy: cool refactor, utACK 79dccae. Fuzzbawls: ACK 79dccae Tree-SHA512: bb69e9e79e2a5664d351fdce1a35a16642576290ead7198e74b04213b478a5e1e9a96ff9aa800ca714c5c6f2045e780a533921681d2ab79af6761a8acebec7c8
Based on top of #1291 .
Old (v2)
CoinSpendproofs are no longer checked. We can thus remove most ofAccumulatorProofOfKnowledge,SerialNumberSignatureOfKnowledgeand
CommitmentProofOfKnowledge.We save only the structure and serialize methods (inside
CoinSpend.h) to be able to parse them from the chain.