Здравствуйте Уважаемые, этот скрибт попал мне стлучайно и немогу разобратса. Нужен ключ для входа, попробивал (alert)-ами выводить значения переменных, но безтолку, заворот с математикой, да и 15-ти кратное кадирование. ПОМОГИТЕ ЧЕМ МОЖЕТЕ. Спосибо зарание. | Код | <!--Password//--> <HTML> <head> <TITLE>Restricted Area</title> <meta http-equiv="expires" content="-1"> <meta http-equiv="pragma" content="no-cache"> <script> <!-- var checkpass='' tell=0 counttimes=0 disComp=0
function preferences(encryptpass,encryptdepth,what,dis){ disComp=dis tell=0 tell=what checkpass='' counttimes=0 times=encryptdepth checkpass=encryptpass orig='' this.check=mkasci }
bases=new Array(17,33,57,101); var acharset='23CDWEFGlmwtuvg01xXYZNOhijkVWHIJ45ncdefMyzopqPQRSTUABKL6789abrs' var storeup='';
function mkasci(orig){ if(counttimes==0){storeup=orig} ascival=new Array() for(i=0;i<=orig.length-1;i++){ for(i1=0;i1<=acharset.length;i1++){ if(orig.charAt(i)==acharset.charAt(i1)){ ascival[i]=i1 } } } themeat(ascival) }
function cutoff(code){ eval("var whatcode='"+code+"'"); eval("var whatcode2='"+Math.ceil(code)+"'"); bigVal=(Math.pow(10,whatcode.length-(whatcode2.length)-2)<1)?1:Math.pow(10,whatcode.length-(whatcode2.length)-2); whatcode3=Math.round(code*bigVal)/bigVal return(whatcode3) }
function themeat(basecode){ if(basecode.length>=4){ counttimes++ if(disComp==1){ window.status="Computating encryption level "+counttimes+"/"+times } newcode=0 finalcode=1 for(count=0;count!=basecode.length;count++){ newcode=(basecode[(count<(basecode.length-1))?count+1:count-2]+(basecode[count]*bases[2])*(2.303)+basecode[Math.round(((basecode.length-1)*((Math.atan(basecode[(count!=0)?count-1:count+1])*basecode.length)+2*bases[0]))/100)]+1) newcode=cutoff(newcode) newcode=(newcode>basecode[Math.round(basecode.length/2)])?newcode-=bases[3]:newcode+=bases[3] finalcode=cutoff(((newcode/10)*finalcode)/(basecode.length-bases[0])) } var deconstruct='' eval('var finalcode="'+(finalcode+times)+'"'); for(count=0;count<finalcode.length;count++){ if(!isNaN(finalcode.charAt(count))){ deconstruct=deconstruct+finalcode.charAt(count) } } finalcode=deconstruct var encrypt=new Array() for(count=2;count<finalcode.length+2;count+=2){ eval("encrypt["+((count/2)-1)+"]='"+((finalcode.charAt(count-2)!='0')?finalcode.charAt(count-2):'')+""+finalcode.charAt(count-1)+"'") encrypt[((count/2)-1)]=acharset.charAt(Math.round((acharset.length*encrypt[((count/2)-1)])/100)) } encrypt=encrypt.join('') if(counttimes<times){mkasci(encrypt)} else { counttimes=0 if(encrypt==checkpass&&tell==0){alert('OK');location.replace(storeup+encrypt.substring(0,5)+".html"); } else { if(tell==1){document.write("<B>"+storeup+"</B> is encrypted as <B>"+encrypt+"</B>"); } else { alert('bad pass'); } } } } else { alert('bad pass');
} } // Password=new ïðåäïî÷òåíèå (1,2,3,4); // 1) çàøèôðîâàííûé ïàðîëü â êàâû÷êàõ // 2) óðîâåíü Øèôðîâàíèé // 3) 0:program áóäåò ôóíêöèîíèðîâàòü êàê ïðîãðàììà ïàðîëÿ. 1:program çàøèôðóåò ïàðîëü, êîòîðûé Âû ââîäèòå // 4) 0:will íå îòîáðàæàþò íè÷òî. 1:will îòîáðàæàþò encrpytion computation //-->
password=new preferences('ja01xkCU',15,0,1); var enter=''; while(enter.length<4){ enter=prompt('Ââåäèòå Ïàðîëü',''); if(!enter){enter=' '} } password.check(enter); </SCRIPT>
|
|