在解密数据时保护我的RSA私钥密码



我生成了一个用于加密目的的公钥和私钥。有一个密码短语连接到私钥,但我知道我不应该像这样以纯文本显示它。

我应该做些什么来保护这个密码,使它不以明文显示?

// $data = encrypted data using RSA public key
// $key = the key that came along with the encrypted data
// find private key
$pkeyid = openssl_get_privatekey("file:///path/to/private.pem", "PASSWORD");
// try and decrypt the data using private key
openssl_open($data, $decrypted_data, $key, $pkeyid);
// if all went well, show decrypted data
echo $decrypted_data;

有多种方法可以做到这一点,您需要在多大程度上保护您的密码?

为什么不把它保存在一个安全的文件中,并在需要的时候读取它?

以下是您可以通过的级别列表,以确保最大限度地保护主密钥。每一步都将为前一步增加更多的保护。

  1. 在安全服务器上的存储库中隔离主密钥
  2. 访问包含主密钥
  3. 的服务器的限制
  4. 存储库中主密钥的加密。(见红键/黑键)
  5. 主密钥的随机性和频繁变化

最新更新