forked from monero-project/monero
-
Notifications
You must be signed in to change notification settings - Fork 42
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
Aeon upstream 6 #175
Merged
Merged
Aeon upstream 6 #175
Conversation
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
Use double mults where possible, avoid conversions, simplify
Ported from sarang's java code
- use a raw memory block to store cache - use aligned memory - use doubling API where appropriate - calculate straus in bands
Also constrains bulletproofs to simple rct, for simplicity
Based on sarang's python code
…o#4219 Stats are: min, median, standard deviation
- fix integer overflow in n_bulletproof_amounts - check input scalars are in range - remove use of environment variable to tweak straus performance - do not use implementation defined signed shift for signum
(AEON notes by stoffu) Of course we don't want to make any changes at all to the consensus rules (including fee & ring size) with this patch; the sole purpose is to minimize the difference from upstream by adopting the same variable/function renaming (tx/block size -> tx/block weight), thereby reducing the chance of annoying merge conflicts due to this renaming in the future. This patch also contains a typo fix found later: monero-project#4685
Also try again when we're generate a proof with those characteristics Reported by QuarksLab.
Reported by QuarksLab.
…#4219 Reported by QuarksLab.
This avoids problems when the caller can't deal with a zero walue, which happens often enough that it's worth nipping the problem in the bud.
…onero#4219 Reported by QuarksLab.
Reported by QuarksLab.
Reported by QuarksLab.
…nero#4219 Reported by QuarksLab.
Reported by QuarksLab.
…inity /monero#4219 Reported by QuarksLab.
Apparently needed for openssl 1.1.x
Merged
Sign up for free
to join this conversation on GitHub.
Already have an account?
Sign in to comment
Add this suggestion to a batch that can be applied as a single commit.
This suggestion is invalid because no changes were made to the code.
Suggestions cannot be applied while the pull request is closed.
Suggestions cannot be applied while viewing a subset of changes.
Only one suggestion per line can be applied in a batch.
Add this suggestion to a batch that can be applied as a single commit.
Applying suggestions on deleted lines is not supported.
You must change the existing code in this line in order to create a valid suggestion.
Outdated suggestions cannot be applied.
This suggestion has been applied or marked resolved.
Suggestions cannot be applied from pending reviews.
Suggestions cannot be applied on multi-line comments.
Suggestions cannot be applied while the pull request is queued to merge.
Suggestion cannot be applied right now. Please check back later.
This PR merges a big upstream PR monero-project#4219 (merged on Sep 11, 2018) which is after the last upstream PR monero-project#4293 included in #167 (while ignoring PR monero-project#4218 for obvious reasons). While the main purpose of this upstream PR was to enable Bulletproofs which we don't adopt in Aeon, it comes with many other miscellaneous code changes that are worth adopting (in terms of both functionality and ease of maintenance due to higher code commonality). The commit https://github.com/monero-project/monero/pull/42185ffb2ff9b7c301eda5811a939c705f26627c4735 is of particular importance as it does a major variable renaming of block/tx size into block/tx weight (along with the introduction of per-byte fee and fixed ring size). This PR only takes the variable renaming part and ignores all the protocol changes.