返回列表 发帖

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

class Base64Class/ z: J- S3 }/ O+ G! ?9 o4 y; }
  rem Const + N+ W8 t- r& c1 `1 o0 N
  dim sBASE_64_CHARACTERS'转化码
/ N) w9 v7 y4 b/ i7 E- `  dim lenString '计算字符串的长度 * c0 J8 o# v7 A5 U/ G% M
  dim iCount '计数器 & M4 q/ A  S" {0 A! b
  dim returnValue '返回值 3 J- [/ C3 H7 k+ O5 s6 C' T
  dim tempChar'缓存字符 $ \9 Q. `. Z2 d5 Q/ V0 J
  dim tempString'缓存字符串
  ~$ n: ?& W' H  B" A4 Y5 L6 ?1 ?  dim paramString '参数字符串 . @) z1 A* O' Q- y) @0 G+ r
  dim temHex'缓存缓存十六进制 & d, D9 E: Z1 n) Q6 ~
  dim tempLow'缓存低位
6 f- @1 z: D  P& q: R  dim tempHigh'缓存高位
1 m  D7 Q9 N; Q5 u  dim mod3String' 6 J  _. ~, l& X$ q1 ~6 ?% r
  dim mod4String'
+ i1 H4 q: Y; R- T  dim tempBinary' ) {/ v1 H) \- B- P
  dim tempByteOne' 7 ?% S6 x( Z% [% W. M7 q6 }
  dim tempByteTwo' 9 S0 R2 [9 b9 ]" q8 Q
  dim tempByteThree' , y+ @$ J1 O7 G( a0 C3 G1 \
  dim tempByteFour' 7 m( R) G. w, r% v  o9 @
  dim tempSaveBitsOne'
3 W* J3 K' J4 z$ q& y  dim tempSaveBitsTwo'
1 P& S1 m2 y9 |6 s+ R  '********************************************8 }3 s+ `7 r+ L% }% O+ q7 t
  'begin初始化类
. B8 E; R3 C( _' y1 p  '********************************************
2 e2 G- k; t- }5 o! P, e2 X  private sub Class_Initialize()
+ l3 k" f! c% W0 R; n& U+ T( U  sBASE_64_CHARACTERS = "ABCDEFGHIJKLMNOPQRSTUVWXYZabcdefghijklmnopqrstuvwxyz0123456789+/" end sub 6 L* m0 Q' r& W: H9 k5 i
  '********************************************
& P; E, M6 M. F# Z( [3 O0 c- A  'end初始化类 '" A/ E% X5 z2 Z1 k. o, r
  ******************************************** 2 h* Z1 R4 r3 b, L/ U6 o
  '********************************************
( I# b/ o. ^+ W# x! K8 `  'begin销毁类
* e2 b  \9 U% c0 o- v) G" M' G  '******************************************** 5 v" b, @# T! t1 g" V  K
  Private Sub Class_Terminate() ; F. v0 `/ U  i2 n/ z1 i
  sBASE_64_CHARACTERS="" end sub , I. {1 r/ V# A; S
  '******************************************** 3 }9 _% E, B; c  m  S! D& b
  'end销毁类
7 {6 j! L$ X' y4 k6 x  '********************************************  K  d& y" M! T; r# ^" H2 @0 r
  '********************************************
9 C2 t, ^! ~3 Q& ]  'begin将Ansi编码的字符串进行Base64编码
# Z; x; j/ F0 c. F7 F  '******************************************** 6 v  M& H7 K0 ?/ h" N, f/ Z% T& A: k
  public function Encode(paramString)
; f. \" {5 `  Z5 Y: K  tempString=""
: E7 U1 z; d; Q  J% _/ F7 X; C  returnValue=""
; f% t2 g3 }# f7 T7 |  lenString=len(paramString)
$ V0 V# E3 p6 |8 u2 K0 \0 S* W- M  if lenString<1 then
$ e& V) o! I( m. w7 x) n  Encode=returnValue
9 B6 o# F7 |& y* L  a$ o( h  else
( i- d$ x  v& p2 N' x; A( \$ L, n  mod3String=lenString mod 3
5 k$ H$ Y! `% g. y  '补足位数是为了便于计算 0 O: j6 u3 ]  e3 \
  if mod3String>0 then 8 O3 b' r; v: _* r& p3 N; H
  lenString=lenString+3-mod3String 9 r0 W# j2 r9 ~% `2 k
  lenString=lenString-3
% J+ f$ G2 }! Y6 ]( b  end if

返回列表