-
Notifications
You must be signed in to change notification settings - Fork 219
Commit
This commit does not belong to any branch on this repository, and may belong to a fork outside of the repository.
feat: add optional range proof types (#5372)
Description --- 1. Added optional range proof types where the Bulletproof+ is no longer the only acceptable proof. The `RevealedValue ` proof hinges on the prover revealing the commitment value as equal to the `minimum_value_promise` and creating a special version of the metadata signature where the deterministic `ephemeral_commitment` nonce `r_a` is set equal to zero (see [RFC-0182](https://rfc.tari.com/RFC-0182_CommitmentSignatures.html)). 1. As a result of the optional range proof, we do not use Bulletproof+ range-proof rewinding anymore. Encrypted value was replaced with encrypted openings and updated scanning and recovery based on encrypted openings. 1. Updated the `igor` and `esmeralda` genesis block faucets to make use of the new optional range proofs. Motivation and Context --- This will allow faucet outputs in the genesis block without the data overhead of a Bulletproof+ range proof for each. Other use cases include special transactions with revealed value outputs, but subject to the consensus constants where `RevealedValue` range proofs need to be switched on explicitly. How Has This Been Tested? --- Unit tests Cucumber tests System-level tests: - On `igor` - base nodes, SHA3 mining, merged mining, console wallets - On `esmeralda` - base nodes, SHA3 mining, merged mining, console wallets What process can a PR reviewer use to test or verify this change? --- Recommend a system-level test <!-- Checklist --> <!-- 1. Is the title of your PR in the form that would make nice release notes? The title, excluding the conventional commit tag, will be included exactly as is in the CHANGELOG, so please think about it carefully. --> Breaking Changes --- - [ ] None - [ ] Requires data directory on base node to be deleted - [X] Requires hard fork - [ ] Other - Please specify BREAKING CHANGE: New genesis block for `igor` and `esmeralda`, thus restart the blockchains.
- Loading branch information
1 parent
53ee32b
commit f24784f
Showing
100 changed files
with
13,033 additions
and
11,955 deletions.
There are no files selected for viewing
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Oops, something went wrong.