返回列表 发帖

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

class Base64Class
; y5 ]1 F3 p' U% O* N4 n% u  rem Const % ?4 q& H5 }9 V- z
  dim sBASE_64_CHARACTERS'转化码 ( Z$ [; C/ X4 p) _
  dim lenString '计算字符串的长度 1 {$ ?7 j. y! c$ E# C2 g4 D
  dim iCount '计数器 - D$ ^; V) g2 |' m% |
  dim returnValue '返回值
! C: `4 }% c, I- D# P4 \2 u, |) A  dim tempChar'缓存字符
* B' _4 e: x# D% J# U% y  dim tempString'缓存字符串
  O8 w' d1 s5 L6 ?* B9 d7 A  dim paramString '参数字符串
7 F! D1 H1 T; B3 m8 E4 W  dim temHex'缓存缓存十六进制 0 t' I, Q4 ^) @; k  g+ s+ N
  dim tempLow'缓存低位
9 G7 o: w# u+ n% l  dim tempHigh'缓存高位
1 j5 G7 l  _! \# Y4 t( X  dim mod3String' & i& {3 M$ j& O3 F  o
  dim mod4String'
3 F" c( Z- P. W  dim tempBinary' 9 H+ x7 z( `" z9 i6 J" q
  dim tempByteOne'
9 g+ C/ T% x' x: J/ A  dim tempByteTwo' * ]% Z$ b. K$ l9 C  m( ^
  dim tempByteThree' ! ?& C: I/ A% }
  dim tempByteFour'
% x5 n0 v2 s6 p. w  dim tempSaveBitsOne' % p- t1 ^8 t2 z( b# V+ S4 I
  dim tempSaveBitsTwo'
, _- V1 Z9 f7 K3 L5 X( b  '********************************************
- j. ^0 h+ G4 M* T  'begin初始化类 , z+ j: M9 z8 V: h+ z
  '******************************************** ) x" r! X. ]/ z3 D) \7 N
  private sub Class_Initialize() 1 \: i% }8 t$ d: _1 T
  sBASE_64_CHARACTERS = "ABCDEFGHIJKLMNOPQRSTUVWXYZabcdefghijklmnopqrstuvwxyz0123456789+/" end sub
  |4 |  T: O* i  '******************************************** / n$ a) k" g2 p+ f0 {3 Y
  'end初始化类 '
0 O6 w5 R- D+ Q6 {( b  ********************************************
% w, b4 v0 E7 a* F  z2 i  '******************************************** ( H9 F3 C* J0 m
  'begin销毁类 5 {; {9 Z2 }8 B2 e3 w
  '********************************************
% \" L; R3 o( f$ Z  Private Sub Class_Terminate()
1 `* \# z( U9 ^2 C  sBASE_64_CHARACTERS="" end sub ; I! {& j4 P5 Y- W; ]  J
  '********************************************
* S: F4 l! A$ j4 t7 j( b, l  'end销毁类 " I, w, g! i4 |3 \8 k; X* i8 j; K0 e
  '********************************************: E, `2 f7 U+ U( B
  '******************************************** " X4 r  |" U; x; m% c
  'begin将Ansi编码的字符串进行Base64编码 * |8 J! r* u4 f+ k3 Z* J
  '******************************************** : }1 i; E7 h- \/ J7 }2 d3 \
  public function Encode(paramString)
9 }, n: M/ j( l' M% A( x+ G  tempString="" 8 a7 A( V. x" ~( p6 H$ @7 w
  returnValue=""
* j! ]+ ]& L& s' A/ U$ N  lenString=len(paramString) # O5 i3 F' e, j9 t& c1 a+ j  D
  if lenString<1 then 7 S7 m. H2 Y) Q9 a9 B: ~3 S
  Encode=returnValue 5 Z; m- M+ I3 o* E; a  B! h
  else , J1 E8 G- S8 v" y
  mod3String=lenString mod 3
3 n4 U) l+ v# D  '补足位数是为了便于计算 * l3 o& r" D$ B+ K! e: i: Z
  if mod3String>0 then
: m5 f0 q) R  b- R  lenString=lenString+3-mod3String
5 K  c0 N4 W( D1 m/ {  X! P5 s" `  lenString=lenString-3 . t6 V; N/ t; ^+ x' _2 U
  end if

返回列表