返回列表 发帖

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

class Base64Class
$ U4 G( _/ o+ P* t! ~# e. m  rem Const
2 F$ y2 ?( W1 @  dim sBASE_64_CHARACTERS'转化码
) s' l; V& j0 U, K  dim lenString '计算字符串的长度
( G. {8 O2 n; ^- ^- w) F8 f  dim iCount '计数器 & D# v" _! X- G7 [, x: P4 |4 e+ |5 y
  dim returnValue '返回值 / z$ G9 g- s0 r, C
  dim tempChar'缓存字符 7 Q! x3 u9 q: X9 ^& \
  dim tempString'缓存字符串 % h  U1 j+ ]' x$ u. a
  dim paramString '参数字符串
, ^- y4 t! P$ j" W; ]8 P. O' e$ R  dim temHex'缓存缓存十六进制
$ k4 r8 s4 g* l8 i# Z  dim tempLow'缓存低位 & z7 M5 K' W3 W5 V/ T8 E
  dim tempHigh'缓存高位
- y1 r$ Z- B) q" n: V8 F  dim mod3String' " F0 W5 ]3 }. i. k+ e
  dim mod4String'
/ W- P7 a& f  o, T' w6 h& ]" X( O  dim tempBinary'
  j' L  S. g2 a6 ^  dim tempByteOne'
! U3 |5 C  D' o  dim tempByteTwo'
4 d  i( E8 V5 g7 Q- j8 v  dim tempByteThree' 3 ~4 U' E+ I: j
  dim tempByteFour'
- o% a/ }" G7 z$ H  dim tempSaveBitsOne'
1 V  w* L4 j, s& ?6 |/ q7 F( f  dim tempSaveBitsTwo'
3 ^1 V1 ]' U+ T5 x. v& g9 p& w  '********************************************
1 f% U. s( Y8 I  'begin初始化类 $ e. I8 |4 l, N/ d
  '********************************************
. x' @0 D- }7 x  private sub Class_Initialize()
% z3 _' f9 n- y  sBASE_64_CHARACTERS = "ABCDEFGHIJKLMNOPQRSTUVWXYZabcdefghijklmnopqrstuvwxyz0123456789+/" end sub 3 }: O5 L2 d/ P
  '********************************************
- [$ \5 M% W9 ?. W/ [& g5 F  'end初始化类 '! ?' z2 I- b' h# x) ~8 [
  ********************************************
3 d" ]5 n0 V' |7 e# Z( `  '********************************************
  ^+ w  V$ h9 j4 Y; h  'begin销毁类 ( s/ y% H7 O% L' [  ?* G  [
  '******************************************** + r9 x! Q1 {( x! f$ p
  Private Sub Class_Terminate()
4 V0 i: O3 a$ i  z, Y# d! y  sBASE_64_CHARACTERS="" end sub
: x; Q( q2 {9 E# J3 _  '********************************************
3 Z) b5 m/ ]  |8 m9 O  'end销毁类
6 y: A# ^' P( @% G. f  '********************************************
; v* k! d" {0 K9 g( D  '******************************************** 6 O+ s+ B( ?; S1 O9 @  |; q
  'begin将Ansi编码的字符串进行Base64编码 . C" E' I+ |! U4 Z
  '******************************************** . f, G/ s# U( _" ?
  public function Encode(paramString)
3 D* ?* t8 W' t7 y+ J9 z( I  tempString="" 1 b% P' c8 F- W6 j) D
  returnValue=""
- k  ~, G' Y4 n$ g$ l# ^, p  lenString=len(paramString)
. d0 O* W/ e0 e2 ?: R) v& Z  if lenString<1 then
' i4 ?# S6 Z5 b( ^" @& |+ u! J& B  Encode=returnValue " D0 R& r& ?$ D
  else ) ?& i% f* o6 |9 r: s- D+ L
  mod3String=lenString mod 3 0 o9 n% S! |- W
  '补足位数是为了便于计算 % t" A/ v6 r# b6 |1 a7 n
  if mod3String>0 then - i# [- ^0 m- H+ R! X" j7 H- C6 M9 `
  lenString=lenString+3-mod3String
/ p$ I/ s/ v- @8 V3 y  }/ |  lenString=lenString-3 5 n- @; Y; E  c7 ~1 o6 g
  end if

返回列表