返回列表 发帖

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

class Base64Class7 V/ B7 Y6 d( V+ c
  rem Const
/ y0 c' Z- b" k" t  dim sBASE_64_CHARACTERS'转化码
! ~; j2 @1 O, a" v* _  dim lenString '计算字符串的长度
6 O3 ^* O- o( @. R% O6 Q  dim iCount '计数器 0 y% W" [( K5 K# g
  dim returnValue '返回值
9 f5 T, z& O3 L6 f. h7 S  dim tempChar'缓存字符
8 s% O* n3 Z8 p3 ?6 e0 {$ ^  dim tempString'缓存字符串
1 a$ P  T4 W% Y0 I: k! v  N  dim paramString '参数字符串
; z4 [  T( o0 z) w3 R* D" E  dim temHex'缓存缓存十六进制 : [# |9 |9 T7 @: i9 P
  dim tempLow'缓存低位
. I3 X( |  J6 \  dim tempHigh'缓存高位 - m1 |  Q! f% R, E3 u9 `
  dim mod3String'
0 I: j$ M' J8 f1 q) X% ~( r  dim mod4String' / z; n: b! D) Y  R" Z4 [
  dim tempBinary' ! u) W  x( L; L: E9 J* x
  dim tempByteOne' # J+ s  s6 U! S7 O" q
  dim tempByteTwo'
  }( T3 Q2 |7 p" ?2 g0 L# k  dim tempByteThree' / H' I/ F( Z; W" ~, r4 E" |
  dim tempByteFour'
0 }  ]5 v0 q2 `  dim tempSaveBitsOne' . ^' X5 s. g  q5 t$ f3 P3 q+ d
  dim tempSaveBitsTwo'
! Z4 K4 V1 u4 A8 [, c: t) E  '********************************************/ A5 v2 [1 C+ L4 |
  'begin初始化类 : ?6 l5 ^2 h0 W1 ^/ M1 B4 w
  '******************************************** ' n! V3 }6 _. d' {- N5 s# A
  private sub Class_Initialize() , H6 r, |- |# R5 `2 R
  sBASE_64_CHARACTERS = "ABCDEFGHIJKLMNOPQRSTUVWXYZabcdefghijklmnopqrstuvwxyz0123456789+/" end sub 2 j8 x* }$ A) L- `1 ?' X9 E$ Q
  '******************************************** % @; t7 v1 [3 h# q! b5 Q
  'end初始化类 '7 R3 a" a/ D# m/ H8 ~9 H
  ********************************************
: ^5 i) m& Y3 w. F  '********************************************
: b) z9 U0 l& s& d3 t' o, _  'begin销毁类
+ U# u" ~7 Z0 h7 ^/ m- T  '******************************************** : I! N$ Q3 J, H' V
  Private Sub Class_Terminate() 0 [3 O1 ^! Z. U0 q2 `( o
  sBASE_64_CHARACTERS="" end sub . a6 }: i# |$ w* ~4 Z4 S
  '******************************************** ( ?" W' q) g0 g
  'end销毁类 ) L' }7 Y* r. J  F9 s
  '********************************************
) o) ]5 J; Z1 ?  N  '******************************************** 1 D& b* ]! O( O+ _8 m8 |
  'begin将Ansi编码的字符串进行Base64编码 & c9 w8 Y8 y) k" P0 s8 S
  '********************************************
, ?4 m' {( P& f- p, N  public function Encode(paramString)
# S$ Q- Y( S; ~  tempString="" 0 b& F+ b: T2 {9 E
  returnValue=""
( M1 i8 T  d% B" g  lenString=len(paramString) : E& j, o' K$ }' w- L, s. H" |2 Z
  if lenString<1 then / j  K" Z4 D  m. A! [. x$ |& }
  Encode=returnValue   A7 ]& B$ {8 d5 F" q! q* t: v5 H& H0 J
  else & Q2 U  Q- p1 b
  mod3String=lenString mod 3
* U( s/ i  `; t, ^6 E$ @  '补足位数是为了便于计算 7 o( X) V- p6 g* w1 i/ b$ J( Y
  if mod3String>0 then
& L. \% a2 f* Z! q+ t  lenString=lenString+3-mod3String : k3 F3 p" x- W
  lenString=lenString-3 - b$ H+ u0 n% y3 M: J6 x1 }  c
  end if

返回列表