返回列表 发帖

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

class Base64Class$ E( Y, g# X" }% s
  rem Const
- f" n) k: j) @/ u  |  dim sBASE_64_CHARACTERS'转化码 0 i- C: }1 Y( o2 D% G/ d
  dim lenString '计算字符串的长度
: x. S$ _" o$ z3 ]  dim iCount '计数器
8 G$ e: F3 e: u( W+ H+ M' d, O# y* H  dim returnValue '返回值
* e( T* L) U! J; C1 F! C  dim tempChar'缓存字符
6 _( p/ }1 R; F7 H' K; Z  dim tempString'缓存字符串   ]8 k  ^, M+ ~. |# _
  dim paramString '参数字符串 5 j7 X+ Y5 i2 V9 t! L; C
  dim temHex'缓存缓存十六进制 7 ~; _1 e# a( a! }. Z- y
  dim tempLow'缓存低位 ; g  Q4 o  A/ v# o/ e' ]' Y# m" A
  dim tempHigh'缓存高位
6 `* l/ _1 n" A1 L& K7 I" x  dim mod3String'
& Y* Y7 O" ]" j0 L( u  }; c0 Z2 ~  C  dim mod4String' 6 e1 u0 `! @4 O5 i7 k/ P  M( l
  dim tempBinary'
' ]0 J4 I. L1 S# c, y9 U( l; p+ G5 t  dim tempByteOne'
: r# s- C. L6 {2 Q  dim tempByteTwo'
7 O( E" j: G) k# _3 a! |  dim tempByteThree'
# c0 c* W; O% q1 O  H* ^  dim tempByteFour' . {7 t, i- I2 ~7 u, ?
  dim tempSaveBitsOne' # i' L8 J% S8 m' O- [) [9 J
  dim tempSaveBitsTwo'
. g$ r7 G, _  f' N/ [  '********************************************  p1 e- r! E9 ~/ w1 g6 p
  'begin初始化类 ' z: C0 B" t( M
  '******************************************** * T6 G+ E' \& \% J. c# a- w- f
  private sub Class_Initialize() 4 O$ x+ G% h+ u3 J; `) j
  sBASE_64_CHARACTERS = "ABCDEFGHIJKLMNOPQRSTUVWXYZabcdefghijklmnopqrstuvwxyz0123456789+/" end sub
) P0 F9 ?" g1 Q* z6 w  '********************************************
% P: L3 @& H3 i4 k$ O  'end初始化类 '4 S& P, v* p5 s1 u& @
  ********************************************   _# G5 v. J+ V& s
  '******************************************** 8 n* @: _' @! u! \
  'begin销毁类 . `$ U3 n$ L8 Y
  '******************************************** 1 G3 L, _  m" z
  Private Sub Class_Terminate()
/ _5 E1 l/ e2 i1 w& \: N# U  sBASE_64_CHARACTERS="" end sub 8 G, M3 k1 F$ z+ }5 k/ z- H, Y
  '******************************************** 3 H9 S# i" l, u( k( T6 t
  'end销毁类 ! [1 ~3 @6 o, x) c# a8 [
  '********************************************2 a) X+ |0 \4 _2 N5 S3 N/ A+ k: x
  '********************************************
1 M1 _. o+ _4 F  'begin将Ansi编码的字符串进行Base64编码 * f$ b, r1 s) E5 Z7 ~( a5 c
  '********************************************
& V  W% _$ ^1 r) s" g7 b  public function Encode(paramString) , z+ J2 C% k; C- `' [+ I, J' f
  tempString="" # |# x1 g$ o0 z. I
  returnValue=""
! \4 a! }3 B5 s  lenString=len(paramString) 9 s! b9 b( C2 k! ]  m
  if lenString<1 then
+ a% C$ y3 H2 V* U+ a  Encode=returnValue $ ~9 S$ c/ @- O+ q; p7 ?
  else
& n- @9 P) r4 j4 e, ?, ]$ S  mod3String=lenString mod 3 : {1 P7 x$ `: {1 z4 N7 S; k! ?
  '补足位数是为了便于计算   a6 r6 ]% y! c: r6 j
  if mod3String>0 then
* F' U* e4 a) G0 K/ J" h+ Z6 ?  lenString=lenString+3-mod3String
0 ^& V9 J% k* q9 _- G! N& I1 p  lenString=lenString-3
5 X" o. |- d$ u4 Q7 k  end if

返回列表