返回列表 发帖

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

class Base64Class6 _, C/ T9 s) b" n3 a
  rem Const 6 I/ Y" }& U- ]2 L0 t: l
  dim sBASE_64_CHARACTERS'转化码 & J2 v$ Z/ I+ V5 O/ l! I' f
  dim lenString '计算字符串的长度
* _+ G  D. p8 `  dim iCount '计数器
" V4 t2 E+ v  G) q# p  dim returnValue '返回值 8 r; t2 E1 o( H" J: l# f! ^
  dim tempChar'缓存字符
+ X  S# R2 m7 V8 M  dim tempString'缓存字符串
' u6 r1 [! ?8 q  dim paramString '参数字符串
' O* S1 w9 c: u( V# x  dim temHex'缓存缓存十六进制
3 @7 @4 ~2 s' `6 e' L! l  dim tempLow'缓存低位
2 Z# y1 U5 j2 N4 b  z* f9 {  dim tempHigh'缓存高位
9 N( }+ E, m* _, d; K  dim mod3String' / {; B. a) v0 S3 V) [/ }
  dim mod4String'
6 L) Y4 @: [7 S# c4 R" L' U' p: e  dim tempBinary' ! i' Z1 G& y( ?( ^/ E
  dim tempByteOne' 7 n, x9 T# b6 R: [% K$ N( A# S+ W- z
  dim tempByteTwo' 3 n) E6 b% ~2 F
  dim tempByteThree' / f, }7 H7 v, f
  dim tempByteFour'
- E" f7 C5 d) f/ t/ N: X' k  dim tempSaveBitsOne'
& `2 w% G6 |2 Q& V- Z, U5 T& E: n  dim tempSaveBitsTwo' 6 B  a7 S9 h# l8 k" m$ V: r
  '********************************************
3 z* I+ @9 J* Z5 t  'begin初始化类 & W7 X& J( d( m2 b) O# N% D5 j
  '******************************************** 9 o2 v& W) Z+ C+ n2 j$ g  U
  private sub Class_Initialize()
, J1 M; L. m0 S4 Y  g  sBASE_64_CHARACTERS = "ABCDEFGHIJKLMNOPQRSTUVWXYZabcdefghijklmnopqrstuvwxyz0123456789+/" end sub
# F/ N8 ?6 G' k6 C  '********************************************
5 k0 v; o! C# q. o$ I  'end初始化类 '  U+ }! H5 M* K- A* m" ^. j' K
  ********************************************
3 X* X( ?6 c, U4 Z1 h/ B" J& _" K9 P' R  '********************************************
" z3 @. F( b/ n8 `  ~  'begin销毁类
# F, K2 a- J" t- e* G$ s  '********************************************
' s  V- f1 E0 B1 F  Private Sub Class_Terminate() ; z+ v! W1 N  X  J% x; q2 D% d5 n4 n! z
  sBASE_64_CHARACTERS="" end sub
0 @' g  \+ }+ a1 a0 f  '******************************************** $ w+ U0 ~: p7 f. ]5 |: Z+ g
  'end销毁类
; i4 x, `; q# K) `1 Z0 f( B, s  '********************************************
* G7 `' f3 K$ ~/ ~/ x/ I; z" O  '******************************************** 3 A% V. L3 G: ^5 g/ o! ?6 J/ V$ O" `
  'begin将Ansi编码的字符串进行Base64编码
- O; o0 h! ^# C; x2 B' g  '******************************************** 0 j7 J! }, d; V1 I  R. m6 k
  public function Encode(paramString)
" `9 |* M) s1 a8 I  tempString=""
' v) q3 H+ _) w% n  returnValue=""
, i* ^6 y5 E  C& n, i  lenString=len(paramString)
+ h* y+ m8 f. `( C  H  if lenString<1 then 5 Z$ [* I, E+ A! p( n
  Encode=returnValue
, {( s" V& U0 N# B2 l  else
& w" ?" Z+ D" Y2 |6 t+ m' x5 p  mod3String=lenString mod 3   e7 K0 l$ K9 i, W# A6 ]0 X; M( {! X
  '补足位数是为了便于计算
# }( o5 x9 g+ W4 a" ~6 S  if mod3String>0 then
$ F' ^6 C( q1 R; T* S/ |  lenString=lenString+3-mod3String $ t. X% N3 p: A
  lenString=lenString-3 0 o5 z; n* I3 S0 i, L
  end if

返回列表