|
马上注册,结交更多好友,享用更多功能,让你轻松玩转社区。
您需要 登录 才可以下载或查看,没有帐号?立即注册
x
可以把它存成AS档做为外部连结档案(如定义ActionScript类则必须在写在as文件里,再通过import加入类),以方便共同工作和更进阶的程序修改。
起首我们来假定一个情形。
我们要做一个Flash,内里存了一段话,只想给晓得暗码的人看。一般的做法是检测用户的输出是不是即是暗码,然后显现。可是因为Flash是开放布局,以是swf文件能够反汇编然后看到暗码,这时候候就能够不法的看到要回护的器材了。
可是假如经由过程一个不成逆的算法把暗码加密,然后存在swf内里。然后把用户输出的暗码也一样加密,然后比对加密今后的字串是不是相称就能够了。由于swf内里保留的暗码是不成逆的嘛~~
不成逆的加密算法有良多种,最盛行的就是md系列了,如今的是md5。md5能够盘算承认字串的特性,然后回结到一个32字节长的字串内里,源字串一点点的修改就会形成特称字串伟大的变更。
据个例子:
"abc"的md5是900150983cd24fb0d6963f7d28e17f72
"abb"的md5是ea01e5fd8e4d8832825acdd20eac5104
为何说不成逆呢?
据个例子
成绩:1000是由甚么数字相加而成的呢?
谜底是不晓得~
假如说是两个数字,那末我们能够有1+999大概500+500大概……可是三个、四个、直到n个数字呢?也就是说我们不成能晓得本来的数字是甚么,料中的时机很小。而md5也是一样的道理,将每一个字符的特性值相加再相加,天然就很难猜到本来是甚么器材了~
那末我们有了暗码检测了~着时分必要一个可逆的加密算法来处置我们要保留的器材,由于要复原嘛~~这类算法良多,我选择了较盛行的des算法
des函数的界说是如许的
des("暗码","加密文本",形式)
形式=1的时分,des前往加密后的值
形式=0的时分,des前往解密后的值
可是因为des前往的值纷歧定是通用字符集内里的,以是我就做了一点处置,将des的值转成16进制字串,避免毛病的发生。
事理很分明了,怎样用呢~~起首,我们来创立暗码的md5值,利用上面的函数:
[color=#6495ED[B]]/*E-mail:tsxy@21cn.comMoon.Blue*/varhexcase=0;varb64pad="";varstrsize=8;functionmd5(s){returnbinl2hex(core_md5(str2binl(s),s.length*strsize));}functionb64_md5(s){returnbinl2b64(core_md5(str2binl(s),s.length*strsize));}functionstr_md5(s){returnbinl2str(core_md5(str2binl(s),s.length*strsize));}functionhex_hmac_md5(key,data){returnbinl2hex(core_hmac_md5(key,data));}functionb64_hmac_md5(key,data){returnbinl2b64(core_hmac_md5(key,data));}functionstr_hmac_md5(key,data){returnbinl2str(core_hmac_md5(key,data));}functioncore_md5(x,len){x[len>>5]|=0x80<<((len)%32);x[(((len+64)>>>9)<<4)+14]=len;vara=1732584193;varb=-271733879;varc=-1732584194;vard=271733878;for(vari=0;i<x.length;i+=16){varolda=a;varoldb=b;varoldc=c;varoldd=d;a=md5_ff(a,b,c,d,x[i+0],7,-680876936);d=md5_ff(d,a,b,c,x[i+1],12,-389564586);c=md5_ff(c,d,a,b,x[i+2],17,606105819);b=md5_ff(b,c,d,a,x[i+3],22,-1044525330);a=md5_ff(a,b,c,d,x[i+4],7,-176418897);d=md5_ff(d,a,b,c,x[i+5],12,1200080426);c=md5_ff(c,d,a,b,x[i+6],17,-1473231341);b=md5_ff(b,c,d,a,x[i+7],22,-45705983);a=md5_ff(a,b,c,d,x[i+8],7,1770035416);d=md5_ff(d,a,b,c,x[i+9],12,-1958414417);c=md5_ff(c,d,a,b,x[i+10],17,-42063);b=md5_ff(b,c,d,a,x[i+11],22,-1990404162);a=md5_ff(a,b,c,d,x[i+12],7,1804603682);d=md5_ff(d,a,b,c,x[i+13],12,-40341101);c=md5_ff(c,d,a,b,x[i+14],17,-1502002290);b=md5_ff(b,c,d,a,x[i+15],22,1236535329);a=md5_gg(a,b,c,d,x[i+1],5,-165796510);d=md5_gg(d,a,b,c,x[i+6],9,-1069501632);c=md5_gg(c,d,a,b,x[i+11],14,643717713);b=md5_gg(b,c,d,a,x[i+0],20,-373897302);a=
Flash也支持高品质的mp3音频流、文字输入字段、交互式接口等等很多工具。这个最新版本可以观看所有的flash格式。 |
|