0

キーストア ブラウザから証明書を読み取りました。秘密鍵の取得に問題がありますが、公開鍵は完璧です。以下はコードです:

KeyStore keystore1 = KeyStore.getInstance("Windows-MY");
keystore1.load(null, null);

if (keystore1 != null) {
  Enumeration<String> enumeration = keystore1.aliases();

  while (enumeration.hasMoreElements()) {
    String alias = enumeration.nextElement();
    if (alias.equals("myalias")) {
       char[] keypwd = "123456".toCharArray();
       KeyStore.PrivateKeyEntry keyEnt = (KeyStore.PrivateKeyEntry) keystore1.getEntry(alias, new KeyStore.PasswordProtection(keypwd));     
       System.out.println("getPublicKey: " + keyEnt.getCertificate().getPublicKey().getEncoded());

       //show RSAPrivateKey [size=2048 bits, type=Exchange, container={5089EC94-FF45-4339-ACCF-E6ECCCB16899}]
       System.out.println("privateKey111: " + keyEnt.getPrivateKey()); 
    }
  }
}

公開鍵の出力は正しいですが、秘密鍵は次のようになります。

RSAPrivateKey [size=2048 bits, type=Exchange, container={5089EC94-FF45-4339-ACCF-E6ECCCB16899}]

パスワードは正しいです。秘密鍵を取得するにはどうすればよいですか?

4

1 に答える 1