更多md5相关内容,可以查看此帖:MD5加密中文的结果不一致
生成的文件可以放在 utils文件中哦!!!
/*
* A JavaScript implementation of the RSA Data Security, Inc. MD5 Message
* Digest Algorithm, as defined in RFC 1321.
* Version 1.1 Copyright (C) Paul Johnston 1999 - 2002.
* Code also contributed by Greg Holt
* See for details.
*/
/*
* Add integers, wrapping at 2^32. This uses 16-bit operations internally
* to work around bugs in some JS interpreters.
*/
function safe_add(x, y)
{
var lsw =(x &0xFFFF)+(y &0xFFFF)
var msw =(x >>16)+(y >>16)+(lsw >>16)
return(msw <<16)|(lsw &0xFFFF)
}
/*
* Bitwise rotate a 32-bit number to the left.
*/
function rol(num, cnt)
{
return(num << cnt)|(num >>>(32- cnt))
}
/*
* These functions implement the four basic operations the algorithm uses.
*/
function cmn(q, a, b, x, s, t)
{
return safe_add(rol(safe_add(safe_add(a, q), safe_add(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)