京东E卡、优酷土豆会员卡等礼品卡卡信息的解密方法PHP版。
通用礼品卡接口文档:https://www.juhe.cn/docs/api/id/231,集于各商家(KFC、必胜客、GAP等)实体卡和会员卡的API虚拟卡,可用于线上/下消费、移动支付。
<?php
/**
* 卡信息的加密和解密
* 加密解密时使用的$key为:substr(str_pad(您的用户名, 8, '0'), 0, 8),即您的用户名(注意是用户名,不是openid)的前8位(不足8位则以0补齐)
*/
class encrypt {
/**
* 加密
* @param string $str 待加密的字符串
* @param string $key 密码
* @return string
*/
public function encode($str, $key) {
$key = substr($key, 0, 8);
$iv = $key;
$size = mcrypt_get_block_size ( MCRYPT_DES, MCRYPT_MODE_ECB );
$str = $this->pkcs5Pad ( $str, $size );
$s = mcrypt_encrypt(MCRYPT_DES,$key,$str,MCRYPT_MODE_ECB,$iv);
return base64_encode($s);
}
/**
* 解密
* @param string $str 待