对于具有多个应用程序服务器和多个客户端的系统,我想介绍相互身份验证以及TLS提供的其他安全保护。签署证书的解决方案
服务器和客户端可能位于不同的网络以及同一网络上。
每个实体(客户端或服务器)都有自己的密钥存储区,存储其私有/公用密钥对和包装公钥的X.509证书。但是,在这一点上,证书是自签名的。所以,它不会被其他通信实体验证。经过一番研究,我看到了一些解决方案:
- 创建一个专用CA来签署证书。如果我对 有所了解,则CA的证书必须出现在每个实体的 信任库中,以便使用CA的证书验证其他实体的证书可以 。
- 创建专用CA作为第一个解决方案。但是,私人CA的证书由商业CA(例如Verisign)签署。 I 不知道它增加了以前的解决方案。
- 由商业CA签署每个实体的证书。但这个解决方案看起来很贵
- 仅使用自签名证书。每个实体的证书都由它自己签名,并且必须添加到每个要与之通信的实体的信任库中。
这是我的第一次安全体验。在您认为有效的解决方案中,您推荐哪一个?
感谢
考虑[CACERT](https://www.cacert.org /)。 – 2012-07-19 09:47:31