php实现des加密解密,PHP实现的DES加密解密实例代码

本文实例讲述了PHP实现的DES加密解密实例。分享给大家供大家参考,具体如下:

$key = 'very important data';

function jiami($key, $str)

{

/* Open module, and create IV */

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

//$td = mcrypt_module_open(MCRYPT_DES, '', MCRYPT_MODE_CBC, '');

//$td = mcrypt_module_open('des', '', 'cbc', '');

$key = substr($key, 0, mcrypt_enc_get_key_size($td));

$iv_size = mcrypt_enc_get_iv_size($td);

$iv = mcrypt_create_iv($iv_size, MCRYPT_RAND);

/* Initialize encryption handle */

if (mcrypt_generic_init($td, $key, $iv) === -1)

{

return FALSE;

}

/* Encrypt data */

$c_t = mcrypt_generic($td, $str);

/* Clean up */

mcrypt_generic_deinit($td);

mcrypt_module_close($td);

return $c_t;

}

function jiemi($key, $str)

{

/* Open module, and create IV */

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

//$td = mcrypt_module_open(MCRYPT_DES, '', MCRYPT_MODE_CBC, '');

//$td = mcrypt_module_open('des', '', 'cbc', '');

$key = substr($key, 0, mcrypt_enc_get_key_size($td));

$iv_size = mcrypt_enc_get_iv_size($td);

$iv = mcrypt_create_iv($iv_size, MCRYPT_RAND);

/* Initialize encryption handle */

if (mcrypt_generic_init($td, $key, $iv) === -1)

{

return FALSE;

}

/* Reinitialize buffers for decryption */

$p_t = mdecrypt_generic($td, $str);

/* Clean up */

mcrypt_generic_deinit($td);

mcrypt_module_close($td);

return trim($p_t);

}

$str = 'hello world!';

echo 'key:' . $key . '
';

echo 'str:' . $str . '
';

$jiami = jiami($key, $str);

echo '加密:' . $jiami . '
';

file_put_contents('jiamiqian.txt', $str);

file_put_contents('jiamihou.txt', $jiami);

$jiemi = jiemi($key, $jiami);

echo '解密:' . $jiemi . '
';

希望本文所述对大家PHP程序设计有所帮助。 ad51e517755f8fd6a7ec83ced4ecfaf3.png

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

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

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

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值