我的密码的加密方法: (详细讲解)(解决溢出问题)(对象初学者))
发表于:2007-06-30来源:作者:点击数:
标签:
我的密码的加密方法: 首先写一个加密函数encrypt(str): % functionencrypt(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//
我的密码的加密方法:
首先写一个加密函数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
加密后密码: ;<xyz{|}~z
就这么简单^^
算法可以根据自己喜好自己改
原文转自:http://www.ltesting.net