Skip to content
Success

Changes

Summary

  1. Findbugs and lint (thx zzz) (details)
  2. Add missing synchronized (details)
  3. Final the APIs (details)
  4. Implement key encoding and decoding (details)
  5. Implement hashCode() and equals() fully (details)
  6. Implement one-shot methods in EdDSAEngine (details)
  7. Precedence fix (details)
Commit 0c4f0072dc617350d88591c7a9c8cbb112573c51 by str4d
Findbugs and lint (thx zzz)
The file was modifiedsrc/net/i2p/crypto/eddsa/EdDSAPrivateKey.java (diff)
The file was modifiedsrc/net/i2p/crypto/eddsa/math/GroupElement.java (diff)
The file was modifiedsrc/net/i2p/crypto/eddsa/math/ed25519/Ed25519FieldElement.java (diff)
The file was modifiedsrc/net/i2p/crypto/eddsa/math/FieldElement.java (diff)
The file was modifiedsrc/net/i2p/crypto/eddsa/math/ed25519/Ed25519LittleEndianEncoding.java (diff)
Commit d139e5bce608d5e03ae390166d04d2fb9c0cbee1 by str4d
Add missing synchronized
Closes #10
The file was modifiedsrc/net/i2p/crypto/eddsa/math/bigint/BigIntegerLittleEndianEncoding.java (diff)
The file was modifiedsrc/net/i2p/crypto/eddsa/KeyPairGenerator.java (diff)
The file was modifiedsrc/net/i2p/crypto/eddsa/EdDSAEngine.java (diff)
The file was modifiedsrc/net/i2p/crypto/eddsa/KeyFactory.java (diff)
Commit 57816b6315eec1f24d2f88c7d25c87b5e7d920e5 by str4d
Implement key encoding and decoding
Follows the docs for java.security.spec.PKCS8EncodedKeySpec and the
draft at https://tools.ietf.org/html/draft-josefsson-pkix-eddsa-04
Ignores the example in the josefsson draft, required for keytool to
work.
Closes #13 I2P ticket: https://trac.i2p2.de/ticket/1723
Signed-off-by: str4d <str4d@mail.i2p>
The file was modifiedsrc/net/i2p/crypto/eddsa/EdDSAPrivateKey.java (diff)
The file was modifiedsrc/net/i2p/crypto/eddsa/KeyFactory.java (diff)
The file was modifiedsrc/net/i2p/crypto/eddsa/EdDSAPublicKey.java (diff)
Commit 1a892435b600387edea83dc0f143549f701b5d34 by str4d
Implement hashCode() and equals() fully
- Add hashCode() and equals() everywhere it was missing, so we can test
keys for
equality: Curve, EdDSAParameterSpec, EdDSAPrivateKey, and
EdDSAPublicKey
- Speedup for GroupElement.equals()
Signed-off-by: str4d <str4d@mail.i2p>
The file was modifiedsrc/net/i2p/crypto/eddsa/spec/EdDSAParameterSpec.java (diff)
The file was modifiedsrc/net/i2p/crypto/eddsa/math/GroupElement.java (diff)
The file was modifiedsrc/net/i2p/crypto/eddsa/EdDSAPublicKey.java (diff)
The file was modifiedsrc/net/i2p/crypto/eddsa/math/FieldElement.java (diff)
The file was modifiedsrc/net/i2p/crypto/eddsa/EdDSAPrivateKey.java (diff)
The file was modifiedsrc/net/i2p/crypto/eddsa/math/Curve.java (diff)
Commit 6cc6d73c7c2822e7c0a0cd465af06c57ca77aa20 by str4d
Implement one-shot methods in EdDSAEngine
The one-shot methods can be used to improve performance by not copying
the data if all the data is available. They are unsupported by the Java
JCA and must be used directly.
This commit also fixes an API violation if EdDSAEngine object is reused
for signing.
I2P ticket: https://trac.i2p2.de/ticket/1750
Signed-off-by: str4d <str4d@mail.i2p>
The file was modifiedsrc/net/i2p/crypto/eddsa/EdDSAPrivateKey.java (diff)
The file was modifiedsrc/net/i2p/crypto/eddsa/EdDSAEngine.java (diff)
The file was modifiedsrc/net/i2p/crypto/eddsa/EdDSAPublicKey.java (diff)
The file was modifiedsrc/net/i2p/crypto/eddsa/EdDSAEngine.java (diff)