PHP使用DES进行加密与解密的方法

PHP使用DES进行加密与解密的方法,第1张

代码如下:

//$input stuff to decrypt

//$key the secret key to use

function do_mencrypt($input $key)

{

$input = str_replace(""n" "" $input)

$input = str_replace(""t" "" $input)

$input = str_replace(""r" "" $input)

$key = substr(md ($key) )

$td = mcrypt_module_open( tripledes ecb )

$iv = mcrypt_create_iv(mcrypt_enc_get_iv_size($td) MCRYPT_RAND)

mcrypt_generic_init($td $key $iv)

$encrypted_data = mcrypt_generic($td $input)

mcrypt_generic_deinit($td)

mcrypt_module_close($td)

return trim(chop(base _encode($encrypted_data)))

}

//$input stuff to decrypt

//$key the secret key to use

function do_mdecrypt($input $key)

{

$input = str_replace(""n" "" $input)

$input = str_replace(""t" "" $input)

$input = str_replace(""r" "" $input)

$input = trim(chop(base _decode($input)))

$td = mcrypt_module_open( tripledes ecb )

$key = substr(md ($key) )

$iv = mcrypt_create_iv(mcrypt_enc_get_iv_size($td) MCRYPT_RAND)

mcrypt_generic_init($td $key $iv)

$decrypted_data = mdecrypt_generic($td $input)

mcrypt_generic_deinit($td)

mcrypt_module_close($td)

return trim(chop($decrypted_data))

lishixinzhi/Article/program/PHP/201311/21012

Solaris下的系统,有一个用C做的加密工具,调用Sunwcry的des(1)对文件进行加密,然后在java中对文件进行解密。java中用的是标准的DES/CBC/NoPadding算法,可是解密后发现开头有8byte的数据出错了,请高人指点一下。

cbc_encrypt.c : 加密用的C程序

cbc_decrypt.c:解密用的C程序

TestDescbc.java:解密用的java程序

Test01.dat原始文件

Test03.dat cbc_encrypt加密后的文件

Test05.dat cbc_decrypt解密后的文件

Test06.dat TestDescbc解密后的文件


欢迎分享,转载请注明来源:内存溢出

原文地址: http://outofmemory.cn/yw/7950387.html

(0)
打赏 微信扫一扫 微信扫一扫 支付宝扫一扫 支付宝扫一扫
上一篇 2023-04-11
下一篇 2023-04-11

发表评论

登录后才能评论

评论列表(0条)

保存