AES/CBC/PKCS5Padding的php用法

提示:文章写完后,目录可以自动生成,如何生成可参考右边的帮助文档

文章目录

AES/CBC/PKCS5Padding的php用法

加密模式:AES/CBC/PKCS5Padding l 加密初始化向量:长度为 16 的空字节数组
加密样例如下
原文:
abcdefghigklmnopqrstuvwxyz0123456789
加密后:
8Z3dZzqn05FmiuBLowExK0CAbs4TY2GorC2dDPVlsn/t
P+VuJGePqIMv1uSaVErr

代码如下(示例):

class MagicCrypt
{

const TOKEN = '2qDhQh2L63kV7Szs';

public static $key_usage = self::TOKEN;

public static function encrypt($jsonResponse){

    $iv = pack('H*', "00000000000000000000000000000000");

    $pkcs5Padded = self::pkcs5Pad($jsonResponse);

    $encrypted = mcrypt_encrypt(MCRYPT_RIJNDAEL_128, self::$key_usage, $pkcs5Padded, MCRYPT_MODE_CBC, $iv);

    $encoded = base64_encode($encrypted);

    return $encoded;

}

public static function decrypt($text) {

    $iv = pack('H*', "00000000000000000000000000000000");

    $key = self::$key_usage;

    $toDecrypt = base64_decode($text);

    $decoded = mcrypt_decrypt(MCRYPT_RIJNDAEL_128, $key, $toDecrypt, MCRYPT_MODE_CBC, $iv);

    $pkcs5Padded = self::pkcs5Unpad($decoded);

    return $pkcs5Padded ;

}

private static function ordutf8($string, &$offset){

    $code = ord(substr($string, $offset,1));
    if ($code >= 128) {        //otherwise 0xxxxxxx
        if ($
  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值