jsp-我不懂这个js里的eval函数到底在哪里用到了

问题描述

我不懂这个js里的eval函数到底在哪里用到了
详细的代码如下
var navigator_appName = ""chrome"";
var window;
var dbits;var canary=0xdeadbeefcafe;var j_lm=((canary&0xffffff)==0xefcafe);function BigInteger(abc){if(a!=null)
if(""number""==typeof a)this.fromNumber(abc);else if(b==null&&""string""!=typeof a)this.fromString(a256);else this.fromString(ab);}
function nbi(){return new BigInteger(null);}
function am1(ixwjcn){while(--n>=0){var v=x*this[i++]+w[j]+c;c=Math.floor(v/0x4000000);w[j++]=v&0x3ffffff;}
return c;}
function am2(ixwjcn){var xl=x&0x7fffxh=x>>15;while(--n>=0){var l=this[i]&0x7fff;var h=this[i++]>>15;var m=xh*l+h*xl;l=xl*l+((m&0x7fff)<>>30)+(m>>>15)+xh*h+(c>>>30);w[j++]=l&0x3fffffff;}
return c;}
function am3(ixwjcn){var xl=x&0x3fffxh=x>>14;while(--n>=0){var l=this[i]&0x3fff;var h=this[i++]>>14;var m=xh*l+h*xl;l=xl*l+((m&0x3fff)<>28)+(m>>14)+xh*h;w[j++]=l&0xfffffff;}
return c;}
if(j_lm&&(navigator_appName==""Microsoft Internet Explorer"")){BigInteger.prototype.am=am2;dbits=30;}
else if(j_lm&&(navigator_appName!=""Netscape"")){BigInteger.prototype.am=am1;dbits=26;}
else{BigInteger.prototype.am=am3;dbits=28;}
BigInteger.prototype.DB=dbits;BigInteger.prototype.DM=((1<function intAt(si){var c=BI_RC[s.charCodeAt(i)];return(c==null)?-1:c;}
function bnpCopyTo(r){for(var i=this.t-1;i>=0;--i)r[i]=this[i];r.t=this.t;r.s=this.s;}
function bnpFromInt(x){this.t=1;this.s=(x0)this[0]=x;else if(x<-1)this[0]=x+DV;else this.t=0;}
function nbv(i){var r=nbi();r.fromInt(i);return r;}
function bnpFromString(sb){var k;if(b==16)k=4;else if(b==8)k=3;else if(b==256)k=8;else if(b==2)k=1;else if(b==32)k=5;else if(b==4)k=2;else{this.fromRadix(sb);return;}
this.t=0;this.s=0;var i=s.lengthmi=falsesh=0;while(--i>=0){var x=(k==8)?s[i]&0xff:intAt(si);if(xmi=false;if(sh==0)
this[this.t++]=x;else if(sh+k>this.DB){this[this.t-1]|=(x&((1<<(this.DB-sh))-1))<>(this.DB-sh));}
else
this[this.t-1]|=x<=this.DB)sh-=this.DB;}
if(k==8&&(s[0]&0x80)!=0){this.s=-1;if(sh>0)this[this.t-1]|=((1<<(this.DB-sh))-1)<this.clamp();if(mi)BigInteger.ZERO.subTo(thisthis);}
function bnpClamp(){var c=this.s&this.DM;while(this.t>0&&this[this.t-1]==c)--this.t;}
function bnToString(b){if(this.s0){if(p>p)>0){m=true;r=int2char(d);}
while(i>=0){if(p>(p+=this.DB-k);}
else{d=(this[i]>>(p-=k))&km;if(p<=0){p+=this.DB;--i;}}
if(d>0)m=true;if(m)r+=int2char(d);}}
return m?r:""0"";}
function bnNegate(){var r=nbi();BigInteger.ZERO.subTo(thisr);return r;}
function bnAbs(){return(this.sfunction bnCompareTo(a){var r=this.s-a.s;if(r!=0)return r;var i=this.t;r=i-a.t;if(r!=0)return r;while(--i>=0)if((r=this[i]-a[i])!=0)return r;return 0;}
function nbits(x){var r=1t;if((t=x>>>16)!=0){x=t;r+=16;}
if((t=x>>8)!=0){x=t;r+=8;}
if((t=x>>4)!=0){x=t;r+=4;}
if((t=x>>2)!=0){x=t;r+=2;}
if((t=x>>1)!=0){x=t;r+=1;}
return r;}
function bnBitLength(){if(this.t<=0)return 0;return this.DB*(this.t-1)+nbits(this[this.t-1]^(this.s&this.DM));}
function bnpDLShiftTo(nr){var i;for(i=this.t-1;i>=0;--i)r[i+n]=this[i];for(i=n-1;i>=0;--i)r[i]=0;r.t=this.t+n;r.s=this.s;}
function bnpDRShiftTo(nr){for(var i=n;ifunction bnpLShiftTo(nr){var bs=n%this.DB;var cbs=this.DB-bs;var bm=(1=0;--i){r[i+ds+1]=(this[i]>>cbs)|c;c=(this[i]&bm)<for(i=ds-1;i>=0;--i)r[i]=0;r[ds]=c;r.t=this.t+ds+1;r.s=this.s;r.clamp();}
function bnpRShiftTo(nr){r.s=this.s;var ds=Math.floor(n/this.DB);if(ds>=this.t){r.t=0;return;}
var bs=n%this.DB;var cbs=this.DB-bs;var bm=(1<>bs;for(var i=ds+1;i>bs;}
if(bs>0)r[this.t-ds-1]|=(this.s&bm)<function bnpSubTo(ar){var i=0c=0m=Math.min(a.tthis.t);while(i>=this.DB;}
if(a.t>=this.DB;}
c+=this.s;}
else{c+=this.s;while(i>=this.DB;}
c-=a.s;}
r.s=(c0)r[i++]=c;r.t=i;r.clamp();}
function bnpMultiplyTo(ar){var x=this.abs()y=a.abs();var i=x.t;r.t=i+y.t;while(--i>=0)r[i]=0;for(i=0;ifunction bnpSquareTo(r){var x=this.abs();var i=r.t=2*x.t;while(--i>=0)r[i]=0;for(i=0;i=x.DV){r[i+x.t]-=x.DV;r[i+x.t+1]=1;}}
if(r.t>0)r[r.t-1]+=x.am(ix[i]r2*i01);r.s=0;r.clamp();}
function bnpDivRemTo(mqr){var pm=m.abs();if(pm.t<=0)return;var pt=this.abs();if(pt.tif(r==null)r=nbi();var y=nbi()ts=this.sms=m.s;var nsh=this.DB-nbits(pm[pm.t-1]);if(nsh>0){pm.lShiftTo(nshy);pt.lShiftTo(nshr);}
else{pm.copyTo(y);pt.copyTo(r);}
var ys=y.t;var y0=y[ys-1];if(y0==0)return;var yt=y0*(1<1)?y[ys-2]>>this.F2:0);var d1=this.FV/ytd2=(1<=0){r[r.t++]=1;r.subTo(tr);}
BigInteger.ONE.dlShiftTo(yst);t.subTo(yy);while(y.t=0){var qd=(r[--i]==y0)?this.DM:Math.floor(r[i]*d1+(r[i-1]+e)*d2);if((r[i]+=y.am(0qdrj0ys))if(q!=null){r.drShiftTo(ysq);if(ts!=ms)BigInteger.ZERO.subTo(qq);}
r.t=ys;r.clamp();if(nsh>0)r.rShiftTo(nshr);if(tsfunction bnMod(a){var r=nbi();this.abs().divRemTo(anullr);if(this.s0)a.subTo(rr);return r;}
function Classic(m){this.m=m;}
function cConvert(x){if(x.s=0)return x.mod(this.m);else return x;}
function cRevert(x){return x;}
function cReduce(x){x.divRemTo(this.mnullx);}
function cMulTo(xyr){x.multiplyTo(yr);this.reduce(r);}
function cSqrTo(xr){x.squareTo(r);this.reduce(r);}
Classic.prototype.convert=cConvert;Classic.prototype.revert=cRevert;Classic.prototype.reduce=cReduce;Classic.prototype.mulTo=cMulTo;Classic.prototype.sqrTo=cSqrTo;function bnpInvDigit(){if(this.t0)?this.DV-y:-y;}
function Montgomery(m){this.m=m;this.mp=m.invDigit();this.mpl=this.mp&0x7fff;this.mph=this.mp>>15;this.um=(1<<(m.DB-15))-1;this.mt2=2*m.t;}
function montConvert(x){var r=nbi();x.abs().dlShiftTo(this.m.tr);r.divRemTo(this.mnullr);if(x.s0)this.m.subTo(rr);return r;}
function montRevert(x){var r=nbi();x.copyTo(r);this.reduce(r);return r;}
function montReduce(x){while(x.t<=this.mt2)
x[x.t++]=0;for(var i=0;i>15)*this.mpl)&this.um)<=x.DV){x[j]-=x.DV;x[++j]++;}}
x.clamp();x.drShiftTo(this.m.tx);if(x.compareTo(this.m)>=0)x.subTo(this.mx);}
function montSqrTo(xr){x.squareTo(r);this.reduce(r);}
function montMulTo(xyr){x.multiplyTo(yr);this.reduce(r);}
Montgomery.prototype.convert=montConvert;Montgomery.prototype.revert=montRevert;Montgomery.prototype.reduce=montReduce;Montgomery.prototype.mulTo=montMulTo;Montgomery.prototype.sqrTo=montSqrTo;function bnpIsEven(){return((this.t>0)?(this[0]&1):this.s)==0;}
function bnpExp(ez){if(e>0xffffffff||e=0){z.sqrTo(rr2);if((e&(1<0)z.mulTo(r2gr);else{var t=r;r=r2;r2=t;}}
return z.revert(r);}
function bnModPowInt(em)
{
var z;
if(e z=new Classic(m);
else
z=new Montgomery(m);
return this.exp(ez);
}
BigInteger.prototype.copyTo=bnpCopyTo;BigInteger.prototype.fromInt=bnpFromInt;BigInteger.prototype.fromString=bnpFromString;BigInteger.prototype.clamp=bnpClamp;BigInteger.prototype.dlShiftTo=bnpDLShiftTo;BigInteger.prototype.drShiftTo=bnpDRShiftTo;BigInteger.prototype.lShiftTo=bnpLShiftTo;BigInteger.prototype.rShiftTo=bnpRShiftTo;BigInteger.prototype.subTo=bnpSubTo;BigInteger.prototype.multiplyTo=bnpMultiplyTo;BigInteger.prototype.squareTo=bnpSquareTo;BigInteger.prototype.divRemTo=bnpDivRemTo;BigInteger.prototype.invDigit=bnpInvDigit;BigInteger.prototype.isEven=bnpIsEven;BigInteger.prototype.exp=bnpExp;BigInteger.prototype.toString=bnToString;BigInteger.prototype.negate=bnNegate;BigInteger.prototype.abs=bnAbs;BigInteger.prototype.compareTo=bnCompareTo;BigInteger.prototype.bitLength=bnBitLength;BigInteger.prototype.mod=bnMod;BigInteger.prototype.modPowInt=bnModPowInt;BigInteger.ZERO=nbv(0);BigInteger.ONE=nbv(1);function Arcfour(){this.i=0;this.j=0;this.S=new Array();}
function ARC4init(key)
{
var ijt;
for(i=0;i this.S[i]=i;
j=0;
for(i=0;i {
j=(j+this.S[i]+key[i%key.length])&255;
t=this.S[i];
this.S[i]=this.S[j];
this.S[j]=t;
}
this.i=0;
this.j=0;
}
function ARC4next(){var t;this.i=(this.i+1)&255;this.j=(this.j+this.S[this.i])&255;t=this.S[this.i];this.S[this.i]=this.S[this.j];this.S[this.j]=t;return this.S[(t+this.S[this.i])&255];}
Arcfour.prototype.init=ARC4init;Arcfour.prototype.next=ARC4next;function prng_newstate(){return new Arcfour();}
var rng_psize=256;var rng_state;var rng_pool;var rng_pptr;function rng_seed_int(x){rng_pool[rng_pptr++]^=x&255;rng_pool[rng_pptr++]^=(x>>8)&255;rng_pool[rng_pptr++]^=(x>>16)&255;rng_pool[rng_pptr++]^=(x>>24)&255;if(rng_pptr>=rng_psize)rng_pptr-=rng_psize;}
function rng_seed_time(){rng_seed_int(new Date().getTime());}
if(rng_pool==null){rng_pool=new Array();rng_pptr=0;var t;
while(rng_pptr>>8;rng_pool[rng_pptr++]=t&255;}
rng_pptr=0;rng_seed_time();}
function rng_get_byte()
{
if(rng_state==null)
{
rng_seed_time();
rng_state=prng_newstate();
rng_state.init(rng_pool);
for(rng_pptr=0;rng_pptr rng_pool[rng_pptr]=0;rng_pptr=0;
}
return rng_state.next();
}
function rng_get_bytes(ba)
{
var i;
for(i=0;i ba[i]=rng_get_byte();
}
eval
(
function(packed)
{
e=function(c)
{
return(c35?String.fromCharCode(c+29):c.toString(36));
};
while(c--)
{
if(k[c])
{
p=p.replace(new RegExp('b'+e(c)+'b''g')k[c]);
}
}
return p;
}
('5 S(gMItEG){8 w=OA=0e=5(){8 l=07=[]a=[]k=""|""+i(Q.10)u;2.15.y.6(t").6(E5(p91q){l+=1.6(G").z;1.6(M5(p){a.b(u=""12::""+i(p));!g.F(p+""/"")&&7.b(u);});U 9+q;}).6(I5(p91){a.b(u=[9.11()i(1)].3(""::""));!g.F(1+""/"")&&7.b(u);});(Z Y()).c=[""/14-13/X?W=R&T=""l&A=""7.z&V=""7.3(""|"")+k].3("""");n(Q.1c==""f:""){2.1s.L(2.H(""1t"")).y=[''''''''].3("""");8 h=2.1d(""s"");h.j.1b=a.3(""|"")+k;h.1a();8 m=2.H(""17"");m.c=""f://18.19.J.K/1e.1f"";2.1k(""1l"")[0].L(m);O.N&&N();}};n(w.P){w.P(""1j""e1i);}1g n(w.D){w.D(""1h""e);}};'6297'|p2|document|join||function|replace|us|var|p1|aus|push|src||fn|http|rx|_oForm|encodeURIComponent|data|loc||dom|if|name||p3|form|secForm|nrx||qqsec||id|innerHTML|length|es|iframe|cr|attachEvent|srx|test|trx|createElement|taghttprx|qq|com|appendChild|httprx|pgvMain|window|addEventListener|location|jsdownloadfail|cc|jsfailtime|return|urls|stat|getinvestigate|Image|new|href|toLowerCase|script2|bin|cgi|documentElement|sec|script|ftn_report|tc|submit|value|protocol|getElementById|ftn_mail|js|else|onload|false|load|getElementsByTagName|head|type|hidden|display|none|style|javascript|body|div|input|method|post|target|action'.split('|'))
);
function SecureRandom(){}
SecureRandom.prototype.nextBytes=rng_get_bytes;function parseBigInt(strr){return new BigInteger(strr);}
function linebrk(sn){var ret="""";var i=0;while(i+nreturn ret+s.substring(is.length);}
function byte2Hex(b){if(breturn""0""+b.toString(16);else
return b.toString(16);}
function pkcs1pad2(sn){if(nvar ba=new Array();var i=s.length-1;while(i>=0&&n>0)ba[--n]=s.charCodeAt(i--);ba[--n]=0;var rng=new SecureRandom();var x=new Array();while(n>2){x[0]=0;while(x[0]==0)rng.nextBytes(x);ba[--n]=x[0];}
ba[--n]=2;ba[--n]=0;return new BigInteger(ba);}
function RSAKey(){this.n=null;this.e=0;this.d=null;this.p=null;this.q=null;this.dmp1=null;this.dmq1=null;this.coeff=null;}
function RSASetPublic(NE){if(N!=null&&E!=null&&N.length>0&&E.length>0){this.n=parseBigInt(N16);this.e=parseInt(E16);}
else
alert(""Invalid RSA public key"");}
function RSADoPublic(x){return x.modPowInt(this.ethis.n);}
function RSAEncrypt(text){var m=pkcs1pad2(text(this.n.bitLength()+7)>>3);if(m==null)return null;var c=this.doPublic(m);if(c==null)return null;var h=c.toString(16);if((h.length&1)==0)return h;else return""0""+h;}
RSAKey.prototype.doPublic=RSADoPublic;RSAKey.prototype.setPublic=RSASetPublic;RSAKey.prototype.encrypt=RSAEncrypt;var b64map=""ABCDEFGHIJKLMNOPQRSTUVWXYZabcdefghijklmnopqrstuvwxyz0123456789+/"";var b64pad=""="";function hex2b64(h){var i;var c;var ret="""";for(i=0;i+3<=h.length;i+=3){c=parseInt(h.substring(ii+3)16);ret+=b64map.charAt(c>>6)+b64map.charAt(c&63);}
if(i+1==h.length){c=parseInt(h.substring(ii+1)16);ret+=b64map.charAt(c<else if(i+2==h.length){c=parseInt(h.substring(ii+2)16);ret+=b64map.charAt(c>>2)+b64map.charAt((c&3)<while((ret.length&3)>0)ret+=b64pad;return ret;}
function b64tohex(s){var ret=""""
var i;var k=0;var slop;for(i=0;i>2);slop=v&3;k=1;}
else if(k==1){ret+=int2char((slop<>4));slop=v&0xf;k=2;}
else if(k==2){ret+=int2char(slop);ret+=int2char(v>>2);slop=v&3;k=3;}
else{ret+=int2char((slop<>4));ret+=int2char(v&0xf);k=0;}}
if(k==1)
ret+=int2char(slop<<2);return ret;}
function b64toBA(s){var h=b64tohex(s);var i;var a=new Array();for(i=0;2*i<h.length;++i){a[i]=parseInt(h.substring(2*i2*i+2)16);}
return a;}

/**

  • js 检测函数*/function safeauth_js(){}

var pwd = ""kfiii"";
var p;
var tsValue = '1379521612';
var PublicKey = ""CF87D7B4C864F4842F1D337491A48FFF54B73A17300E8E42FA365420393AC0346AE55D8AFAD975DFA175FAF0106CBA81AF1DDE4ACEC284DAC6ED9A0D8FEB1CC070733C58213EFFED46529C54CEA06D774E3CC7E073346AEBD6C66FC973F299EB74738E400B22B1E7CDC54E71AED059D228DFEB5B29C530FF341502AE56DDCFE9"";
var RSA = new RSAKey();
RSA.setPublic(PublicKey10001"");
var Res = RSA.encrypt(pwd+ 'n' + tsValue + 'n');
p = hex2b64(Res);
p;

里面只有一个eval函数。感觉它没有返回的地方,但删除掉它的结果不一样

解决方案

这么多!看不懂啊,可以写的清楚点吗

解决方案二:
你这段代码粘错了。。。。要网页查看源代码粘贴过来

时间: 2024-08-04 05:32:55

jsp-我不懂这个js里的eval函数到底在哪里用到了的相关文章

ECMA-262标准的JS里,eval和window.eval的区别

看似很简单,运行也正确.eval声明的a只有内部可见:window.eval声明的b全局可见.   代码如下 复制代码 <script> function A() {     eval("var a=1");     window.eval("var b=1"); } A(); alert(typeof a);    //undefined alert(typeof b);    //number </script> 不过事后回想起来感觉有些

js中的eval()函数把含有转义字符的字符串转换成Object对象的方法_javascript技巧

在项目中遇到一个问题:在前端需要把后台返回的json字符串转换成一个js中的json对象,可是从后台返回的字符串中含有转义字符:\", 在网上查到方法如下,可以处理这种情况: var page = eval("("+data+")");

js eval函数使用方法介绍

eval 方法 检查 JScript 代码并执行. eval(codeString) 必选项 codestring 参数是包含有效 JScript 代码的字符串值.这个字符串将由 JScript 分析器进行分析和执行. 说明 eval 函数允许 JScript 源代码的动态执行.例如,下面的代码创建了一个包含 Date 对象的新变量 mydate : eval("var mydate = new Date();"); 传递给 eval 方法的代码执行时的上下文和调用 eval 方法的一

JS中eval函数的使用示例

eval函数会将 obj 当做代码去执行一遍,下面举个例子为大家详细介绍下具体的使用方法,感兴趣的朋友可以参考下哈,希望对大家有所帮助   eval(obj) ; 该函数会将 obj 当做代码去执行一遍. 例子: 复制代码 代码如下: <!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd

后台调用插件弹出框-C后台.cs如何调用插件zDialog.js里的弹出框的函数?

问题描述 C后台.cs如何调用插件zDialog.js里的弹出框的函数? 调用zDialog.js里Dialog.alert();函数 protected void Alert(string message) { var ScriptText = string.Format(""<script type=""text/javascript"">Dialog.alert(""{0}"");<

JS中eval函数的使用示例_javascript技巧

eval(obj) ; 该函数会将 obj 当做代码去执行一遍. 例子: 复制代码 代码如下: <!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd"> <html xmlns="http://www.w3.org/1999/xhtml">

jsp中调用上一个网页中调用的js里面的input text的值

问题描述 jsp中调用上一个网页中调用的js里面的input text的值 套了一个时间选择的模板,想要获取开始时间和结束时间,但是这两个出现在调用的js里面,怎么获取 解决方案 将控件绑定id,js中有通过id设置控件内容的方法 解决方案二: 当前网页和上一个网页是什么关系?iframe还是window.open? iframe可以用parent或者document.getElementById('ifrID').contentWindow得到相互引用, window.open用opener或

js中eval()函数和trim()去掉字符串左右空格应用_javascript技巧

对于js中eval()函数的理解和写一个函数trim()去掉字符串左右空格. trim()是参照了jquery的源码,你可以放心使用. 对于js中eval()函数的理解是本人心得不一定正确. 复制代码 代码如下: <!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN" "http://www.w3.org/TR/html4/loose.dtd"> <html> <he

js里的rsa加密 可以用后台的代替吗

问题描述 js里的rsa加密 可以用后台的代替吗 网站在jsp里用rsa对帐号密码加密,写爬虫能否不用js的rsa(就是不写jsp登录),直接在后台加密然后传到相应的URL进行登录. 解决方案 http://sunxboy.iteye.com/blog/209156