返回列表 发帖

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

class Base64Class/ i+ P5 F3 f( ^* c8 A/ ?
  rem Const 1 z; A9 u6 i+ I5 ~, r7 ?- ^7 d6 j
  dim sBASE_64_CHARACTERS'转化码 $ ~! w( v' Y9 q/ G/ G/ r
  dim lenString '计算字符串的长度
/ z) q' R6 y( h9 p  dim iCount '计数器
( z/ |; E, y7 U$ v3 g  dim returnValue '返回值
/ {* q: u$ r/ s/ y9 f& k. S6 d  dim tempChar'缓存字符 3 ^- H2 f8 c& K
  dim tempString'缓存字符串
, }# |. l2 X  e, q  dim paramString '参数字符串 ( N: r) {/ m) F. M! A7 A
  dim temHex'缓存缓存十六进制
# c" ^& R+ m9 c* |; T. J  dim tempLow'缓存低位
3 C( y# @3 Z# P$ {5 Y  j7 U  dim tempHigh'缓存高位
9 c2 D5 ^7 s& B7 Q, Y  dim mod3String'
0 K+ g/ E, t" n( e& r3 U- N  N8 |$ @  dim mod4String'
$ _; o' T3 d) n. E3 N& E  dim tempBinary'
0 M& _7 P; C. n9 m$ m- j# {% i  dim tempByteOne' 5 o( q( C5 u, ~1 r- i. G7 y% E2 U
  dim tempByteTwo'
' U6 ]7 C  p- e0 g: s! T* Y  dim tempByteThree'
; s6 C3 U: F4 f1 ~$ J  dim tempByteFour' " L6 h& U! I: f$ d3 W& }- X% d
  dim tempSaveBitsOne'
+ M, O" j& ]# }0 ^4 q% u  dim tempSaveBitsTwo'
9 ~  s2 S; o- J+ @- T$ e  '********************************************5 U: t: E/ B1 t
  'begin初始化类 ) g/ b( z& N+ m: `
  '******************************************** 3 Z4 q; p: G) M( f. T3 t/ D% x  T( G
  private sub Class_Initialize()
7 y5 _) ?) I- J4 Z  sBASE_64_CHARACTERS = "ABCDEFGHIJKLMNOPQRSTUVWXYZabcdefghijklmnopqrstuvwxyz0123456789+/" end sub   e0 c  y2 C2 t0 l
  '******************************************** - J( y1 q! v. g
  'end初始化类 '/ ^. o  n" W8 t7 [0 n
  ********************************************
+ s- K6 b2 k5 G# B7 ]9 x& @" ~  '******************************************** 3 e! p+ `/ G" P5 e' D
  'begin销毁类 ; l& ^8 _( ?/ X  D* K! a) ]
  '********************************************
1 I! V; g+ Q% U& l  Private Sub Class_Terminate() , d2 k5 e# ^4 l) p
  sBASE_64_CHARACTERS="" end sub
. a9 |$ R& T# V3 v  '********************************************
( y# U) F8 ^; @9 f" k  'end销毁类 # n% N: f% G/ ^2 W8 R
  '********************************************
; ?& K+ p, L9 N5 `# D  G8 S  '********************************************
( Q2 j0 s  Z1 D( r  'begin将Ansi编码的字符串进行Base64编码
4 f# H, o) E5 ]) }& o" I! A0 s  '******************************************** * g  v8 f) o* ~- Q6 p1 {7 ?0 A
  public function Encode(paramString) 4 G" P; ]6 B" ^9 q) e. U8 D! S
  tempString=""
; |0 t" h. |* {" ~8 K4 ?9 g1 G  returnValue=""
' v5 a: c/ m( t3 I  lenString=len(paramString) / F. i! n+ a; }2 j
  if lenString<1 then 1 ]1 v" A4 K- C
  Encode=returnValue
2 r% X) ]$ U5 \5 D# _; ?  B  else
7 d2 B  Y, j" M# \: P7 `  mod3String=lenString mod 3
$ t' I2 O( c' i  '补足位数是为了便于计算 . b% y6 s" i" f/ g0 Q/ U' @
  if mod3String>0 then 0 I# {2 J4 ~! H' x
  lenString=lenString+3-mod3String + o: V- ~; c. T
  lenString=lenString-3
$ V5 H+ H- d. J  end if

返回列表