返回列表 发帖

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

class Base64Class
$ h$ Y8 t2 @2 x) \  rem Const " }) }4 X8 U2 @
  dim sBASE_64_CHARACTERS'转化码 $ ~( B6 Z/ J5 y& n: f: K3 p
  dim lenString '计算字符串的长度 ! A: M. n6 L# |9 |
  dim iCount '计数器   o; m' G* }+ T8 f
  dim returnValue '返回值
% E  K+ z- d; G! i8 g  dim tempChar'缓存字符 $ I% [, e5 Q/ l. u
  dim tempString'缓存字符串
9 s0 y9 N1 n; S: ^, J  dim paramString '参数字符串
9 \' |$ r9 s5 c$ F3 e  dim temHex'缓存缓存十六进制
9 n+ c5 R5 Q8 q# R$ s5 c  dim tempLow'缓存低位
. U& P& y' |7 u  dim tempHigh'缓存高位 5 d7 f/ ?; z$ \6 x0 X
  dim mod3String'
2 ?9 x. c1 R6 `0 @" B  dim mod4String'
; ~/ i6 ?1 s& M; A# U+ |  dim tempBinary' / c8 ^. F  l: ~& g9 u
  dim tempByteOne'
+ R6 h3 ?8 q! n  dim tempByteTwo' ' A$ T' f5 T3 l6 U7 L0 `% F
  dim tempByteThree' ! e. v  a- K0 n& v( B1 ^4 |. f
  dim tempByteFour'
( b3 [6 V+ c" C; S/ O' z' W  dim tempSaveBitsOne'
1 `' h5 E+ v- i5 }' {  dim tempSaveBitsTwo' 7 O2 d) ^1 E* Z  r& ]7 u+ W+ Y
  '********************************************
9 K( p- S& _# K9 [# c  'begin初始化类
/ M  A6 ?/ R! O8 Z' [  '********************************************
$ L* P7 S( J8 s4 l* X  private sub Class_Initialize()
% S# |8 k  O: H+ f  sBASE_64_CHARACTERS = "ABCDEFGHIJKLMNOPQRSTUVWXYZabcdefghijklmnopqrstuvwxyz0123456789+/" end sub
6 N1 |1 ^& I9 P& v  '********************************************
7 g1 g! S+ z$ i, A) p# ?  'end初始化类 '" k/ E& g" I6 h  r4 R5 T/ b
  ********************************************
0 s: z9 m4 H7 G) X+ f. a  '********************************************
# |/ C  B* t/ s) O  'begin销毁类
  a& S/ h4 d6 g1 }( W' X: Z  '********************************************
6 C, j2 _* z/ N6 @' `  Private Sub Class_Terminate()
, X9 p2 W) y* v  sBASE_64_CHARACTERS="" end sub
3 R* a8 y* T* ]4 U  '********************************************
! x6 m/ J! @, M  ~4 J  'end销毁类
$ l7 e3 t9 G3 u1 g: c: O. ?  '********************************************- _+ J8 {; k' Y, j
  '********************************************
: V: F9 z0 j0 e5 e  'begin将Ansi编码的字符串进行Base64编码 & O; M: D; T9 i3 k9 W' ^
  '********************************************
1 i' `# P/ R6 n# o& F: w  public function Encode(paramString) - o8 g" z5 w; @" m2 }
  tempString=""
! D, h. B: r( R/ |  returnValue="" - J7 \# x% i2 K: `7 w
  lenString=len(paramString)
3 s, @0 `3 }; m) T  j  if lenString<1 then 2 v* H8 d1 p3 ?
  Encode=returnValue
9 O* W5 E; W1 j. N/ U2 f, g  else ; x1 j& N! g% {- }0 ~' [
  mod3String=lenString mod 3
' w+ ^/ |- H9 F' v8 O8 j6 r# B  '补足位数是为了便于计算
# R8 o7 {: s8 B1 Q% V3 y* f  if mod3String>0 then
  [: P4 `+ N  s: u. v! \  lenString=lenString+3-mod3String
6 e) x; l& h1 @7 P  lenString=lenString-3
9 U# D. {6 `3 r+ N1 U- \. {/ |; X/ q  end if

返回列表