String pname = kpg.getProvider().getName(); if ("BC".equals(pname)) { if (log.shouldLog(Log.WARN))
KeyPairGenerator kpgen = KeyPairGenerator.getInstance("RSA"); Provider kpgenProv = kpgen.getProvider(); System.out.printf("Provider : %s%nInfo: %s%n", kpgenProv.getName(), kpgenProv.toString());
KeyPairGenerator eckpg = KeyPairGenerator.getInstance("EC"); ECGenParameterSpec p256 = new ECGenParameterSpec("secp256r1"); eckpg.initialize(p256); KeyPair doubleUseKeyPair = eckpg.generateKeyPair(); KeyAgreement ecdh = KeyAgreement.getInstance("ECDH"); ecdh.init(doubleUseKeyPair.getPrivate()); // ... Signature ecdsa = Signature.getInstance("SHA256withECDSA"); ecdsa.initSign(doubleUseKeyPair.getPrivate()); // ... System.out.println(eckpg.getProvider()); System.out.println(ecdh.getProvider()); System.out.println(ecdsa.getProvider());
@Override public KeyPairGenerator createKeyPairGenerator(final String algorithm) throws NoSuchAlgorithmException { checkNotNull(algorithm); KeyPairGenerator obj; try { obj = KeyPairGenerator.getInstance(algorithm, getProvider()); } catch (NoSuchAlgorithmException e) { logFallback(e); obj = KeyPairGenerator.getInstance(algorithm); } if (log.isTraceEnabled()) { log.trace("Created key-pair-generator: {} ({})", obj.getAlgorithm(), obj.getProvider().getName()); } return obj; }
KeyPairGenerator keyGen = KeyPairGenerator.getInstance("RSA"); keyGen.initialize(2048); System.out.println(keyGen.getProvider().getName()); for (String user : new String[]{"A", "B"}) { KeyPair pair = keyGen.genKeyPair();
} catch(Throwable e) { Logger.warning(this, "default KeyPairGenerator provider ("+(kg != null ? kg.getProvider() : null)+") is broken, falling back to BouncyCastle", e); kg = KeyPairGenerator.getInstance("EC", JceLoader.BouncyCastle); kf = KeyFactory.getInstance("EC", JceLoader.BouncyCastle); throw new Error(e); this.kgProvider = kg.getProvider(); this.kfProvider = kf.getProvider(); this.sigProvider = sig.getProvider();
} catch(Throwable e) { Logger.warning(this, "default KeyPairGenerator provider ("+(kg != null ? kg.getProvider() : null)+") is broken, falling back to BouncyCastle", e); kg = KeyPairGenerator.getInstance("EC", JceLoader.BouncyCastle); kf = KeyFactory.getInstance("EC", JceLoader.BouncyCastle); this.derivedSecretSize = derivedSecretSize; this.kgProvider = kg.getProvider(); this.kfProvider = kf.getProvider(); this.kaProvider = ka.getProvider();