php mcrypt_generic_init,php5.6.9 mcrypt_generic(): 41 is not a valid MCrypt resource

报错内容

[31-Oct-2016 15:09:32 Asia/Shanghai] PHP Warning: mcrypt_generic(): 41 is not a valid MCrypt resource in E:\php\developer\dev\yungou\system\modules\pay\lib\jdpay\common\TDESUtil.php on line 111

[31-Oct-2016 15:09:32 Asia/Shanghai] PHP Warning: mcrypt_generic_deinit(): 41 is not a valid MCrypt resource in E:\php\developer\dev\yungou\system\modules\pay\lib\jdpay\common\TDESUtil.php on line 113

[31-Oct-2016 15:09:32 Asia/Shanghai] PHP Warning: mcrypt_module_close(): 41 is not a valid MCrypt resource in E:\php\developer\dev\yungou\system\modules\pay\lib\jdpay\common\TDESUtil.php on line 115

[31-Oct-2016 15:09:32 Asia/Shanghai] PHP Warning: mcrypt_generic(): 42 is not a valid MCrypt resource in E:\php\developer\dev\yungou\system\modules\pay\lib\jdpay\common\TDESUtil.php on line 111

[31-Oct-2016 15:09:32 Asia/Shanghai] PHP Warning: mcrypt_generic_deinit(): 42 is not a valid MCrypt resource in E:\php\developer\dev\yungou\system\modules\pay\lib\jdpay\common\TDESUtil.php on line 113

[31-Oct-2016 15:09:32 Asia/Shanghai] PHP Warning: mcrypt_module_close(): 42 is not a valid MCrypt resource in E:\php\developer\dev\yungou\system\modules\pay\lib\jdpay\common\TDESUtil.php on line 115

[31-Oct-2016 15:09:32 Asia/Shanghai] PHP Warning: mcrypt_generic(): 43 is not a valid MCrypt resource in E:\php\developer\dev\yungou\system\modules\pay\lib\jdpay\common\TDESUtil.php on line 111

[31-Oct-2016 15:09:32 Asia/Shanghai] PHP Warning: mcrypt_generic_deinit(): 43 is not a valid MCrypt resource in E:\php\developer\dev\yungou\system\modules\pay\lib\jdpay\common\TDESUtil.php on line 113

[31-Oct-2016 15:09:32 Asia/Shanghai] PHP Warning: mcrypt_module_close(): 43 is not a valid MCrypt resource in E:\php\developer\dev\yungou\system\modules\pay\lib\jdpay\common\TDESUtil.php on line 115

[31-Oct-2016 15:09:32 Asia/Shanghai] PHP Warning: mcrypt_generic(): 44 is not a valid MCrypt resource in E:\php\developer\dev\yungou\system\modules\pay\lib\jdpay\common\TDESUtil.php on line 111

[31-Oct-2016 15:09:32 Asia/Shanghai] PHP Warning: mcrypt_generic_deinit(): 44 is not a valid MCrypt resource in E:\php\developer\dev\yungou\system\modules\pay\lib\jdpay\common\TDESUtil.php on line 113

[31-Oct-2016 15:09:32 Asia/Shanghai] PHP Warning: mcrypt_module_close(): 44 is not a valid MCrypt resource in E:\php\developer\dev\yungou\system\modules\pay\lib\jdpay\common\TDESUtil.php on line 115

[31-Oct-2016 15:09:32 Asia/Shanghai] PHP Warning: mcrypt_generic(): 45 is not a valid MCrypt resource in E:\php\developer\dev\yungou\system\modules\pay\lib\jdpay\common\TDESUtil.php on line 111

[31-Oct-2016 15:09:32 Asia/Shanghai] PHP Warning: mcrypt_generic_deinit(): 45 is not a valid MCrypt resource in E:\php\developer\dev\yungou\system\modules\pay\lib\jdpay\common\TDESUtil.php on line 113

使用源码

// 加密算法

public static function encrypt($input, $key) {

$size = mcrypt_get_block_size ( 'des', 'ecb' );

$td = mcrypt_module_open ( MCRYPT_3DES, '', 'ecb', '' );

$iv = @mcrypt_create_iv ( mcrypt_enc_get_iv_size ( $td ), MCRYPT_RAND );

// 使用MCRYPT_3DES算法,cbc模式

@mcrypt_generic_init ( $td, $key, $iv );

// 初始处理

$data = mcrypt_generic ( $td, $input );

// 加密

mcrypt_generic_deinit ( $td );

// 结束

mcrypt_module_close ( $td );

return $data;

}

public static function decrypt($encrypted, $key) {

//$encrypted = base64_decode($encrypted);

$td = mcrypt_module_open ( MCRYPT_3DES, '', 'ecb', '' ); // 使用MCRYPT_DES算法,cbc模式

$iv = @mcrypt_create_iv ( mcrypt_enc_get_iv_size ( $td ), MCRYPT_RAND );

$ks = mcrypt_enc_get_key_size ( $td );

@mcrypt_generic_init ( $td, $key, $iv ); // 初始处理

$decrypted = mdecrypt_generic ( $td, $encrypted ); // 解密

mcrypt_generic_deinit ( $td ); // 结束

mcrypt_module_close ( $td );

//$y = TDESUtil::pkcs5Unpad ( $decrypted );

return $decrypted;

}

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值