喜悦国际村 
» 游客:  注册 | 登录 | 搜索 | 统计 | 喜悦证交所 | 帮助

RSS 订阅当前论坛  

[北京]代朋友公司招聘PHP高级程序员多名

上一主题 下一主题
     
标题: [原创] 发一对md5的加密解密函数  
  本主题被作者加入到他/她的 Blog 中  
 
qh663
版主
Rank: 7Rank: 7Rank: 7
中级会员


UID 30020
精华 0
积分 546
帖子 580
金钱 546 喜悦币
威望 0
人脉 0
阅读权限 100
注册 2004-7-13
来自 河源
状态 离线
发一对md5的加密解密函数



<?php
    
function encode($code,$seed "qh8.net"$safe false){
        if (
$safe$code base64_encode(strrev(str_rot13($code))); 
        
$c_l strlen($code);
        
$s_m md5($seed);
        
$s_l strlen($m); 
        
$a=0;
        while (
$a <$c_l){
            
$str .= sprintf ("%'02s",base_convert(ord($code{$a})+ord($s_m{$s_l $a+1}),10,32));
            
$a++;
        }
        return 
$str;//wordwrap($str, 80, "n", true)
    
}
    
    
    function 
decode($code$seed 'qh8.net'$safe false){
        
//$code = preg_replace("'[ rnt]+'", '', $code);
        
preg_match_all("/.{2}/"$code$arr);
        
$arr $arr[0];
        
$s_m md5($seed);
        
$s_l strlen($m); 
        
$a 0;
        foreach (
$arr as $value){
            
$str .= chr(base_convert($value,32,10)-ord($s_m{$s_l $a+1}));
            
$a++;
        }
        if (
$safe$str str_rot13(strrev(base64_decode($str)));
        return 
$str;
    }
?>


<?php
$abc 
="aBcD中国人abcdefghijklmnopqrstuvwxyz0123456789ABCDEFGHIJKLMNOPQRSTUVWXYZ";
$a encode($abc,'www.qh8.net',true);//加密
echo $a;
echo 
decode($a,'www.qh8.net',true);//解密
?>




五百多篇PHP学习资料
喜悦村BLOG
php团队接兼职项目QQ:80031807
PHP群:768844
2006-12-18 02:00 PM#1
查看资料  访问主页  Blog  发短消息  QQ  顶部
 
剑枫 (雪花)
论坛元老
Rank: 8Rank: 8
欧玛嘎


UID 26144
精华 1
积分 4849
帖子 1721
金钱 4839 喜悦币
威望 10
人脉 0
阅读权限 90
注册 2004-2-14
来自 山东郓城
状态 离线
[推荐阅读] php内容字段截取问题
支持
加密后长度能变化多少




在场外支持奥运.....
2006-12-19 10:11 AM#2
查看资料  访问主页  发短消息  QQ  顶部
 
qh663
版主
Rank: 7Rank: 7Rank: 7
中级会员


UID 30020
精华 0
积分 546
帖子 580
金钱 546 喜悦币
威望 0
人脉 0
阅读权限 100
注册 2004-7-13
来自 河源
状态 离线
[推荐阅读] 请问如何 只 update 一条纪录?
回复 #2 剑枫 的帖子

加1倍



五百多篇PHP学习资料
喜悦村BLOG
php团队接兼职项目QQ:80031807
PHP群:768844
2006-12-19 12:14 PM#3
查看资料  访问主页  Blog  发短消息  QQ  顶部
 
bkkkd
高级会员
Rank: 4
老会员


UID 29854
精华 0
积分 614
帖子 630
金钱 614 喜悦币
威望 0
人脉 0
阅读权限 50
注册 2004-7-5
状态 离线
[推荐阅读] 这小段代码输出的结果好奇怪
感觉用处不大
2006-12-21 01:50 PM#4
查看资料  访问主页  Blog  发短消息  QQ  顶部
 
millken
高级会员
Rank: 4


UID 73040
精华 0
积分 737
帖子 481
金钱 737 喜悦币
威望 0
人脉 0
阅读权限 50
注册 2006-5-9
来自 REFERER
状态 在线
[推荐阅读] 如何修改mysql中存贮的值?
呵呵 最好是长度不变



Blogger 免费搭建的个人BLOG
2007-1-1 12:01 AM#5
查看资料  Blog  发短消息  顶部
 
奶瓶 (NP博士)
版主
Rank: 7Rank: 7Rank: 7
老仙


UID 52707
精华 4
积分 5482
帖子 6105
金钱 5432 喜悦币
威望 50
人脉 0
阅读权限 100
注册 2004-11-22
来自 北大中文系
状态 离线
[推荐阅读] 一个失败的SQL命令 ?
欺骗我的感情
我以为王小云教授来了呢~~





图片包子,注册送100包子!
2007-1-1 01:00 AM#6
查看资料  访问主页  Blog  发短消息  QQ  ICQ 状态  Yahoo!  顶部
 
millken
高级会员
Rank: 4


UID 73040
精华 0
积分 737
帖子 481
金钱 737 喜悦币
威望 0
人脉 0
阅读权限 50
注册 2006-5-9
来自 REFERER
状态 在线
[推荐阅读] 谁有修改好FCKeditor2.3的,能不能共享一下
如果是加密数字,很明显都暴露了
1=>xxxx50501
2=>xxxx50502
3=>xxxx50503
所以测试是很失败的




Blogger 免费搭建的个人BLOG
2007-1-2 02:54 PM#7
查看资料  Blog  发短消息  顶部
 
qh663
版主
Rank: 7Rank: 7Rank: 7
中级会员


UID 30020
精华 0
积分 546
帖子 580
金钱 546 喜悦币
威望 0
人脉 0
阅读权限 100
注册 2004-7-13
来自 河源
状态 离线
[推荐阅读] 请教 基于php的论坛设计
function encode($code,$seed = "qh8.net", $safe = false){
        if ($safe) $code = base64_encode(strrev(str_rot13($code)));
        $code = (string)$code;
                $c_l = strlen($code);
        $s_m = md5($seed);
        $s_l = strlen($s_m);
        $a = 0;
        while ($a < $c_l){
                        $str .= sprintf ("%'02s",base_convert(ord($code{$a})+ord($s_m{$s_l % $a+1}),10,32));
                        $a++;
        }
        return $str;//wordwrap($str, 80, "n", true)
    }
   
   
    function decode($code, $seed = 'qh8.net', $safe = false){
        //$code = preg_replace("'[ rnt]+'", '', $code);
        preg_match_all("/.{2}/", $code, $arr);
        $arr = $arr[0];
        $s_m = md5($seed);
        $s_l = strlen($s_m);
        $a = 0;
        foreach ($arr as $value){
                        $str .= chr(base_convert($value,32,10)-ord($s_m{$s_l % $a+1 }));
            $a++;
        }
        if ($safe) $str = str_rot13(strrev(base64_decode($str)));
        return $str;
    }
有点错误在php5中,修正了一下。至于millken 说到的,设置第二个参数。




五百多篇PHP学习资料
喜悦村BLOG
php团队接兼职项目QQ:80031807
PHP群:768844
2007-1-3 03:32 AM#8
查看资料  访问主页  Blog  发短消息  QQ  顶部
 
millken
高级会员
Rank: 4


UID 73040
精华 0
积分 737
帖子 481
金钱 737 喜悦币
威望 0
人脉 0
阅读权限 50
注册 2006-5-9
来自 REFERER
状态 在线
[推荐阅读] 一丝不挂
还是不行,太有规律了。
如:1=>32
       2=>33
       3=>34
      ....
       a=>4i
       b=>4j
       c=>4k
我不说,相信后面的都很清楚了。
***************************************
我也正在思考一种可逆算法(想了几天了):任何数加密后都返回定长的加密串,并且加密串中只含有英文字母和数字。
后面的都已实现,由于在加密过程中使用了类似base64的补位移位运算,使得从加密串中找不到任何规律。就是返回定长还没有解决,现在看能不能从md5中找到点什么?




Blogger 免费搭建的个人BLOG
2007-1-3 10:43 AM#9
查看资料  Blog  发短消息  顶部
 
akstrom (akstrom)
金牌会员
Rank: 6Rank: 6
村口大榕树上的知了


UID 24856
精华 0
积分 1071
帖子 1079
金钱 945 喜悦币
威望 0
人脉 126
阅读权限 70
注册 2003-11-27
来自 广州
状态 离线
[推荐阅读] 奇思妙想吓你一跳 公元3000年的幸福生活(转载)


QUOTE:
原帖由 奶瓶 于 2007-1-1 01:00 AM 发表
欺骗我的感情
我以为王小云教授来了呢~~
呵呵 我也以为是,原来是“一对”而不是“一.对”




电子商务系统

后台/admin
用户名密码一样admin

',“╭⌒╮⌒╮╮
  ╱◥██◣,.
︱田︱田田| '',,',.
╬╬╬╬╬╬╬╬╬╬╬╬
2007-1-9 01:51 PM#10
查看资料  访问主页  Blog  发短消息  顶部
     


  可打印版本 | 推荐给朋友 | 订阅主题 | 收藏主题 | 开通个人空间  


 




Powered by Discuz! 6.1.0  © 2001-2010 Comsenz Inc.
Processed in 0.039832 second(s), 6 queries

(冀ICP备05009913号) 管理员:sadly 邮箱/MSN: sadly@phpx.com QQ:824008(长隐) 清除 Cookies - - Archiver - WAP