【问题标题】:How to retrieve serial number of a cert from a JKS file programmatically?如何以编程方式从 JKS 文件中检索证书的序列号?
【发布时间】:2019-01-20 12:29:13
【问题描述】:

鉴于
JKS 的路径,
JKS 的密码,
证书的别名

如何以编程方式从 JKS 获取证书的序列号?

【问题讨论】:

  • 你试过什么?你发现了什么问题?

标签: java jakarta-ee java-8 ssl-certificate keystore


【解决方案1】:

您可以像这样从 Java 密钥库加载证书:

      char[] pwdArray = "password".toCharArray();
      KeyStore ks = KeyStore.getInstance("JKS");
      ks.load(new FileInputStream("myKeyStore.jks"), pwdArray);
      Certificate cert = ks.getCertificate("MyAlias");

Certificate 基类没有访问序列号的方法,但我假设您使用的是 X.509 证书。您可以像这样使用 X509Certificate 类:

      X509Certificate xcert = (X509Certificate) cert;
      BigInteger serial = xcert.getSerialNumber();

您可以在https://docs.oracle.com/javase/7/docs/api/java/security/cert/X509Certificate.html 的 API 文档中查看详细信息

【讨论】:

    猜你喜欢
    • 2011-06-27
    • 1970-01-01
    • 2017-03-23
    • 2017-12-10
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    相关资源
    最近更新 更多