我知道有一些与此相关的主题,但我仍然想听听您的意见。 我正在创建一个网站,它将通过网络发送一些消息。 这些消息将通过私钥/公钥加密进行加密。
现在,由于服务器将发送大量此类消息,因此我将需要大量访问私钥。 该私钥当前作为文件位于服务器上。 但是,这不是必需的。
现在,如果没有人能够进入我的服务器,则完全没有问题。 但是,如果有人可以访问我的服务器怎么办? 他们只能获取私钥文件,而我的安全受到破坏。
我无法使用硬件解决方案来解决此问题。
我有什么选择?
现在,由于我的服务器将发送许多此类消息。
如果确实只需要向其他参与者发送消息,则只需将他们的公共密钥存储在服务器上。 那里没有危险。
但是,如果您打算对发送给您的消息进行签名/解密,则必须考虑一种安全的私钥存储解决方案。
现在,如果没有人能够进入我的服务器,则完全没有问题。 但是,如果有人可以访问我的服务器怎么办? 他们只能获取私钥文件,而我的安全受到破坏。
您将始终有一个单点故障,一个必须知道您的私钥/访问私钥的秘密的代码等等。但是,此问题不是来自公用/私有密钥加密,而是系统本身。 一方面,无论底层协议是什么,您始终都必须处理未加密的消息。
如果他们拥有密钥,并且知道如何使用该密钥(密钥在何处以及如何应用于您的消息),那么是的,您将完全受到损害。 但是,让我们面对现实吧,当有人将您的服务器植根时,情况总是如此。
更好的方法可能是:如何防止常见的黑客(例如中间人攻击)损害安全性?
我会说:
只是一个开始...
如前所述,您将始终有单点故障。 但是,在谈论私钥存储解决方案时,您可以检查存储您的机密的Vault项目 -加密形式的私钥。 它提供访问控制策略,审核日志和其他功能。