返回列表 发帖

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

class Base64Class
+ |. y7 j* P$ S  rem Const
3 g& {. |' Z- c; ~; g  dim sBASE_64_CHARACTERS'转化码
$ y+ h. n% r1 d2 [* i7 I  dim lenString '计算字符串的长度 - z5 l' e) a# N
  dim iCount '计数器 / [6 a4 y& f. W* y: }" z& H, q. U
  dim returnValue '返回值
3 `: }" i2 z5 i  dim tempChar'缓存字符 : q" t' [2 q+ W+ J! F8 T  P' Q" Z0 ~0 l
  dim tempString'缓存字符串 2 _: s+ L" S8 [
  dim paramString '参数字符串
' @! q7 C, @' \0 b- M  dim temHex'缓存缓存十六进制 * `) Z$ g3 m2 y1 `
  dim tempLow'缓存低位
* u0 D0 k2 N* s  f+ ?: a- p  dim tempHigh'缓存高位
2 y/ P. Y. G6 _  p* I; G  dim mod3String' . s# A% P4 k2 n' L; {1 d2 h
  dim mod4String' 0 ^& Q0 Z: y# R
  dim tempBinary'
. h/ K1 p. Z$ z7 d# S9 w1 g; n  dim tempByteOne'
" a* G4 y- X% H- e+ T6 E  dim tempByteTwo'
$ _/ T  ^: s) W5 h( p' q. f7 P6 t  dim tempByteThree' 3 d! f. A( z! o; r# V
  dim tempByteFour'
2 I: {3 }$ q" K& M' ?  dim tempSaveBitsOne'
9 Y8 p& v/ t# E- {  dim tempSaveBitsTwo'
: `6 O% `/ l& i5 t8 ~$ V* I# f1 C  '********************************************) g, q  \$ Z1 x9 D
  'begin初始化类
) e: B* A" P/ h3 w( k  '******************************************** ( g# ^5 J' ?1 N; O$ m+ ]
  private sub Class_Initialize()
! p' a* ?! ]% Y# X( ~: t$ i9 _  sBASE_64_CHARACTERS = "ABCDEFGHIJKLMNOPQRSTUVWXYZabcdefghijklmnopqrstuvwxyz0123456789+/" end sub
: D8 M4 ~9 X1 U- w: C5 D* A  '********************************************
9 Z/ ?7 i2 b! R  h  'end初始化类 '1 ]0 j9 y& i% a; ?# K
  ********************************************
# u; Z8 k4 j1 g  '******************************************** 4 |8 I4 w  i# {9 y
  'begin销毁类
6 P1 ~' ~& q( g" v' b  '********************************************
! x! l6 J; U% d  Private Sub Class_Terminate()
; A( ~- Y. L' n& A# d0 U  sBASE_64_CHARACTERS="" end sub
2 D( e, C- ^: @6 J% m6 i  L  '******************************************** 0 k3 t) V/ V6 T* @$ V( Y  E
  'end销毁类 5 g* s0 B/ Q3 M; b8 N
  '********************************************& Y2 ^! H# `( p& y, \
  '********************************************
- h2 o1 U4 A9 [7 Q/ M6 B8 W  'begin将Ansi编码的字符串进行Base64编码 + D5 b& q5 ~" a% ^8 d/ x3 g
  '********************************************
1 Y. r/ ~$ P* p/ S  public function Encode(paramString) - z; q. _& i. }$ E' T
  tempString="" 5 q8 @! j' t) H3 T# C
  returnValue=""
& O* Q9 n8 J. k6 v2 N% M* `  lenString=len(paramString)
6 ~6 r$ u( R' b7 {, H/ S  if lenString<1 then
1 x% t. R8 @+ E2 w: S/ I  Encode=returnValue
2 t3 M7 O' O/ l9 B  else 4 k3 X0 o8 g% |  Z2 U4 d
  mod3String=lenString mod 3
# Q% |3 J) t* G! i( h) I/ I  '补足位数是为了便于计算 5 w4 h7 D5 h3 L3 N+ s
  if mod3String>0 then 9 D: Y6 Z! b% A) {3 \+ k' p7 ]
  lenString=lenString+3-mod3String & x7 t/ V$ ?0 E, G5 P
  lenString=lenString-3
: u9 U) h& q. X' y! c5 W  end if

返回列表