如何以编程方式从 JKS 文件中检索证书的序列号?

How to retrieve serial number of a cert from a JKS file programmatically?

给定 :
JKS 的路径,
JKS 的密码,
证书的别名

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

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

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

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

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

您可以在 https://docs.oracle.com/javase/7/docs/api/java/security/cert/X509Certificate.html

的 API 文档中查看详细信息