当前位置: 首页 > 图文教程 > 网络编程 > ASP > 如何用asp进行base64加密

ASP
编写通用的asp防注入程序
vbs(asp)下的Function 语句
ASP中类Class相关内容的整理资料
字符批量替换程序asp服务器版
旁注-网站小助手旭方修改免杀asp版
用正则表达式写的HTML分离函数
asp中"无限流"分页程序代码
asp的一个日期格式化函数
asp中创建多级目录的两段代码
asp中去除内容HTML标签的三个function函数
chr(9)、chr(10)、chr(13)、chr(32)、chr(34)讲解
方便的大家admin及admin888 经过 md5加密后16位和32位代码
可用的ASP无重复数字随机函数, 数组实现, 并应用于随机显示记录集
asp动态级联菜单代码
ASP中经常使用的SQL语句与教程说明
实例分析之用ASP编程实现网络内容快速查找的代码
服务端 VBScript 与 JScript 几个相同特性的写法与示例
ASP 环境下 VBS 事件应用 示例代码
asp 之上传漏洞终结篇
asp中一段防SQL注入的通用脚本

ASP 中的 如何用asp进行base64加密


出处:互联网   整理: 软晨网(RuanChen.com)   发布: 2009-11-03   浏览: 234 ::
收藏到网摘: n/a

  <%
     OPTION EXPLICIT
     const BASE_64_MAP_INIT =
"ABCDEFGHIJKLMNOPQRSTUVWXYZabcdefghijklmnopqrstuvwxyz0123456789+/"
     dim nl
     ' zero based arrays
     dim Base64EncMap(63)
     dim Base64DecMap(127)

     ' must be called before using anything else
     PUBLIC SUB initCodecs()
          ' init vars
          nl = "<P>" & chr(13) & chr(10)
          ' setup base 64
          dim max, idx
             max = len(BASE_64_MAP_INIT)
          for idx = 0 to max - 1
               ' one based string
               Base64EncMap(idx) = mid(BASE_64_MAP_INIT, idx + 1, 1)
          next
          for idx = 0 to max - 1
               Base64DecMap(ASC(Base64EncMap(idx))) = idx
          next
     END SUB

     ' encode base 64 encoded string
     PUBLIC FUNCTION base64Encode(plain)

          if len(plain) = 0 then
               base64Encode = ""
               exit function
          end if

          dim ret, ndx, by3, first, second, third
          by3 = (len(plain) \ 3) * 3
          ndx = 1
          do while ndx <= by3
               first  = asc(mid(plain, ndx+0, 1))
               second = asc(mid(plain, ndx+1, 1))
               third  = asc(mid(plain, ndx+2, 1))
               ret = ret & Base64EncMap(  (first \ 4) AND 63 )
               ret = ret & Base64EncMap( ((first * 16) AND 48) + ((second \ 16)
AND 15 ) )
               ret = ret & Base64EncMap( ((second * 4) AND 60) + ((third \ 64)
AND 3 ) )
               ret = ret & Base64EncMap( third AND 63)
               ndx = ndx + 3
          loop
          ' check for stragglers
          if by3 < len(plain) then
            &