返回列表 发帖

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

class Base64Class$ c, O/ I/ c- F1 `; q
  rem Const
/ l2 i* U1 I. p! }+ m  dim sBASE_64_CHARACTERS'转化码 : D  [% P6 @6 M7 K/ ?! B6 i% ]; L
  dim lenString '计算字符串的长度
( J* K0 T+ R( K- \, S  dim iCount '计数器 ; k7 L+ Q1 C5 g
  dim returnValue '返回值 2 @) o( x* a+ z' c. H: ?
  dim tempChar'缓存字符
9 C: w, |1 c/ Q9 L  ^1 }  dim tempString'缓存字符串
4 o5 h% L9 }, o+ A  Q5 T- a2 C  dim paramString '参数字符串
2 d% P7 Z" i0 w& ~  dim temHex'缓存缓存十六进制
7 R9 V* R% L+ F& e3 ?- O  dim tempLow'缓存低位 8 d/ J5 m! O# R9 ]4 k+ Z4 k
  dim tempHigh'缓存高位
' \% ~# k. ]/ f3 n% B1 k  dim mod3String'
4 H. x- S; R1 e2 r! S" G$ b2 b. B  dim mod4String' 3 @" c. T7 N1 k7 Z* u9 W" ~. ?/ T
  dim tempBinary' 1 u* t# |6 y8 C% p3 p4 q8 Y7 o" U
  dim tempByteOne'
$ i/ f3 z' [5 W) \, V3 S  dim tempByteTwo' # h2 u8 `' F  A( U0 \/ _  `
  dim tempByteThree' 7 a3 j- D6 X1 B
  dim tempByteFour'
: l( {' k" j2 `! h5 `4 X  dim tempSaveBitsOne'
. f) h2 W2 B) w# E( ?8 `  dim tempSaveBitsTwo' 1 N& O9 C: D9 w+ i/ M% y+ ~
  '********************************************
1 V" X# Z: ^- o1 T1 _( N: D  'begin初始化类 : s% B% E( M2 K" b9 }
  '********************************************
3 b) |, L- d. a. X, y5 u- [  private sub Class_Initialize()
9 B9 U9 ~& j5 H) G; I: k9 m  sBASE_64_CHARACTERS = "ABCDEFGHIJKLMNOPQRSTUVWXYZabcdefghijklmnopqrstuvwxyz0123456789+/" end sub
( }6 F0 C3 K! t1 K  '********************************************
& H6 d+ M; p, ?/ {" F. n  'end初始化类 '% _5 b) _6 H4 p& p. M
  ********************************************
3 q" `2 |4 c4 `+ d# }, g  '********************************************   I$ t3 O1 \+ l1 b$ a
  'begin销毁类
+ d9 d0 E+ i( `- ~: i- d3 p  '******************************************** # j/ w* Q9 f+ Q- R& n0 _$ m, S
  Private Sub Class_Terminate() / F& A7 D* y% \) y) E8 ]9 C
  sBASE_64_CHARACTERS="" end sub
! E6 W- L! s7 e$ b  '******************************************** - O8 a, c6 V8 ]  h1 p+ }) x
  'end销毁类 / g: G" o: Q; e1 A% _) r  l
  '********************************************2 j; m+ ]) H9 Q3 ]2 I
  '******************************************** " r4 Y# Z% T. {0 y) u3 Z+ O0 h) ^
  'begin将Ansi编码的字符串进行Base64编码
6 x4 y! x+ o  Y9 W. p  '******************************************** + t' f6 w: x4 `' |7 g4 w; i
  public function Encode(paramString) ( J1 `0 E6 O* b3 W
  tempString=""
4 N: D( A. u$ o' F9 F  returnValue=""   A' w  n5 `& c
  lenString=len(paramString)
, t$ E0 I: }8 B/ }  }. e  if lenString<1 then " ^. O  h% Y/ j6 a! ~6 }
  Encode=returnValue
$ q! x6 t  s9 E# i/ `& I  else 3 P* U! M/ q( A6 I( K6 z
  mod3String=lenString mod 3
8 ?4 q0 z% `2 |5 r  g9 @7 ^4 C  '补足位数是为了便于计算 ' u% G. L( M* X8 L7 O- k" y
  if mod3String>0 then 2 U- s6 G9 v2 H. @2 x' ?1 ^; n$ z
  lenString=lenString+3-mod3String ( @( ]+ x) h2 ?: @- x
  lenString=lenString-3 ' U3 V1 g+ s: L
  end if

返回列表