返回列表 发帖

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

class Base64Class
0 [0 ]' K' ~0 Y  rem Const
3 i$ G) z! n, b  dim sBASE_64_CHARACTERS'转化码 8 V6 z  Q3 w  o0 @, A6 j: [$ z
  dim lenString '计算字符串的长度 7 l7 U4 ]+ ]" P% g. J  `( H' p* Z6 b& E
  dim iCount '计数器
& f( _' _3 e2 n- v5 g! o- B6 W% P  dim returnValue '返回值
: F' ~1 y2 O5 d5 D  dim tempChar'缓存字符 3 k- e  P* e3 b8 I1 }9 k
  dim tempString'缓存字符串
+ K6 a& b9 Q# ]& x% l% f  dim paramString '参数字符串
3 n* g  [4 y: i8 M  dim temHex'缓存缓存十六进制
* w. r. v8 n. J5 _9 D  dim tempLow'缓存低位 + o: [0 d. v, L* ^
  dim tempHigh'缓存高位
8 q5 C9 F' B9 B; L6 C! `+ q  dim mod3String' 8 Q2 N: o. U/ w
  dim mod4String'
3 i) D1 }, l/ d  dim tempBinary'
% d: n- J5 _+ _2 A7 J3 K  dim tempByteOne' ) O" c7 ]  @$ j' f  m
  dim tempByteTwo'
0 W: i0 L% {' t" }. e  dim tempByteThree' + c# n& R5 D" C4 c" u9 s
  dim tempByteFour' ( ^3 _6 X( I+ `1 f# n1 @
  dim tempSaveBitsOne' 5 c) [- W. _5 R; K- f
  dim tempSaveBitsTwo' 6 h9 X" m( N! A3 l% k
  '********************************************
7 _* M/ n/ S- f& f0 x  'begin初始化类
9 _; a. X' L* j5 v/ @  '******************************************** ; o, S3 V" p' B4 I
  private sub Class_Initialize()
' z- U+ r6 ]; z- x! n  sBASE_64_CHARACTERS = "ABCDEFGHIJKLMNOPQRSTUVWXYZabcdefghijklmnopqrstuvwxyz0123456789+/" end sub
8 S' N9 ]% _4 }8 \$ p  '******************************************** . D2 h( E* H4 I- n2 E" Z, n
  'end初始化类 '
, ~% ~, J3 n: ^- [  ******************************************** " a) _( Z# s4 R4 B! e9 p
  '******************************************** 3 S3 ^/ B4 v7 ]# O% I+ \7 U
  'begin销毁类 * w5 h( ~# x4 E8 O$ s9 g/ C
  '******************************************** . u- A; n2 P) z  S
  Private Sub Class_Terminate() , P$ M# P5 U7 a% a. B. Y2 |7 z
  sBASE_64_CHARACTERS="" end sub 0 i: {8 G' _# n# ?1 [: x
  '********************************************
/ F6 [) Y' N8 U3 @. n  'end销毁类
! @0 d  ?$ h; o4 d  '********************************************
6 }! ]" V6 v( V+ }/ w3 Z- F  '******************************************** " a/ X' O% E4 @  ~
  'begin将Ansi编码的字符串进行Base64编码 7 o( _& o  t5 ^, g! g$ P6 c
  '******************************************** * ~6 }- V0 Q8 U# ?
  public function Encode(paramString) 2 o& e, Y; f; O, `* k, O
  tempString="" ; w6 ~3 [; z2 `6 w, }  V0 ^
  returnValue=""
0 ]4 P! q" Q+ U, G  N  lenString=len(paramString)
3 f  n2 l, n* b; o  if lenString<1 then $ {5 u; @* C$ q5 R" _$ u2 M1 y
  Encode=returnValue
3 F* J6 p/ W; U; b  else . z1 O; V' s% `& ]
  mod3String=lenString mod 3 ( a5 y! A: Q9 I( @, O
  '补足位数是为了便于计算
, R( D0 B9 d! L* m  @8 `  if mod3String>0 then
2 t$ }& |4 F6 `' K. w- ?; C, t  lenString=lenString+3-mod3String 6 A: E! n3 V5 Q7 Z% _1 \0 y) H
  lenString=lenString-3 # Z$ E. C4 O- v* j/ a  N7 T
  end if

返回列表