Warning: file_get_contents(/data/phpspider/zhask/data//catemap/8/python-3.x/17.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
在java中将密钥对导入到没有证书链的pfx文件_Java_Bouncycastle_Pkcs#12 - Fatal编程技术网

在java中将密钥对导入到没有证书链的pfx文件

在java中将密钥对导入到没有证书链的pfx文件,java,bouncycastle,pkcs#12,Java,Bouncycastle,Pkcs#12,如果我通过null而不是新证书[]{cert},或者如果我通过新证书[]{}我会收到一个错误,提示“私钥必须伴随证书链” 因此,在不传递证书链的情况下,如何将密钥对导入pfx文件。虽然PKCS#12规范允许存储私钥,但Java密钥库不支持在没有证书链的情况下存储私钥 请参见KeyStore.setKeyEntry 如果给定密钥的类型为java.security.PrivateKey,则它必须附带一个证书链,以证明相应的公钥 //Generate key pair KeyPair pair = k

如果我通过null而不是新证书[]{cert},或者如果我通过新证书[]{}我会收到一个错误,提示“私钥必须伴随证书链”

因此,在不传递证书链的情况下,如何将密钥对导入pfx文件。

虽然PKCS#12规范允许存储私钥,但Java
密钥库不支持在没有证书链的情况下存储私钥

请参见
KeyStore.setKeyEntry

如果给定密钥的类型为java.security.PrivateKey,则它必须附带一个证书链,以证明相应的公钥

//Generate key pair
KeyPair pair = keyGen.generateKeyPair();

//Open a keystore
KeyStore ks = KeyStore.getInstance("PKCS12");
ks.load(null, null);

//Setting a key entry
ks.setKeyEntry("test", pair.getPrivate(), password, **new Certificate[]{cert}**);