2014-07-17 158 views
1

我生成了一個公鑰和私鑰用於加密目的。有一個密碼連接到私鑰,但我知道我不應該用這種純文本顯示它。解密數據時保護我的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; 

回答

0

有多種方法可以做到這一點,你需要去多大程度保護你的密碼?

爲什麼不把它保存在一個安全的文件中,並在需要時讀取它?

下面列出了您可以通過的級別以確保主密鑰的最大保護。每一步都會爲上一步添加更多保護。

  1. 在庫中的masterkey的隔離一個安全的服務器上
  2. 訪問包含masterkey
  3. 加密信息庫中的masterkey的服務器的限制。 (見Red Key/Black Key)的masterkey的
  4. 隨機性和頻繁更換
+0

感謝您的評論厄貝沙坦。通過主密鑰你是指密碼來獲得私鑰? – bryan

+0

是的,指的是密碼。 –