PHP OpenSSL AES-128-CBC暗号化
1139 ワード
注意:openssl拡張機能をオンにする必要があります
class AesWithOpenssl
{
public static $key; //
public static $iv; //
public function __construct()
{
self::$key = 'D2o4XyQeIFobJ4tS';
self::$iv = 'sciCuBC7orQtDhTO';
}
public function encryptWithOpenssl($data = '')
{
return base64_encode(openssl_encrypt($data, "AES-128-CBC", self::$key, OPENSSL_RAW_DATA, self::$iv));
}
public function decryptWithOpenssl($data = '')
{
return openssl_decrypt(base64_decode($data), "AES-128-CBC", self::$key, OPENSSL_RAW_DATA, self::$iv);
}
}
//
$arr = ['status' => '1', 'info' => 'success', 'data' => [['id' => 1, 'name' => ' ', '2' => ' ']]];
$str = json_encode($arr);
$obj = new AesWithOpenssl();
$encrypt_str = $obj->encryptWithOpenssl($str);
var_dump($encrypt_str);
echo '
';
$decrypt_str = $obj->decryptWithOpenssl($encrypt_str);
var_dump($decrypt_str);