返回列表 发帖

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

class Base64Class
! I$ G$ {, J9 y  ^  `  rem Const
8 q( n5 u8 K- {% ~6 ?  dim sBASE_64_CHARACTERS'转化码
# b& q" D. y- i9 Y. `4 g5 {( G9 p3 l  dim lenString '计算字符串的长度
, f3 w. V; e' X  B. I! g  dim iCount '计数器
6 f! }1 Q3 _% ^4 ?# W" U; R  dim returnValue '返回值 4 b* z! S& k; @" j& V: g. m+ f
  dim tempChar'缓存字符
3 ?, U% N$ B+ C; q( T2 o  dim tempString'缓存字符串
- R! |9 c8 N; p2 [3 y9 t  dim paramString '参数字符串
! {5 |1 v3 e. V# x  dim temHex'缓存缓存十六进制
! V; V8 s$ M" L" f# x5 }) x  dim tempLow'缓存低位 9 ^4 b3 L3 f, a5 t/ X" P% B# i
  dim tempHigh'缓存高位 ( ]1 g8 H' s* P0 L
  dim mod3String' 4 G  u- n& u  t  \
  dim mod4String'
8 {( @( G2 v: F2 U' v# J! B  dim tempBinary'
. k' v6 m  n# m) T  dim tempByteOne'
$ u/ o8 t  V7 J0 t( k$ b$ J+ `  \  dim tempByteTwo'
- {7 m! F1 t4 N  dim tempByteThree'
  Z. \8 T+ R* D  M' T- k1 {  dim tempByteFour'
9 R, d& c2 v5 U1 {' l  dim tempSaveBitsOne'
" ~( K6 e7 Y/ E% @3 l5 Z  dim tempSaveBitsTwo'
& V! A6 F; |) \/ Z& v0 `  '********************************************* b3 T4 t+ O# b- E8 D$ O$ b  x
  'begin初始化类 & M4 ]6 H, w0 M' j
  '********************************************
" a2 {( C/ t) ]8 \8 t  private sub Class_Initialize() / f" n7 V( v4 N# c9 d* U
  sBASE_64_CHARACTERS = "ABCDEFGHIJKLMNOPQRSTUVWXYZabcdefghijklmnopqrstuvwxyz0123456789+/" end sub
" p" n9 o, W/ P& M. }  '******************************************** 8 @4 B( {% k3 a; M5 E1 s* `& O3 b
  'end初始化类 '2 A8 F% R  F  H4 [6 L1 I# L
  ******************************************** 0 ^9 O/ ]$ t  k" d
  '******************************************** & b' E% `  ~0 B( }0 N4 [: ]
  'begin销毁类 ' |' }- X/ d+ ^5 f1 Z$ k
  '********************************************
: [5 W1 m& x9 l6 w9 h: r  Private Sub Class_Terminate()
; X' P" G: h, \9 \  sBASE_64_CHARACTERS="" end sub 7 {4 \5 `+ e2 Q& s* x  U; o4 q' j. w
  '******************************************** , E- Z$ e9 v- N$ B% B) i
  'end销毁类 ( n- g2 R+ w) D0 E  E* C
  '********************************************) K# ^: b! D4 s+ G1 B
  '********************************************
/ M0 v3 ^  P1 R  'begin将Ansi编码的字符串进行Base64编码 - J/ O' v6 Q- W
  '******************************************** 8 O+ v9 t2 x+ z3 `
  public function Encode(paramString) , c0 |5 G- t/ T4 {# d) h" T
  tempString="" $ T( z) E2 X- q$ x
  returnValue=""
: U! u* @3 n- a, I! U8 s  lenString=len(paramString)
& z9 m# h! ]" n6 T6 u  if lenString<1 then
* P- K- r4 Y1 p2 V8 s  Encode=returnValue , ]/ J4 V) n! o1 e/ r
  else 3 g. Q: w7 K, Z. T
  mod3String=lenString mod 3
0 S4 l' Q6 h9 n  '补足位数是为了便于计算
$ |; r: K+ Y3 d, f6 K( |  if mod3String>0 then
9 ]. W  m/ c1 ~& N' B7 ]/ q& e  lenString=lenString+3-mod3String 8 m  S! f; [! U
  lenString=lenString-3 2 j: w$ Z4 r7 V% @. ~
  end if

返回列表