POST,GET數據傳輸加密函數,防止壞蛋通過截傳值搞事情。
/**
* 加密解密函數
* @param type $_str 字符串
* @param type $type encode加密 decode 解密
*/
function RSA_openssl($_str, $type = 'encode')
{
if ($type == 'encode') {
$pu_key = openssl_pkey_get_public(RSAPublic); //驗证公鈅是否可用
if (!$pu_key) {
die('秘鈅已被破壞,請重新獲取');
}
openssl_public_encrypt($_str, $encrypted, $pu_key);
$encrypted = base64_encode($encrypted);
}
if ($type == 'decode') {
$pri_key = openssl_pkey_get_private(RSAprivate);
if (!$pri_key) {
die('秘鈅已被破壞,請重新獲取');
}
openssl_private_decrypt(base64_decode($_str), $encrypted, $pri_key);
}
return $encrypted;
}使用場景:
1、給php打openssl模塊
2、獲取到公鈅和私鈅,函數中的RSAPublic和RSAprivate就是公鈅的常量