您的位置:首页技术开发ASP技巧 → 纯猝使用VBScript来实现加密

纯猝使用VBScript来实现加密

时间:2004/11/7 4:11:00来源:本站整理作者:蓝点我要评论(0)

<%

'### To encrypt/decrypt include this code in your page

'### strMyEncryptedString = EncryptString(strString)

'### strMyDecryptedString = DeCryptString(strMyEncryptedString)

'### You are free to use this code as long as credits remain in place

'### also if you improve this code let me know.



Private Function EncryptString(strString)

'####################################################################

'### Crypt Function (C) 2001 by Slavic Kozyuk grindkore@yahoo.com ###

'### Arguments: strString <--- String you wish to encrypt         ###

'### Output: Encrypted HEX string                                 ###

'####################################################################



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)

'####################################################################

'### Crypt Function (C) 2001 by Slavic Kozyuk grindkore@yahoo.com ###

'### Arguments: Encrypted HEX stringt                  ###

'### Output: Decrypted ASCII string                               ###

'####################################################################

'### Note this function uses HexConv() and get_hxno() functions   ###

'### so make sure they are not removed            

    ###

'####################################################################



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

  



%>


相关阅读 Windows错误代码大全 Windows错误代码查询激活windows有什么用Mac QQ和Windows QQ聊天记录怎么合并 Mac QQ和Windows QQ聊天记录Windows 10自动更新怎么关闭 如何关闭Windows 10自动更新windows 10 rs4快速预览版17017下载错误问题Win10秋季创意者更新16291更新了什么 win10 16291更新内容windows10秋季创意者更新时间 windows10秋季创意者更新内容kb3150513补丁更新了什么 Windows 10补丁kb3150513是什么

文章评论
发表评论

热门文章 没有查询到任何记录。

最新文章 VB.NET 2005编写定时关 Jquery get/post下乱码解决方法 前台gbk gb如何使用数据绑定控件显示数据ASP脚本循环语句ASP怎么提速

人气排行 轻松解决"Server Application Error"和iis"一起学习DataGridView调整列宽用ASP随机生成文件名的函数Jquery get/post下乱码解决方法 前台gbk gbODBC Drivers错误80004005的解决办法返回UPDATE SQL语句所影响的行数的方法用Javascript隐藏超级链接的真实地址两个不同数据库表的分页显示解决方案