Init fuzzing harnesses for scalars and points #1111
+724
−0
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 contains initial-pass fuzzing harnesses for
scalars
andpoints
across each of the bign256, k256, p192, p224, p256, p384, p521, and sm2 curves. I thought I would offer up the current state and confirm there is an interest before next implementingkeys
andsignatures
.Other than adding the
fuzz
workspace there are no code changes -- just two fairly straightforward harnesses plus aREADME.md
. I review cryptography code as my day job and find deserialization issues all too frequently, even in Rust code. I have indirectly worked on the k256 code in the past as first author.There is future potential for connecting this into the OSS-Fuzz project.