返回列表 发帖

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

class Base64Class
& q5 m# V* W4 C% m) O' ~  rem Const
4 R/ q! `9 \' I, o) |  dim sBASE_64_CHARACTERS'转化码
7 z* M- \( _/ ^" j. q  dim lenString '计算字符串的长度 + K& W2 A" `2 ^+ r0 p7 K
  dim iCount '计数器 7 T0 r# y: m5 o+ m0 y, s3 l2 E$ j
  dim returnValue '返回值
7 [3 X/ j8 N1 E  dim tempChar'缓存字符 2 w; H2 ?5 P9 s$ r1 n
  dim tempString'缓存字符串 ' [( k/ c. a0 t& Z+ Z3 T" S
  dim paramString '参数字符串
  V9 \. t$ G6 W5 T! y( N# m) `  dim temHex'缓存缓存十六进制 & A( ]7 A, k3 a( W' ~. f8 z
  dim tempLow'缓存低位 # A0 M. D8 R5 h  q  U5 z8 `! H
  dim tempHigh'缓存高位
" s5 ?1 B7 M$ o2 U  dim mod3String'
  {& L( ]) i2 O, V, ?  dim mod4String'   I! O3 ~$ a8 ^, n  g- V  I( ?3 J
  dim tempBinary'
) D2 j" V- c& P  dim tempByteOne'
: n8 X) u5 i- Q  v! k( s; P  dim tempByteTwo' % N: v2 i$ L& e' k& w
  dim tempByteThree'
, L" z1 X0 m$ G5 p  dim tempByteFour'
- s9 @$ r. Q* f8 \% U  dim tempSaveBitsOne' 4 ~# ~  H# k) J+ Y* F6 r% T, o
  dim tempSaveBitsTwo' , K" y1 `* k: X& W
  '********************************************
, k- e1 e2 e+ A$ v: ~  'begin初始化类
: v( X3 T; l' x6 b1 u. H4 J+ L3 P  '********************************************
* d. X2 j4 }4 ~  Z1 j" X  private sub Class_Initialize() 9 v2 Y/ T% \' l* j
  sBASE_64_CHARACTERS = "ABCDEFGHIJKLMNOPQRSTUVWXYZabcdefghijklmnopqrstuvwxyz0123456789+/" end sub 8 ]6 ^# P+ M' z8 }' v, y
  '******************************************** # }. q8 W" n' J3 v" {7 J: h9 `) A
  'end初始化类 '
# e' B5 |* x- K* L  ********************************************
5 V9 P: C$ z  D, b  '********************************************
0 j. |) q8 J  _7 \2 z5 l5 h7 ]  'begin销毁类
9 T& n7 ?! O" o0 H: |: n; m) s8 g  '******************************************** % V$ K. N! t# l: Y% G' m
  Private Sub Class_Terminate() 2 h$ h7 R! c3 Q0 x$ v8 v
  sBASE_64_CHARACTERS="" end sub : S$ q+ c; O; i7 Y' U
  '******************************************** / ~" d# r% d5 f/ ^* K9 e
  'end销毁类 ' f9 B. o  W5 i
  '********************************************
/ K$ e. Y/ g; _; x5 E% s; w  '********************************************
# r6 ]0 i9 Q( C  {  'begin将Ansi编码的字符串进行Base64编码 3 {0 |2 o$ e4 o% C) n+ H
  '********************************************
! H2 }0 L: U# X+ l) G  public function Encode(paramString) " x5 V' s$ w) I! C. Y9 |8 B; _
  tempString="" ( J  p- T+ P  {. `2 D
  returnValue=""
5 z8 Z4 ]( T2 O$ {( m6 V; {# G; O5 f  lenString=len(paramString) 1 ?3 A3 v$ @' o/ F8 @$ v
  if lenString<1 then   u0 Y5 H% H& L
  Encode=returnValue
  C7 u+ t) Q' P  else
  `( J4 L5 C5 q) d6 r4 o" s9 q  mod3String=lenString mod 3
4 }- D" P: W3 ~/ j2 f. o  '补足位数是为了便于计算 9 s2 v3 D) H3 w& ]. T5 A" ?: B
  if mod3String>0 then 8 |" _6 q1 ]% |: |$ K* ~2 |6 e  o
  lenString=lenString+3-mod3String . n7 p! F/ a+ x7 F' s) s
  lenString=lenString-3
7 {* H; H, ~( u$ v: W" P3 x+ `2 m) N  end if

返回列表