返回列表 发帖

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

class Base64Class; ^, P7 U+ T" H( _. k, H
  rem Const # j7 S0 q; A$ s! v; G2 W) Q
  dim sBASE_64_CHARACTERS'转化码
" \  h: H, {+ F( j& J6 Z* d  dim lenString '计算字符串的长度 & }6 \; u  x9 d/ i
  dim iCount '计数器 . t% ^/ X1 ~! @& q5 ]( E' R
  dim returnValue '返回值
  @/ z" @3 }; W" Z) x# F  |" S  dim tempChar'缓存字符
. b. t% t1 F2 L: [3 C- }7 S; z- K  dim tempString'缓存字符串
0 E' c4 e+ X% |' P  F  dim paramString '参数字符串
( _' _. o% g" T3 v2 ^6 }  dim temHex'缓存缓存十六进制 9 t1 ^2 Z+ d9 S9 z
  dim tempLow'缓存低位
. o* [- ]# e3 ~/ ?" ^# s  dim tempHigh'缓存高位
. U) Q: J3 \) R) S& b  dim mod3String'
, |: ]  ]* G' S( C9 V  dim mod4String'
. ^" b, ~4 @% i; [1 @: q  dim tempBinary' / U) F+ E4 n. s8 t) R
  dim tempByteOne' . V& X; z  l% G5 r. Z* [6 G3 d
  dim tempByteTwo'
# C. z7 q. X1 c/ S7 Q* K: g. v# l  dim tempByteThree'
2 X' `% d5 i$ c. |7 S  dim tempByteFour'
& x- r; z# b) L; [9 s  dim tempSaveBitsOne'
, P9 y. p4 ]) N: i8 v  dim tempSaveBitsTwo'
; t8 q+ i4 L* Q  '********************************************
  }" P& f# ]4 l# I& [, J& T  'begin初始化类
! f# |9 F6 |8 v1 A8 `: f2 m  '******************************************** ; ^# w& h2 Y& a& Q; e/ h. U5 `0 X
  private sub Class_Initialize() # Y8 e1 m& a# C: K: M) Y
  sBASE_64_CHARACTERS = "ABCDEFGHIJKLMNOPQRSTUVWXYZabcdefghijklmnopqrstuvwxyz0123456789+/" end sub
# ?/ _4 V5 c6 c' U  '********************************************
8 F9 L% @9 ^& B8 ^; `+ a  P; p  'end初始化类 ', x/ j& S  a0 Y2 t3 E( ^7 i0 g5 o
  ********************************************
/ N+ j2 n% O) y2 k. Q  '******************************************** ( T+ S1 h2 ?' [8 U+ u; Y
  'begin销毁类 . G9 m5 i9 Q) D
  '******************************************** ( q) j' `0 n, }6 P5 K5 Z
  Private Sub Class_Terminate() ! q3 |2 a# w, w' ~- p
  sBASE_64_CHARACTERS="" end sub , q2 c3 {$ U, w) j
  '******************************************** . U6 D+ `2 e% P) C: d3 e( y
  'end销毁类 8 n% v2 j9 T5 Q  j; y' o
  '********************************************' Q: f$ V. j1 Q- `: ?" H* t8 U
  '******************************************** 4 t" n6 S% E1 W3 `# u
  'begin将Ansi编码的字符串进行Base64编码 " r! ^; l5 Z1 x4 q( Y' d
  '******************************************** 8 V2 ]2 N& ~0 P: p8 f9 w& i
  public function Encode(paramString) % g/ V+ m3 o" H# s' d' F
  tempString="" ! J0 ~. E$ i4 d6 M* {/ m
  returnValue=""
4 J* k: P3 F$ R8 _  H  lenString=len(paramString) 2 p# |+ A) s/ }6 U) B; U% @
  if lenString<1 then
+ F/ [( |7 p9 _" {( Z  Encode=returnValue
/ X; C4 M! o. o: K$ g& y  else
' e) g1 c" m: P/ Z- x7 h/ }6 `$ A  mod3String=lenString mod 3 + \5 Z7 Q2 L$ T8 t  [' X2 ]1 f
  '补足位数是为了便于计算
- W" O/ H% c4 v* q4 [  if mod3String>0 then ) C; n0 C+ V' G. g+ f0 P
  lenString=lenString+3-mod3String   |9 B: A1 R/ |3 {* ?
  lenString=lenString-3
' N6 ]. x6 h$ t; ]  d  end if

返回列表