Implement partial equality for key types #102
Merged
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.
Expands on #101 with constant-time comparison for SigningKey.
I wasn't sure about wheter implementing PartialEq for SigningKey is a good idea or not. On one hand, for tests, it's possible to simple convert it into
[u8; 32]
and compare that. But on the other hand we take the risk of people doing that for non-test code where constant-time comparison is required. I chose to address the risk and create this PR based on the contributor's PR.There is also some precedence for it, e.g. https://docs.rs/elliptic-curve/latest/elliptic_curve/struct.SecretKey.html#impl-PartialEq-for-SecretKey%3CC%3E