/********************************************/ /* @version 2.2 */ /********************************************/ var AostarJS=AostarJS||(function(Math,undefined){var C={};var es=C.jx={};var Base=es.Base=(function(){function F(){};return{extend:function(iI){F.prototype=this;var ir=new F();if(iI){ir.nz(iI);}if(!ir.hasOwnProperty('dV')){ir.dV=function(){ir.wd.dV.apply(this,arguments);};}ir.dV.prototype=ir;ir.wd=this;return ir;},create:function(){var pj=this.extend();pj.dV.apply(pj,arguments);return pj;},dV:function(){},nz:function(lm){for(var propertyName in lm){if(lm.hasOwnProperty(propertyName)){this[propertyName]=lm[propertyName];}}if(lm.hasOwnProperty('toString')){this.toString=lm.toString;}},clone:function(){return this.dV.prototype.extend(this);}};}());var eR=es.eR=Base.extend({dV:function(cu,fe){cu=this.cu=cu||[];if(fe!=undefined){this.fe=fe;}else{this.fe=cu.length*4;}},toString:function(vx){return(vx||hx).stringify(this);},concat:function(ei){var mk=this.cu;var nd=ei.cu;var nc=this.fe;var lH=ei.fe;this.eC();if(nc%4){for(var i=0;i>>2]>>>(24-(i%4)*8))&0xff;mk[(nc+i)>>>2]|=sO<<(24-((nc+i)%4)*8);}}else if(nd.length>0xffff){for(var i=0;i>>2]=nd[i>>>2];}}else{mk.push.apply(mk,nd);}this.fe+=lH;return this;},eC:function(){var cu=this.cu;var fe=this.fe;cu[fe>>>2]&=0xffffffff<<(32-(fe%4)*8);cu.length=Math.ceil(fe/4);},clone:function(){var clone=Base.clone.call(this);clone.cu=this.cu.slice(0);return clone;},random:function(sj){var cu=[];for(var i=0;i>>0;h-=n;h*=n;n=h>>>0;h-=n;n+=h*0x100000000;}while(true){var vy=new Date().getTime().toString();if(vy!=data){return(n>>>0)*2.3283064365386963e-10;}}}};var hx=iQ.hx={stringify:function(ei){var cu=ei.cu;var fe=ei.fe;var oJ=[];for(var i=0;i>>2]>>>(24-(i%4)*8))&0xff;oJ.push((ns>>>4).toString(16));oJ.push((ns&0x0f).toString(16));}return oJ.join('');},parse:function(eU){var gP=eU.length;var cu=[];for(var i=0;i>>3]|=parseInt(eU.substr(i,2),16)<<(24-(i%8)*4);}return new eR.dV(cu,gP/2);}};var pL=iQ.pL={stringify:function(ei){var cu=ei.cu;var fe=ei.fe;var rS=[];for(var i=0;i>>2]>>>(24-(i%4)*8))&0xff;rS.push(String.fromCharCode(ns));}return rS.join('');},parse:function(sY){var sX=sY.length;var cu=[];for(var i=0;i>>2]|=(sY.charCodeAt(i)&0xff)<<(24-(i%4)*8);}return new eR.dV(cu,sX);}};var fc=iQ.fc={stringify:function(ei){try{return decodeURIComponent(escape(pL.stringify(ei)));}catch(e){throw new Error('Malformed UTF-8 data');}},parse:function(uS){return pL.parse(unescape(encodeURIComponent(uS)));}};var jh=es.jh=Base.extend({reset:function(){this.hz=new eR.dV();this.qJ=0;},mE:function(data){if(typeof data=='string'){data=fc.parse(data);}this.hz.concat(data);this.qJ+=data.fe;},iG:function(wl){var data=this.hz;var hK=data.cu;var qN=data.fe;var dX=this.dX;var lZ=dX*4;var kB=qN/lZ;if(wl){kB=Math.ceil(kB);}else{kB=Math.max((kB|0)-this.qR,0);}var mc=kB*dX;var sF=Math.min(mc*4,qN);if(mc){for(var offset=0;offset':'>','"':'"',"'":''','/':'/','`':'`'},qP=["toString","valueOf"],sb={isArray:function(o){return kS.toString.apply(o)===uC;},va:function(o){return typeof o==='boolean';},isFunction:function(o){return(typeof o==='function')||kS.toString.apply(o)===xa;},xN:function(o){return o===null;},oc:function(o){return typeof o==='number'&&isFinite(o);},lb:function(o){return(o&&(typeof o==='object'||L.isFunction(o)))||false;},nB:function(o){return typeof o==='string';},rH:function(o){return typeof o==='undefined';},qv:(QMX.hs.ua.sn)?function(r,s){var i,mv,f;for(i=0;i"'\/`]/g,function(match){return wj[match];});},extend:function(iV,kT,iI){if(!kT|| !iV){throw new Error("extend failed, please check that "+"all dependencies are included.");}var F=function(){},i;F.prototype=kT.prototype;iV.prototype=new F();iV.prototype.constructor=iV;iV.ff=kT.prototype;if(kT.prototype.constructor==kS.constructor){kT.prototype.constructor=kT;}if(iI){for(i in iI){if(L.hasOwnProperty(iI,i)){iV.prototype[i]=iI[i];}}L.qv(iV.prototype,iI);}},qu:function(r,s){if(!s|| !r){throw new Error("Absorb failed, fY dependencies.");}var a=arguments,i,p,lC=a[2];if(lC&&lC!==true){for(i=2;i0)?L.dump(o[i],d-1):sM);}else{s.push(o[i]);}s.push(qo);}if(s.length>1){s.pop();}s.push("]");}else{s.push("{");for(i in o){if(L.hasOwnProperty(o,i)){s.push(i+ARROW);if(L.lb(o[i])){s.push((d>0)?L.dump(o[i],d-1):sM);}else{s.push(o[i]);}s.push(qo);}}if(s.length>1){s.pop();}s.push("}");}return s.join("");},xi:function(s,o,f,wY){var i,j,k,key,v,meta,jT=[],mj,rq=s.length,vb='dump',SPACE=' ',vD='{',tp='}',dump,oU;for(;;){i=s.lastIndexOf(vD,rq);if(i<0){break;}j=s.indexOf(tp,i);if(i+1>j){break;}mj=s.substring(i+1,j);key=mj;meta=null;k=key.indexOf(SPACE);if(k> -1){meta=key.substring(k+1);key=key.substring(0,k);}v=o[key];if(f){v=f(key,v,meta);}if(L.lb(v)){if(L.isArray(v)){v=L.dump(v,parseInt(meta,10));}else{meta=meta||"";dump=meta.indexOf(vb);if(dump> -1){meta=meta.substring(4);}oU=v.toString();if(oU===vi||dump> -1){v=L.dump(v,parseInt(meta,10));}else{v=oU;}}}else if(!L.nB(v)&& !L.oc(v)){v="~-"+jT.length+"-~";jT[jT.length]=mj;}s=s.substring(0,i)+v+s.substring(j+1);if(wY===false){rq=i-1;}}for(i=jT.length-1;i>=0;i=i-1){s=s.replace(new RegExp("~-"+i+"-~"),"{"+jT[i]+"}","g");}return s;},trim:function(s){try{return s.replace(/^\s+|\s+$/g,"");}catch(e){return s;}},merge:function(){var o={},a=arguments,l=a.length,i;for(i=0;i15){throw "ASN.1 length too long to represent by 8x: n = "+n.toString(16);}var head=128+sB;return head.toString(16)+lj;}};this.hc=function(){if(this.ft==null||this.fG){this.dq=this.gm();this.mo=this.uK();this.ft=this.fq+this.mo+this.dq;this.fG=false;}return this.ft;};this.wX=function(){this.hc();return this.dq;};this.gm=function(){return '';};};Aostar.cI.iM=function(dM){Aostar.cI.iM.ff.constructor.call(this);var s=null;var dq=null;this.uQ=function(){return this.s;};this.iE=function(mg){this.ft=null;this.fG=true;this.s=mg;this.dq=kM(this.s);};this.mB=function(jk){this.ft=null;this.fG=true;this.s=null;this.dq=jk;};this.gm=function(){return this.dq;};if(typeof dM!="undefined"){if(typeof dM=="string"){this.iE(dM);}else if(typeof dM['fu']!="undefined"){this.iE(dM['fu']);}else if(typeof dM['dv']!="undefined"){this.mB(dM['dv']);}}};QMX.lang.extend(Aostar.cI.iM,Aostar.cI.hH);Aostar.cI.nj=function(dM){Aostar.cI.nj.ff.constructor.call(this);var s=null;var date=null;this.wq=function(d){lT=d.getTime()+(d.getTimezoneOffset()*60000);var uW=new Date(lT);return uW;};this.formatDate=function(jr,type,kY){var gh=this.ng;var d=this.wq(jr);var year=String(d.getFullYear());if(type=='lT')year=year.substr(2,2);var month=gh(String(d.getMonth()+1),2);var oX=gh(String(d.getDate()),2);var nF=gh(String(d.getHours()),2);var min=gh(String(d.getMinutes()),2);var mC=gh(String(d.getSeconds()),2);var s=year+month+oX+nF+min+mC;if(kY===true){var oE=d.getMilliseconds();if(oE!=0){var ov=gh(String(oE),3);ov=ov.replace(/[0]+$/,"");s=s+"."+ov;}}return s+"Z";};this.ng=function(s,fC){if(s.length>=fC)return s;return new Array(fC-s.length+1).join('0')+s;};this.uQ=function(){return this.s;};this.iE=function(mg){this.ft=null;this.fG=true;this.s=mg;this.dq=kM(mg);};this.yI=function(year,month,oX,nF,min,mC){var jr=new Date(Date.UTC(year,month-1,oX,nF,min,mC,0));this.nf(jr);};this.gm=function(){return this.dq;};};QMX.lang.extend(Aostar.cI.nj,Aostar.cI.hH);Aostar.cI.ok=function(dM){Aostar.cI.iM.ff.constructor.call(this);var it=null;this.vY=function(uf){this.ft=null;this.fG=true;this.it=uf;};this.vj=function(io){this.ft=null;this.fG=true;this.it.push(io);};this.it=new Array();if(typeof dM!="undefined"){if(typeof dM['array']!="undefined"){this.it=dM['array'];}}};QMX.lang.extend(Aostar.cI.ok,Aostar.cI.hH);Aostar.cI.oB=function(){Aostar.cI.oB.ff.constructor.call(this);this.fq="01";this.ft="0101ff";};QMX.lang.extend(Aostar.cI.oB,Aostar.cI.hH);Aostar.cI.gW=function(dM){Aostar.cI.gW.ff.constructor.call(this);this.fq="02";this.nm=function(jw){this.ft=null;this.fG=true;this.dq=Aostar.cI.hi.qw(jw);};this.jZ=function(hI){var hd=new K(String(hI),10);this.nm(hd);};this.kb=function(jk){this.dq=jk;};this.gm=function(){return this.dq;};if(typeof dM!="undefined"){if(typeof dM['ku']!="undefined"){this.nm(dM['ku']);}else if(typeof dM['int']!="undefined"){this.jZ(dM['int']);}else if(typeof dM=="number"){this.jZ(dM);}else if(typeof dM['dv']!="undefined"){this.kb(dM['dv']);}}};QMX.lang.extend(Aostar.cI.gW,Aostar.cI.hH);Aostar.cI.ps=function(dM){if(dM!==undefined&&typeof dM.eI!=="undefined"){var o=Aostar.cI.hi.jd(dM.eI);dM.dv="00"+o.hc();}Aostar.cI.ps.ff.constructor.call(this);this.fq="03";this.qB=function(sP){this.ft=null;this.fG=true;this.dq=sP;};this.xK=function(hC,vW){if(hC<0||7=(fC*2)))break;if(k>=200)break;a.push(mF);p=mF;k++;}return a;};dE.yZ=function(h,cB,nth){var a=dE.iX(h,cB);return a[nth];};dE.lK=function(h,iJ,gj){if(gj.length==0){return iJ;}var vO=gj.shift();var a=dE.iX(h,iJ);return dE.lK(h,a[vO],gj);};dE.wN=function(h,iJ,gj){var cB=dE.lK(h,iJ,gj);return dE.rv(h,cB);};dE.xc=function(h,iJ,gj){var cB=dE.lK(h,iJ,gj);return dE.ep(h,cB);};dE.wk=function(h,iJ,gj,nH){var cB=dE.lK(h,iJ,gj);if(cB===undefined){throw "can't find gj object";}if(nH!==undefined){if(h.substr(cB,2)!=nH){throw "checking ee doesn't match: "+h.substr(cB,2)+"!="+nH;}}return dE.ep(h,cB);};dE.wf=function(dv){var ng=function(s,fC){if(s.length>=fC)return s;return new Array(fC-s.length+1).join('0')+s;};var a=[];var sq=dv.substr(0,2);var ix=parseInt(sq,16);a[0]=new String(Math.floor(ix/40));a[1]=new String(ix%40);var rQ=dv.substr(2);var b=[];for(var i=0;i0)s=s+"."+c.join(".");return s;};dE.dump=function(jf,ey,cB,indent){var dv=jf;if(jf instanceof Aostar.cI.hH)dv=jf.hc();var ld=function(dv,gv){if(dv.length<=gv*2){return dv;}else{var s=dv.substr(0,gv)+"..(total "+dv.length/2+"fb).."+dv.substr(dv.length-gv,gv);return s;};};if(ey===undefined)ey={"mh":32};if(cB===undefined)cB=0;if(indent===undefined)indent="";var kg=ey.mh;if(dv.substr(cB,2)=="01"){var v=dE.ep(dv,cB);if(v=="00"){return indent+"BOOLEAN FALSE\n";}else{return indent+"BOOLEAN TRUE\n";}}if(dv.substr(cB,2)=="02"){var v=dE.ep(dv,cB);return indent+"INTEGER "+ld(v,kg)+"\n";}if(dv.substr(cB,2)=="03"){var v=dE.ep(dv,cB);return indent+"BITSTRING "+ld(v,kg)+"\n";}if(dv.substr(cB,2)=="04"){var v=dE.ep(dv,cB);if(dE.sG(v)){var s=indent+"OCTETSTRING, encapsulates\n";s=s+dE.dump(v,ey,0,indent+" ");return s;}else{return indent+"OCTETSTRING "+ld(v,kg)+"\n";}}if(dv.substr(cB,2)=="05"){return indent+"NULL\n";}if(dv.substr(cB,2)=="06"){var dq=dE.ep(dv,cB);var hB=Aostar.cI.hi.kG(dq);var fU=Aostar.cI.ic.kl.ml(hB);var kN=hB.replace(/\./g,' ');if(fU!=''){return indent+"ObjectIdentifier "+fU+" ("+kN+")\n";}else{return indent+"ObjectIdentifier ("+kN+")\n";}}if(dv.substr(cB,2)=="0c"){return indent+"UTF8String '"+et(dE.ep(dv,cB))+"'\n";}if(dv.substr(cB,2)=="13"){return indent+"PrintableString '"+et(dE.ep(dv,cB))+"'\n";}if(dv.substr(cB,2)=="14"){return indent+"TeletexString '"+et(dE.ep(dv,cB))+"'\n";}if(dv.substr(cB,2)=="16"){return indent+"IA5String '"+et(dE.ep(dv,cB))+"'\n";}if(dv.substr(cB,2)=="17"){return indent+"UTCTime "+et(dE.ep(dv,cB))+"\n";}if(dv.substr(cB,2)=="18"){return indent+"GeneralizedTime "+et(dE.ep(dv,cB))+"\n";}if(dv.substr(cB,2)=="30"){if(dv.substr(cB,4)=="3000"){return indent+"SEQUENCE {}\n";}var s=indent+"SEQUENCE\n";var fN=dE.iX(dv,cB);var kP=ey;if((fN.length==2||fN.length==3)&&dv.substr(fN[0],2)=="06"&&dv.substr(fN[fN.length-1],2)=="04"){var mD=dE.ep(dv,fN[0]);var hB=Aostar.cI.hi.kG(mD);var fU=Aostar.cI.ic.kl.ml(hB);var kR=JSON.parse(JSON.stringify(ey));kR.nq=fU;kP=kR;}for(var i=0;i>6)+ib.charAt(c&63);}if(i+1==h.length){c=parseInt(h.substring(i,i+1),16);el+=ib.charAt(c<<2);}else if(i+2==h.length){c=parseInt(h.substring(i,i+2),16);el+=ib.charAt(c>>2)+ib.charAt((c&3)<<4);}if(ot)while((el.length&3)>0)el+=ot;return el;};function cV(s){var el="";var i;var k=0;var jm;var v;for(i=0;i>2);jm=v&3;k=1;}else if(k==1){el+=ax((jm<<2)|(v>>4));jm=v&0xf;k=2;}else if(k==2){el+=ax(jm);el+=ax(v>>2);jm=v&3;k=3;}else{el+=ax((jm<<2)|(v>>4));el+=ax(v&0xf);k=0;}}if(k==1)el+=ax(jm<<2);return el;};function cn(s){var h=cV(s);var i;var a=new Array();for(i=0;2*i>>2]&0xff;data.fe-=ia;}};var tK=es.tK=jP.extend({dF:jP.dF.extend({mode:CBC,padding:tk}),reset:function(){jP.reset.call(this);var dF=this.dF;var eO=dF.eO;var mode=dF.mode;if(this.pV==this.oH){var tj=mode.oW;}else{var tj=mode.oq;this.qR=1;}this.vQ=tj.call(mode,this,eO&&eO.cu);},qp:function(cu,offset){this.vQ.qC(cu,offset);},nh:function(){var padding=this.dF.padding;if(this.pV==this.oH){padding.gh(this.hz,this.dX);var jI=this.iG(! !'flush');}else{var jI=this.iG(! !'flush');padding.tq(jI);}return jI;},dX:128/32});var mf=es.mf=Base.extend({dV:function(mt){this.nz(mt);},toString:function(ny){return(ny||this.ny).stringify(this);}});var ut=C.format={};var wG=ut.vq={stringify:function(mt){var fz=mt.fz;var gb=mt.gb;if(gb){var ei=eR.create([0x53616c74,0x65645f5f]).concat(gb).concat(fz);}else{var ei=fz;}return ei.toString(po);},parse:function(tS){var fz=po.parse(tS);var lG=fz.cu;if(lG[0]==0x53616c74&&lG[1]==0x65645f5f){var gb=eR.create(lG.slice(2,4));lG.splice(0,4);fz.fe-=16;}return mf.create({fz:fz,gb:gb});}};var jW=es.jW=Base.extend({dF:Base.extend({format:wG}),nr:function(cO,message,key,dF){dF=this.dF.extend(dF);var pN=cO.oW(key,dF);var fz=pN.jF(message);var oS=pN.dF;return mf.create({fz:fz,key:key,eO:oS.eO,wp:cO,mode:oS.mode,padding:oS.padding,dX:cO.dX,ny:dF.format});},mU:function(cO,fz,key,dF){dF=this.dF.extend(dF);fz=this.qh(fz,dF.format);var plaintext=cO.oq(key,dF).jF(fz.fz||fz);return plaintext;},qh:function(fz,format){if(typeof fz=='string'){return format.parse(fz,this);}else{return fz;}}});var sU=C.qE={};var tM=sU.vq={ql:function(lf,he,kh,gb){if(!gb){gb=eR.random(64/8);}var key=qG.create({he:he+kh}).xI(lf,gb);var eO=eR.create(key.cu.slice(he),kh*4);key.fe=he*4;return mf.create({key:key,eO:eO,gb:gb});}};var pD=es.pD=jW.extend({dF:jW.dF.extend({qE:tM}),nr:function(cO,message,lf,dF){dF=this.dF.extend(dF);var jH=dF.qE.ql(lf,cO.he,cO.kh);dF.eO=jH.eO;var fz=jW.nr.call(this,cO,message,jH.key,dF);fz.nz(jH);return fz;},mU:function(cO,fz,lf,dF){dF=this.dF.extend(dF);fz=this.qh(fz,dF.format);var jH=dF.qE.ql(lf,cO.he,cO.kh,fz.gb);dF.eO=jH.eO;var plaintext=jW.mU.call(this,cO,fz,jH.key,dF);return plaintext;}});}());function V(q,x){this.x=x;this.q=q;};function dA(other){if(other==this)return true;return(this.q.fI(other.q)&&this.x.fI(other.x));};function bW(){return this.x;};function cE(){return new V(this.q,this.x.ht().fJ(this.q));};function dm(b){return new V(this.q,this.x.add(b.cl()).fJ(this.q));};function dK(b){return new V(this.q,this.x.eB(b.cl()).fJ(this.q));};function cW(b){return new V(this.q,this.x.multiply(b.cl()).fJ(this.q));};function dr(){return new V(this.q,this.x.square().fJ(this.q));};function dN(b){return new V(this.q,this.x.multiply(b.cl().hm(this.q)).fJ(this.q));};V.prototype.fI=dA;V.prototype.cl=bW;V.prototype.ht=cE;V.prototype.add=dm;V.prototype.eB=dK;V.prototype.multiply=cW;V.prototype.square=dr;V.prototype.divide=dN;function O(bZ,x,y,z){this.bZ=bZ;this.x=x;this.y=y;if(z==null){this.z=K.ONE;}else{this.z=z;}this.lc=null;};function dC(){if(this.lc==null){this.lc=this.z.hm(this.bZ.q);}return this.bZ.ev(this.x.cl().multiply(this.lc).fJ(this.bZ.q));};function dQ(){if(this.lc==null){this.lc=this.z.hm(this.bZ.q);}return this.bZ.ev(this.y.cl().multiply(this.lc).fJ(this.bZ.q));};function cq(other){if(other==this)return true;if(this.fX())return other.fX();if(other.fX())return this.fX();var u,v;u=other.y.cl().multiply(this.z).eB(this.y.cl().multiply(other.z)).fJ(this.bZ.q);if(!u.fI(K.ZERO))return false;v=other.x.cl().multiply(this.z).eB(this.x.cl().multiply(other.z)).fJ(this.bZ.q);return v.fI(K.ZERO);};function ce(){if((this.x==null)&&(this.y==null))return true;return this.z.fI(K.ZERO)&& !this.y.cl().fI(K.ZERO);};function cY(){return new O(this.bZ,this.x,this.y.ht(),this.z);};function dI(b){if(this.fX())return b;if(b.fX())return this;var u=b.y.cl().multiply(this.z).eB(this.y.cl().multiply(b.z)).fJ(this.bZ.q);var v=b.x.cl().multiply(this.z).eB(this.x.cl().multiply(b.z)).fJ(this.bZ.q);if(K.ZERO.fI(v)){if(K.ZERO.fI(u)){return this.ko();}return this.bZ.hk();}var iL=new K("3");var x1=this.x.cl();var y1=this.y.cl();var x2=b.x.cl();var y2=b.y.cl();var qU=v.square();var mH=qU.multiply(v);var pJ=x1.multiply(qU);var qW=u.square().multiply(this.z);var gG=qW.eB(pJ.shiftLeft(1)).multiply(b.z).eB(mH).multiply(v).fJ(this.bZ.q);var iK=pJ.multiply(iL).multiply(u).eB(y1.multiply(mH)).eB(qW.multiply(u)).multiply(b.z).add(u.multiply(mH)).fJ(this.bZ.q);var mn=mH.multiply(this.z).multiply(b.z).fJ(this.bZ.q);return new O(this.bZ,this.bZ.ev(gG),this.bZ.ev(iK),mn);};function cb(){if(this.fX())return this;if(this.y.cl().eN()==0)return this.bZ.hk();var iL=new K("3");var x1=this.x.cl();var y1=this.y.cl();var kv=y1.multiply(this.z);var mr=kv.multiply(y1).fJ(this.bZ.q);var a=this.bZ.a.cl();var w=x1.square().multiply(iL);if(!K.ZERO.fI(a)){w=w.add(this.z.square().multiply(a));}w=w.fJ(this.bZ.q);var gG=w.square().eB(x1.shiftLeft(3).multiply(mr)).shiftLeft(1).multiply(kv).fJ(this.bZ.q);var iK=w.multiply(iL).multiply(x1).eB(mr.shiftLeft(1)).shiftLeft(2).multiply(mr).eB(w.square().multiply(w)).fJ(this.bZ.q);var mn=kv.square().multiply(kv).shiftLeft(3).fJ(this.bZ.q);return new O(this.bZ,this.bZ.ev(gG),this.bZ.ev(iK),mn);};function cZ(k){if(this.fX())return this;if(k.eN()==0)return this.bZ.hk();var e=k;var h=e.multiply(new K("3"));var pi=this.ht();var R=this;var i;for(i=h.dY()-2;i>0;--i){R=R.ko();var lv=h.eE(i);var nU=e.eE(i);if(lv!=nU){R=R.add(lv?this:pi);}}return R;};function cQ(j,x,k){var i;if(j.dY()>k.dY())i=j.dY()-1;else i=k.dY()-1;var R=this.bZ.hk();var both=this.add(x);while(i>=0){R=R.ko();if(j.eE(i)){if(k.eE(i)){R=R.add(both);}else{R=R.add(this);}}else{if(k.eE(i)){R=R.add(x);}}--i;}return R;};O.prototype.eS=dC;O.prototype.ew=dQ;O.prototype.fI=cq;O.prototype.fX=ce;O.prototype.ht=cY;O.prototype.add=dI;O.prototype.ko=cb;O.prototype.multiply=cZ;O.prototype.xS=cQ;function ag(q,a,b){this.q=q;this.a=this.ev(a);this.b=this.ev(b);this.og=new O(this,null,null);};function dG(){return this.q;};function dp(){return this.a;};function ck(){return this.b;};function cS(other){if(other==this)return true;return(this.q.fI(other.q)&&this.a.fI(other.a)&&this.b.fI(other.b));};function cL(){return this.og;};function bY(x){return new V(this.q,x);};function cw(s){switch(parseInt(s.substr(0,2),16)){case 0:return this.og;case 2:case 3:return null;case 4:case 6:case 7:var fC=(s.length-2)/2;var eW=s.substr(2,fC);var fw=s.substr(fC+2,fC);return new O(this,this.ev(new K(eW,16)),this.ev(new K(fw,16)));default:return null;}};ag.prototype.pv=dG;ag.prototype.wo=dp;ag.prototype.uN=ck;ag.prototype.fI=cS;ag.prototype.hk=cL;ag.prototype.ev=bY;ag.prototype.wP=cw;if(typeof Aostar=="undefined"|| !Aostar)var Aostar={};if(typeof Aostar.crypto=="undefined"|| !Aostar.crypto)Aostar.crypto={};Aostar.crypto.eJ=function(dM){var ed="secp256r1";var fm=null;var eh=null;var cv=null;var ox=new bG();var wa=null;this.type="EC";function dk(P,k,Q,l){var m=Math.max(k.dY(),l.dY());var Z=P.hw(Q);var R=P.bZ.hk();for(var i=m-1;i>=0;--i){R=R.pY();R.z=K.ONE;if(k.eE(i)){if(l.eE(i)){R=R.hw(Z);}else{R=R.hw(P);}}else{if(l.eE(i)){R=R.hw(Q);}}}return R;};this.jc=function(jS){return new K(jS.dY(),ox).fJ(jS.eB(K.ONE)).add(K.ONE);};this.nl=function(ed){this.fm=Aostar.crypto.hD.getByName(ed);this.eh=null;this.cv=null;this.ed=ed;};this.kA=function(eh){this.tf=true;this.eh=eh;};this.kO=function(cv){this.rC=true;this.cv=cv;};this.xY=function(){var h=this.cv;if(h.substr(0,2)!=="04")throw "this method supports uncompressed format(04) only";var fE=this.fm.hO/4;if(h.length!==2+fE*2)throw "malformed public key dv length";var result={};result.x=h.substr(2,fE);result.y=h.substr(2+fE);return result;};this.yY=function(){var s=this.ed;if(s==="secp256r1"||s==="NIST P-256"||s==="P-256"||s==="prime256v1")return "P-256";if(s==="secp384r1"||s==="NIST P-384"||s==="P-384")return "P-384";return null;};this.oh=function(){var pA=this.fm['n'];var jn=this.jc(pA);var il=this.fm['G'].multiply(jn);var kH=il.eS().cl();var kC=il.ew().cl();var fE=this.fm['hO']/4;var jg=("0000000000"+jn.toString(16)).slice(-fE);var la=("0000000000"+kH.toString(16)).slice(-fE);var lB=("0000000000"+kC.toString(16)).slice(-fE);var ja="04"+la+lB;this.kA(jg);this.kO(ja);return{'ecprvhex':jg,'ecpubhex':ja};};this.vc=function(gY){var jn=new K(gY,16);var il=this.fm['G'].multiply(jn);var kH=il.eS().cl();var kC=il.ew().cl();var fE=this.fm['hO']/4;var jg=("0000000000"+jn.toString(16)).slice(-fE);var la=("0000000000"+kH.toString(16)).slice(-fE);var lB=("0000000000"+kC.toString(16)).slice(-fE);var ja="04"+la+lB;return{'ecprvhex':jg,'ecpubhex':ja};};this.mL=function(eP){return this.jz(eP,this.eh);};this.jz=function(eP,ph){var d=new K(ph,16);var n=this.fm['n'];var e=new K(eP,16);do{var k=this.jc(n);var G=this.fm['G'];var Q=G.multiply(k);var r=Q.eS().cl().fJ(n);}while(r.dU(K.ZERO)<=0);var s=k.hm(n).multiply(e.add(d.multiply(r))).fJ(n);return Aostar.crypto.eJ.pk(r,s);};this.gX=function(hash,nL){var d=nL;var n=this.fm['n'];var e=K.hq(hash);do{var k=this.jc(n);var G=this.fm['G'];var Q=G.multiply(k);var r=Q.eS().cl().fJ(n);}while(r.dU(K.ZERO)<=0);var s=k.hm(n).multiply(e.add(d.multiply(r))).fJ(n);return this.mX(r,s);};this.lJ=function(eP,eQ){return this.jQ(eP,eQ,this.cv);};this.jQ=function(eP,eQ,ge){var r,s;var eI=Aostar.crypto.eJ.rG(eQ);r=eI.r;s=eI.s;var Q;Q=O.ll(this.fm['bZ'],ge);var e=new K(eP,16);return this.kk(e,r,s,Q);};this.fY=function(hash,dz,gk){var r,s;if(oG.fW.isArray(dz)){var eI=this.lL(dz);r=eI.r;s=eI.s;}else if("object"===typeof dz&&dz.r&&dz.s){r=dz.r;s=dz.s;}else{throw "Invalid value for signature";}var Q;if(gk instanceof O){Q=gk;}else if(oG.fW.isArray(gk)){Q=O.qk(this.fm['bZ'],gk);}else{throw "Invalid format for gk value, must be byte array fv O";}var e=K.hq(hash);return this.kk(e,r,s,Q);};this.kk=function(e,r,s,Q){var n=this.fm['n'];var G=this.fm['G'];if(r.dU(K.ONE)<0||r.dU(n)>=0)return false;if(s.dU(K.ONE)<0||s.dU(n)>=0)return false;var c=s.hm(n);var uj=e.multiply(c).fJ(n);var vh=r.multiply(c).fJ(n);var nx=G.multiply(uj).add(Q.multiply(vh));var v=nx.eS().cl().fJ(n);return v.fI(r);};this.mX=function(r,s){var gq=r.mZ();var hF=s.mZ();var fi=[];fi.push(0x02);fi.push(gq.length);fi=fi.concat(gq);fi.push(0x02);fi.push(hF.length);fi=fi.concat(hF);fi.unshift(fi.length);fi.unshift(0x30);return fi;};this.lL=function(dz){var cursor;if(dz[0]!=0x30)throw new Error("gn not a valid jt");cursor=2;if(dz[cursor]!=0x02)throw new Error("First element in signature must be a gW");;var gq=dz.slice(cursor+2,cursor+2+dz[cursor+1]);cursor+=2+dz[cursor+1];if(dz[cursor]!=0x02)throw new Error("Second element in signature must be a gW");var hF=dz.slice(cursor+2,cursor+2+dz[cursor+1]);cursor+=2+dz[cursor+1];var r=K.hq(gq);var s=K.hq(hF);return{r:r,s:s};};this.sl=function(dz){if(dz.length!==65){throw "gn has the wrong length";}var i=dz[0]-27;if(i<0||i>7){throw "Invalid signature type";}var n=this.fm['n'];var r=K.hq(dz.slice(1,33)).fJ(n);var s=K.hq(dz.slice(33,65)).fJ(n);return{r:r,s:s,i:i};};if(dM!==undefined){if(dM['bZ']!==undefined){this.ed=dM['bZ'];}}if(this.ed===undefined)this.ed=ed;this.nl(this.ed);if(dM!==undefined){if(dM['prv']!==undefined)this.kA(dM['prv']);if(dM['pub']!==undefined)this.kO(dM['pub']);}};Aostar.crypto.eJ.rG=function(eQ){var p=Aostar.crypto.eJ.sx(eQ);var kV=new K(p.r,16);var kD=new K(p.s,16);return{'r':kV,'s':kD};};Aostar.crypto.eJ.sx=function(eQ){if(eQ.substr(0,2)!="30")throw "signature is not a ASN.1 fi";var a=dE.iX(eQ,0);if(a.length!=2)throw "number of signature ASN.1 fi elements seem wrong";var rM=a[0];var tc=a[1];if(eQ.substr(rM,2)!="02")throw "1st item of sequene of signature is not ASN.1 integer";if(eQ.substr(tc,2)!="02")throw "2nd item of sequene of signature is not ASN.1 integer";var hR=dE.ep(eQ,rM);var hb=dE.ep(eQ,tc);return{'r':hR,'s':hb};};Aostar.crypto.eJ.vP=function(vf){var pB=Aostar.crypto.eJ.sx(vf);var hR=pB.r;var hb=pB.s;if(hR.substr(0,2)=="00"&&(((hR.length/2)*8)%(16*8))==8)hR=hR.substr(2);if(hb.substr(0,2)=="00"&&(((hb.length/2)*8)%(16*8))==8)hb=hb.substr(2);if((((hR.length/2)*8)%(16*8))!=0)throw "unknown eJ dz r length error";if((((hb.length/2)*8)%(16*8))!=0)throw "unknown eJ dz s length error";return hR+hb;};Aostar.crypto.eJ.yL=function(ky){if((((ky.length/2)*8)%(16*8))!=0)throw "unknown eJ concatinated r-s dz length error";var hR=ky.substr(0,ky.length/2);var hb=ky.substr(ky.length/2);return Aostar.crypto.eJ.wH(hR,hb);};Aostar.crypto.eJ.wH=function(hR,hb){var kV=new K(hR,16);var kD=new K(hb,16);return Aostar.crypto.eJ.pk(kV,kD);};Aostar.crypto.eJ.pk=function(kV,kD){var ws=new Aostar.cI.gW({'ku':kV});var vl=new Aostar.cI.gW({'ku':kD});var vJ=new Aostar.cI.jt({'array':[ws,vl]});return vJ.hc();};V.prototype.vw=function(){return Math.floor((this.cl().dY()+7)/8);};O.prototype.yv=function(tA){var rO=function(i,fC){var fb=i.yc();if(fCfb.length){fb.unshift(0);}return fb;};var x=this.eS().cl();var y=this.ew().cl();var ef=rO(x,32);if(tA){if(y.ez()){ef.unshift(0x02);}else{ef.unshift(0x03);}}else{ef.unshift(0x04);ef=ef.concat(rO(y,32));}return ef;};O.qk=function(bZ,ef){var type=ef[0];var jj=ef.length-1;var qi=ef.slice(1,1+jj/2);var rg=ef.slice(1+jj/2,1+jj);qi.unshift(0);rg.unshift(0);var x=new K(qi);var y=new K(rg);return new O(bZ,bZ.ev(x),bZ.ev(y));};O.ll=function(bZ,mw){var type=mw.substr(0,2);var jj=mw.length-2;var eW=mw.substr(2,jj/2);var fw=mw.substr(2+jj/2,jj/2);var x=new K(eW,16);var y=new K(fw,16);return new O(bZ,bZ.ev(x),bZ.ev(y));};O.prototype.hw=function(b){if(this.fX())return b;if(b.fX())return this;if(this.x.fI(b.x)){if(this.y.fI(b.y)){return this.ko();}return this.bZ.hk();}var sz=b.x.eB(this.x);var wi=b.y.eB(this.y);var kJ=wi.divide(sz);var gG=kJ.square().eB(this.x).eB(b.x);var iK=kJ.multiply(this.x.eB(gG)).eB(this.y);return new O(this.bZ,gG,iK);};O.prototype.pY=function(){if(this.fX())return this;if(this.y.cl().eN()==0){return this.bZ.hk();}var qI=this.bZ.ev(K.valueOf(2));var iL=this.bZ.ev(K.valueOf(3));var kJ=this.x.square().multiply(iL).add(this.bZ.a).divide(this.y.multiply(qI));var gG=kJ.square().eB(this.x.multiply(qI));var iK=kJ.multiply(this.x.eB(gG)).eB(this.y);return new O(this.bZ,gG,iK);};O.prototype.yo=function(k){if(this.fX())return this;if(k.eN()==0)return this.bZ.hk();var e=k;var h=e.multiply(new K("3"));var pi=this.ht();var R=this;var i;for(i=h.dY()-2;i>0;--i){R=R.ko();var lv=h.eE(i);var nU=e.eE(i);if(lv!=nU){R=R.hw(lv?this:pi);}}return R;};O.prototype.uR=function(){var x=this.eS().cl();var y=this.ew().cl();var a=this.bZ.wo().cl();var b=this.bZ.uN().cl();var n=this.bZ.pv();var lhs=y.multiply(y).fJ(n);var rhs=x.multiply(x).multiply(x).add(a.multiply(x)).add(b).fJ(n);return lhs.fI(rhs);};O.prototype.toString=function(){return '('+this.eS().cl().toString()+','+this.ew().cl().toString()+')';};O.prototype.yX=function(){var n=this.bZ.pv();if(this.fX()){throw new Error("Point is at og.");}var x=this.eS().cl();var y=this.ew().cl();if(x.dU(K.ONE)<0||x.dU(n.eB(K.ONE))>0){throw new Error('x coordinate out of bounds');}if(y.dU(K.ONE)<0||y.dU(n.eB(K.ONE))>0){throw new Error('y coordinate out of bounds');}if(!this.uR()){throw new Error("Point is not on the bZ.");}if(this.multiply(n).fX()){throw new Error("Point is not a scalar multiple of G.");}return true;};var ji;var rZ=0xdeadbeefcafe;var st=((rZ&0xffffff)==0xefcafe);function K(a,b,c){if(a!=null)if("number"==typeof a)this.mG(a,b,c);else if(b==null&&"string"!=typeof a)this.mx(a,256);else this.mx(a,b);};function T(){return new K(null);};function dg(i,x,w,j,c,n){while(--n>=0){var v=x*this[i++]+w[j]+c;c=Math.floor(v/0x4000000);w[j++]=v&0x3ffffff;}return c;};function cD(i,x,w,j,c,n){var jJ=x&0x7fff,lh=x>>15;for(var qg=n;qg--;qg>=0){var l=this[i]&0x7fff;var h=this[i++]>>15;var m=lh*l+h*jJ;l=jJ*l+((m&0x7fff)<<15)+w[j]+(c&0x3fffffff);c=(l>>>30)+(m>>>15)+lh*h+(c>>>30);w[j++]=l&0x3fffffff;}return c;};function cN(i,x,w,j,c,n){var jJ=x&0x3fff,lh=x>>14;while(--n>=0){var l=this[i]&0x3fff;var h=this[i++]>>14;var m=lh*l+h*jJ;l=jJ*l+((m&0x3fff)<<14)+w[j]+c;c=(l>>28)+(m>>14)+lh*h;w[j++]=l&0xfffffff;}return c;};var rI=typeof navigator!=="undefined";if(rI&&st&&(navigator.appName=="Microsoft Internet Explorer")){K.prototype.eA=cD;ji=30;}else if(rI&&st&&(navigator.appName!="Netscape")){K.prototype.eA=dg;ji=26;}else{K.prototype.eA=cN;ji=28;}K.prototype.cj=ji;K.prototype.eH=((1<=0;--i)r[i]=this[i];r.t=this.t;r.s=this.s;};function dH(x){this.t=1;this.s=(x<0)? -1:0;if(x>0)this[0]=x;else if(x< -1)this[0]=x+this.ek;else this.t=0;};function bx(i){var r=T();r.hf(i);return r;};function ca(s,b){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.ro(s,b);return;}this.t=0;this.s=0;var i=s.length,gC=false,gV=0;while(--i>=0){var x=(k==8)?s[i]&0xff:aB(s,i);if(x<0){if(s.charAt(i)=="-")gC=true;continue;}gC=false;if(gV==0)this[this.t++]=x;else if(gV+k>this.cj){this[this.t-1]|=(x&((1<<(this.cj-gV))-1))<>(this.cj-gV));}else this[this.t-1]|=x<=this.cj)gV-=this.cj;}if(k==8&&(s[0]&0x80)!=0){this.s= -1;if(gV>0)this[this.t-1]|=((1<<(this.cj-gV))-1)<0&&this[this.t-1]==c)--this.t;};function cd(b){if(this.s<0)return "-"+this.ht().toString(b);var k;if(b==16)k=4;else if(b==8)k=3;else if(b==2)k=1;else if(b==32)k=5;else if(b==4)k=2;else return this.dW(b);var jC=(1<0){if(p>p)>0){m=true;r=ax(d);}while(i>=0){if(p>(p+=this.cj-k);}else{d=(this[i]>>(p-=k))&jC;if(p<=0){p+=this.cj;--i;}}if(d>0)m=true;if(m)r+=ax(d);}}return m?r:"0";};function du(){var r=T();K.ZERO.fM(this,r);return r;};function cT(){return(this.s<0)?this.ht():this;};function cf(a){var r=this.s-a.s;if(r!=0)return r;var i=this.t;r=i-a.t;if(r!=0)return(this.s<0)? -r:r;while(--i>=0)if((r=this[i]-a[i])!=0)return r;return 0;};function bj(x){var r=1,t;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 cX(){if(this.t<=0)return 0;return this.cj*(this.t-1)+bj(this[this.t-1]^(this.s&this.eH));};function dB(n,r){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 df(n,r){for(var i=n;i=0;--i){r[i+gZ+1]=(this[i]>>jL)|c;c=(this[i]&ni)<=0;--i)r[i]=0;r[gZ]=c;r.t=this.t+gZ+1;r.s=this.s;r.eC();};function da(n,r){r.s=this.s;var gZ=Math.floor(n/this.cj);if(gZ>=this.t){r.t=0;return;}var hA=n%this.cj;var jL=this.cj-hA;var ni=(1<>hA;for(var i=gZ+1;i>hA;}if(hA>0)r[this.t-gZ-1]|=(this.s&ni)<>=this.cj;}if(a.t>=this.cj;}c+=this.s;}else{c+=this.s;while(i>=this.cj;}c-=a.s;}r.s=(c<0)? -1:0;if(c< -1)r[i++]=this.ek+c;else if(c>0)r[i++]=c;r.t=i;r.eC();};function dh(a,r){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;i=0)r[i]=0;for(i=0;i=x.ek){r[i+x.t]-=x.ek;r[i+x.t+1]=1;}}if(r.t>0)r[r.t-1]+=x.eA(i,x[i],r,2*i,0,1);r.s=0;r.eC();};function cF(m,q,r){var kZ=m.abs();if(kZ.t<=0)return;var pt=this.abs();if(pt.t0){kZ.jl(kt,y);pt.jl(kt,r);}else{kZ.gr(y);pt.gr(r);}var gM=y.t;var nS=y[gM-1];if(nS==0)return;var qa=nS*(1<1)?y[gM-2]>>this.rf:0);var tI=this.vA/qa,tP=(1<=0){r[r.t++]=1;r.fM(t,r);}K.ONE.kU(gM,t);t.fM(y,y);while(y.t=0){var nR=(r[--i]==nS)?this.eH:Math.floor(r[i]*tI+(r[i-1]+e)*tP);if((r[i]+=y.eA(0,nR,r,j,0,gM))0)r.eF(kt,r);if(rc<0)K.ZERO.fM(r,r);};function di(a){var r=T();this.abs().gQ(a,null,r);if(this.s<0&&r.dU(K.ZERO)>0)a.fM(r,r);return r;};function be(m){this.m=m;};function cr(x){if(x.s<0||x.dU(this.m)>=0)return x.fJ(this.m);else return x;};function dj(x){return x;};function cK(x){x.gQ(this.m,null,x);};function dR(x,y,r){x.iy(y,r);this.reduce(r);};function bX(x,r){x.jv(r);this.reduce(r);};be.prototype.convert=cr;be.prototype.revert=dj;be.prototype.reduce=cK;be.prototype.ha=dR;be.prototype.fs=bX;function co(){if(this.t<1)return 0;var x=this[0];if((x&1)==0)return 0;var y=x&3;y=(y*(2-(x&0xf)*y))&0xf;y=(y*(2-(x&0xff)*y))&0xff;y=(y*(2-(((x&0xffff)*y)&0xffff)))&0xffff;y=(y*(2-x*y%this.ek))%this.ek;return(y>0)?this.ek-y: -y;};function aX(m){this.m=m;this.so=m.si();this.sg=this.so&0x7fff;this.tC=this.so>>15;this.tz=(1<<(m.cj-15))-1;this.uD=2*m.t;};function cP(x){var r=T();x.abs().kU(this.m.t,r);r.gQ(this.m,null,r);if(x.s<0&&r.dU(K.ZERO)>0)this.m.fM(r,r);return r;};function dc(x){var r=T();x.gr(r);this.reduce(r);return r;};function cA(x){while(x.t<=this.uD)x[x.t++]=0;for(var i=0;i>15)*this.sg)&this.tz)<<15))&x.eH;j=i+this.m.t;x[j]+=this.m.eA(0,tO,x,i,0,this.m.t);while(x[j]>=x.ek){x[j]-=x.ek;x[++j]++;}}x.eC();x.jE(this.m.t,x);if(x.dU(this.m)>=0)x.fM(this.m,x);};function cC(x,r){x.jv(r);this.reduce(r);};function ap(x,y,r){x.iy(y,r);this.reduce(r);};aX.prototype.convert=cP;aX.prototype.revert=dc;aX.prototype.reduce=cA;aX.prototype.ha=ap;aX.prototype.fs=cC;function cz(){return((this.t>0)?(this[0]&1):this.s)==0;};function dP(e,z){if(e>0xffffffff||e<1)return K.ONE;var r=T(),r2=T(),g=z.convert(this),i=bj(e)-1;g.gr(r);while(--i>=0){z.fs(r,r2);if((e&(1<0)z.ha(r2,g,r);else{var t=r;r=r2;r2=t;}}return z.revert(r);};function cg(e,m){var z;if(e<256||m.ez())z=new be(m);else z=new aX(m);return this.exp(e,z);};K.prototype.gr=dn;K.prototype.hf=dH;K.prototype.mx=ca;K.prototype.eC=cp;K.prototype.kU=dB;K.prototype.jE=df;K.prototype.jl=cG;K.prototype.eF=da;K.prototype.fM=cR;K.prototype.iy=dh;K.prototype.jv=ci;K.prototype.gQ=cF;K.prototype.si=co;K.prototype.ez=cz;K.prototype.exp=dP;K.prototype.toString=cd;K.prototype.ht=du;K.prototype.abs=cT;K.prototype.dU=cf;K.prototype.dY=cX;K.prototype.fJ=di;K.prototype.rs=cg;K.ZERO=bx(0);K.ONE=bx(1);function bf(){var r=T();this.gr(r);return r;};function bg(){if(this.s<0){if(this.t==1)return this[0]-this.ek;else if(this.t==0)return-1;}else if(this.t==1)return this[0];else if(this.t==0)return 0;return((this[1]&((1<<(32-this.cj))-1))<>24;};function bp(){return(this.t==0)?this.s:(this[0]<<16)>>16;};function aW(r){return Math.floor(Math.LN2*this.cj/Math.log(r));};function aZ(){if(this.s<0)return-1;else if(this.t<=0||(this.t==1&&this[0]<=0))return 0;else return 1;};function aA(b){if(b==null)b=10;if(this.eN()==0||b<2||b>36)return "0";var jo=this.lo(b);var a=Math.pow(b,jo);var d=bx(a),y=T(),z=T(),r="";this.gQ(d,y,z);while(y.eN()>0){r=(a+z.hI()).toString(b).substr(1)+r;y.gQ(d,y,z);}return z.hI().toString(b)+r;};function ad(s,b){this.hf(0);if(b==null)b=10;var jo=this.lo(b);var d=Math.pow(b,jo),gC=false,j=0,w=0;for(var i=0;i=jo){this.kL(d);this.hy(w,0);j=0;w=0;}}if(j>0){this.kL(Math.pow(b,j));this.hy(w,0);}if(gC)K.ZERO.fM(this,this);};function as(a,b,c){if("number"==typeof b){if(a<2)this.hf(1);else{this.mG(a,c);if(!this.eE(a-1))this.gz(K.ONE.shiftLeft(a-1),bF,this);if(this.ez())this.hy(1,0);while(!this.oV(b)){this.hy(2,0);if(this.dY()>a)this.fM(K.ONE.shiftLeft(a-1),this);}}}else{var x=new Array(),t=a&7;x.length=(a>>3)+1;b.nN(x);if(t>0)x[0]&=((1<0){if(p>p)!=(this.s&this.eH)>>p)r[k++]=d|(this.s<<(this.cj-p));while(i>=0){if(p<8){d=(this[i]&((1<>(p+=this.cj-8);}else{d=(this[i]>>(p-=8))&0xff;if(p<=0){p+=this.cj;--i;}}if((d&0x80)!=0)d|= -256;if(k==0&&(this.s&0x80)!=(d&0x80))++k;if(k>0||d!=this.s)r[k++]=d;}}return r;};function aI(a){return(this.dU(a)==0);};function bB(a){return(this.dU(a)<0)?this:a;};function bd(a){return(this.dU(a)>0)?this:a;};function bH(a,gp,r){var i,f,m=Math.min(a.t,this.t);for(i=0;i>=16;r+=16;}if((x&0xff)==0){x>>=8;r+=8;}if((x&0xf)==0){x>>=4;r+=4;}if((x&3)==0){x>>=2;r+=2;}if((x&1)==0)++r;return r;};function aQ(){for(var i=0;i=this.t)return(this.s!=0);return((this[j]&(1<<(n%this.cj)))!=0);};function aE(n,gp){var r=K.ONE.shiftLeft(n);this.gz(r,gp,r);return r;};function by(n){return this.iw(n,bF);};function aw(n){return this.iw(n,bh);};function aF(n){return this.iw(n,bV);};function bc(a,r){var i=0,c=0,m=Math.min(a.t,this.t);while(i>=this.cj;}if(a.t>=this.cj;}c+=this.s;}else{c+=this.s;while(i>=this.cj;}c+=a.s;}r.s=(c<0)? -1:0;if(c>0)r[i++]=c;else if(c< -1)r[i++]=this.ek+c;r.t=i;r.eC();};function aa(a){var r=T();this.gA(a,r);return r;};function aV(a){var r=T();this.fM(a,r);return r;};function ao(a){var r=T();this.iy(a,r);return r;};function aq(){var r=T();this.jv(r);return r;};function aP(a){var r=T();this.gQ(a,r,null);return r;};function aY(a){var r=T();this.gQ(a,null,r);return r;};function aj(a){var q=T(),r=T();this.gQ(a,q,r);return new Array(q,r);};function aH(n){this[this.t]=this.eA(0,n-1,this,0,0,this.t);++this.t;this.eC();};function aN(n,w){if(n==0)return;while(this.t<=w)this[this.t++]=0;this[w]+=n;while(this[w]>=this.ek){this[w]-=this.ek;if(++w>=this.t)this[this.t++]=0;++this[w];}};function bS(){};function al(x){return x;};function af(x,y,r){x.iy(y,r);};function aC(x,r){x.jv(r);};bS.prototype.convert=al;bS.prototype.revert=al;bS.prototype.ha=af;bS.prototype.fs=aC;function bJ(e){return this.exp(e,new bS());};function az(a,n,r){var i=Math.min(this.t+a.t,n);r.s=0;r.t=i;while(i>0)r[--i]=0;var j;for(j=r.t-this.t;i=0)r[i]=0;for(i=Math.max(n-this.t,0);i2*this.m.t)return x.fJ(this.m);else if(x.dU(this.m)<0)return x;else{var r=T();x.gr(r);this.reduce(r);return r;}};function bI(x){return x;};function bz(x){x.jE(this.m.t-1,this.r2);if(x.t>this.m.t+1){x.t=this.m.t+1;x.eC();}this.nM.nC(this.r2,this.m.t+1,this.jU);this.m.nT(this.jU,this.m.t+1,this.r2);while(x.dU(this.r2)<0)x.hy(1,this.m.t+1);x.fM(this.r2,x);while(x.dU(this.m)>=0)x.fM(this.m,x);};function bv(x,r){x.jv(r);this.reduce(r);};function bK(x,y,r){x.iy(y,r);this.reduce(r);};aJ.prototype.convert=bo;aJ.prototype.revert=bI;aJ.prototype.reduce=bz;aJ.prototype.ha=bK;aJ.prototype.fs=bv;function ak(e,m){var i=e.dY(),k,r=bx(1),z;if(i<=0)return r;else if(i<18)k=1;else if(i<48)k=3;else if(i<144)k=4;else if(i<768)k=5;else k=6;if(i<8)z=new be(m);else if(m.ez())z=new aJ(m);else z=new aX(m);var g=new Array(),n=3,fS=k-1,jC=(1<1){var lx=T();z.fs(g[1],lx);while(n<=jC){g[n]=T();z.ha(lx,g[n-2],g[n]);n+=2;}}var j=e.t-1,w,jY=true,r2=T(),t;i=bj(e[j])-1;while(j>=0){if(i>=fS)w=(e[j]>>(i-fS))&jC;else{w=(e[j]&((1<<(i+1))-1))<<(fS-i);if(j>0)w|=e[j-1]>>(this.cj+i-fS);}n=k;while((w&1)==0){w>>=1;--n;}if((i-=n)<0){i+=this.cj;--j;}if(jY){g[w].gr(r);jY=false;}else{while(n>1){z.fs(r,r2);z.fs(r2,r);n-=2;}if(n>0)z.fs(r,r2);else{t=r;r=r2;r2=t;}z.ha(r2,g[w],r);}while(j>=0&&(e[j]&(1<0){x.eF(g,x);y.eF(g,y);}while(x.eN()>0){if((i=x.gs())>0)x.eF(i,x);if((i=y.gs())>0)y.eF(i,y);if(x.dU(y)>=0){x.fM(y,x);x.eF(1,x);}else{y.fM(x,y);y.eF(1,y);}}if(g>0)y.jl(g,y);return y;};function aS(n){if(n<=0)return 0;var d=this.ek%n,r=(this.s<0)?n-1:0;if(this.t>0)if(d==0)r=this[0]%n;else for(var i=this.t-1;i>=0;--i)r=(d*r+this[i])%n;return r;};function au(m){var gg=m.ez();if((this.ez()&&gg)||m.eN()==0)return K.ZERO;var u=m.clone(),v=this.clone();var a=bx(1),b=bx(0),c=bx(0),d=bx(1);while(u.eN()!=0){while(u.ez()){u.eF(1,u);if(gg){if(!a.ez()|| !b.ez()){a.gA(this,a);b.fM(m,b);}a.eF(1,a);}else if(!b.ez())b.fM(m,b);b.eF(1,b);}while(v.ez()){v.eF(1,v);if(gg){if(!c.ez()|| !d.ez()){c.gA(this,c);d.fM(m,d);}c.eF(1,c);}else if(!d.ez())d.fM(m,d);d.eF(1,d);}if(u.dU(v)>=0){u.fM(v,u);if(gg)a.fM(c,a);b.fM(d,b);}else{v.fM(u,v);if(gg)c.fM(a,c);d.fM(b,d);}}if(v.dU(K.ONE)!=0)return K.ZERO;if(d.dU(m)>=0)return d.eB(m);if(d.eN()<0)d.gA(m,d);else return d;if(d.eN()<0)return d.add(m);else return d;};var fh=[2,3,5,7,11,13,17,19,23,29,31,37,41,43,47,53,59,61,67,71,73,79,83,89,97,101,103,107,109,113,127,131,137,139,149,151,157,163,167,173,179,181,191,193,197,199,211,223,227,229,233,239,241,251,257,263,269,271,277,281,283,293,307,311,313,317,331,337,347,349,353,359,367,373,379,383,389,397,401,409,419,421,431,433,439,443,449,457,461,463,467,479,487,491,499,503,509,521,523,541,547,557,563,569,571,577,587,593,599,601,607,613,617,619,631,641,643,647,653,659,661,673,677,683,691,701,709,719,727,733,739,743,751,757,761,769,773,787,797,809,811,821,823,827,829,839,853,857,859,863,877,881,883,887,907,911,919,929,937,941,947,953,967,971,977,983,991,997];var lF=(1<<26)/fh[fh.length-1];function an(t){var i,x=this.abs();if(x.t==1&&x[0]<=fh[fh.length-1]){for(i=0;i>1;if(t>fh.length)t=fh.length;var a=T();for(var i=0;i>8)&255;fK[fg++]^=(x>>16)&255;fK[fg++]^=(x>>24)&255;if(fg>=jD)fg-=jD;};function bu(){bD(new Date().getTime());};if(fK==null){fK=new Array();fg=0;var t;if(typeof window!=="undefined"&&window.crypto){if(window.crypto.nK){var ua=new Uint8Array(32);window.crypto.nK(ua);for(t=0;t<32;++t)fK[fg++]=ua[t];}else if(navigator.appName=="Netscape"&&navigator.appVersion<"5"){var z=window.crypto.random(32);for(t=0;t>>8;fK[fg++]=t&255;}fg=0;bu();}function ay(){if(hn==null){bu();hn=bQ();hn.dV(fK);for(fg=0;fg>24;};function bp(){return(this.t==0)?this.s:(this[0]<<16)>>16;};function aW(r){return Math.floor(Math.LN2*this.cj/Math.log(r));};function aZ(){if(this.s<0)return-1;else if(this.t<=0||(this.t==1&&this[0]<=0))return 0;else return 1;};function aA(b){if(b==null)b=10;if(this.eN()==0||b<2||b>36)return "0";var jo=this.lo(b);var a=Math.pow(b,jo);var d=bx(a),y=T(),z=T(),r="";this.gQ(d,y,z);while(y.eN()>0){r=(a+z.hI()).toString(b).substr(1)+r;y.gQ(d,y,z);}return z.hI().toString(b)+r;};function ad(s,b){this.hf(0);if(b==null)b=10;var jo=this.lo(b);var d=Math.pow(b,jo),gC=false,j=0,w=0;for(var i=0;i=jo){this.kL(d);this.hy(w,0);j=0;w=0;}}if(j>0){this.kL(Math.pow(b,j));this.hy(w,0);}if(gC)K.ZERO.fM(this,this);};function as(a,b,c){if("number"==typeof b){if(a<2)this.hf(1);else{this.mG(a,c);if(!this.eE(a-1))this.gz(K.ONE.shiftLeft(a-1),bF,this);if(this.ez())this.hy(1,0);while(!this.oV(b)){this.hy(2,0);if(this.dY()>a)this.fM(K.ONE.shiftLeft(a-1),this);}}}else{var x=new Array(),t=a&7;x.length=(a>>3)+1;b.nN(x);if(t>0)x[0]&=((1<0){if(p>p)!=(this.s&this.eH)>>p)r[k++]=d|(this.s<<(this.cj-p));while(i>=0){if(p<8){d=(this[i]&((1<>(p+=this.cj-8);}else{d=(this[i]>>(p-=8))&0xff;if(p<=0){p+=this.cj;--i;}}if((d&0x80)!=0)d|= -256;if(k==0&&(this.s&0x80)!=(d&0x80))++k;if(k>0||d!=this.s)r[k++]=d;}}return r;};function aI(a){return(this.dU(a)==0);};function bB(a){return(this.dU(a)<0)?this:a;};function bd(a){return(this.dU(a)>0)?this:a;};function bH(a,gp,r){var i,f,m=Math.min(a.t,this.t);for(i=0;i>=16;r+=16;}if((x&0xff)==0){x>>=8;r+=8;}if((x&0xf)==0){x>>=4;r+=4;}if((x&3)==0){x>>=2;r+=2;}if((x&1)==0)++r;return r;};function aQ(){for(var i=0;i=this.t)return(this.s!=0);return((this[j]&(1<<(n%this.cj)))!=0);};function aE(n,gp){var r=K.ONE.shiftLeft(n);this.gz(r,gp,r);return r;};function by(n){return this.iw(n,bF);};function aw(n){return this.iw(n,bh);};function aF(n){return this.iw(n,bV);};function bc(a,r){var i=0,c=0,m=Math.min(a.t,this.t);while(i>=this.cj;}if(a.t>=this.cj;}c+=this.s;}else{c+=this.s;while(i>=this.cj;}c+=a.s;}r.s=(c<0)? -1:0;if(c>0)r[i++]=c;else if(c< -1)r[i++]=this.ek+c;r.t=i;r.eC();};function aa(a){var r=T();this.gA(a,r);return r;};function aV(a){var r=T();this.fM(a,r);return r;};function ao(a){var r=T();this.iy(a,r);return r;};function aq(){var r=T();this.jv(r);return r;};function aP(a){var r=T();this.gQ(a,r,null);return r;};function aY(a){var r=T();this.gQ(a,null,r);return r;};function aj(a){var q=T(),r=T();this.gQ(a,q,r);return new Array(q,r);};function aH(n){this[this.t]=this.eA(0,n-1,this,0,0,this.t);++this.t;this.eC();};function aN(n,w){if(n==0)return;while(this.t<=w)this[this.t++]=0;this[w]+=n;while(this[w]>=this.ek){this[w]-=this.ek;if(++w>=this.t)this[this.t++]=0;++this[w];}};function bS(){};function al(x){return x;};function af(x,y,r){x.iy(y,r);};function aC(x,r){x.jv(r);};bS.prototype.convert=al;bS.prototype.revert=al;bS.prototype.ha=af;bS.prototype.fs=aC;function bJ(e){return this.exp(e,new bS());};function az(a,n,r){var i=Math.min(this.t+a.t,n);r.s=0;r.t=i;while(i>0)r[--i]=0;var j;for(j=r.t-this.t;i=0)r[i]=0;for(i=Math.max(n-this.t,0);i2*this.m.t)return x.fJ(this.m);else if(x.dU(this.m)<0)return x;else{var r=T();x.gr(r);this.reduce(r);return r;}};function bI(x){return x;};function bz(x){x.jE(this.m.t-1,this.r2);if(x.t>this.m.t+1){x.t=this.m.t+1;x.eC();}this.nM.nC(this.r2,this.m.t+1,this.jU);this.m.nT(this.jU,this.m.t+1,this.r2);while(x.dU(this.r2)<0)x.hy(1,this.m.t+1);x.fM(this.r2,x);while(x.dU(this.m)>=0)x.fM(this.m,x);};function bv(x,r){x.jv(r);this.reduce(r);};function bK(x,y,r){x.iy(y,r);this.reduce(r);};aJ.prototype.convert=bo;aJ.prototype.revert=bI;aJ.prototype.reduce=bz;aJ.prototype.ha=bK;aJ.prototype.fs=bv;function ak(e,m){var i=e.dY(),k,r=bx(1),z;if(i<=0)return r;else if(i<18)k=1;else if(i<48)k=3;else if(i<144)k=4;else if(i<768)k=5;else k=6;if(i<8)z=new be(m);else if(m.ez())z=new aJ(m);else z=new aX(m);var g=new Array(),n=3,fS=k-1,jC=(1<1){var lx=T();z.fs(g[1],lx);while(n<=jC){g[n]=T();z.ha(lx,g[n-2],g[n]);n+=2;}}var j=e.t-1,w,jY=true,r2=T(),t;i=bj(e[j])-1;while(j>=0){if(i>=fS)w=(e[j]>>(i-fS))&jC;else{w=(e[j]&((1<<(i+1))-1))<<(fS-i);if(j>0)w|=e[j-1]>>(this.cj+i-fS);}n=k;while((w&1)==0){w>>=1;--n;}if((i-=n)<0){i+=this.cj;--j;}if(jY){g[w].gr(r);jY=false;}else{while(n>1){z.fs(r,r2);z.fs(r2,r);n-=2;}if(n>0)z.fs(r,r2);else{t=r;r=r2;r2=t;}z.ha(r2,g[w],r);}while(j>=0&&(e[j]&(1<0){x.eF(g,x);y.eF(g,y);}while(x.eN()>0){if((i=x.gs())>0)x.eF(i,x);if((i=y.gs())>0)y.eF(i,y);if(x.dU(y)>=0){x.fM(y,x);x.eF(1,x);}else{y.fM(x,y);y.eF(1,y);}}if(g>0)y.jl(g,y);return y;};function aS(n){if(n<=0)return 0;var d=this.ek%n,r=(this.s<0)?n-1:0;if(this.t>0)if(d==0)r=this[0]%n;else for(var i=this.t-1;i>=0;--i)r=(d*r+this[i])%n;return r;};function au(m){var gg=m.ez();if((this.ez()&&gg)||m.eN()==0)return K.ZERO;var u=m.clone(),v=this.clone();var a=bx(1),b=bx(0),c=bx(0),d=bx(1);while(u.eN()!=0){while(u.ez()){u.eF(1,u);if(gg){if(!a.ez()|| !b.ez()){a.gA(this,a);b.fM(m,b);}a.eF(1,a);}else if(!b.ez())b.fM(m,b);b.eF(1,b);}while(v.ez()){v.eF(1,v);if(gg){if(!c.ez()|| !d.ez()){c.gA(this,c);d.fM(m,d);}c.eF(1,c);}else if(!d.ez())d.fM(m,d);d.eF(1,d);}if(u.dU(v)>=0){u.fM(v,u);if(gg)a.fM(c,a);b.fM(d,b);}else{v.fM(u,v);if(gg)c.fM(a,c);d.fM(b,d);}}if(v.dU(K.ONE)!=0)return K.ZERO;if(d.dU(m)>=0)return d.eB(m);if(d.eN()<0)d.gA(m,d);else return d;if(d.eN()<0)return d.add(m);else return d;};var fh=[2,3,5,7,11,13,17,19,23,29,31,37,41,43,47,53,59,61,67,71,73,79,83,89,97,101,103,107,109,113,127,131,137,139,149,151,157,163,167,173,179,181,191,193,197,199,211,223,227,229,233,239,241,251,257,263,269,271,277,281,283,293,307,311,313,317,331,337,347,349,353,359,367,373,379,383,389,397,401,409,419,421,431,433,439,443,449,457,461,463,467,479,487,491,499,503,509,521,523,541,547,557,563,569,571,577,587,593,599,601,607,613,617,619,631,641,643,647,653,659,661,673,677,683,691,701,709,719,727,733,739,743,751,757,761,769,773,787,797,809,811,821,823,827,829,839,853,857,859,863,877,881,883,887,907,911,919,929,937,941,947,953,967,971,977,983,991,997];var lF=(1<<26)/fh[fh.length-1];function an(t){var i,x=this.abs();if(x.t==1&&x[0]<=fh[fh.length-1]){for(i=0;i>1;if(t>fh.length)t=fh.length;var a=T();for(var i=0;i>8)&255;fK[fg++]^=(x>>16)&255;fK[fg++]^=(x>>24)&255;if(fg>=jD)fg-=jD;};function bu(){bD(new Date().getTime());};if(fK==null){fK=new Array();fg=0;var t;if(window.crypto&&window.crypto.nK){var ua=new Uint8Array(32);window.crypto.nK(ua);for(t=0;t<32;++t)fK[fg++]=ua[t];}if(navigator.appName=="Netscape"&&navigator.appVersion<"5"&&window.crypto){var z=window.crypto.random(32);for(t=0;t>>8;fK[fg++]=t&255;}fg=0;bu();}function ay(){if(hn==null){bu();hn=bQ();hn.dV(fK);for(fg=0;fgrh)throw "key is too short for SigAlg: hO="+he+","+cc;var rN="0001";var sK="00"+nX;var rJ="";var vn=rh-rN.length-sK.length;for(var i=0;i127||n< -128){var result=0xff&n;if(result>127){result=0x7f&n;result=0x7f^result;return-(result+1);}return result;}else{return n;}},Reset:function(){this.mT=new bA();this.hQ=new bA();var lk=this.iB(this.jR.eS().cl().dW(16));var kn=this.iB(this.jR.ew().cl().dW(16));this.hQ.fl(lk,0,lk.length);this.mT.fl(lk,0,lk.length);this.mT.fl(kn,0,kn.length);this.kq=1;this.pa();},pa:function(){var ki=new bA(this.mT);ki.gf(this.kq>>24&0xff);ki.gf(this.kq>>16&0xff);ki.gf(this.kq>>8&0xff);ki.gf(this.kq&0xff);ki.jy(this.key,0);this.jK=0;this.kq++;},qF:function(gJ){var k=null;var ej=null;var fo=new Aostar.crypto.eJ({"bZ":"sm2"});var iq=(this.gY==null?this.pF(fo):fo.vc(this.gY));k=new K(iq.ecprvhex,16);var ge=iq.ecpubhex;ej=O.ll(fo.fm['bZ'],ge);this.jR=gJ.multiply(k);this.Reset();return ej;},pF:function(fo){var iq=fo.oh();if(this.uy(iq.ecpubhex)){return iq;}else{return this.pF(fo);}},uy:function(ecpubhex){var jj=ecpubhex.length-2;var vC=ecpubhex.substr(2,2);var uH=ecpubhex.substr(2+jj/2,2);if(vC==='00'||uH==='00'){return false;}else{return true;}},qj:function(data){this.hQ.fl(data,0,data.length);for(var i=0;i64){eU=eU.substr(eU.length-64,eU.length);}var gP=eU.length;for(var i=0;i>>3]|=parseInt(gI[j])<<(24-(i%8)*4);j++;}var ei=new AostarJS.jx.eR.dV(cu,gI.length);return ei;},jX:function(oZ,fz){var gl=fz.substr(0,2)==="04"?fz.substr(2):fz;var ih=gl.substr(0,64);var kf=gl.substr(0+ih.length,64);var fD;var ob;if(this.eb==CipherMode.C1C3C2){fD=gl.substr(ih.length+kf.length,64);ob=gl.substr(ih.length+kf.length+64);}else{ob=gl.substr(ih.length+kf.length,gl.length-192);fD=gl.substr(gl.length-64);}var rn=this.fL(ob);var ej=this.iz(ih,kf);this.rR(oZ,ej);this.pZ(rn);var ks=new Array(32);this.mb(ks);var qm=this.er(ks).toString().toUpperCase()==fD.toUpperCase();if(qm){var ei=this.er(rn);return ei;}else{throw new Error("[SM2:jX] C3 is not match!");return null;}},kI:function(oZ,fz){var gl=fz;var jB=dE.kK(gl);var ih=jB[0];var kf=jB[1];var fD;var oP;if(this.eb==CipherMode.C1C3C2){fD=jB[2];oP=jB[3];}else if(this.eb==CipherMode.C1C2C3){oP=jB[2];fD=jB[3];}else{throw new Error("[SM2:kI]invalid type eb("+this.eb+")");}var data=this.fL(oP);var ej=this.iz(ih,kf);this.rR(oZ,ej);this.pZ(data);var ks=new Array(32);this.mb(ks);var qm=this.er(ks).toString().toUpperCase()==fD.toUpperCase();if(qm){var ei=this.er(data);return ei;}else{throw new Error("[SM2:kI] C3 is not match!");return '';}},iz:function(x,y){var fo=new Aostar.crypto.eJ({"bZ":"sm2"});if(x.length<64){x=this.le(x,64);}else{x=x.substr((x.length-64),64);}if(y.length<64){y=this.le(y,64);}else{y=y.substr((y.length-64),64);}var ge='04'+x+y;var nx=O.ll(fo.fm['bZ'],ge);return nx;}};window.CipherMode={C1C2C3:0,C1C3C2:1};window.SM2={C1C2C3:0,C1C3C2:1,c1c2c3:0,c1c3c2:1};if(typeof Aostar=="undefined"|| !Aostar)var Aostar={};if(typeof Aostar.crypto=="undefined"|| !Aostar.crypto)Aostar.crypto={};Aostar.crypto.SM3withSM2=function(dM){var ed="sm2";var fm=null;var eh=null;var cv=null;var ox=new bG();var wa=null;this.type="SM2";function dk(P,k,Q,l){var m=Math.max(k.dY(),l.dY());var Z=P.hw(Q);var R=P.bZ.hk();for(var i=m-1;i>=0;--i){R=R.pY();R.z=K.ONE;if(k.eE(i)){if(l.eE(i)){R=R.hw(Z);}else{R=R.hw(P);}}else{if(l.eE(i)){R=R.hw(Q);}}}return R;};this.jc=function(jS){return new K(jS.dY(),ox).fJ(jS.eB(K.ONE)).add(K.ONE);};this.nl=function(ed){this.fm=Aostar.crypto.hD.getByName(ed);this.eh=null;this.cv=null;this.ed=ed;};this.kA=function(eh){this.tf=true;this.eh=eh;};this.kO=function(cv){this.rC=true;this.cv=cv;};this.oh=function(){var pA=this.fm['n'];var jn=this.jc(pA);var il=this.fm['G'].multiply(jn);var kH=il.eS().cl();var kC=il.ew().cl();var fE=this.fm['hO']/4;var jg=("0000000000"+jn.toString(16)).slice(-fE);var la=("0000000000"+kH.toString(16)).slice(-fE);var lB=("0000000000"+kC.toString(16)).slice(-fE);var ja="04"+la+lB;this.kA(jg);this.kO(ja);return{'ecprvhex':jg,'ecpubhex':ja};};this.mL=function(eP){return this.jz(eP,this.eh);};this.jz=function(eP,ph){var d=new K(ph,16);var n=this.fm['n'];var e=new K(eP,16);var k=null;var sA=null;var r=null;var s=null;var np=d;do{do{var iq=this.oh();k=new K(iq.ecprvhex,16);var ge=iq.ecpubhex;sA=O.ll(this.fm['bZ'],ge);r=e.add(sA.eS().cl());r=r.fJ(n);}while(r.fI(K.ZERO)||r.add(k).fI(n));var ou=np.add(K.ONE);ou=ou.hm(n);s=r.multiply(np);s=k.eB(s).fJ(n);s=ou.multiply(s).fJ(n);}while(s.fI(K.ZERO));return Aostar.crypto.eJ.pk(r,s);};this.gX=function(hash,nL){var d=nL;var n=this.fm['n'];var e=K.hq(hash);do{var k=this.jc(n);var G=this.fm['G'];var Q=G.multiply(k);var r=Q.eS().cl().fJ(n);}while(r.dU(K.ZERO)<=0);var s=k.hm(n).multiply(e.add(d.multiply(r))).fJ(n);return this.mX(r,s);};this.lJ=function(eP,eQ){return this.jQ(eP,eQ,this.cv);};this.jQ=function(eP,eQ,ge){var r,s;var eI=Aostar.crypto.eJ.rG(eQ);r=eI.r;s=eI.s;var Q;Q=O.ll(this.fm['bZ'],ge);var e=new K(eP,16);return this.kk(e,r,s,Q);};this.fY=function(hash,dz,gk){var r,s;if(oG.fW.isArray(dz)){var eI=this.lL(dz);r=eI.r;s=eI.s;}else if("object"===typeof dz&&dz.r&&dz.s){r=dz.r;s=dz.s;}else{throw "Invalid value for signature";}var Q;if(gk instanceof O){Q=gk;}else if(oG.fW.isArray(gk)){Q=O.qk(this.fm['bZ'],gk);}else{throw "Invalid format for gk value, must be byte array fv O";}var e=K.hq(hash);return this.kk(e,r,s,Q);};this.kk=function(e,r,s,Q){var n=this.fm['n'];var G=this.fm['G'];var t=r.add(s).fJ(n);if(t.fI(K.ZERO))return false;var lN=G.multiply(s);lN=lN.add(Q.multiply(t));var R=e.add(lN.eS().cl()).fJ(n);return r.fI(R);};this.mX=function(r,s){var gq=r.mZ();var hF=s.mZ();var fi=[];fi.push(0x02);fi.push(gq.length);fi=fi.concat(gq);fi.push(0x02);fi.push(hF.length);fi=fi.concat(hF);fi.unshift(fi.length);fi.unshift(0x30);return fi;};this.lL=function(dz){var cursor;if(dz[0]!=0x30)throw new Error("gn not a valid jt");cursor=2;if(dz[cursor]!=0x02)throw new Error("First element in signature must be a gW");;var gq=dz.slice(cursor+2,cursor+2+dz[cursor+1]);cursor+=2+dz[cursor+1];if(dz[cursor]!=0x02)throw new Error("Second element in signature must be a gW");var hF=dz.slice(cursor+2,cursor+2+dz[cursor+1]);cursor+=2+dz[cursor+1];var r=K.hq(gq);var s=K.hq(hF);return{r:r,s:s};};this.sl=function(dz){if(dz.length!==65){throw "gn has the wrong length";}var i=dz[0]-27;if(i<0||i>7){throw "Invalid signature type";}var n=this.fm['n'];var r=K.hq(dz.slice(1,33)).fJ(n);var s=K.hq(dz.slice(33,65)).fJ(n);return{r:r,s:s,i:i};};if(dM!==undefined){if(dM['bZ']!==undefined){this.ed=dM['bZ'];}}if(this.ed===undefined)this.ed=ed;this.nl(this.ed);if(dM!==undefined){if(dM['prv']!==undefined)this.kA(dM['prv']);if(dM['pub']!==undefined)this.kO(dM['pub']);}};(function(){var C=AostarJS;var es=C.jx;var eR=es.eR;var hU=es.hU;var kw=C.hl;var W=[];var kc=kw.kc=hU.extend({pR:function(){this.jM=new eR.dV([0x7380166f,0x4914b2b9,0x172442d7,0xda8a0600,0xa96f30bc,0x163138aa,0xe38dee4d,0xb0fb0e4e])},qp:function(M,offset){var H=this.jM.cu;var a=H[0];var b=H[1];var c=H[2];var d=H[3];var e=H[4];for(var i=0;i<80;i++){if(i<16){W[i]=M[offset+i]|0}else{var n=W[i-3]^W[i-8]^W[i-14]^W[i-16];W[i]=(n<<1)|(n>>>31)}var t=((a<<5)|(a>>>27))+e+W[i];if(i<20){t+=((b&c)|(~b&d))+0x5a827999}else if(i<40){t+=(b^c^d)+0x6ed9eba1}else if(i<60){t+=((b&c)|(b&d)|(c&d))-0x70e44324}else{t+=(b^c^d)-0x359d3e2a}e=d;d=c;c=(b<<30)|(b>>>2);b=a;a=t}H[0]=(H[0]+a)|0;H[1]=(H[1]+b)|0;H[2]=(H[2]+c)|0;H[3]=(H[3]+d)|0;H[4]=(H[4]+e)|0},nh:function(){var data=this.hz;var hK=data.cu;var sy=this.qJ*8;var lX=data.fe*8;hK[lX>>>5]|=0x80<<(24-lX%32);hK[(((lX+64)>>>9)<<4)+14]=Math.floor(sy/0x100000000);hK[(((lX+64)>>>9)<<4)+15]=sy;data.fe=hK.length*4;this.iG();return this.jM},clone:function(){var clone=hU.clone.call(this);clone.jM=this.jM.clone();return clone}});C.kc=hU.ri(kc);C.yf=hU.uv(kc)}());function bA(){this.uz=64;this.eY=new Array();this.ij=0;this.hM=0;this.qy=32;this.oR=[1937774191,1226093241,388252375,-628488704,-1452330820,372324522,-477237683,-1325724082];this.v=new Array(8);this.uE=new Array(8);this.mI=[0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0];this.X=new Array(68);this.ii=0;this.sQ=0x79cc4519;this.rV=0x7a879d8a;if(arguments.length>0){this.sD(arguments[0])}else{this.Init()}};bA.prototype={Init:function(){this.eY=new Array(4);this.Reset()},sD:function(t){this.eY=new Array(t.eY.length);Array.Copy(t.eY,0,this.eY,0,t.eY.length);this.ij=t.ij;this.hM=t.hM;Array.Copy(t.X,0,this.X,0,t.X.length);this.ii=t.ii;Array.Copy(t.v,0,this.v,0,t.v.length)},oM:function(){return this.qy},Reset:function(){this.hM=0;this.ij=0;Array.Clear(this.eY,0,this.eY.length);Array.Copy(this.oR,0,this.v,0,this.oR.length);this.ii=0;Array.Copy(this.mI,0,this.X,0,this.mI.length)},vT:function(){return this.uz},nD:function(){var i;var gE=this.X;var om=new Array(64);for(i=16;i<68;i++){gE[i]=this.wS(gE[i-16]^gE[i-9]^(J(gE[i-3],15)))^(J(gE[i-13],7))^gE[i-6]}for(i=0;i<64;i++){om[i]=gE[i]^gE[i+4]}var eZ=this.v;var cU=this.uE;Array.Copy(eZ,0,cU,0,this.oR.length);var gB,lM,mK,ma,ke;for(i=0;i<16;i++){ke=J(cU[0],12);gB=ke+cU[4]+J(this.sQ,i);gB=J(gB,7);lM=gB^ke;mK=this.wC(cU[0],cU[1],cU[2])+cU[3]+lM+om[i];ma=this.wQ(cU[4],cU[5],cU[6])+cU[7]+gB+gE[i];cU[3]=cU[2];cU[2]=J(cU[1],9);cU[1]=cU[0];cU[0]=mK;cU[7]=cU[6];cU[6]=J(cU[5],19);cU[5]=cU[4];cU[4]=this.sp(ma)}for(i=16;i<64;i++){ke=J(cU[0],12);gB=ke+cU[4]+J(this.rV,i);gB=J(gB,7);lM=gB^ke;mK=this.wx(cU[0],cU[1],cU[2])+cU[3]+lM+om[i];ma=this.wy(cU[4],cU[5],cU[6])+cU[7]+gB+gE[i];cU[3]=cU[2];cU[2]=J(cU[1],9);cU[1]=cU[0];cU[0]=mK;cU[7]=cU[6];cU[6]=J(cU[5],19);cU[5]=cU[4];cU[4]=this.sp(ma)}for(i=0;i<8;i++){eZ[i]^=(cU[i])}this.ii=0;Array.Copy(this.mI,0,this.X,0,this.mI.length)},qL:function(lP,gR){var n=lP[gR]<<24;n|=(lP[++gR]&0xff)<<16;n|=(lP[++gR]&0xff)<<8;n|=(lP[++gR]&0xff);this.X[this.ii]=n;if(++this.ii==16){this.nD()}},uU:function(dY){if(this.ii>14){this.nD()}this.X[14]=(this.tN(dY,32));this.X[15]=(dY&(0xffffffff))},rz:function(n,hA,off){hA[off]=(n>>>24&0xFF);hA[++off]=(n>>>16&0xFF);hA[++off]=(n>>>8&0xFF);hA[++off]=(n&0xFF);},jy:function(tm,uM){this.vV();for(var i=0;i<8;i++){this.rz(this.v[i],tm,uM+i*4)}this.Reset();return this.qy},gf:function(input){this.eY[this.ij++]=input;if(this.ij==this.eY.length){this.qL(this.eY,0);this.ij=0}this.hM++},fl:function(input,gR,length){while((this.ij!=0)&&(length>0)){this.gf(input[gR]);gR++;length--}while(length>this.eY.length){this.qL(input,gR);gR+=this.eY.length;length-=this.eY.length;this.hM+=this.eY.length}while(length>0){this.gf(input[gR]);gR++;length--}},vV:function(){var dY=(this.hM<<3);this.gf((128));while(this.ij!=0)this.gf((0));this.uU(dY);this.nD()},ROTATE:function(x,n){return(x<sZ.ss||number=0){return number>>gx}else{return(number>>gx)+(2<< ~gx)}},tN:function(number,gx){var lW;var big=new K();big.hf(number);if(big.eN()>=0){lW=big.lO(gx).hI()}else{var pu=new K();pu.hf(2);var qc= ~gx;var kx='';if(qc<0){var wR=64+qc;for(var i=0;i>gx);var rd=new K("10"+kx,2);kx=rd.dW(10);var r=rd.add(qM);lW=r.dW(10)}else{kx=pu.shiftLeft((~gx)).hI();lW=(number>>gx)+kx}}return lW},qY:function(g,cv,gS){var pQ=AostarJS.ef.fc.parse(gS);var fC=pQ.cu.length*4*8;this.gf((fC>>8&0x00ff));this.gf((fC&0x00ff));var pK=this.fL(pQ.toString());this.fl(pK,0,pK.length);var pP=this.fL(g.bZ.a.cl().dW(16));var py=this.fL(g.bZ.b.cl().dW(16));var pI=this.fL(g.eS().cl().dW(16));var qq=this.fL(g.ew().cl().dW(16));var pW=this.fL(cv.substr(0,64));var qX=this.fL(cv.substr(64,64));this.fl(pP,0,pP.length);this.fl(py,0,py.length);this.fl(pI,0,pI.length);this.fl(qq,0,qq.length);this.fl(pW,0,pW.length);this.fl(qX,0,qX.length);var fp=new Array(this.oM());this.jy(fp,0);return fp},fL:function(eU){var cu=[];var gP=eU.length;for(var i=0;i64){eU=eU.substr(eU.length-64,eU.length);}var gP=eU.length;for(var i=0;i>>3]|=parseInt(gI[j])<<(24-(i%8)*4);j++}var ei=new AostarJS.jx.eR.dV(cu,gI.length);return ei}};Array.Clear=function(mA,pg,length){for(var uu in mA){mA[uu]=null}};Array.Copy=function(us,sourceIndex,mA,pg,length){var qt=us.slice(sourceIndex,sourceIndex+length);for(var i=0;i>> -distance);};window.sZ={sv: -parseInt('10000000000000000000000000000000',2),ss:parseInt('1111111111111111111111111111111',2),parse:function(n){if(nthis.ss){var pe=Number(n);var kX=pe.toString(2);var lp=kX.substr(kX.length-31,31);var kd='';for(var i=0;i255){var result=0xff&n;return result;}if(n< -256){var result=0xff&n;result=0xff^result;return(result+1);}else{return n}}};function de(n){if(n>2147483647||n< -2147483648){var result=0xffffffff&n;if(result>2147483647){result=0x7fffffff&n;result=0x7fffffff^result;return-(result+1);}return result;}else{return n}};function aR(){this.mode=1;this.dS=true;this.gu=new Array(32);};function aU(){this.gT=1;this.iF=0;var vo=[0xd6,0x90,0xe9,0xfe,0xcc,0xe1,0x3d,0xb7,0x16,0xb6,0x14,0xc2,0x28,0xfb,0x2c,0x05,0x2b,0x67,0x9a,0x76,0x2a,0xbe,0x04,0xc3,0xaa,0x44,0x13,0x26,0x49,0x86,0x06,0x99,0x9c,0x42,0x50,0xf4,0x91,0xef,0x98,0x7a,0x33,0x54,0x0b,0x43,0xed,0xcf,0xac,0x62,0xe4,0xb3,0x1c,0xa9,0xc9,0x08,0xe8,0x95,0x80,0xdf,0x94,0xfa,0x75,0x8f,0x3f,0xa6,0x47,0x07,0xa7,0xfc,0xf3,0x73,0x17,0xba,0x83,0x59,0x3c,0x19,0xe6,0x85,0x4f,0xa8,0x68,0x6b,0x81,0xb2,0x71,0x64,0xda,0x8b,0xf8,0xeb,0x0f,0x4b,0x70,0x56,0x9d,0x35,0x1e,0x24,0x0e,0x5e,0x63,0x58,0xd1,0xa2,0x25,0x22,0x7c,0x3b,0x01,0x21,0x78,0x87,0xd4,0x00,0x46,0x57,0x9f,0xd3,0x27,0x52,0x4c,0x36,0x02,0xe7,0xa0,0xc4,0xc8,0x9e,0xea,0xbf,0x8a,0xd2,0x40,0xc7,0x38,0xb5,0xa3,0xf7,0xf2,0xce,0xf9,0x61,0x15,0xa1,0xe0,0xae,0x5d,0xa4,0x9b,0x34,0x1a,0x55,0xad,0x93,0x32,0x30,0xf5,0x8c,0xb1,0xe3,0x1d,0xf6,0xe2,0x2e,0x82,0x66,0xca,0x60,0xc0,0x29,0x23,0xab,0x0d,0x53,0x4e,0x6f,0xd5,0xdb,0x37,0x45,0xde,0xfd,0x8e,0x2f,0x03,0xff,0x6a,0x72,0x6d,0x6c,0x5b,0x51,0x8d,0x1b,0xaf,0x92,0xbb,0xdd,0xbc,0x7f,0x11,0xd9,0x5c,0x41,0x1f,0x10,0x5a,0xd8,0x0a,0xc1,0x31,0x88,0xa5,0xcd,0x7b,0xbd,0x2d,0x74,0xd0,0x12,0xb8,0xe5,0xb4,0xb0,0x89,0x69,0x97,0x4a,0x0c,0x96,0x77,0x7e,0x65,0xb9,0xf1,0x09,0xc5,0x6e,0xc6,0x84,0x18,0xf0,0x7d,0xec,0x3a,0xdc,0x4d,0x20,0x79,0xee,0x5f,0x3e,0xd7,0xcb,0x39,0x48];var mW=[0xa3b1bac6,0x56aa3350,0x677d9197,0xb27022dc];var sr=[0x00070e15,0x1c232a31,0x383f464d,0x545b6269,0x70777e85,0x8c939aa1,0xa8afb6bd,0xc4cbd2d9,0xe0e7eef5,0xfc030a11,0x181f262d,0x343b4249,0x50575e65,0x6c737a81,0x888f969d,0xa4abb2b9,0xc0c7ced5,0xdce3eaf1,0xf8ff060d,0x141b2229,0x30373e45,0x4c535a61,0x686f767d,0x848b9299,0xa0a7aeb5,0xbcc3cad1,0xd8dfe6ed,0xf4fb0209,0x10171e25,0x2c333a41,0x484f565d,0x646b7279];this.gc=function(b,i){return(b[i]&0xff)<<24|((b[i+1]&0xff)<<16)|((b[i+2]&0xff)<<8)|(b[i+3]&0xff)&0xffffffff;};this.iW=function(n,b,i){var ow=(0xFF&(n>>24));var pr=(0xFF&(n>>16));var nJ=(0xFF&(n>>8));var oK=(0xFF&(n));b[i]=ow>128?ow-256:ow;b[i+1]=pr>128?pr-256:pr;b[i+2]=nJ>128?nJ-256:nJ;b[i+3]=oK>128?oK-256:oK;};this.iT=function(x,y){return x<>>(32-y);};this.rD=function(pM){var hv=0;var c=0;var a=new Array(4);var b=new Array(4);this.iW(pM,a,0);b[0]=this.iu(a[0]);b[1]=this.iu(a[1]);b[2]=this.iu(a[2]);b[3]=this.iu(a[3]);hv=this.gc(b,0);c=hv^this.iT(hv,2)^this.iT(hv,10)^this.iT(hv,18)^this.iT(hv,24);return c;};this.uZ=function(ru,x1,x2,gG,mV){return ru^this.rD(x1^x2^gG^mV);};this.sS=function(pM){var hv=0;var mV=0;var a=new Array(4);var b=new Array(4);this.iW(pM,a,0);b[0]=this.iu(a[0]);b[1]=this.iu(a[1]);b[2]=this.iu(a[2]);b[3]=this.iu(a[3]);hv=this.gc(b,0);mV=hv^this.iT(hv,13)^this.iT(hv,23);return mV;};this.iu=function(wZ){var i=wZ&0xFF;var nP=vo[i];return nP>128?nP-256:nP;};this.pH=function(eu,key){if(eu==null){alert("eu is null!");return false;}if(key==null||key.length!=16){alert("key error!");return false;}eu.mode=this.gT;this.qV(eu.gu,key);};this.pO=function(eu,key){if(eu==null){alert("eu is null!");return false;}if(key==null||key.length!=16){alert("key error!");return false;}eu.mode=this.iF;this.qV(eu.gu,key);var i;for(i=0;i<16;i++){this.rW(eu.gu,i);}};this.rW=function(gu,i){var t=gu[i];gu[i]=gu[(31-i)];gu[(31-i)]=t;};this.qV=function(vX,key){var jA=new Array(4);var k=new Array(36);jA[0]=this.gc(key,0);jA[1]=this.gc(key,4);jA[2]=this.gc(key,8);jA[3]=this.gc(key,12);k[0]=jA[0]^mW[0];k[1]=jA[1]^mW[1];k[2]=jA[2]^mW[2];k[3]=jA[3]^mW[3];for(var i=0;i<32;i++){k[(i+4)]=(k[i]^this.sS(k[(i+1)]^k[(i+2)]^k[(i+3)]^sr[i]));vX[i]=k[(i+4)];}};this.padding=function(input,mode){if(input==null){return null;}var el=null;if(mode==this.gT){var p=parseInt(16-input.length%16);el=input.slice(0);for(var i=0;i0;length-=16){var out=new Array(16);var ins=input.slice(i*16,(16*(i+1)));this.pd(eu.gu,ins,out);hu=hu.concat(out);i++;}var output=hu;if(eu.dS&&eu.mode==this.iF){output=this.padding(output,this.iF);}for(var i=0;i0;length-=16){var out=new Array(16);var ip=new Array(16);var ins=input.slice(k*16,(16*(k+1)));for(i=0;i<16;i++){out[i]=(ins[i]^eO[i]);}this.pd(eu.gu,out,ip);eO=ip.slice(0,16);hu=hu.concat(ip);k++;}}else{var qf=[];var k=0;for(;length>0;length-=16){var out=new Array(16);var ip=new Array(16);var ins=input.slice(k*16,(16*(k+1)));qf=ins.slice(0,16);this.pd(eu.gu,ins,out);for(i=0;i<16;i++){ip[i]=(out[i]^eO[i]);}eO=qf.slice(0,16);hu=hu.concat(ip);k++;}}var output=hu;if(eu.dS&&eu.mode==this.iF){output=this.padding(output,this.iF);}for(var i=0;i>>4).toString(16));dv.push((fb[i]&0xF).toString(16));}return dv.join("").toUpperCase();},stringToHex:function(ea){return AostarJS.ef.fc.parse(ea).toString().toUpperCase();},stringToBytes:function(fu){return this.hexToBytes(this.stringToHex(fu));},bytesToString:function(data){var wr=[1,1,1,1,2,2,3,0];var count=data.length;var fu="";for(var index=0;index>3)&0x07];if(!(ch&0x40)|| !extra||((index+extra)>count)){return null;}ch=ch&(0x3F>>extra);for(;extra>0;extra-=1){var qQ=data[index++];if((qQ&0xC0)!=0x80){return null;}ch=(ch<<6)|(qQ&0x3F);}}fu+=String.fromCharCode(ch);}return fu;},asn1HexToArray:function(dw){var jB=dE.kK(dw);return jB;},v_ltd:function(){var word=new AostarJS.jx.eR.dV([-442786843,-1214389064,-1377332043,-443502618,-1735465320,-1612398687,-427708442,-1971263844,-1343841143,-375811867,-2052266609,-1207959552]);var text=word.toString(AostarJS.ef.fc);return text;}};function Sm2Utils(eb){if(typeof(eb)!='undefined'){this.eb=eb;}else{this.eb=CipherMode.C1C2C3;}this.cO=new bO(this.eb);};Sm2Utils.prototype={encryptFromText:function(cv,ea){if(!this.validatePubKeyHex(cv)|| !ea){fj.error("[SM2:encryptFromText]invalid cv fv ea!");return;}if(this.startWith(cv,"04")&&cv.length==130){cv=cv.substr(cv.length-64*2);}var eW=cv.substr(0,64);var fw=cv.substr(64);var gJ=this.cO.iz(eW,fw);var hJ=this.cO.fL(AostarJS.ef.fc.parse(ea).toString());var dw=this.cO.oT(gJ,hJ);return dw.toUpperCase();},decryptToText:function(fa,dw){if(!fa||fa.length<62||fa.length>68){fj.error("[SM2:decryptToText]fa length error!");return;}if(!dw||dw.length%2==1){fj.error("[SM2:decryptToText]invalid dw!");return;}var hh=new K(fa,16);var ga=this.cO.jX(hh,dw);var plainText=AostarJS.ef.fc.stringify(ga);return plainText;},encryptFromHex:function(cv,gL){if(!this.validatePubKeyHex(cv)|| !gL){fj.error("[SM2:encryptFromHex]invalid cv fv gL!");return;}if(this.startWith(cv,"04")&&cv.length==130){cv=cv.substr(cv.length-64*2);}var eW=cv.substr(0,64);var fw=cv.substr(64);var gJ=this.cO.iz(eW,fw);var hJ=this.cO.fL(gL);var dw=this.cO.oT(gJ,hJ);return dw.toUpperCase();},decryptToHex:function(fa,dw){if(!fa||fa.length<62||fa.length>68){fj.error("[SM2:decryptToHex]fa length error!");return;}if(!dw||dw.length%2==1){fj.error("[SM2:decryptToHex]invalid dw!");return;}var hh=new K(fa,16);var ga=this.cO.jX(hh,dw);var gy=AostarJS.ef.hx.stringify(ga);return gy.toUpperCase();},encryptFromData:function(im,gw){var cv=CommonUtils.bytesToHex(im);if(!this.validatePubKeyHex(cv)|| !gw){fj.error("[SM2:encryptFromData]invalid im fv gw!");return;}if(this.startWith(cv,"04")&&cv.length==130){cv=cv.substr(cv.length-64*2);}var eW=cv.substr(0,64);var fw=cv.substr(64);var gJ=this.cO.iz(eW,fw);var hJ=this.cO.fL(CommonUtils.bytesToHex(gw));var dw=this.cO.oT(gJ,hJ);return CommonUtils.hexToBytes(dw);},decryptToData:function(jN,fA){var fa=CommonUtils.bytesToHex(jN);if(!fa||fa.length<62||fa.length>68){fj.error("[SM2:decryptToData]fa length error!");return;}if(!fA){fj.error("[SM2:decryptToData]invalid fA!");return;}var hh=new K(fa,16);var ga=this.cO.jX(hh,CommonUtils.bytesToHex(fA));var gy=AostarJS.ef.hx.stringify(ga);return CommonUtils.hexToBytes(gy);},encryptASN1FromText:function(cv,ea){if(!this.validatePubKeyHex(cv)|| !ea){fj.error("[SM2:encryptASN1FromText]invalid cv fv ea!");return;}if(this.startWith(cv,"04")&&cv.length==130){cv=cv.substr(cv.length-64*2);}var eW=cv.substr(0,64);var fw=cv.substr(64);var gJ=this.cO.iz(eW,fw);var hJ=this.cO.fL(AostarJS.ef.fc.parse(ea).toString());var dw=this.cO.nt(gJ,hJ);return dw.toUpperCase();},decryptASN1ToText:function(fa,dw){if(!fa||fa.length<62||fa.length>68){fj.error("[SM2:decryptASN1ToText]fa length error!");return;}if(!dw||dw.length%2==1){fj.error("[SM2:decryptASN1ToText]invalid dw!");return;}var hh=new K(fa,16);var ga=this.cO.kI(hh,dw);var plainText=AostarJS.ef.fc.stringify(ga);return plainText;},encryptASN1FromHex:function(cv,gL){if(!this.validatePubKeyHex(cv)|| !gL){fj.error("[SM2:encryptASN1FromHex]invalid cv fv gL!");return;}if(this.startWith(cv,"04")&&cv.length==130){cv=cv.substr(cv.length-64*2);}var eW=cv.substr(0,64);var fw=cv.substr(64);var gJ=this.cO.iz(eW,fw);var hJ=this.cO.fL(gL);var dw=this.cO.nt(gJ,hJ);return dw.toUpperCase();},decryptASN1ToHex:function(fa,dw){if(!fa||fa.length<62||fa.length>68){fj.error("[SM2:decryptASN1ToHex]fa length error!");return;}if(!dw||dw.length%2==1){fj.error("[SM2:decryptASN1ToHex]invalid dw!");return;}var hh=new K(fa,16);var ga=this.cO.kI(hh,dw);var gy=AostarJS.ef.hx.stringify(ga);return gy.toUpperCase();},encryptASN1FromData:function(im,gw){var cv=CommonUtils.bytesToHex(im);if(!this.validatePubKeyHex(cv)|| !gw){fj.error("[SM2:encryptASN1FromData]invalid im fv gw!");return;}if(this.startWith(cv,"04")&&cv.length==130){cv=cv.substr(cv.length-64*2);}var eW=cv.substr(0,64);var fw=cv.substr(64);var gJ=this.cO.iz(eW,fw);var hJ=this.cO.fL(CommonUtils.bytesToHex(gw));var dw=this.cO.nt(gJ,hJ);return CommonUtils.hexToBytes(dw);},decryptASN1ToData:function(jN,fA){var fa=CommonUtils.bytesToHex(jN);if(!fa||fa.length<62||fa.length>68){fj.error("[SM2:decryptASN1ToData]fa length error!");return;}if(!fA){fj.error("[SM2:decryptASN1ToData]invalid fA!");return;}var hh=new K(fa,16);var ga=this.cO.kI(hh,CommonUtils.bytesToHex(fA));var gy=AostarJS.ef.hx.stringify(ga);return CommonUtils.hexToBytes(gy);},signFromText:function(eh,ea){var dz=new Aostar.crypto.gn({"cc":"SM3withSM2","cJ":"cryptojs/jsrsa"});dz.jb({'ecprvhex':eh,'eK':"sm2"});dz.eG(ea);var kE=dz.gX();return kE.toUpperCase();},verifySignFromText:function(cv,ea,kF){var dz=new Aostar.crypto.gn({"cc":"SM3withSM2","cJ":"cryptojs/jsrsa"});dz.lA({'ecpubhex':cv,'eK':"sm2"});dz.eG(ea);return dz.fY(kF);},signFromHex:function(eh,gL){var dz=new Aostar.crypto.gn({"cc":"SM3withSM2","cJ":"cryptojs/jsrsa"});dz.jb({'ecprvhex':eh,'eK':"sm2"});dz.eV(gL);var kE=dz.gX();return kE.toUpperCase();},verifySignFromHex:function(cv,gL,kF){var dz=new Aostar.crypto.gn({"cc":"SM3withSM2","cJ":"cryptojs/jsrsa"});dz.lA({'ecpubhex':cv,'eK':"sm2"});dz.eV(gL);return dz.fY(kF);},signFromData:function(jN,gw){var eh=CommonUtils.bytesToHex(jN);var dz=new Aostar.crypto.gn({"cc":"SM3withSM2","cJ":"cryptojs/jsrsa"});dz.jb({'ecprvhex':eh,'eK':"sm2"});dz.eV(CommonUtils.bytesToHex(gw));var kE=dz.gX();return CommonUtils.hexToBytes(kE);},verifySignFromData:function(im,gw,vN){var cv=CommonUtils.bytesToHex(im);var kF=CommonUtils.bytesToHex(vN);var dz=new Aostar.crypto.gn({"cc":"SM3withSM2","cJ":"cryptojs/jsrsa"});dz.lA({'ecpubhex':cv,'eK':"sm2"});dz.eV(CommonUtils.bytesToHex(gw));return dz.fY(kF);},randomWord:function(fC){var fu="";var gI=['0','1','2','3','4','5','6','7','8','9','a','b','c','d','e','f','g','h','i','j','k','l','m','n','o','p','q','r','s','t','u','v','w','x','y','z','A','B','C','D','E','F','G','H','I','J','K','L','M','N','O','P','Q','R','S','T','U','V','W','X','Y','Z','~','!','@','#','$','%','^','&','*','(',')','_'];for(var i=0;i2?(arguments[2]==true):true;var ho=this.encryptFromData(gi,eo,padding);return CommonUtils.bytesToHex(ho);},encryptFromHex:function(gy,fd,dS){if(!fd||fd.length!=32){fj.error("[SM4_ECB:encryptFromHex]fd empty fv length error!");return;}var gi=CommonUtils.hexToBytes(gy);var eo=CommonUtils.hexToBytes(fd);var padding=arguments.length>2?(arguments[2]==true):true;var ho=this.encryptFromData(gi,eo,padding);return CommonUtils.bytesToHex(ho);},encryptFromData:function(gi,eo,dS){if(!eo||eo.length!=16){fj.error("[SM4_ECB:encryptFromData]eo empty fv length error!");return;}var padding=arguments.length>2?(arguments[2]==true):true;try{var fB=new aU();var eu=new aR();eu.dS=padding;eu.mode=fB.gT;fB.pH(eu,eo);var ho=fB.pz(eu,gi);return ho;}catch(e){fj.error(e);return null;}},decryptToText:function(dw,fd,dS){if(!fd||fd.length!=32){fj.error("[SM4_ECB:decryptToText]fd empty fv length error!");return;}if(!dw||dw.length%2==1){fj.error("[SM4_ECB:decryptToText]dw empty fv length error!");return;}var fA=CommonUtils.hexToBytes(dw);var eo=CommonUtils.hexToBytes(fd);var padding=arguments.length>2?(arguments[2]==true):true;var gU=this.decryptToData(fA,eo,padding);return CommonUtils.bytesToString(gU);},decryptToHex:function(dw,fd,dS){if(!fd||fd.length!=32){fj.error("[SM4_ECB:decryptToHex]fd empty fv length error!");return;}if(!dw||dw.length%2==1){fj.error("[SM4_ECB:decryptToHex]dw empty fv length error!");return;}var fA=CommonUtils.hexToBytes(dw);var eo=CommonUtils.hexToBytes(fd);var padding=arguments.length>2?(arguments[2]==true):true;var gU=this.decryptToData(fA,eo,padding);return CommonUtils.bytesToHex(gU);},decryptToData:function(fA,eo,dS){if(!eo||eo.length!=16){fj.error("[SM4_ECB:decryptToData]eo empty fv length error!");return;}if(!fA||fA.length%2==1){fj.error("[SM4_ECB:decryptToData]fA empty fv length error!");return;}var padding=arguments.length>2?(arguments[2]==true):true;try{var fB=new aU();var eu=new aR();eu.dS=padding;eu.mode=fB.iF;fB.pO(eu,eo);var gU=fB.pz(eu,fA);return gU;}catch(e){fj.error(e);return null;}}},CBC:{encryptFromText:function(plainText,fd,dZ,dS){if(!fd||fd.length!=32){fj.error("[SM4_CBC:encryptFromText]fd empty fv length error!");return;}if(!dZ||dZ.length!=32){fj.error("[SM4_CBC:encryptFromText]dZ empty fv length error!");return;}var gi=CommonUtils.stringToBytes(plainText);var eo=CommonUtils.hexToBytes(fd);var eL=CommonUtils.hexToBytes(fd);var padding=arguments.length>3?(arguments[3]==true):true;var ho=this.encryptFromData(gi,eo,eL,padding);return CommonUtils.bytesToHex(ho);},encryptFromHex:function(gy,fd,dZ,dS){if(!fd||fd.length!=32){fj.error("[SM4_CBC:encryptFromHex]fd empty fv length error!");return;}if(!dZ||dZ.length!=32){fj.error("[SM4_CBC:encryptFromHex]dZ empty fv length error!");return;}var gi=CommonUtils.hexToBytes(gy);var eo=CommonUtils.hexToBytes(fd);var eL=CommonUtils.hexToBytes(fd);var padding=arguments.length>3?(arguments[3]==true):true;var ho=this.encryptFromData(gi,eo,eL,padding);return CommonUtils.bytesToHex(ho);},encryptFromData:function(gi,eo,eL,dS){if(!eo||eo.length!=16){fj.error("[SM4_CBC:encryptFromData]eo empty fv length error!");return;}if(!eL||eL.length!=16){fj.error("[SM4_CBC:encryptFromData]eL empty fv length error!");return;}var padding=arguments.length>3?(arguments[3]==true):true;try{var fB=new aU();var eu=new aR();eu.dS=padding;eu.mode=fB.gT;fB.pH(eu,eo);var ho=fB.pS(eu,eL,gi);return ho;}catch(e){fj.error(e);return null;}},decryptToText:function(dw,fd,dZ,dS){if(!fd||fd.length!=32){fj.error("[SM4_CBC:decryptToText]fd empty fv length error!");return;}if(!dZ||dZ.length!=32){fj.error("[SM4_CBC:decryptToText]dZ empty fv length error!");return;}if(!dw||dw.length%2==1){fj.error("[SM4_CBC:decryptToText]dw empty fv length error!");return;}var fA=CommonUtils.hexToBytes(dw);var eo=CommonUtils.hexToBytes(fd);var eL=CommonUtils.hexToBytes(fd);var padding=arguments.length>3?(arguments[3]==true):true;var gU=this.decryptToData(fA,eo,eL,padding);return CommonUtils.bytesToString(gU);},decryptToHex:function(dw,fd,dZ,dS){if(!fd||fd.length!=32){fj.error("[SM4_CBC:decryptToHex]fd empty fv length error!");return;}if(!dZ||dZ.length!=32){fj.error("[SM4_CBC:decryptToHex]dZ empty fv length error!");return;}if(!dw||dw.length%2==1){fj.error("[SM4_CBC:decryptToHex]dw empty fv length error!");return;}var fA=CommonUtils.hexToBytes(dw);var eo=CommonUtils.hexToBytes(fd);var eL=CommonUtils.hexToBytes(fd);var padding=arguments.length>3?(arguments[3]==true):true;var gU=this.decryptToData(fA,eo,eL,padding);return CommonUtils.bytesToHex(gU);},decryptToData:function(fA,eo,eL,dS){if(!eo||eo.length!=16){fj.error("[SM4_CBC:decryptToData]eo empty fv length error!");return;}if(!eL||eL.length!=16){fj.error("[SM4_CBC:decryptToData]eL empty fv length error!");return;}if(!fA||fA.length%2==1){fj.error("[SM4_CBC:decryptToData]fA empty fv length error!");return;}var padding=arguments.length>3?(arguments[3]==true):true;try{var fB=new aU();var eu=new aR();eu.dS=padding;eu.mode=fB.gT;fB.pO(eu,eo);var gU=fB.pS(eu,eL,fA);return gU;}catch(e){fj.error(e);return null;}}}};