1

loadメソッドを使用してKeyStoreをロードしたいのですが、使用するとエラーが発生しました。私はECParameterが何であるかを理解していません。

try {
FileInputStream is =new FileInputStream(new File("D:\\UZ\\key_privateUZ.p12"));
ks = KeyStore.getInstance("PKCS12");
password="1234".toCharArray();
ks.load(is, password);
} catch (Exception e) {
e.printStackTrace();
}

私のエラー:

java.security.cert.CertificateParsingException: java.io.IOException: Only named ECParameters supported 
at sun.security.x509.X509CertInfo.<init>(X509CertInfo.java:171) 
at sun.security.x509.X509CertImpl.parse(X509CertImpl.java:1788) 
at sun.security.x509.X509CertImpl.<init>(X509CertImpl.java:202) 
at sun.security.provider.X509Factory.engineGenerateCertificate(X509Factory.java:97) 
at java.security.cert.CertificateFactory.generateCertificate(CertificateFactory.java:339) 
at sun.security.pkcs12.PKCS12KeyStore.loadSafeContents(PKCS12KeyStore.java:1441) 
at sun.security.pkcs12.PKCS12KeyStore.engineLoad(PKCS12KeyStore.java:1313) 
at java.security.KeyStore.load(KeyStore.java:1214) 
at Main.main(Main.java:21) Caused by: java.io.IOException: Only named ECParameters supported 
at sun.security.ec.ECParameters.decodeParameters(ECParameters.java:202) 
at sun.security.ec.ECParameters.engineInit(ECParameters.java:319) 
at java.security.AlgorithmParameters.init(AlgorithmParameters.java:293) 
at sun.security.x509.AlgorithmId.decodeParams(AlgorithmId.java:139) 
at sun.security.x509.AlgorithmId.<init>(AlgorithmId.java:114) 
at sun.security.x509.AlgorithmId.parse(AlgorithmId.java:381) 
at sun.security.x509.X509Key.parse(X509Key.java:168) 
at sun.security.x509.CertificateX509Key.<init>(CertificateX509Key.java:75) 
at sun.security.x509.X509CertInfo.parse(X509CertInfo.java:705) 
at sun.security.x509.X509CertInfo.<init>(X509CertInfo.java:169) 
... 8 more

Regars

ワゾール

4

2 に答える 2

1

検索すると、EC (楕円曲線) パラメータに関する情報がたくさん見つかります。特に、その例外をスローする JDK コード

関連するメソッドを見ると、例外の後に次のことを示すコメント アウトされたセクションが表示されます。

これは、完全な解析実装の出発点として残されています

つまり、JDK はすべての可能なエンコーディングをサポートしているわけではありません。

通常、基本的なJDKよりも多くの機能を備えたBouncy Castleを使用すると、うまくいくかもしれません。

また、キーストア内のデータがどのように生成されたかを説明すると役立つ場合もあります。

于 2013-03-21T10:58:49.123 に答える