Chinaunix首页 | 论坛 | 博客
  • 博客访问: 645626
  • 博文数量: 110
  • 博客积分: 8090
  • 博客等级: 中将
  • 技术积分: 1217
  • 用 户 组: 普通用户
  • 注册时间: 2005-10-10 15:32
文章分类

全部博文(110)

文章存档

2017年(2)

2015年(1)

2014年(1)

2013年(1)

2012年(1)

2011年(1)

2008年(7)

2007年(27)

2006年(45)

2005年(24)

我的朋友

分类: 系统运维

2007-04-13 17:17:01

顺便精简了一下,修正了MD5(数字)的问题,老的函数数字和字符串是不同的,例如MD5(1)和MD5('1'),现在全部转化成字符串
/*
*A JavaScript implementation of the RSA Data Security,Inc. MD5 Message
*Digest Algorithm,as defined in RFC 1321.
*Copyright (C) Paul Johnston 1999-2000.
*Updated by Greg Holt 2000-2001.
*Updated by Ash 2007.
*See for details. */
function MDH(num){var c="0123456789abcdef";str="";for(j=0;j<=3;j++)str+=c.charAt((num>>(j*8+4))&0x0F)+c.charAt((num>>(j*8))&0x0F);return str}function MD(str){nblk=((str.length+8)>>6)+1;blks=new Array(nblk*16);for(i=0;i>2]|=str.charCodeAt(i)<<((i%4)*8);blks[i>>2]|=0x80<<((i%4)*8);blks[nblk*16-2]=str.length*8;return blks}function MDA(x,y){var lsw=(x&0xFFFF)+(y&0xFFFF);var msw=(x>>16)+(y>>16)+(lsw>>16);return (msw<<16)|(lsw&0xFFFF)}function rol(num,cnt){return (num<>>(32-cnt))}function cmn(q,a,b,x,s,t){return MDA(rol(MDA(MDA(a,q),MDA(x,t)),s),b)}function ff(a,b,c,d,x,s,t){return cmn((b&c)|((~b)&d),a,b,x,s,t)}function gg(a,b,c,d,x,s,t){return cmn((b&d)|(c&(~d)),a,b,x,s,t)}function hh(a,b,c,d,x,s,t){return cmn(b^c^d,a,b,x,s,t)}function ii(a,b,c,d,x,s,t){return cmn(c^(b|(~d)),a,b,x,s,t)}function MD5(str){x=MD(str+'');var a=1732584193;var b=-271733879;var c=-1732584194;var d=271733878;for(i=0;i
阅读(6071) | 评论(0) | 转发(0) |
0

上一篇:制作 紫光 输入法 v5 的 皮肤

下一篇:

给主人留下些什么吧!~~