private ECParameterSpec getECParameterSpec(ASN1ObjectIdentifier curveOid, X9ECParameters x9Params) throws InvalidParameterSpecException, NoSuchProviderException, NoSuchAlgorithmException { AlgorithmParameters params = helper.createAlgorithmParameters("EC"); params.init(new ECGenParameterSpec(ECNamedCurveTable.getName(curveOid))); return params.getParameterSpec(ECParameterSpec.class); } }
@Override protected void engineInit(byte[] bytes, String format) throws IOException { if (isASN1FormatString(format)) { X962Parameters params = X962Parameters.getInstance(bytes); ECCurve curve = EC5Util.getCurve(BouncyCastleProvider.CONFIGURATION, params); if (params.isNamedCurve()) { ASN1ObjectIdentifier curveId = ASN1ObjectIdentifier.getInstance(params.getParameters()); curveName = ECNamedCurveTable.getName(curveId); if (curveName == null) { curveName = curveId.getId(); } } ecParameterSpec = EC5Util.convertToSpec(params, curve); } else { throw new IOException("Unknown encoded parameters format in AlgorithmParameters object: " + format); } }