Remove eddsa library in favor of standard Java Security classes #993
+128
−98
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 pull request removes the dependency on the eddsa library and replaces Key and Signature references with standard Java Security classes.
The Bouncy Castle framework supports the
Ed25519
algorithm for keys and signatures, allowing the direct dependency oneddsa
to be removed.JEP 339 added direct support for
Ed25519
in Java 15, so the changes in this pull request enable integration on Java 15 or later without requiring the Bouncy Castle framework.These changes align with the general goal of reducing dependencies on Bouncy Castle by building the implementation using standard Java Security classes.
The new
Ed25519KeyFactory
class enables generating JavaPublicKey
andPrivateKey
instances from raw key material by building a PKCS8 Key Specification for Private Keys and building an X509 Key Specification for Public Keys.