これは私のプログラムです。エラー "キーファイルを開くエラー"が表示されます。親切にも、どこに間違っているのか教えてください。java sun securityを使用して.p12ファイルから秘密鍵を抽出する方法
import java.io.FileInputStream;
import java.security.KeyStore;
import java.security.KeyStoreException;
import java.security.PrivateKey;
import java.util.Base64;
public class ExtractionClass {
public static void main(String args[]) {
String p12Password = "PassWord";
try{
FileInputStream file = new FileInputStream("C:/Users/Aarti_Jangid/Desktop/p12/certChain.p12");
System.out.println("FILE "+ file);
KeyStore keystore = KeyStore.getInstance("PKCS12", "SunJSSE");
keystore.load(file, p12Password.toCharArray());
String alias = keystore.aliases().nextElement();
PrivateKey key = (PrivateKey)keystore.getKey(alias, p12Password.toCharArray());
System.out.println(Base64.getEncoder().encodeToString(key.getEncoded()));
} catch(KeyStoreException kse) {
kse.printStackTrace();
System.err.println("Error getting the key");
} catch (Exception e) {
System.err.println("Error opening the key file");
e.printStackTrace();
}
}
}
を –
だけでなく、ここでスタックトレースをコピー&ペーストしてください私はあなたの.P12ファイルが間違った何かを持っていると思います、有効な証明書を使用している場合は、[here](https://itv.mit-xperts.com/clientssl/issue/dload/index.php?id=1411134668)のコードが有効です。有効な証明書を見つけることができます。 – user6904265
プログラムで.p12ファイルを作成する場合、見て[ここ](http://stackoverflow.com/questions/5312559/how-do-i-programmatically-create-a-new-keystore) – user6904265