返回列表 发帖

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

class Base64Class$ K% r( |) n: ~0 l/ m* V
  rem Const
" C  {2 u7 b: q7 C1 S  dim sBASE_64_CHARACTERS'转化码 $ G* i, u1 m; `
  dim lenString '计算字符串的长度
. S! |6 p% T/ z' H4 B: q$ A  dim iCount '计数器
( V8 Q  O1 j4 m  dim returnValue '返回值
1 {3 }' Z9 U+ m" d6 K  dim tempChar'缓存字符 % d6 U% e0 O2 i+ r
  dim tempString'缓存字符串 # O) C- u, s# q4 u, I7 t
  dim paramString '参数字符串 ( U$ y" Y3 Z0 i1 {
  dim temHex'缓存缓存十六进制   m- k: y0 e; C5 X8 T
  dim tempLow'缓存低位
0 g8 z0 {5 P' p5 ]& d8 ]4 l  dim tempHigh'缓存高位
4 a. X# e0 ^4 k3 R( g8 _  dim mod3String'
: u$ P1 A* e& z# }8 h; i  dim mod4String'
- ]# A1 ]' G  P4 V  dim tempBinary' ' f: H8 y( r/ ~) P& S
  dim tempByteOne'
2 f. ]4 P2 f: Q0 ?; x/ F+ M7 h4 v  dim tempByteTwo'
) ]- Y  L  U: E  dim tempByteThree'
8 C2 ^' N/ ?) D/ Y) L  dim tempByteFour'
- s' p: `6 c$ q. r: W" ~  dim tempSaveBitsOne' ' A9 A  V; _' b( y3 O
  dim tempSaveBitsTwo'
; n* `6 j9 X3 r* r% f  S  '********************************************7 `1 N9 P0 H& t1 l2 f
  'begin初始化类 : X2 {9 ~8 z* K  p2 [( J. G
  '********************************************
; U& F# d, L7 L) v: {3 T) [. Y2 U  private sub Class_Initialize() 2 ?* x7 U8 \& U+ l- g
  sBASE_64_CHARACTERS = "ABCDEFGHIJKLMNOPQRSTUVWXYZabcdefghijklmnopqrstuvwxyz0123456789+/" end sub . Z9 k8 U3 G* d
  '********************************************
4 S  M2 q& J  H. J5 Y# p, `  'end初始化类 '
2 u7 H2 |( T0 r- R$ [+ Q, x  ********************************************
; v; V9 V, y2 W6 H  '********************************************
$ n9 @3 `4 u3 @, ~/ A% E  'begin销毁类 & y5 D" O6 v9 E  m; H# v6 P* ~6 h4 x* T
  '******************************************** 5 J( g8 v1 N- l9 ?8 l
  Private Sub Class_Terminate() - q/ C( ]  |7 @0 M1 |8 N& n2 ?# h2 ^' d
  sBASE_64_CHARACTERS="" end sub 1 D7 q9 `4 d7 h1 [  k5 Q& J, J, Q
  '******************************************** 6 D8 Y% f) a8 n* Y# u& w/ U+ ^
  'end销毁类
% ~, Y. X' w; {' d4 q  '********************************************
- M: }6 F( Q8 B9 U2 J  '******************************************** 7 s) i7 `! z/ r" R3 h
  'begin将Ansi编码的字符串进行Base64编码 & F1 W& ~3 |6 q' B: a9 N% Z
  '******************************************** # Y. n8 k6 N" {0 A" g5 s  k. W6 ^
  public function Encode(paramString)
) }, o; _; a- m- B' g  tempString="" & \1 c# ~/ j; D. u% T% j
  returnValue=""
8 @6 @( u! t2 _' R. h  lenString=len(paramString) 5 A1 ?/ ?& s$ v: t
  if lenString<1 then
+ z, |, X$ i% O- b& _' M/ T+ Y  Encode=returnValue
- C; A6 C  V, Z0 z) J  else ( M  o; }' [) v. h  S' N
  mod3String=lenString mod 3 " t; ^; T4 @" r
  '补足位数是为了便于计算 8 ^# t7 M9 }0 D5 q' U) I) S
  if mod3String>0 then
; S" o3 _9 h6 B( z& H, E0 h# j  lenString=lenString+3-mod3String
. i3 N6 @4 c- {. @' F  lenString=lenString-3 ; x' ~; V* y5 K) M* h/ e3 y( t
  end if

返回列表