Currently, there is no public API for named curves. However you can generate named curves using the SunEC provider and the ECParameterSpec class. For example,
AlgorithmParameters parameters = AlgorithmParameters.getInstance("EC", "SunEC"); parameters.init(new ECGenParameterSpec("secp256r1")); ECParameterSpec ecParameters = parameters.getParameterSpec(ECParameterSpec.class); return KeyFactory.getInstance("EC", "SunEC").generatePublic(new ECPublicKeySpec(new ECPoint(x, y), ecParameters)); It's not elegant but the list of supported named curves can be extracted from the AlgorithmParameters.EC SupportedCurves property. For example, String[] curves = Security.getProvider("SunEC") .getProperty("AlgorithmParameters.EC SupportedCurves") .split("\\|"); for (String curve : curves) { System.out.println(curve.substring(1, curve.indexOf(","))); } On 8 Oct 2013, at 13:53, Anders Rundgren wrote: > If you have the X and Y points and the name of a public key you can create a > ECPublicKey using BouncyCastle. > I cannot find any counterpart in JDK 7. What am I missing? > > BC: > > return KeyFactory.getInstance ("EC").generatePublic (new ECPublicKeySpec (new > ECPoint (x, y), new ECNamedCurveSpec (name,...))); > > Cheers > Anders