ASP代码一般是明文,很少有加密的,MS有个工具Script Encoder可以加密,这个东东可以微软官方网站免费下载,而且还有详细使用说明,但是经过它加密后的文件会有<%@ language = vbscript.encode %>,管理员看到这句话就知道这个asp文件被加密了。而且也有相关的解密文件。
本文提供一种简单的方法,可以加密ASP代码,主要思路是将代码做些运算,比如将全部代码移动一位,基本上就算加密了,主要的加解密函数如下:
function UnEncode(temp)
but=1
for i =1 to len(temp)
if mid(temp,i,1)<>"汤" then
pk=asc(mid(temp,i,1))-but
if pk>126 then
pk=pk-95
elseif pk<32 then
pk=pk+95
end if
a=a&chr(pk)
else
a=a&vbcrlf
end if
next
UnEncode=a
end function
function Encode(temp)
but=1
cc=replace(temp,vbcrlf,"汤")
for i= 1 to len(cc)
if mid(cc,i,1)<>"汤" then
pk=asc(mid(cc,i,1))+but
if pk>126 then
pk=pk-95
elseif pk<32 then
pk=pk+95
end if
a=a&chr(pk)
else
a=a&"汤"
end if
next
’a=replace(a,"""","""""")
Encode=a
end function
在开发的时候,通常将关键ASP代码Encode,再使用Excute(Uncode(ipaddr))执行就可以了。这样管理员一般不能直接看到关键代码,一般在程序里不要带上Encode函数,只在开发的时候使用,此外,UnEncode也可以改成其它函数名。
这种方式加密比较简单,解密也很容易。