php加密:3DES

php有封装好的加密算法,DES是其中之一,3DES表示三重DES加密算法

代码示例:

预定义了key,iv=key,(两者通过base64进行了编码)<span style="font-family: Arial, Helvetica, sans-serif;"> </span>
public function encrypt($value)  
        {  
            $td = mcrypt_module_open(MCRYPT_3DES, '', MCRYPT_MODE_CBC, '');	//生成3DES的加密器,mcrypt_module_open,Opens the module of the algorithm and the mode to be used
            $iv = base64_decode($this->iv);	//对iv解码
            $value = $this->PaddingPKCS7($value);	//将字符串填充到x位

            $key = base64_decode($this->key);		//将key进行解码
            
	    mcrypt_generic_init($td, $key, $iv);	//加密,初始化
            $ret = base64_encode(mcrypt_generic($td, $value));	//执行加密,
            mcrypt_generic_deinit($td);				//加密结束
            mcrypt_module_close($td);				//关闭加密器
            return $ret;				
	}


	private function PaddingPKCS7($data)  
        {  
            $block_size = mcrypt_get_block_size('tripledes', 'cbc');  
            $padding_char = $block_size - (strlen($data) % $block_size);  
            $data .= str_repeat(chr($padding_char), $padding_char);  
            return $data;  
        }
补充说明:

//base64_encode 本函数将字符串以 MIME BASE64 编码。此编码方式可以让中文字或者图片也能在网络上顺利传输。在 BASE64 编码后的字符串只包含英文字母大小写、阿拉伯数字、加号与反斜线,共 64 个基本字符,不包含其它特殊的字符,因而才取名 BASE64。编码后的字符串比原来的字符串长度再加 1/3 左右


  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 1
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论 1
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值