返回列表 发帖

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

class Base64Class
# Q( M' K- r& R$ \! d/ ^  rem Const
' E7 R2 \) ~( B5 b; D  dim sBASE_64_CHARACTERS'转化码 : @  A( e4 ]& M/ z5 s& d$ ^, o
  dim lenString '计算字符串的长度
# {0 g9 U) b' }0 f  dim iCount '计数器 9 Z* b2 w5 B/ {0 C
  dim returnValue '返回值 . k! L4 h4 e7 d; u# e7 Q) b
  dim tempChar'缓存字符
2 W2 S& d; w. G" H* Q+ t  dim tempString'缓存字符串
( g: b9 V5 C9 n7 ?! J2 u  dim paramString '参数字符串 : n/ b" v% g- H$ d" K5 d
  dim temHex'缓存缓存十六进制
, z  S6 V5 {% B  dim tempLow'缓存低位 , ?& ^* z9 L1 O4 u7 z5 }4 ]- u. M& ~( |# G
  dim tempHigh'缓存高位 + N# y! J8 l# O; f; e
  dim mod3String' 5 n0 K9 }4 t  H- j4 K
  dim mod4String'
3 ?! g, a1 |' ]- \4 f" v  l# ~  dim tempBinary' ! o3 i  ~( [' G* i5 D' |$ N# _
  dim tempByteOne'
/ }' i" P- p/ s6 f5 E' J2 o  dim tempByteTwo'
) J0 y8 b8 Y9 N  dim tempByteThree' 3 x) t8 k! f9 P7 W& y' r
  dim tempByteFour' - L( d4 y7 |- [& F* [- w* o, B
  dim tempSaveBitsOne'
1 I/ Q; ]/ M' W: R6 k# q. L  dim tempSaveBitsTwo' 5 [0 Y# o8 _9 B; E; y8 \9 W6 u
  '********************************************
' }* H! I+ {7 _9 s( j. F( W  'begin初始化类 : Y' \  W9 `& h! m7 r/ j
  '******************************************** . [" S# s1 {5 d; v' Y4 M
  private sub Class_Initialize()
* K1 r, v% h6 a- i  sBASE_64_CHARACTERS = "ABCDEFGHIJKLMNOPQRSTUVWXYZabcdefghijklmnopqrstuvwxyz0123456789+/" end sub
; T' H+ g* _$ d0 y  '******************************************** ' [5 f6 d2 P+ _9 F; K( y2 R: M
  'end初始化类 '2 B. U0 L6 }: W
  ********************************************
! {' f. x- b, r$ `3 E" h/ Z, b  M  '******************************************** 9 M! W' a0 d) p9 |. w/ D# u
  'begin销毁类 6 F6 r. B8 z6 P9 M
  '******************************************** * m9 H9 E7 M8 X8 @6 \
  Private Sub Class_Terminate()
" ~( ]. h9 l7 d9 J8 H. r4 C0 B  sBASE_64_CHARACTERS="" end sub
4 w  w4 E! @7 B0 m  '********************************************
% K9 y6 {; X& Z1 ]7 c  'end销毁类   b9 [( w9 ?; o! s3 ^& r, T/ J; c
  '********************************************
- h1 b' r; k1 v6 }& o6 A  '******************************************** 8 p( Q; m/ B7 h4 x9 v
  'begin将Ansi编码的字符串进行Base64编码
$ S9 b* D  p% T! T  i7 e  '********************************************
7 g# S; Q+ ^! f  public function Encode(paramString)
9 Z- N; I8 P- T  S9 n$ C  tempString=""
" ^# W7 h- R  x/ b5 d8 p& {  returnValue="" ' j& B9 {( @% f$ p
  lenString=len(paramString) & f' K; l- t7 _  w+ A2 i, {
  if lenString<1 then
  U/ w7 w( l# q4 d  D# `8 G  Encode=returnValue 4 f" u: p( Q: n" R+ w1 z% i
  else 2 L2 |; ]* m: x5 D7 R
  mod3String=lenString mod 3 6 s9 _" z7 q, N; p/ z
  '补足位数是为了便于计算
+ z3 G; J' ?0 M. ~" f" {  if mod3String>0 then
+ B" P( J* f! t( w) n  lenString=lenString+3-mod3String ) r  t0 N/ G4 g+ K) T. t* T2 v: @. m- K
  lenString=lenString-3
, L& y8 C+ C/ y% v! \% a" l  end if

返回列表