返回列表 发帖

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

class Base64Class) v# h/ o: t) G* v* N; e% T
  rem Const " D& p# O7 `7 t8 \& k0 U% u1 Q
  dim sBASE_64_CHARACTERS'转化码 : j5 Y1 m: r. K' A) L2 Q# ^% a1 g
  dim lenString '计算字符串的长度
; Y2 o8 ~/ \3 N, j. x5 v! Q  |  dim iCount '计数器 9 V) q/ p: X' N. Q; g9 T4 c
  dim returnValue '返回值 2 `- p; f( A% B8 O! G
  dim tempChar'缓存字符
! R. v% {7 A2 H0 S8 d1 `  dim tempString'缓存字符串
. [7 |% K3 [. I. j2 }. i  dim paramString '参数字符串
  N* X: T3 j/ q# J* b  dim temHex'缓存缓存十六进制
8 H6 @& }5 P' ]# W  dim tempLow'缓存低位
' e. ~. n4 d2 f$ X) F  dim tempHigh'缓存高位 : ]# e' h) ^2 ]8 N" U  O
  dim mod3String'
3 {9 w. }" J! |& ?" }( y  dim mod4String' ) |$ m; n! H8 x4 x' J4 Y0 m/ }  A
  dim tempBinary' # d/ |6 ]! c2 d9 [3 B+ J4 H
  dim tempByteOne' " V* e: T0 ?3 T7 L7 v' Q
  dim tempByteTwo'
9 U, \# u# D- S7 s+ o& L: P+ n  dim tempByteThree' 9 V1 @$ V2 z. F7 t' ^
  dim tempByteFour'
7 l: V; `4 i: T! h. V  dim tempSaveBitsOne'
/ Q  K! i# b& ^2 ^8 o' Q  dim tempSaveBitsTwo'
: W9 C& B) Y1 ~9 ?1 y4 h# v) p  '********************************************
- w3 Q8 Y* c9 \/ X# B) J9 ]; G+ {  'begin初始化类
6 D5 l; h3 Y- D/ o6 ~( C  '******************************************** 4 j$ D, s* R' G3 m! N) A
  private sub Class_Initialize() 1 X' m3 s* k8 x8 r" R5 F
  sBASE_64_CHARACTERS = "ABCDEFGHIJKLMNOPQRSTUVWXYZabcdefghijklmnopqrstuvwxyz0123456789+/" end sub 7 U1 q& P- P  I+ ^5 ]$ ?) I7 c
  '********************************************
( j! `' k; Q5 n" K# b- O! ~  'end初始化类 '+ ?8 D! y: v. Y: \/ H
  ********************************************
$ |2 }; t2 E5 U4 }# I+ x  '********************************************
3 W0 |+ h, x0 [! Q3 I  'begin销毁类 $ Z' h: j% n7 W7 ^5 L
  '********************************************
0 N4 m) X! t8 Q  V& ^% H  P  Private Sub Class_Terminate() * V0 h9 y% c* O2 a
  sBASE_64_CHARACTERS="" end sub   \. s. z* k: y) p6 U' |% _4 J
  '********************************************
- k0 t4 }* W, o+ e! X4 z. A  'end销毁类 8 D5 {& n0 H' @6 X
  '********************************************
& X% S' W1 c- g! v  '******************************************** - Z: }5 E5 x! ~. l
  'begin将Ansi编码的字符串进行Base64编码
& _, o; s7 G; D+ C% g  b  '********************************************
' T* `) O  F$ p" g  public function Encode(paramString)
6 C0 c6 _. J  h# u  tempString=""
& q/ Z- l5 V. ^0 ~1 k4 L  returnValue=""
1 \$ U# T6 f6 O2 n  lenString=len(paramString)
6 ~' ]0 K  q0 f  if lenString<1 then , p' L7 d8 f  a0 N; h
  Encode=returnValue
$ [3 f- ^/ l3 s0 M  else
- r: G  _: x% s1 i  mod3String=lenString mod 3 ) V& V8 A( t" T3 G& P+ t
  '补足位数是为了便于计算 $ n0 a2 J# c! q0 K0 a; E  q
  if mod3String>0 then $ _) `: g  a2 M. s# p2 L/ G
  lenString=lenString+3-mod3String   j* ?! |( v1 V% W" C
  lenString=lenString-3
7 |0 O. ]7 R# w9 e. {8 J7 x+ W  end if

返回列表