返回列表 发帖

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

class Base64Class; ~; ]1 b$ L3 @6 i0 ~) Q8 ]
  rem Const   e- v+ |2 X% _: M. F3 A
  dim sBASE_64_CHARACTERS'转化码
$ E. O" b2 N) G1 E. j; u% M4 ]  dim lenString '计算字符串的长度
5 U) R) R* Z5 x. e  dim iCount '计数器
: u; Z+ v, ]6 h! `" I9 M; I  l" a0 u  dim returnValue '返回值
- H* x; U& W  D0 G" A; `5 b  dim tempChar'缓存字符
+ g  G1 Z1 h  R6 C" H1 X- p  dim tempString'缓存字符串
0 `+ s" S& i6 P5 E  dim paramString '参数字符串 : q0 |: `! J( I+ s8 m
  dim temHex'缓存缓存十六进制
7 t% O& i1 x$ G4 d( j  dim tempLow'缓存低位
+ u1 F( d: f* J' N, I  dim tempHigh'缓存高位
0 z7 }% E9 L: k) L+ [( U5 S% c7 G  dim mod3String' & O" W/ @. i) O" l+ g
  dim mod4String'
+ z* s; E- V, k  ?4 E6 ?  dim tempBinary'
% R! B1 F' M' K( \  dim tempByteOne'
9 U' _" i& i7 @/ F/ N4 g  dim tempByteTwo' " U( ^( C5 C9 u  s* M& W
  dim tempByteThree'
0 W! y) b6 R  p% C9 O# E5 C  dim tempByteFour'
7 G/ ?! \' p. [( U# t" ~  dim tempSaveBitsOne' % n1 ]) b% U8 s' n0 N2 h% V
  dim tempSaveBitsTwo' / m5 X0 C# q! x3 E
  '********************************************2 g& \5 a/ ]# f: e4 A/ G2 a* l
  'begin初始化类 " }- \3 q1 }% g2 o) y. q' l9 o4 r
  '******************************************** 5 [& y8 r; J. f/ x, d' Z
  private sub Class_Initialize() * r9 j; D/ M, N/ O  v- V2 b8 j
  sBASE_64_CHARACTERS = "ABCDEFGHIJKLMNOPQRSTUVWXYZabcdefghijklmnopqrstuvwxyz0123456789+/" end sub
8 P1 {5 A4 T+ b! i  '********************************************
- q9 b" E' j; @4 w5 p; \! W  'end初始化类 '
, [, }+ H: P) P: v9 H9 Z5 v6 p  ******************************************** * o0 X- x' n  K+ V$ Q6 L
  '******************************************** ( n8 X- C7 ]1 h! G
  'begin销毁类
- M5 T* X" {3 ]5 `3 X3 f) J  '******************************************** ' L4 E) r) k9 [9 q  _5 x# N
  Private Sub Class_Terminate()
' Q# b" D: c) J- N/ A4 L4 E  sBASE_64_CHARACTERS="" end sub
9 E/ c- X2 P" ]# o" b  [  '******************************************** 8 `9 N/ b) s: M  J: h
  'end销毁类
$ f4 Z$ w& W9 ]" X7 p, |) e  '********************************************
7 S; q" D7 o# D/ G1 G: ]  '******************************************** % M* g7 o: t& U0 U
  'begin将Ansi编码的字符串进行Base64编码
5 p- [# U; L# T* m2 ]& d  '********************************************
# o( e+ J6 Q( _7 p$ j& e  public function Encode(paramString)
5 }, R: e5 L4 K1 J$ z. C/ @  tempString=""
! t! g% n  Z" i, f' \! h0 r  returnValue="" & V: T/ k# f) E& M3 g! j( l- g
  lenString=len(paramString)
: f; y' K: @9 O4 r0 ~  if lenString<1 then $ @0 W; h; B& j/ U
  Encode=returnValue 0 I7 @) T7 @1 Z
  else / d; q/ H0 n. c4 S0 o. }
  mod3String=lenString mod 3
' P& O( |) t* A6 s: O  '补足位数是为了便于计算
" j1 I" V( s; @# Y' E+ P  if mod3String>0 then 6 N4 z% _1 F/ Y+ W
  lenString=lenString+3-mod3String
! U3 P) E/ ?: I/ w: J  lenString=lenString-3
  p' ~& g7 c+ z6 L  end if

返回列表