|
马上注册,结交更多好友,享用更多功能,让你轻松玩转社区。
您需要 登录 才可以下载或查看,没有帐号?立即注册
x
专业性的服务。有的ASP商提供垂直型的应用服务,针对某一特定行业提供应用服务。程序|考证码原程序
http://vifo.vicp.net:8088/datalib/ShowTopic.asp?id=108:10:1:1
主程序共三个
我的挪用体例<scriptlanguage="javascript"src="/verify/num.asp"></script>
考证体例iftrim(Loginnum)trim(session("Loginnum"))then
Response.WriteError("考证码毛病!")
Response.End
endif
num.asp
<%
###Toencrypt/decryptincludethiscodeinyourpage
###strMyEncryptedString=EncryptString(strString)
###strMyDecryptedString=DeCryptString(strMyEncryptedString)
###Youarefreetousethiscodeaslongascreditsremaininplace
###alsoifyouimprovethiscodeletmeknow.
PrivateFunctionEncryptString(strString)
####################################################################
###CryptFunction?2001bySlavicKozyukgrindkore@yahoo.com###
###Arguments:strString<---Stringyouwishtoencrypt###
###Output:EncryptedHEXstring###
####################################################################
DimCharHexSet,intStringLen,strTemp,strRAW,I,intKey,intOffSet
RandomizeTimer
intKey=Round((RND*1000000)+1000000)#####KeyBitsize
intOffSet=Round((RND*1000000)+1000000)#####KeyOffSetBitsize
IfIsNull(strString)=FalseThen
strRAW=strString
intStringLen=Len(strRAW)
Fori=0tointStringLen-1
strTemp=Left(strRAW,1)
strRAW=Right(strRAW,Len(strRAW)-1)
CharHexSet=CharHexSet&Hex(Asc(strTemp)*intKey)&Hex(intKey)
Next
EncryptString=CharHexSet&"|"&Hex(intOffSet+intKey)&"|"&Hex(intOffSet)
Else
EncryptString=""
EndIf
EndFunction
PrivateFunctionDeCryptString(strCryptString)
####################################################################
###CryptFunction?2001bySlavicKozyukgrindkore@yahoo.com###
###Arguments:EncryptedHEXstringt###
###Output:DecryptedASCIIstring###
####################################################################
###NotethisfunctionusesHexConv()andget_hxno()functions###
###somakesuretheyarenotremoved###
####################################################################
DimstrRAW,arHexCharSet,I,intKey,intOffSet,strRawKey,strHexCrypData
strRawKey=Right(strCryptString,Len(strCryptString)-InStr(strCryptString,"|"))
intOffSet=Right(strRawKey,Len(strRawKey)-InStr(strRawKey,"|"))
intKey=HexConv(Left(strRawKey,InStr(strRawKey,"|")-1))-HexConv(intOffSet)
strHexCrypData=Left(strCryptString,Len(strCryptString)-(Len(strRawKey)+1))
arHexCharSet=Split(strHexCrypData,Hex(intKey))
Fori=0toUbound(arHexCharSet)
strRAW=strRAW&Chr(HexConv(arHexCharSet(i))/intKey)
Next
DeCryptString=strRAW
EndFunction
PrivateFunctionHexConv(hexVar)
Dimhxx,hxx_var,multiply
IFhexVar""THEN
hexVar=UCASE(hexVar)
hexVar=StrReverse(hexVar)
DIMhx()
REDIMhx(LEN(hexVar))
hxx=0
hxx_var=0
FORhxx=1TOLEN(hexVar)
IFmultiply=""THENmultiply=1
hx(hxx)=mid(hexVar,hxx,1)
hxx_var=(get_hxno(hx(hxx))*multiply)+hxx_var
multiply=(multiply*16)
NEXT
hexVar=hxx_var
HexConv=hexVar
ENDIF
EndFunction
PrivateFunctionget_hxno(ghx)
Ifghx="A"Then
ghx=10
ElseIfghx="B"Then
ghx=11
ElseIfghx="C"Then
ghx=12
ElseIfghx="D"Then
ghx=13
ElseIfghx="E"Then
ghx=14
ElseIfghx="F"Then
ghx=15
EndIf
get_hxno=ghx
EndFunction
randomize
num=int(7999*rnd+2000)计数器的值
num2=EncryptString(num)
session("Loginnum")=num
%>
document.write("<imgsrc=/verify/count.asp?sksid=<%=num2%>>")这里是挪用图片的路径
count.asp
<!--#includefile="numimg.asp"-->
<%
###Toencrypt/decryptincludethiscodeinyourpage
###strMyEncryptedString=EncryptString(strString)
###strMyDecryptedString=DeCryptString(strMyEncryptedString)
###Youarefreetousethiscodeaslongascreditsremaininplace
###alsoifyouimprovethis</p>源代码保护方面其实现在考虑得没那么多了..NET也可以反编译.ASP写得复杂的话别人能看得懂的话.他也有能力自己写了.这方面担心的倒不太多.纵观现在网上可以下载的那些所谓BBS还有什么网站等等的源代码 |
|