返回列表 发帖

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

class Base64Class
8 {& {* q/ i2 I  rem Const $ V1 t+ a6 U3 }1 V5 m
  dim sBASE_64_CHARACTERS'转化码
# y9 J1 F% t; c7 r: p  dim lenString '计算字符串的长度 & K  K+ \4 ?2 T, N
  dim iCount '计数器
4 `9 M9 L- ?7 N* V7 s& ~2 y  dim returnValue '返回值
7 Y6 I# s4 g; C6 _  dim tempChar'缓存字符 9 i7 [. g, N3 @1 S) A; R4 Q1 y" q; J
  dim tempString'缓存字符串
+ ?1 `8 p9 ^; {0 ?9 z( w, ]  dim paramString '参数字符串 ; u7 Q3 r9 m8 L2 K% h0 I
  dim temHex'缓存缓存十六进制 & G& G  d# ^' A$ G7 o8 T# i( Y1 M
  dim tempLow'缓存低位 " p3 h, ?. y! C5 S
  dim tempHigh'缓存高位 ) w* o" P/ k# n$ R* g2 |
  dim mod3String'
5 e. z8 |2 Q  x2 ~3 w: ]8 p  dim mod4String' 3 J  J- o, v' v/ N- T! E
  dim tempBinary'
" R. ]5 Y% j: `" C4 Y  dim tempByteOne' 8 a$ o5 S9 J2 t7 V: k: m& k
  dim tempByteTwo'
$ _) o" z0 d+ \4 a, {1 S  dim tempByteThree'
, N1 ?0 o- `% u5 `  dim tempByteFour' " q! ~) ?9 ?. ~8 V) o' M9 u8 p  v
  dim tempSaveBitsOne' 6 x, W/ g% q- H! `5 p
  dim tempSaveBitsTwo'
6 t1 f0 a, C$ [, W9 s# Y  '********************************************9 o4 \- ^, C9 A
  'begin初始化类
! w: E/ P" b- r) n7 _  '******************************************** 3 f) f3 Z8 D9 B* @# F+ u
  private sub Class_Initialize() 3 D5 r( t  @' F% A  m
  sBASE_64_CHARACTERS = "ABCDEFGHIJKLMNOPQRSTUVWXYZabcdefghijklmnopqrstuvwxyz0123456789+/" end sub & J$ U+ Z1 k8 l/ B% r
  '******************************************** 4 u6 z& m5 n$ H# p; _" C1 a( Y
  'end初始化类 '" b4 Q/ T( _4 G+ X# O
  ******************************************** # R2 a% `# r$ m# a7 r0 j1 s
  '******************************************** 6 e( A, C1 k0 T# b' m- z2 O* g
  'begin销毁类
! t% B- ~  Q3 b# O  '********************************************
$ n! w! m8 \- r' @+ [  Private Sub Class_Terminate() 8 N2 ~" {3 F" ^- |' l
  sBASE_64_CHARACTERS="" end sub ! d/ l. p5 X  [) R) Z1 N5 g% a1 X
  '********************************************
6 A- {3 A, z" R) w  'end销毁类
) G, `5 Y4 J$ C5 ~3 x; R) ^* n  '********************************************& u! g. n( A) K+ @! K5 f
  '******************************************** 3 J1 C8 }2 m) C# j9 p, |- N9 Q
  'begin将Ansi编码的字符串进行Base64编码
4 M! Z$ R+ x( r7 X0 b  i8 m  '******************************************** " d) p! q6 B4 D6 ~* |& k3 [+ k
  public function Encode(paramString)
+ j# l5 t6 ^$ [4 L( W0 N$ Y  tempString=""
6 y& Z+ u) C) M6 j% i4 Q  returnValue=""
/ w% g; E, J% J' T# r  p8 B/ d8 p. ?  lenString=len(paramString) 6 D; ], t5 F! n" T; A& b1 ]
  if lenString<1 then   m5 ?) Q) j! G0 ~+ A6 w
  Encode=returnValue - f( @3 V$ |! W: h  r
  else : B1 S" P% q" o8 v; T# A: M
  mod3String=lenString mod 3 % ]: S8 M  i) D1 m. {
  '补足位数是为了便于计算
* s; c; r& Q& e' w' _  if mod3String>0 then % x# W' m4 S5 I0 z7 n, y1 _/ T
  lenString=lenString+3-mod3String
$ H- X. A6 g4 n6 w2 V& I# o' L  lenString=lenString-3
, O' H+ e7 \- [0 o: x0 U& m( D) z  end if

返回列表