返回列表 发帖

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

class Base64Class8 g& K7 S. s) g: U3 v
  rem Const 1 t  c& y; b6 U$ R) E$ U; ^
  dim sBASE_64_CHARACTERS'转化码
2 a6 U# |+ L3 U; ~+ o; o( a6 Q  dim lenString '计算字符串的长度
' `+ O  e! L/ J( ?) z: H+ K: G  dim iCount '计数器
- u7 |# R$ s. |/ K, D0 p* n) r  dim returnValue '返回值 . y, A1 L0 v: K8 r' a! x
  dim tempChar'缓存字符
" q8 J: e) S9 X$ A  dim tempString'缓存字符串
8 ~) J. {0 H+ X# n; _7 E9 D  dim paramString '参数字符串
3 y& `" v" N- x- A( [3 K  a  dim temHex'缓存缓存十六进制
: _: @0 J8 l7 o" M  dim tempLow'缓存低位
1 A8 x+ _. W% t% w1 }  dim tempHigh'缓存高位
9 v) ]& S- K+ h1 G  dim mod3String' 5 Y* j0 c% i/ y; K& e% r+ w
  dim mod4String'
9 \4 }" D% E( U" ?4 U( Z  dim tempBinary'
3 _$ r8 K& U$ P. E3 b# j$ L  dim tempByteOne'
" d/ P1 f0 s" X% l0 V5 y  N. V  dim tempByteTwo'
4 W& e- V) ^/ s% A! f9 }  dim tempByteThree'
! E# g" P+ X) g, i$ L4 t  U# n9 {' O  dim tempByteFour'
+ S! p; ~0 A9 B4 P$ i( s% |0 w) g  dim tempSaveBitsOne' 5 u1 J+ Y5 O/ X  S( u8 @/ i. H( Z5 G$ l
  dim tempSaveBitsTwo' 2 F9 D  u) j& m. k
  '********************************************- a  T9 Z4 T+ |, s: J* l3 p' j
  'begin初始化类
" b, b; W+ N0 P+ J6 ]  '********************************************
' o. W1 @# M+ @* _* Y' S8 P9 ^  private sub Class_Initialize()
* O" H3 e1 B5 n6 d7 e- m  sBASE_64_CHARACTERS = "ABCDEFGHIJKLMNOPQRSTUVWXYZabcdefghijklmnopqrstuvwxyz0123456789+/" end sub ( \! S* d; t! @) C! K/ B
  '******************************************** 1 c9 y) e  \( Z8 ?" a' _
  'end初始化类 '% y7 I0 n6 x, w) x, U$ U
  ******************************************** . I3 u* ]# x: F( e
  '******************************************** % V: ]4 G, ^5 k" y3 R) w; e) {
  'begin销毁类
+ S" M5 d! Z* ?7 }* U) e+ g) r: S  '******************************************** - a7 R  K: c0 b7 @$ @% @" L% i
  Private Sub Class_Terminate()
% H" M( G: c! P: A6 q. M1 a- Z" J# B  sBASE_64_CHARACTERS="" end sub
  u( ^+ G# i. ~$ q; P; ?  '******************************************** 6 U( |1 X, Q, f; b6 P+ p5 z
  'end销毁类 3 D$ K2 q- q5 ~: y2 _
  '********************************************
4 s# ~; g" d( }5 O8 Y# _% s) @' h  '******************************************** ! X7 k8 S6 v; o
  'begin将Ansi编码的字符串进行Base64编码 , v: X: N+ _, y# ^0 o& Z5 J
  '********************************************
$ F4 @' j' f- T* w# L# ^  public function Encode(paramString) * s, N& ?2 D: p) m4 C
  tempString="" 7 b4 x& N& E7 O' c6 ~- p
  returnValue=""
: Y& k2 z: @- o4 r1 c/ I3 U  lenString=len(paramString) * m5 k% A" t. L/ X, k9 ~6 {
  if lenString<1 then
5 P4 |6 d! m6 r: x  Encode=returnValue
! W# I1 a# @( p  else 3 a% \, j( E8 a0 c' g8 |1 }
  mod3String=lenString mod 3 6 O9 g; M, ?9 Z' I) Z+ R( P9 Q) M4 n! F
  '补足位数是为了便于计算 . S% _- B+ F& |$ {2 v2 o: a' k( x
  if mod3String>0 then ) p7 \2 M$ ?: f( n$ Z
  lenString=lenString+3-mod3String ( b/ h# z9 [+ \% `6 W4 q4 X/ I+ M7 Z
  lenString=lenString-3
0 K6 O2 F2 Q( i  end if

返回列表