2 fenglinstudio fenglinstudio 于 2016.04.10 21:52 提问

谁能讲解一下这个代码中脚本的详细作用

为什么我没看明白密码和脚本的关联性




<head>
<SCRIPT LANGUAGE="JavaScript">
<!-- Hide
al="`1234567890-=~!@#$%^&*()_+qwer"
+"tyuiop[]QWERTYUIOP{}|asdfghjkl;A"
+"SDFGHJKL:zxcvbnm,./ZXCVBNM<>?";
ab1="";
bctr=0;
function ckPwd(){
 tst=document.isn.username.value
 +"*"+document.isn.passwrd.value+"*";
 ls=document.pd.pe.value;
 a=eval(ls.substring(0,2))-91;
 ls=ls.substring(2,ls.length);
 nls="";
 flg=0;
 while (ls.length>12){
  ab=eval(ls.substring(0,2))-89;
  ab1=(ab1==""?""+ab:ab1);
  oab1=ab1;
  ls=ls.substring(2,ls.length);
  for (var i=0;i<ab;i++){
   nr=eval(ls.substring(0,2))-a;
   ls=ls.substring(2,ls.length);
   nls+=al.charAt(nr);
   }
  nls+="*";
  if (nls.indexOf(tst)>-1){
   ls="";
   flg=1;
   }
  }
 if (flg==1){
  tstOk();
  }
 else{
  bctr++;
  if (bctr>3){
   location.href="nopass.htm";
   }
  else{
   alert("对不起,用户名/密码错误."
   +" 你已试登录"+bctr+"次.");
   }
  }
 }

function tstOk(){
 ab1=ab1+""+a;
  alert("正确,开始登录!");
  location.href="pwds.htm?"+ab1;
 }


// End Hiding -->
</SCRIPT>



<body>
<FORM NAME="pd">
<!-- Paste the element from the pseudo-encrypter here -->
<!-- Paste this element into your script -->
<INPUT TYPE='hidden' NAME='pe' VALUE='9393693658789606190557772053938953313395586858685868976834793758313033975834793758313033 '>
</FORM>


<FORM NAME="isn">
<TABLE BORDER=2 CELLPADDING=5 CELLSPACING=0 BGCOLOR=BLUE>
<TR><TD COLSPAN=2 ALIGN=CENTER><FONT SIZE=4 COLOR=WHITE FACE="楷体_GB2312"><B>请您输入</B></FONT></TD></TR>
<TR><TD><FONT SIZE=3 COLOR=WHITE><B>UserName:</B></FONT></TD>
<TD><INPUT TYPE="text" NAME="username" VALUE="" SIZE=10></TD></TR>
<TR><TD><FONT SIZE=3 COLOR=WHITE><B>Password:</B></FONT></TD>
<TD><INPUT TYPE="password" NAME="passwrd" VALUE="" SIZE=10></TD></TR>
<TR><TD COLSPAN=2 ALIGN=CENTER><INPUT TYPE="button" NAME="btn" VALUE=" 登录 " onClick="ckPwd();return false;"></TD></TR>
</TABLE></FORM>
<TABLE BORDER=1 WIDTH=486>
<TR><TD COLSPAN=3 ALIGN=CENTER><FONT FACE="楷体_GB2312"><B>你可以使用如下号码:</B></FONT></TD</TR>

<TR><TD><FONT FACE="helvetica,arial,geneva">User Name:John<BR>Password: 4$3gb%a</TD>
<TD><FONT FACE="helvetica,arial,geneva">User Name: Mary<BR>Password: hHhHhH</TD>
<TD><FONT FACE="helvetica,arial,geneva">User Name: Humphrey<BR>Password: humphrey</TD></TR>
</TABLE>


2个回答

caozhy
caozhy   Ds   Rxr 2016.04.10 21:56
已采纳

使用自己的算法在本地对用户名密码验证。

fenglinstudio
fenglinstudio 虽然说得不是我希望的那么细致,但是毕竟是正确的,还是采纳了吧
2 年多之前 回复
hxcm_net
hxcm_net   2016.04.10 22:36

在客户端对用户名密码字符做些算法,需要后台配合验证

Csdn user default icon
上传中...
上传图片
插入图片
准确详细的回答,更有利于被提问者采纳,从而获得C币。复制、灌水、广告等回答会被删除,是时候展现真正的技术了!
其他相关推荐
python语言特性及面试知识点总结
python特性总结
通俗易懂的讲解二极管三极管工作原理
本文转自:https://www.zhihu.com/question/25032358https://blog.csdn.net/a10615/article/details/51627619先讲解二极管工作原理:白话文讲解这个确实不是一两句话说得清的,但是我还是想挑战一下自己的文字功底。尽量不用太理论化的陈述。话说世界上有种神奇的物质叫“半导体”。这个题主肯定知道了。半导体我们通常使用的是硅。...
java冒泡排序详解
冒泡排序详解
javascript ppt脚本详细讲解
javascript ppt 脚本 详细讲解 javascript ppt 脚本 详细讲解 javascript ppt 脚本 详细讲解 javascript ppt 脚本 详细讲解
MapReduce 的过程详解
从整体上,mapreduce 框架可以分为五个不同实体: 1)客户端:提交 MapReduce job。 2)Yarn 资源管理器(resource manager):协调集群计算资源的分配 3)Yarn 节点管理器(node manager):启动和监视集群中每个节点的计算容器。 4)Mapreduce
spring的IOC和AOP详细讲解
1.解释spring的ioc? 几种注入依赖的方式?spring的优点?        IOC你就认为他是一个生产和管理bean的容器就行了,原来需要在调用类中new的东西,现在都是有这个IOC容器进行产生,同 时,要是产生的是单例的bean,他还可以给管理bean的生命周期!         spring的IOC有三种注入方式 :                第一是根据属性注入 也叫
冒泡排序算法 Java 实现过程及详解
冒泡排序(Bubble Sort)是一种简单的排序算法。它重复地走访过要排序的数列,一次比较两个元素,如果他们的顺序错误就把他们交换过来。走访数列的工作是重复地进行直到没有再需要交换,也就是说该数列已经排序完成。这个算法的名字由来是因为越小的元素会经由交换慢慢“浮”到数列的顶端。   冒泡排序算法的运作如下:  比较相邻的元素。如果第一个比第二个大,就交换他们两个。 对每一对相邻元素作同样
Java中集合大全解析
本文仅分析部分原理和集合类的特点,不分析源码,旨在对java的集合类有一个整体的认识,理解各个不同类的关联和区别,让大家在不同的环境下学会选择不同的类来处理。Java中的集合类包含的内容很多而且很重要,很多数据的存储和处理(排序,去重,筛选等)都需要通过集合类来完成。首先java中集合类主要有两大分支:(1)Collection (2)Map先看它们的类图:(1)Collection(2)Map
java中最常用的集合 详细讲解
/**我这只讲 ListArray ,ListedList,HashMap//ListArray 它是一个实现了List接口的类 ,List继承collection接口//调用import java.util.ArrayList包,(这里两者任选其一) 完整的java集合存放在java.util包中//特点: 1>.List是有序的集合 2>.List可以有重复的元素值3>.使用索引来精确的访问元
pid自动控制原理
PID详细讲解,P的作用,I的作用,D的作用,详细讲解。