首页 诗词 字典 板报 句子 名言 友答 励志 学校 网站地图
当前位置: 首页 > 教程频道 > 网站开发 > PHP >

请帮写个加密函数

2012-06-16 
请大虾帮写个加密函数请大虾帮写个加密函数,主要用于URL加密,本想用MD5的,得是MD5不可逆,想过用base64加密

请大虾帮写个加密函数
请大虾帮写个加密函数,主要用于URL加密,
本想用MD5的,得是MD5不可逆,想过用base64加密或urlencode编码了,但这两个函数太长了。

请大虾帮自定义一个加密函数,最好不要长于是16位,越小越好,也不要小于8位,怕重复,呵呵。

用于URL传输的,加密后最好是数字或字符。谢谢!

记得是可逆的。

[解决办法]
mcrypt

PHP code
<?php    /* Open the cipher */    $td = mcrypt_module_open('rijndael-256', '', 'ofb', '');    /* Create the IV and determine the keysize length, use MCRYPT_RAND     * on Windows instead */    $iv = mcrypt_create_iv(mcrypt_enc_get_iv_size($td), MCRYPT_DEV_RANDOM);    $ks = mcrypt_enc_get_key_size($td);    /* Create key */    $key = substr(md5('very secret key'), 0, $ks);    /* Intialize encryption */    mcrypt_generic_init($td, $key, $iv);    /* Encrypt data */    $encrypted = mcrypt_generic($td, 'This is very important data');    /* Terminate encryption handler */    mcrypt_generic_deinit($td);    /* Initialize encryption module for decryption */    mcrypt_generic_init($td, $key, $iv);    /* Decrypt encrypted string */    $decrypted = mdecrypt_generic($td, $encrypted);    /* Terminate decryption handle and close module */    mcrypt_generic_deinit($td);    mcrypt_module_close($td);    /* Show string */    echo trim($decrypted) . "\n";?> 

热点排行