javascript实现base64 md5 sha1 密码加密
1、base64加密
在页面中引入base64.js文件,调用方法为:
<!DOCTYPEHTML> <html> <head> <metacharset="utf-8"> <title>base64加密</title> <scripttype="text/javascript"src="base64.js"></script> <scripttype="text/javascript"> varb=newBase64(); varstr=b.encode("admin:admin"); alert("base64encode:"+str); //解密 str=b.decode(str); alert("base64decode:"+str); </script> </head> <body> </body> </html>
2、md5加密
在页面中引用md5.js文件,调用方法为
<!DOCTYPEHTML> <html> <head> <metacharset="utf-8"> <title>md5加密</title> <scripttype="text/ecmascript"src="md5.js"></script> <scripttype="text/javascript"> varhash=hex_md5("123dafd"); alert(hash) </script> </head> <body> </body> </html>
3、sha1加密
据说这是最安全的加密
页面中引入sha1.js,调用方法为
<!DOCTYPEHTML> <html> <head> <metacharset="utf-8"> <title>sha1加密</title> <scripttype="text/ecmascript"src="sha1.js"></script> <scripttype="text/javascript"> varsha=hex_sha1('mima123465') alert(sha) </script> </head> <body> </body> </html>
文章所包含的加密下载地址:
文中所含的js文件打包下载地址
下面给大家补充点知识:非常流行的javascript的md5加密
在网上看到的javascript的MD5加密,看比较好,就摘录了,供参考
<HTML> <HEAD> <METAhttp-equiv='Content-Type'content='text/html;charset=gb'> <TITLE>非常流行的JS的md加密办法</TITLE> </HEAD> <BODY> <inputid=testvalue=webasp> <inputtype=buttonvalue=mdonclick="alert(hex_md(test.value))"> <script> varhexcase=;/*hexoutputformat.-lowercase;-uppercase*/ varbpad="";/*base-padcharacter."="forstrictRFCcompliance*/ varchrsz=;/*bitsperinputcharacter.-ASCII;-Unicode*/ /* *Thesearethefunctionsyou'llusuallywanttocall *Theytakestringargumentsandreturneitherhexorbase-encodedstrings */ functionhex_md(s){returnbinlhex(core_md(strbinl(s),s.length*chrsz));} functionb_md(s){returnbinlb(core_md(strbinl(s),s.length*chrsz));} functionhex_hmac_md(key,data){returnbinlhex(core_hmac_md(key,data));} functionb_hmac_md(key,data){returnbinlb(core_hmac_md(key,data));} /*Backwardscompatibility-sameashex_md()*/ functioncalcMD(s){returnbinlhex(core_md(strbinl(s),s.length*chrsz));} /* *Performasimpleself-testtoseeiftheVMisworking */ functionmd_vm_test() { returnhex_md("abc")=="cdfbdfdef"; } /* *CalculatetheMDofanarrayoflittle-endianwords,andabitlength */ functioncore_md(x,len) { /*appendpadding*/ x[len>>]|=x<<((len)%); x[(((len+)>>>)<<)+]=len; vara=; varb=-; varc=-; vard=; for(vari=;i<x.length;i+=) { varolda=a; varoldb=b; varoldc=c; varoldd=d; a=md_ff(a,b,c,d,x[i+],,-); d=md_ff(d,a,b,c,x[i+],,-); c=md_ff(c,d,a,b,x[i+],,); b=md_ff(b,c,d,a,x[i+],,-); a=md_ff(a,b,c,d,x[i+],,-); d=md_ff(d,a,b,c,x[i+],,); c=md_ff(c,d,a,b,x[i+],,-); b=md_ff(b,c,d,a,x[i+],,-); a=md_ff(a,b,c,d,x[i+],,); d=md_ff(d,a,b,c,x[i+],,-); c=md_ff(c,d,a,b,x[i+],,-); b=md_ff(b,c,d,a,x[i+],,-); a=md_ff(a,b,c,d,x[i+],,); d=md_ff(d,a,b,c,x[i+],,-); c=md_ff(c,d,a,b,x[i+],,-); b=md_ff(b,c,d,a,x[i+],,); a=md_gg(a,b,c,d,x[i+],,-); d=md_gg(d,a,b,c,x[i+],,-); c=md_gg(c,d,a,b,x[i+],,); b=md_gg(b,c,d,a,x[i+],,-); a=md_gg(a,b,c,d,x[i+],,-); d=md_gg(d,a,b,c,x[i+],,); c=md_gg(c,d,a,b,x[i+],,-); b=md_gg(b,c,d,a,x[i+],,-); a=md_gg(a,b,c,d,x[i+],,); d=md_gg(d,a,b,c,x[i+],,-); c=md_gg(c,d,a,b,x[i+],,-); b=md_gg(b,c,d,a,x[i+],,); a=md_gg(a,b,c,d,x[i+],,-); d=md_gg(d,a,b,c,x[i+],,-); c=md_gg(c,d,a,b,x[i+],,); b=md_gg(b,c,d,a,x[i+],,-); a=md_hh(a,b,c,d,x[i+],,-); d=md_hh(d,a,b,c,x[i+],,-); c=md_hh(c,d,a,b,x[i+],,); b=md_hh(b,c,d,a,x[i+],,-); a=md_hh(a,b,c,d,x[i+],,-); d=md_hh(d,a,b,c,x[i+],,); c=md_hh(c,d,a,b,x[i+],,-); b=md_hh(b,c,d,a,x[i+],,-); a=md_hh(a,b,c,d,x[i+],,); d=md_hh(d,a,b,c,x[i+],,-); c=md_hh(c,d,a,b,x[i+],,-); b=md_hh(b,c,d,a,x[i+],,); a=md_hh(a,b,c,d,x[i+],,-); d=md_hh(d,a,b,c,x[i+],,-); c=md_hh(c,d,a,b,x[i+],,); b=md_hh(b,c,d,a,x[i+],,-); a=md_ii(a,b,c,d,x[i+],,-); d=md_ii(d,a,b,c,x[i+],,); c=md_ii(c,d,a,b,x[i+],,-); b=md_ii(b,c,d,a,x[i+],,-); a=md_ii(a,b,c,d,x[i+],,); d=md_ii(d,a,b,c,x[i+],,-); c=md_ii(c,d,a,b,x[i+],,-); b=md_ii(b,c,d,a,x[i+],,-); a=md_ii(a,b,c,d,x[i+],,); d=md_ii(d,a,b,c,x[i+],,-); c=md_ii(c,d,a,b,x[i+],,-); b=md_ii(b,c,d,a,x[i+],,); a=md_ii(a,b,c,d,x[i+],,-); d=md_ii(d,a,b,c,x[i+],,-); c=md_ii(c,d,a,b,x[i+],,); b=md_ii(b,c,d,a,x[i+],,-); a=safe_add(a,olda); b=safe_add(b,oldb); c=safe_add(c,oldc); d=safe_add(d,oldd); } returnArray(a,b,c,d); } /* *Thesefunctionsimplementthefourbasicoperationsthealgorithmuses. */ functionmd_cmn(q,a,b,x,s,t) { returnsafe_add(bit_rol(safe_add(safe_add(a,q),safe_add(x,t)),s),b); } functionmd_ff(a,b,c,d,x,s,t) { returnmd_cmn((b&c)|((~b)&d),a,b,x,s,t); } functionmd_gg(a,b,c,d,x,s,t) { returnmd_cmn((b&d)|(c&(~d)),a,b,x,s,t); } functionmd_hh(a,b,c,d,x,s,t) { returnmd_cmn(b^c^d,a,b,x,s,t); } functionmd_ii(a,b,c,d,x,s,t) { returnmd_cmn(c^(b|(~d)),a,b,x,s,t); } /* *CalculatetheHMAC-MD,ofakeyandsomedata */ functioncore_hmac_md(key,data) { varbkey=strbinl(key); if(bkey.length>)bkey=core_md(bkey,key.length*chrsz); varipad=Array(),opad=Array(); for(vari=;i<;i++) { ipad[i]=bkey[i]^x; opad[i]=bkey[i]^xCCCC; } varhash=core_md(ipad.concat(strbinl(data)),+data.length*chrsz); returncore_md(opad.concat(hash),+); } /* *Addintegers,wrappingat^.Thisuses-bitoperationsinternally *toworkaroundbugsinsomeJSinterpreters. */ functionsafe_add(x,y) { varlsw=(x&xFFFF)+(y&xFFFF); varmsw=(x>>)+(y>>)+(lsw>>); return(msw<<)|(lsw&xFFFF); } /* *Bitwiserotatea-bitnumbertotheleft. */ functionbit_rol(num,cnt) { return(num<<cnt)|(num>>>(-cnt)); } /* *Convertastringtoanarrayoflittle-endianwords *IfchrszisASCII,characters>havetheirhi-bytesilentlyignored. */ functionstrbinl(str) { varbin=Array(); varmask=(<<chrsz)-; for(vari=;i<str.length*chrsz;i+=chrsz) bin[i>>]|=(str.charCodeAt(i/chrsz)&mask)<<(i%); returnbin; } /* *Convertanarrayoflittle-endianwordstoahexstring. */ functionbinlhex(binarray) { varhex_tab=hexcase?"ABCDEF":"abcdef"; varstr=""; for(vari=;i<binarray.length*;i++) { str+=hex_tab.charAt((binarray[i>>]>>((i%)*+))&xF)+ hex_tab.charAt((binarray[i>>]>>((i%)*))&xF); } returnstr; } /* *Convertanarrayoflittle-endianwordstoabase-string */ functionbinlb(binarray) { vartab="ABCDEFGHIJKLMNOPQRSTUVWXYZabcdefghijklmnopqrstuvwxyz+/"; varstr=""; for(vari=;i<binarray.length*;i+=) { vartriplet=(((binarray[i>>]>>*(i%))&xFF)<<) |(((binarray[i+>>]>>*((i+)%))&xFF)<<) |((binarray[i+>>]>>*((i+)%))&xFF); for(varj=;j<;j++) { if(i*+j*>binarray.length*)str+=bpad; elsestr+=tab.charAt((triplet>>*(-j))&xF); } } returnstr; } </script> </BODY></HTML>
以上所述是小编给大家介绍的javascript实现base64md5sha1密码加密,希望对大家有所帮助,如果大家有任何疑问请给我留言,小编会及时回复大家的。在此也非常感谢大家对毛票票网站的支持!