< prev index next >

jdk/src/java.base/share/classes/sun/security/util/ECUtil.java

Print this page




 113 
 114         return key.getEncoded();
 115     }
 116 
 117     public static ECPrivateKey decodePKCS8ECPrivateKey(byte[] encoded)
 118             throws InvalidKeySpecException {
 119         KeyFactory keyFactory = getKeyFactory();
 120         PKCS8EncodedKeySpec keySpec = new PKCS8EncodedKeySpec(encoded);
 121 
 122         return (ECPrivateKey)keyFactory.generatePrivate(keySpec);
 123     }
 124 
 125     public static ECPrivateKey generateECPrivateKey(BigInteger s,
 126             ECParameterSpec params) throws InvalidKeySpecException {
 127         KeyFactory keyFactory = getKeyFactory();
 128         ECPrivateKeySpec keySpec = new ECPrivateKeySpec(s, params);
 129 
 130         return (ECPrivateKey)keyFactory.generatePrivate(keySpec);
 131     }
 132 
 133     private static AlgorithmParameters getECParameters(Provider p) {
 134         try {
 135             if (p != null) {
 136                 return AlgorithmParameters.getInstance("EC", p);
 137             }
 138 
 139             return AlgorithmParameters.getInstance("EC");
 140         } catch (NoSuchAlgorithmException nsae) {
 141             throw new RuntimeException(nsae);
 142         }
 143     }
 144 
 145     public static byte[] encodeECParameterSpec(Provider p,
 146                                                ECParameterSpec spec) {
 147         AlgorithmParameters parameters = getECParameters(p);
 148 
 149         try {
 150             parameters.init(spec);
 151         } catch (InvalidParameterSpecException ipse) {
 152             throw new RuntimeException("Not a known named curve: " + spec);
 153         }




 113 
 114         return key.getEncoded();
 115     }
 116 
 117     public static ECPrivateKey decodePKCS8ECPrivateKey(byte[] encoded)
 118             throws InvalidKeySpecException {
 119         KeyFactory keyFactory = getKeyFactory();
 120         PKCS8EncodedKeySpec keySpec = new PKCS8EncodedKeySpec(encoded);
 121 
 122         return (ECPrivateKey)keyFactory.generatePrivate(keySpec);
 123     }
 124 
 125     public static ECPrivateKey generateECPrivateKey(BigInteger s,
 126             ECParameterSpec params) throws InvalidKeySpecException {
 127         KeyFactory keyFactory = getKeyFactory();
 128         ECPrivateKeySpec keySpec = new ECPrivateKeySpec(s, params);
 129 
 130         return (ECPrivateKey)keyFactory.generatePrivate(keySpec);
 131     }
 132 
 133     public static AlgorithmParameters getECParameters(Provider p) {
 134         try {
 135             if (p != null) {
 136                 return AlgorithmParameters.getInstance("EC", p);
 137             }
 138 
 139             return AlgorithmParameters.getInstance("EC");
 140         } catch (NoSuchAlgorithmException nsae) {
 141             throw new RuntimeException(nsae);
 142         }
 143     }
 144 
 145     public static byte[] encodeECParameterSpec(Provider p,
 146                                                ECParameterSpec spec) {
 147         AlgorithmParameters parameters = getECParameters(p);
 148 
 149         try {
 150             parameters.init(spec);
 151         } catch (InvalidParameterSpecException ipse) {
 152             throw new RuntimeException("Not a known named curve: " + spec);
 153         }


< prev index next >