gpt4 book ai didi

security - 中间根权限跨链验证

转载 作者:太空宇宙 更新时间:2023-11-03 14:04:34 25 4
gpt4 key购买 nike

我已经创建了一个根 CA(CA-R) 和两个中间 CA(CA-I1 和 CAI2)(都是自签名的)。

使用 CA-I1,我为 server1/client1 生成了私钥,CSR 并创建了证书。为 Server1(Apache2)和 client1 安装了证书。我能够使用我的 client1(python 客户端)成功连接到 server1。

Here is the chain -> client1->server1->CA-I1->root CA

使用 CA-I2,我为 server2/client2 生成了私钥,CSR 并创建了证书。为 Server2(Apache2) 和 client2 安装了证书。我能够使用我的 client2(python 客户端)成功连接到 server2。

Here is the chain -> client2->server2->CA-I2->root CA.

现在,我想知道使用 client2 是否可以通过添加 python 客户端的 CA-I1 证书(因为 CA-I1 和 CA-I2 都来自同一个根 CA)来连接到 server1。基本上想知道我是否可以跨链验证。

最佳答案

Here is the chain -> client1->server1->CA-I1->root CA

我希望您没有像您的问题所建议的那样使用服务器证书签署客户端证书,而是使用 CA 证书(即 CA-I1、CA-I2)签署客户端证书。否则,这仅在服务器证书既用作服务器身份验证的叶证书又用作 CA 证书以签署客户端证书的情况下才有效。这些不同类型的用例最好不要合并到一个证书中。因此,您实际应该使用的是:

   server1 -> CA-I1 -> root-CA
client1 -> CA-I1 -> root-CA
server2 -> CA-I2 -> root-CA
client2 -> CA-I2 -> root-CA

... if using client2 can I connect to server1 by adding the certs of the CA-I1(as both CA-I1 & CA-I2 are from same Root CA)part of python client

每个客户端和服务器都可以信任多个 CA,用于客户端和服务器证书验证的证书实际上可以不同。但是,考虑到 server1 信任由根 CA 签署的用于客户端身份验证的任何证书,它将信任 client1 和 client2,前提是构建到根 CA 的信任链所需的所有中间证书都由客户端与叶证书一起发送。这与服务器身份验证没有区别。

关于security - 中间根权限跨链验证,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/44751021/

25 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com