当 PKCS#12 信任库包含根 CA 和由该根 CA 颁发的子 CA 时,会发生什么?

问题描述 投票:0回答:1

假设我们有以下 CA 层次结构:

  • ACME Inc. 根 CA
    • ACME Inc. 子 CA 1
      • ACME叶证书1
    • ACME Inc. 子 CA 2
      • ACME 叶证书 2

现在,我们有一个 .p12 文件作为“信任库”,其中包含以下 CA 证书:

  • ACME Inc. 根 CA
  • ACME Inc. 子 CA 1

假设我们有一个典型的 Java 服务器应用程序,它使用 mTLS 来保护连接,则允许连接上述哪些叶证书?

含义:

  • 即使子 CA 2 证书不在信任存储中,但根 CA 在信任存储中,叶证书 2 是否能够连接?
  • 为什么我还要将 Sub CA 1 证书包含在此信任存储中?
  • 如果我将叶证书 1 直接包含在上述信任库中,这是否意味着只有叶证书 1 能够连接?
  • 如果我将叶证书 1 直接包含在上述信任库中,即使它已过期,它也会被接受吗?
java pkcs#12 truststore
1个回答
0
投票

如果您在信任库中有证书,则您“信任”(允许连接)该证书以及该证书的所有子证书。这包括分分证书、分分分等。 (只要没有证书被额外阻止或过期)。

您的问题

即使子 CA 2 证书不在信任存储中,但根 CA 在信任存储中,叶证书 2 是否能够连接?

是的。

为什么我还要将 Sub CA 1 证书包含在此信任存储中?

你不必这样做。但是,仅包含必要的证书是有意义的。如果您只需要“ACME Leaf 证书 1”,则只需包含此证书和其他证书。这减少了您不信任的实例连接的可能性 - 请记住“ACME Inc. Root CA”可以随时为其他实例颁发新证书。

如果我将叶证书 1 直接包含在上述信任库中,这是否意味着只有叶证书 1 能够连接?

不。只要有例如还有信任库中的“根 CA”,您信任所有子证书。

如果我将叶证书 1 直接包含在上述信任库中,即使它已过期,它也会被接受吗?

不。过期的证书不再受信任。

© www.soinside.com 2019 - 2024. All rights reserved.