⭐ 欢迎来到虫虫下载站! | 📦 资源下载 📁 资源专辑 ℹ️ 关于我们
⭐ 虫虫下载站

📄 des加密用php实现.txt

📁 这是一用PHP实现的DES加密解密程序,如果是加密要求较高的地方可以用3DES,欢迎大家多交流,有好的程序多交流.
💻 TXT
字号:
80分求DES加密解密算法实现的PHP源代码
 悬赏分:80 - 解决时间:2008-8-21 18:02
运行以下PHP文件 
<?php 
function idtag_des_decode($key,$encrypted) 
{ 
$encrypted = base64_decode($encrypted); 

$td = mcrypt_module_open(MCRYPT_DES,'',MCRYPT_MODE_CBC,''); //使用MCRYPT_DES算法,cbc模式 
$iv = mcrypt_create_iv(mcrypt_enc_get_iv_size($td), MCRYPT_RAND); 
$ks = mcrypt_enc_get_key_size($td); 
mcrypt_generic_init($td, $key, $key); //初始处理 

$decrypted = mdecrypt_generic($td, $encrypted); //解密 

mcrypt_generic_deinit($td); //结束 
mcrypt_module_close($td); 

$y=pkcs5_unpad($decrypted); 
return $y; 
} 

function idtag_des_encode($key,$text) 
{ 

$y=pkcs5_pad($text); 

$td = mcrypt_module_open(MCRYPT_DES,'',MCRYPT_MODE_CBC,''); //使用MCRYPT_DES算法,cbc模式 
/// $iv = mcrypt_create_iv(mcrypt_enc_get_iv_size($td), MCRYPT_RAND); 
$ks = mcrypt_enc_get_key_size($td); 
mcrypt_generic_init($td, $key, $key); //初始处理 

$encrypted = mcrypt_generic($td, $y); //解密 

mcrypt_generic_deinit($td); //结束 
mcrypt_module_close($td); 

return base64_encode($encrypted); 
} 

function pkcs5_pad($text,$block=8) 
{ 
$pad = $block - (strlen($text) % $block); 
return $text . str_repeat(chr($pad), $pad); 
} 


function pkcs5_unpad($text) 
{ 
$pad = ord($text{strlen($text)-1}); 
if ($pad > strlen($text)) return $text; 
if (strspn($text, chr($pad), strlen($text) - $pad) != $pad) return $text; 
return substr($text, 0, -1 * $pad); 
} 

$key = '12345678'; 
$str = 'str'; 
echo "encode:".idtag_des_encode($key,$str); 

?> 
打印出的结果是:encode:fwSjSc4VKyQ= 
现在求一个不依赖于mcrypt扩展库的DES算法实现PHP源代码。如果答案满意,追加30分

⌨️ 快捷键说明

复制代码 Ctrl + C
搜索代码 Ctrl + F
全屏模式 F11
切换主题 Ctrl + Shift + D
显示快捷键 ?
增大字号 Ctrl + =
减小字号 Ctrl + -