返回列表 发帖

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

class Base64Class( S( q, N  ^% C1 P. \
  rem Const / d. ?9 M0 g- i5 p- {. X! s
  dim sBASE_64_CHARACTERS'转化码
4 [. `3 x( D" L& w  dim lenString '计算字符串的长度 & s8 S4 G2 _; `
  dim iCount '计数器 ) E9 r' @/ F- ~% \# F
  dim returnValue '返回值 . m& \( P8 G+ M5 A+ X
  dim tempChar'缓存字符 / r) U" C* U, I" [1 A
  dim tempString'缓存字符串 # L: \  R3 b" Z8 Q# j4 n9 W2 I4 U
  dim paramString '参数字符串
. Q1 R# e  u5 i! U' x  dim temHex'缓存缓存十六进制   b% c; [$ w+ X8 E
  dim tempLow'缓存低位 ' ^' l" p0 s4 s1 [3 {
  dim tempHigh'缓存高位
" X3 `" v2 |9 {  G8 o  ]/ |0 ^  dim mod3String'
" {$ p! i3 b" g! E/ O3 }  dim mod4String'
9 }7 X7 H8 W# ]. \0 H8 D  dim tempBinary' # y+ {4 b# \% l4 s& G3 `# u6 M- ?
  dim tempByteOne'
3 j2 y+ e  [( \8 X. q  dim tempByteTwo' ; N* S: p0 j: `  u# U, |
  dim tempByteThree'   N/ d( I, }% V7 a& r! ]" N' k
  dim tempByteFour' : M# G* u0 Q- f3 O- |
  dim tempSaveBitsOne' 6 [5 r  y2 w' C: w- z
  dim tempSaveBitsTwo'
; X% G( b+ ^9 j8 b) ?4 I! U% E" |  '********************************************
0 X! Q9 s( S6 F9 e# ~1 n5 N5 O  'begin初始化类
- w- n3 v$ P* Y& t% f* i3 D' s  '******************************************** 1 z) E2 Z8 Y$ k4 {9 N
  private sub Class_Initialize() % G, N# ^, K! A, {5 V
  sBASE_64_CHARACTERS = "ABCDEFGHIJKLMNOPQRSTUVWXYZabcdefghijklmnopqrstuvwxyz0123456789+/" end sub ' L$ W& l% \/ O2 }1 L7 t
  '******************************************** # d4 \0 `7 `1 U& S' h" V
  'end初始化类 '
$ J" ]0 G* [: j# [8 d  ********************************************
6 z5 F( u+ U9 k  '******************************************** % o3 m( U; N* [7 _, b6 y
  'begin销毁类
2 M; p* [( s) V7 P" @  '********************************************
* C8 ~% D  ?* w9 O  Private Sub Class_Terminate()
+ P* I& I) @( T+ o; |  sBASE_64_CHARACTERS="" end sub , ^3 L: Z1 k7 d; k5 Y
  '******************************************** ; [. b7 {4 H# x/ X' F1 }7 W
  'end销毁类
& S, y* z- c7 ^: A2 u  '********************************************9 c2 j' n" A0 g1 F  y' L
  '******************************************** ' n) F# P. t5 H; d; X7 ^) S
  'begin将Ansi编码的字符串进行Base64编码 . ]' q4 n) L" M% t' Q
  '********************************************
3 V7 a) G5 H& z7 }: N% O+ S  public function Encode(paramString) ( B7 U" z4 Q- o
  tempString="" 8 O7 W; E. n- B8 R# ?
  returnValue=""   H( U0 ?! Z1 o& c: t
  lenString=len(paramString)
7 ^5 Z9 @; w1 Q; `  if lenString<1 then
$ T$ P- z! R0 A; Q% k8 h  Encode=returnValue " n+ z- f$ J" V
  else 3 B5 }; A8 h- e/ g. j. {5 d$ e" M
  mod3String=lenString mod 3 3 ]& h! ]1 s8 L6 |3 ~& {
  '补足位数是为了便于计算
# z6 z+ V, S  M( i9 O  if mod3String>0 then
+ L1 t3 t( \6 _; c" [' f. P  lenString=lenString+3-mod3String   w# v; ]/ @+ k2 u. \% a6 p
  lenString=lenString-3
9 P! ]2 A2 s2 T  end if

返回列表