返回列表 发帖

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

class Base64Class) q% ^6 v9 u; _  a
  rem Const 8 B6 _3 V% t& K, Z9 T* R3 V
  dim sBASE_64_CHARACTERS'转化码 " w5 s5 E& d6 \; `( N% f& Y0 ?
  dim lenString '计算字符串的长度 0 O/ Q- o& B; ]
  dim iCount '计数器
' ?, `( w9 K6 [8 y4 g4 H  dim returnValue '返回值
; G$ }/ R7 b. p& q6 e$ a  dim tempChar'缓存字符
% q, Y- e1 R/ }# B6 N: B. s  dim tempString'缓存字符串
$ o4 i1 K8 |6 W  dim paramString '参数字符串 6 B2 O" ^2 V3 B) P  N/ w
  dim temHex'缓存缓存十六进制
  |5 b5 Z! v; T  dim tempLow'缓存低位 + k1 D3 S; G, C7 E
  dim tempHigh'缓存高位 " Q8 @. M0 ^5 a) r. X5 v6 }
  dim mod3String' - i3 M+ X4 p4 O$ Z" P9 H6 O& L, N0 C" B8 _
  dim mod4String' / P$ h% R4 }- S) h: n
  dim tempBinary' 4 z/ v, m) x8 F+ [; u1 j4 I  G
  dim tempByteOne' 1 ~, j7 g3 n. R3 \. q
  dim tempByteTwo' 8 ~0 A" ~. S9 g- W5 e5 O
  dim tempByteThree'
4 a+ Y2 N# l: V/ n5 b5 G) p  dim tempByteFour'
5 E& p, ~+ c# k! V: H8 [3 d' r  dim tempSaveBitsOne'
  N4 j( o4 l$ |4 M8 m- O& o  |+ _  dim tempSaveBitsTwo'
+ x! f! P, U( {, v  '********************************************# }9 o( y. z6 N% Y
  'begin初始化类 7 ?  D/ c) C: w% }. P( T
  '********************************************
& P: F2 P9 k; P1 d8 f  private sub Class_Initialize()
' {- n" |) }0 [3 S0 T  sBASE_64_CHARACTERS = "ABCDEFGHIJKLMNOPQRSTUVWXYZabcdefghijklmnopqrstuvwxyz0123456789+/" end sub   D# d3 y) U2 E$ r. q. D7 C
  '********************************************
, C/ \' \% ]8 `: B  H  'end初始化类 '
+ l  K3 h& v3 w  [8 \' }% z  ********************************************
$ Y3 l* J3 J+ Q( h  '********************************************
- x8 \# E. c/ ]! H" W  'begin销毁类 - D8 ~, f! }+ L! A! P
  '******************************************** ! {. W* }( o" ~* ?) q- \: v
  Private Sub Class_Terminate()
$ \* R% c5 b' }7 o# l  U: n' ]  sBASE_64_CHARACTERS="" end sub 0 m( K; k  Z' d
  '******************************************** ! h, [4 X* J6 K& |7 y
  'end销毁类
' H# F1 f; X4 T5 n8 X: |  '********************************************' u; |9 P& N6 v5 b
  '********************************************
1 W: b3 V# q6 ?3 K: U0 e: y  'begin将Ansi编码的字符串进行Base64编码 0 x6 L" T0 ]- a0 O
  '******************************************** 2 ]8 m" b8 p( _7 B/ s" {* w
  public function Encode(paramString)
0 f& ]7 D% |/ E) H  a/ E, D  tempString=""
9 Y, g4 S6 B# X& c% Y% E5 b& Q  returnValue=""
' H+ j) E# t! R" m  lenString=len(paramString) 7 r7 X& G4 e8 z; {4 {
  if lenString<1 then 4 O( ]3 l$ v, f, A& b1 i( _1 \
  Encode=returnValue , }: j; C$ L7 @& K% S
  else
8 i2 x4 K, z$ I9 N1 }0 ?4 ]1 K. a1 @  mod3String=lenString mod 3 0 `; Q' u  `3 w+ P6 O: [
  '补足位数是为了便于计算
: V3 `! b8 B4 T0 X  if mod3String>0 then
, ]& m. ?, H1 P- I3 J5 F& L6 m- }1 f  lenString=lenString+3-mod3String 8 x" v. \% H( W. e8 R& t
  lenString=lenString-3
3 h4 b% J( Y) S  end if

返回列表