返回列表 发帖

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

class Base64Class' A, q8 P7 {; q/ K2 V- ]' ?
  rem Const & o# \. x; C8 J" U* \3 o& @8 ?6 i. H: M
  dim sBASE_64_CHARACTERS'转化码 ) B/ ^$ {. P6 e
  dim lenString '计算字符串的长度 2 |) i' P+ h7 ~) F6 t/ _  o4 m
  dim iCount '计数器
3 E( k9 r* E9 P  dim returnValue '返回值
- K3 j' k# `6 f0 `: ?  dim tempChar'缓存字符
+ x- L6 g( p+ Y9 S  w4 a" c9 R  dim tempString'缓存字符串 . `4 x% ^3 s3 D' R
  dim paramString '参数字符串 4 B! d7 Y- c! a& l' s. S( S
  dim temHex'缓存缓存十六进制
/ s. }. i$ Q# J' T2 c  dim tempLow'缓存低位 # T7 `! o0 l  L3 r2 n& ^
  dim tempHigh'缓存高位 3 I. A' f5 ^- U* O( E
  dim mod3String'
! S/ q% E- C( U8 ]  dim mod4String'
; h7 e8 B7 @5 ~& p5 U2 [* ^  dim tempBinary' 3 A/ ?2 a; t# B# _) x
  dim tempByteOne'
8 Z! {! j$ F* Q9 y( R; `6 o  dim tempByteTwo'
' r" w% g& j3 O5 N6 N) L$ {4 M  dim tempByteThree'
2 R: w5 A2 T2 \  dim tempByteFour'
8 I; ^8 W! H9 d  dim tempSaveBitsOne' 5 E7 T# S7 g  J' I
  dim tempSaveBitsTwo'
& G4 O1 o# l7 k3 }$ @# T4 a# O  '********************************************
  ]; m2 h; c; L, N2 b8 r" K7 Y  'begin初始化类
# u! R' V! \5 D) g  '******************************************** . N1 M4 F7 k; X4 o  k# n1 Y+ o; k
  private sub Class_Initialize() 0 `( q' Q6 n, Z" X5 k: B' \
  sBASE_64_CHARACTERS = "ABCDEFGHIJKLMNOPQRSTUVWXYZabcdefghijklmnopqrstuvwxyz0123456789+/" end sub / C9 A8 K3 [, l+ m
  '******************************************** + ^/ M+ ~) W: {/ D# Q* F
  'end初始化类 '/ b. V! Z, B% r5 G/ e+ ^
  ******************************************** * ?) d5 d2 m/ b/ W: K- k
  '******************************************** # d4 y. s3 `" ^9 b- Q% l
  'begin销毁类 8 z% A: m9 _: V: `1 e: v
  '********************************************
6 P+ `3 J- H( m5 f3 j  Private Sub Class_Terminate()
  V. T3 o& b& V4 K+ i  sBASE_64_CHARACTERS="" end sub 4 F) \+ q/ |% W% j. d4 q- u9 M* P- j
  '********************************************
7 J, z% D  h, f$ o  n; ~  'end销毁类
0 H# ?* t* e8 f! z) C( c  '********************************************2 P' o8 m1 |$ V1 o
  '******************************************** 4 n9 y9 `" H# y% c) q! a$ f
  'begin将Ansi编码的字符串进行Base64编码 ! h$ [& K: l6 W7 p( T
  '********************************************
$ N) n4 l+ `5 j- O& U  public function Encode(paramString)
8 I9 _( }3 ]* X) n0 J+ c  tempString="" : _! ^& v: v3 @1 [6 r* K$ P8 \) W
  returnValue="" 2 E0 s3 z' m4 L0 ]
  lenString=len(paramString) 2 S0 i& a/ n, b% F
  if lenString<1 then % Z6 ^" y7 M/ |9 V+ J
  Encode=returnValue % X; P- i/ S& K. v, ~. Y" d
  else
* |1 m2 J3 o% n# Q  mod3String=lenString mod 3
0 l8 p; o. w1 @- }! h5 h  '补足位数是为了便于计算
9 _, u5 }+ g; B1 I  if mod3String>0 then
7 r. t+ O: v( v9 P" R" q* F  lenString=lenString+3-mod3String " v: k$ n; v: n# ]% c) g
  lenString=lenString-3
* D- \8 n# `5 a$ Y6 l. X  end if

返回列表