php DES加密或者解密

Posted 贝尔塔猫

tags:

篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了php DES加密或者解密相关的知识,希望对你有一定的参考价值。

    
     function pkcs5_pad ($text, $blocksize) {  //加密时的字节填充,保持和java 一致
         $pad = $blocksize - (strlen($text) % $blocksize);
         return $text . str_repeat(chr($pad), $pad);
     }
     function myCrypt($input,$key) //加密
     {
         $size = mcrypt_get_block_size(MCRYPT_RIJNDAEL_128, MCRYPT_MODE_ECB);
         $input =pkcs5_pad($input, $size);
         $td = mcrypt_module_open(MCRYPT_RIJNDAEL_128, ‘‘, MCRYPT_MODE_ECB, ‘‘);
         $iv = mcrypt_create_iv (mcrypt_enc_get_iv_size($td), MCRYPT_RAND);
         mcrypt_generic_init($td, $key, $iv);
         $data = mcrypt_generic($td, $input);
         mcrypt_generic_deinit($td);
         mcrypt_module_close($td);
         $data = base64_encode($data);
         return $data;
     }
     function myDecrypt($str,$key) //解密
     {
         $decrypted= mcrypt_decrypt(
             MCRYPT_RIJNDAEL_128,
             $key,
             base64_decode($str),
             MCRYPT_MODE_ECB
             );
          
         $dec_s = strlen($decrypted);
         $padding = ord($decrypted[$dec_s-1]);
         $decrypted = substr($decrypted, 0, -$padding);
         return $decrypted;
     }

使用方式

define("DESKEY", "11111111111111111111111111111111");

echo myCrypt("123", DESKEY); 
        
echo myDecrypt("TvQqNxgkDgZj4BaqG4cKkA==",DESKEY); 

 

以上是关于php DES加密或者解密的主要内容,如果未能解决你的问题,请参考以下文章

80分求DES加密解密算法实现的PHP源代码

求 js和PHP版的 DES加解密程序

PHP实现的DES加密解密类定义与用法示例

怎么用php进行3des解密

php和java中的加密和解密

微信小程序des加密PHP des解密