一个简单的加密/解密方法

王朝other·作者佚名  2006-01-09
窄屏简体版  字體: |||超大  

Private Function EncryptString(strString)

Dim CharHexSet, intStringLen, strTemp, strRAW, i, intKey, intOffSet

Randomize Timer

intKey = Round((RND * 1000000) + 1000000) '##### Key Bitsize

intOffSet = Round((RND * 1000000) + 1000000) '##### KeyOffSet Bitsize

If IsNull(strString) = False Then

strRAW = strString

intStringLen = Len(strRAW)

For i = 0 to intStringLen - 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 = ""

End If

End Function

Private Function DecryptString(strCryptString)

Dim strRAW, 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))

For i=0 to UBound(arHexCharSet)

strRAW = strRAW & Chr(HexConv(arHexCharSet(i))/intKey)

Next

DecryptString = strRAW

End Function

Private Function HexConv(hexVar)

Dim hxx, hxx_var, multiply

IF hexVar <> "" THEN

hexVar = UCASE(hexVar)

hexVar = StrReverse(hexVar)

DIM hx()

REDIM hx(LEN(hexVar))

hxx = 0

hxx_var = 0

FOR hxx = 1 TO LEN(hexVar)

IF multiply = "" THEN multiply = 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

END IF

End Function

Private Function get_hxno(ghx)

If ghx = "A" Then

ghx = 10

ElseIf ghx = "B" Then

ghx = 11

ElseIf ghx = "C" Then

ghx = 12

ElseIf ghx = "D" Then

ghx = 13

ElseIf ghx = "E" Then

ghx = 14

ElseIf ghx = "F" Then

ghx = 15

End If

get_hxno = ghx

End Function

 
 
 
免责声明:本文为网络用户发布,其观点仅代表作者个人观点,与本站无关,本站仅提供信息存储服务。文中陈述内容未经本站证实,其真实性、完整性、及时性本站不作任何保证或承诺,请读者仅作参考,并请自行核实相关内容。
 
 
© 2005- 王朝網路 版權所有 導航