From f29ed2109065d994673003f81f380fcf4d706f41 Mon Sep 17 00:00:00 2001 From: zzz Date: Thu, 21 Jan 2016 19:06:54 +0000 Subject: [PATCH] Crypto: Add OID aliases to provider, required for keytool to work (ticket #1723) not working yet, need to fix privkey encoding --- core/java/src/net/i2p/crypto/provider/I2PProvider.java | 9 +++++++++ 1 file changed, 9 insertions(+) diff --git a/core/java/src/net/i2p/crypto/provider/I2PProvider.java b/core/java/src/net/i2p/crypto/provider/I2PProvider.java index d24b80d36..4c096bc22 100644 --- a/core/java/src/net/i2p/crypto/provider/I2PProvider.java +++ b/core/java/src/net/i2p/crypto/provider/I2PProvider.java @@ -41,5 +41,14 @@ public final class I2PProvider extends Provider { put("KeyFactory.EdDSA", "net.i2p.crypto.eddsa.KeyFactory"); put("KeyPairGenerator.EdDSA", "net.i2p.crypto.eddsa.KeyPairGenerator"); put("Signature.SHA512withEdDSA", "net.i2p.crypto.eddsa.EdDSAEngine"); + // Didn't find much documentation on these at all, + // see http://docs.oracle.com/javase/7/docs/technotes/guides/security/crypto/HowToImplAProvider.html + // section "Mapping from OID to name" + // Without these, keytool fails with: + // keytool error: java.security.NoSuchAlgorithmException: unrecognized algorithm name: SHA512withEdDSA + put("Alg.Alias.KeyPairGenerator.1.3.101.100", "EdDSA"); + put("Alg.Alias.KeyPairGenerator.OID.1.3.101.100", "EdDSA"); + put("Alg.Alias.Signature.1.3.101.100", "SHA512withEdDSA"); + put("Alg.Alias.Signature.OID.1.3.101.100", "SHA512withEdDSA"); } }