【问题标题】:How do I programmatically import a public key .cer file into a java keystore using JSSE?如何使用 JSSE 以编程方式将公钥 .cer 文件导入 java 密钥库?
【发布时间】:2010-11-03 12:30:45
【问题描述】:

我想获取一个从 java keytool 命令生成的公钥 .cer 文件,如下所示:

“keytool -export -alias privatekey -file publickey.cer -keystore privateKeys.store”

并将其导入一个新的、空的 java 密钥库,如下所示:

“keytool -import -alias publiccert -file publickey.cer -keystore publicCerts.store”

除了我想使用 JSSE 以编程方式进行导入。

Stack Overlords,施展你的魔法!谢谢!

【问题讨论】:

  • JSSE 可能不是正确的首字母缩写词。也许是JCE?无论调用什么处理密钥库的 Java API! :)
  • 谢谢大家。我会投票给你,但我还没有足够的信誉这样做。按照 Reginaldo 的建议,我在查看了反编译的 KeyTool 源代码后发现了这一点。我做了类似的事情:Certificate cert = CertificateFactory.getInstance("X509").generateCertificate(new FileInputStream(certFileLocation)); keyStore.setCertificateEntry("publickey", cert);

标签: java jsse


【解决方案1】:

查看 Java 中的 KeyStore 类。 Here 是一个可以给你一些提示的类。您可能需要免费的BouncyCastle 加密提供程序来运行其所有功能

【讨论】:

    【解决方案2】:

    如果你使用jad反编译Sun JDK自带的tools.jar,你会看到它是如何工作的。

    将tools.jar解压到一个文件夹中,使用以下命令反编译所有类 在那个罐子里。

    for i in $(find .-name "*.class" | perl -ple 's/\.class$//g');做 jad -p $i.class > $i.java;完毕

    keytool源码可以在sun.security.tools.KeyTool类中看到

    【讨论】:

      猜你喜欢
      • 1970-01-01
      • 2021-05-29
      • 2017-01-10
      • 2011-05-18
      • 2013-07-11
      • 2013-08-06
      • 1970-01-01
      • 2017-10-25
      • 1970-01-01
      相关资源
      最近更新 更多