我生成使用keytool命令证书:PKCS#12:DerInputStream.getLength()异常
keytool -genkeypair -alias myRSAKey -keyalg RSA -keysize 1024 -keystore test.p12 -storepass test -storetype pkcs12
然后,如果我尝试加载用java安全API它,得到该文件作为字节之后[] :
KeyStore ks = KeyStore.getInstance("PKCS12");
try{
ks.load(new ByteArrayInputStream(data), "test".toCharArray())
} catch (Exception e){
...
}
我得到一个DerInputStream.getLength():lengthTag = 127,太大的异常。
出了什么问题?
谢谢。错误信息是真的令人误解。在我的情况'数据'(关键)是一个空的字节数组,并导致这个错误。所有,因为我重用了输入流。 – Stroboskop
第一个原因是你指出它是IMO最常见的原因:通常是错误的文件。也就是说,当我尝试通过'KeyStore.getInstance(“PKCS12”)'或反转':)''使用'JKS'密钥库文件时,有时会发生这种情况。 – albciff