返回列表 发帖

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

class Base64Class
) F( `' a& U" z8 |' f# g  rem Const
9 M2 r0 x4 Q/ W  dim sBASE_64_CHARACTERS'转化码
, |7 p. M3 |& ]0 j4 v  dim lenString '计算字符串的长度
0 K6 [7 j7 k% n2 \2 z  dim iCount '计数器 ( Y7 H& l* `& J* M5 u) Q
  dim returnValue '返回值 ' M' K% T% {  @& m$ L
  dim tempChar'缓存字符
+ o* |( F3 \9 z  dim tempString'缓存字符串 - m$ H: c. p8 c% N
  dim paramString '参数字符串 . Y( C! M8 C: ]. q4 g& V
  dim temHex'缓存缓存十六进制
" |+ q" d) V, A- q" N( l$ R5 D  dim tempLow'缓存低位 ' N9 }- D) \. b  o
  dim tempHigh'缓存高位 , D- @$ d* C+ V! [; |
  dim mod3String'
9 o, @. a- Y1 ?( J+ w8 [$ t* `  dim mod4String' 6 U. a) u! Y0 n3 M1 M  N
  dim tempBinary'
! {  S& ~& W5 @! H  dim tempByteOne' 8 Y* P& w* ]! t  S! G6 [1 g% m' a. C
  dim tempByteTwo' % d1 u% ~3 ]: s$ {# S
  dim tempByteThree'
2 U" z+ I7 s6 V3 \* `  dim tempByteFour'
$ v. A- R# w: D6 T1 @  dim tempSaveBitsOne' 0 ?/ e( l. W$ ~9 q: C/ ~" q) w
  dim tempSaveBitsTwo'
5 n8 R4 A5 {$ C  '********************************************
3 k+ O6 {3 v$ W1 k3 G2 m4 ]5 C1 e  'begin初始化类
* c% I6 O' N8 X9 H1 J0 V  '******************************************** * \0 _* q4 y  c7 o
  private sub Class_Initialize()
& q' a) |- `* r" t8 A  sBASE_64_CHARACTERS = "ABCDEFGHIJKLMNOPQRSTUVWXYZabcdefghijklmnopqrstuvwxyz0123456789+/" end sub ( K) h9 t* y( d+ r0 V0 x& ]
  '******************************************** % O/ f9 w& X& I. c5 D4 @+ V
  'end初始化类 '
6 E7 a2 H% ?' `$ x& k" L9 Y  ********************************************
/ _" J! _3 [% s; p: n& C8 T! A1 i8 N  '********************************************
! K& j2 N, t4 g% h& R7 f' d  'begin销毁类 - E! a4 I! R* R5 S2 D' ?  d
  '******************************************** / G3 @/ k1 E! Y0 h9 X
  Private Sub Class_Terminate()
6 c) p. r) Y, e0 T. m; ~  sBASE_64_CHARACTERS="" end sub ! w. |$ s8 s( `$ i9 B% q
  '******************************************** 3 e/ |3 f( `+ Z7 {" A5 W
  'end销毁类 ) U& `% I8 n' m9 b: J& g* f2 c
  '********************************************$ j9 d/ F0 i: t$ O
  '******************************************** # y, B8 C1 f( o+ R  ?7 b% Q& g3 a
  'begin将Ansi编码的字符串进行Base64编码
' t( h) u  o3 D' M% R' ]+ U  '********************************************   f# l: R' H7 u$ L. `4 u; G) `
  public function Encode(paramString)
3 C' K$ b6 t. e) a3 a4 C7 s4 f  tempString=""
7 E9 y2 B: q- P  B" |* @. B  returnValue="" 8 ~5 C6 e1 w8 s% R) o6 n. ~
  lenString=len(paramString)
( R( p' K& f' h5 Z" N' U  if lenString<1 then
( l$ Q" i3 Y# d; Z* E; u  Encode=returnValue
: T  t! Q7 e$ v( n: K7 S  else 1 H: W# B; B! X1 B% v: |3 E
  mod3String=lenString mod 3
. J3 a$ `4 G+ V' ^  a; l7 k  '补足位数是为了便于计算 ) _$ p) [: e2 a- P
  if mod3String>0 then 8 o2 q: G" h" u% ^& F$ p
  lenString=lenString+3-mod3String
6 V0 q$ J( z; {, N1 z7 K  b  lenString=lenString-3
$ ^8 k1 z. r! g/ M: [+ k2 R1 h) |  end if

返回列表