访问SSL证书的私钥

时间:2012-10-23 07:08:47

标签: asp.net security cryptography ssl-certificate wif

从安全的角度来看,是否可以让网络服务访问该站点的SSL证书私钥?

编辑:在问题中添加一些上下文 在此link中,在“使用RSA加密cookie”步骤4下,代码使用“serviceCertificate”对cookie进行加密和签名。此处需要访问证书的私钥。

3 个答案:

答案 0 :(得分:2)

如果你的意思是像apache这样的服务......你别无选择。另一种方法是在每次启动时输入密码 - 但即使这样,软件也可以访问密钥。

答案 1 :(得分:2)

好吧,如果有人设法破解你的网页脚本(通过SQL注入或其他),恶意黑客下载私钥副本,那么该黑客将能够建立假冒的SSL服务器,从而破坏你的。但是,要真正成功,黑客还需要注入伪造的DNS记录,以便虚假服务器具有匹配的主机名。

话虽如此,很难不打开对Web服务器本身的私钥访问 - 否则每次重启Web服务器时都必须输入私钥密码。

答案 2 :(得分:1)

最安全的是不要超出严格必要的范围。在密钥管理中访问密钥和私钥非常重要。为了确保您不会引入漏洞,在其用例之外使用私钥也非常重要(例如,SSL中的身份验证与签名数据不同)。

安全是关于层次的。您可以引入越多越好的安全层,您就越安全。限制访问是一个非常好的好处。因此,如果可以避免,请不要混合传输层和应用层。

在我们公司,我们总是为不同的用途创建单独的证书。我们尝试在不同的服务器上保持SSL处理和应用程序处理。应用程序服务器仅获取身份验证详细信息。

那就是说,我在一家专注于安全的公司工作。显然,您可以使用不那么严格的安全性,但如果您围绕它制定一些经过深思熟虑的安全策略,那将是一件好事。如果您不确定,请聘请顾问。