2017-06-20 16 views
0

我想加密一個字符串使用公共密鑰,但每次我得到一個新的字符串。任何解決方法來獲取靜態字符串?如何在PHP中使用公鑰來加密字符串以生成靜態字符串而不是動態字符串?

這裏是我的代碼

$publicKey = openssl_pkey_get_public(file_get_contents("file://C:/Users/nick/Dropbox/wamp/www/samples/mycert.cer")); 
$plaintext = "Matr!x12"; 
openssl_public_encrypt($plaintext, $encrypted, $publicKey, OPENSSL_PKCS1_PADDING); 
echo base64_encode($encrypted); 
+2

爲什麼你想得到一個靜態字符串? – modsfabio

+0

每個請求的結果是否改變? – nick

回答

0

嗯,很明顯SSL加密生成每個它涉及出於安全原因,時間不同的結果。如果您出於任何原因需要多次獲得相同的結果,則不能使用「真正的加密」。也許只是使用MD5或其他哈希函數,但請注意,您無法獲取無法解密的祕密(付出足夠的努力)。

相關問題