我的密码的加密方法: (详细讲解)(处理溢出问题)(对象入门者))
发表时间:2024-01-21 来源:明辉站整理相关软件相关文章人气:
[摘要]我的密码的加密方法:首先写一个加密函数encrypt(str):<%function encrypt(str) Dim i,c,length,texts,seed length = len(str) texts = "" ...
我的密码的加密方法:
首先写一个加密函数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
就这么简单^^
算法可以根据自己喜好自己改