在PHP项目中,有一些内容需要加密存储或者加密传输,再查询和获取加密的内容后又需要解密。可以使用openssl_encrypt()openssl_decrypt()方法来实现。

/**
 * 加密
 */
function encryptWithOpenssl($data){
  $iv = "t0iav86kw59707kl";
  $key = 'au2qqj0pne3xud2e';
  $data = json_encode($data);  
  $return = base64_encode(openssl_encrypt($data, "AES-128-CBC", $key, OPENSSL_RAW_DATA, $iv));
  return $return;
}
/**
 * 解密
 */
function decryptWithOpenssl($data){
  $iv = "t0iav86kw59707kl";
  $key = 'au2qqj0pne3xud2e';
  $newdata = openssl_decrypt(base64_decode($data), "AES-128-CBC", $key, OPENSSL_RAW_DATA, $iv);
  $json = json_decode($newdata, true);
  return $json;
}