返回列表 发帖

[原创文章] ASP编写的加密和解密类

class Base64Class5 Y+ d" P9 \0 L
  rem Const ) ^4 v2 K" {# h  J# `9 Y; x
  dim sBASE_64_CHARACTERS'转化码
0 a" R+ O7 C% d: {  R0 s1 g  dim lenString '计算字符串的长度
! Z1 S% K1 w2 }. L  dim iCount '计数器 7 I8 u( K: G& O2 \
  dim returnValue '返回值
; ^2 Q/ J8 W' ]# ?  dim tempChar'缓存字符 3 J: C( ~: ~; x" {
  dim tempString'缓存字符串 + e9 P! n$ X0 j: Q) z6 P: ?* h
  dim paramString '参数字符串 5 ]3 z6 `6 M% A) l8 V- b2 {
  dim temHex'缓存缓存十六进制 $ S/ R" c* k: H' x0 l
  dim tempLow'缓存低位
: m  T3 e6 N: ^  dim tempHigh'缓存高位 6 j& V% I5 u6 p7 M7 N4 K
  dim mod3String'
5 B. b! k0 b" ?% H3 Z7 t% r  dim mod4String' # r& u4 q) m& L! |0 r0 {4 j
  dim tempBinary'
; ]) T# _6 L4 k% `/ U  dim tempByteOne'
' k* }, K) P$ h" w  dim tempByteTwo'
( a7 V3 i+ S/ ^9 S  dim tempByteThree' % D5 D. I  o3 s$ Y; F
  dim tempByteFour' - ~1 J% Z0 C% g/ ~
  dim tempSaveBitsOne'
5 F- \3 ]6 R% n6 ?% L  dim tempSaveBitsTwo'
6 N; R1 b9 A: f# H) T2 Y. w. z  '********************************************- ], p( @3 k+ Y$ _! R" ]) S
  'begin初始化类
; \9 W; ?8 B, G/ v+ B) _  '********************************************
$ i, q( t3 ]4 h! a/ K0 d1 |  private sub Class_Initialize()   G+ g/ E" T0 A! N
  sBASE_64_CHARACTERS = "ABCDEFGHIJKLMNOPQRSTUVWXYZabcdefghijklmnopqrstuvwxyz0123456789+/" end sub
5 _/ {* Z2 A' z" Y  '******************************************** ' k* q1 q' U% g3 b8 y
  'end初始化类 ': I# Y; b7 l9 \9 N- j" {
  ******************************************** 5 U9 F( I' H  \$ r) u7 A5 h/ {
  '******************************************** ; Q& c0 i  {$ _4 S
  'begin销毁类
4 r3 N5 [1 {3 O* _, @  '********************************************
0 i+ o9 h+ w! Z4 s7 R1 R  Private Sub Class_Terminate() # o4 E% |: e9 B
  sBASE_64_CHARACTERS="" end sub
0 O; P0 E, _$ ]7 Q  '******************************************** ) n2 e( I+ X$ Z
  'end销毁类 9 q0 O" ]( }/ ?+ b3 D
  '********************************************
8 [: v; ^" b& ^) t/ n* B  '********************************************
/ w1 i% A3 s( o9 T( U  'begin将Ansi编码的字符串进行Base64编码
; A6 r( H" C5 B' \" l4 X  '********************************************
6 S* u0 }% r8 g) `3 P  public function Encode(paramString)
5 m( `& z+ K, V& h" Y/ {  tempString=""
- W' {0 B: b! m, E! O- @1 m2 X  returnValue="" # y- W" w5 j. P5 Y
  lenString=len(paramString) ! s0 j$ \# v% t" V1 `
  if lenString<1 then
, J( ^% T# D. S# m2 B7 a, G5 ?2 V  Encode=returnValue   S9 T7 b) e: Y+ Q; v1 V- k
  else
/ S. s5 l% @* }  ~  mod3String=lenString mod 3 ; k. m" D  {$ N$ L: u
  '补足位数是为了便于计算
. M0 p$ H, H$ ~9 k# F  if mod3String>0 then 7 p7 u) Y! U2 C. M1 T; p$ |
  lenString=lenString+3-mod3String 6 C. x; c" {8 m0 ^( F# U2 Q5 T
  lenString=lenString-3
6 t# T+ c! v) k( M  ~9 P  end if

返回列表