asp:我的密码的加密方法全面分析

来源:ChinaITLab 收集整理 作者: 2007-12-07 出处:pcdog.com

加密  

  我的密码的加密方法:
  首先写一个加密函数encrypt(str):
  <%
  function  encrypt(str)
  Dim i,c,length,texts,seed
  length = len(str)
  texts = ""
  for i = 1 to length
  c = mid(str,i,length)
  seed=Asc(c)
  if seed >ASC("hh") then //
  seed=seed-15      //防止溢出问题
  end if         //
  seed=i+length+seed
  texts = texts & chr(seed)
  next
  texts = texts & mid(str,length,length)
  encrypt =texts
  end function
  %>
  
  上面用的vbscript函数:
  len(str) 返回字符串中的字符数目
  Asc() 返回每一个字符串首字母的 ANSI 字符代码
  Chr() 函数返回与指定的字符代码相对应的字符
  mid(str,i,length)返回字符串str中从第i个字符开始的length个字符
  
  另外再输入密码那个环节,用js控制只能输入
  ABCDEFGHIJKLMNOPQRSTUVWXYZabcdefghijklmnopqrstuvwxyz0123456789
  并限制数落密码长度,12应该可以了吧
  
  实现函数
  function CharsInBag (s, bag)
  {
  var i;
  for (i = 0; i < s.length; i++)
  {
  var c = s.charAt(i);  //提取字符串中的字符
  if (bag.indexOf(c) == -1) return false;
  }
  return true;
  }
  
  写数据的时候前面:
  
  password =encrypt(request("password"))
  password =replace(password,"'","''") 防止可怕的'
  
  效果
  密码: 1111
  加密后密码: 789:;1
  密码: 00zzzzzzzz
  加密后密码: ;  
  就这么简单^^
  算法可以根据自己喜好自己改
更多内容请看PCdog.com--电脑密码设置手册专题
上一篇:ASP漏洞全接触---进阶篇
下一篇:解析ASP中五种连接数据库的方法