【问题标题】:java - can a certificate be verified with root CA or grand-parent CA without parent CAjava - 可以使用根 CA 或没有父 CA 的祖父 CA 来验证证书
【发布时间】:2018-04-06 23:14:55
【问题描述】:

我正在尝试在 Java 中执行此操作,但我认为这是一个一般的证书问题。 我有一个根 CA,一个由根 CA 颁发的中间 CA1,一个由中间 CA1 颁发的中间 CA2,以及一个由中间 CA2 颁发的证书。

rootCA -> interCA1 -> interCA2 -> 证书

是否可以在不知道 interCA2 的情况下使用 interCA1 验证证书?

cert.verify(interCA2.getPublicKey()); // ok
interCA2.verify(interCA1.getPublicKey()); // ok
cert.verify(interCA1.getPublicKey()); // NOT ok -> is there any way to fix or bypass this? 

【问题讨论】:

    标签: java security certificate ca


    【解决方案1】:

    您不能这样做,因为 interCA1 不是证书的颁发者。

    cert.verify(interCA1.getPublicKey());
    

    证书是使用颁发证书的私钥签名的,因此您需要其公钥来验证签名。因此,要验证证书,需要完整的证书链。

    【讨论】:

      猜你喜欢
      • 1970-01-01
      • 2022-10-17
      • 1970-01-01
      • 2019-11-15
      • 1970-01-01
      • 2018-06-30
      • 2010-10-16
      • 2020-02-03
      • 1970-01-01
      相关资源
      最近更新 更多