返回列表 发帖

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

class Base64Class) j. U7 M0 Q8 x: c5 d, q
  rem Const
! O7 L( @: b7 k6 ]+ @2 ^! R  dim sBASE_64_CHARACTERS'转化码
4 I4 Q' B, N; t4 l$ _  dim lenString '计算字符串的长度 9 p( z; b+ s9 W7 T
  dim iCount '计数器 % f9 T6 t, j7 _* k- z. J) ?" D
  dim returnValue '返回值
7 }3 `& n/ b& z9 f# W5 p  dim tempChar'缓存字符 ' w- L$ f6 y3 O
  dim tempString'缓存字符串
6 w. f" W! }' M! Z; [+ }! L  dim paramString '参数字符串
* _- l# F5 i- C  dim temHex'缓存缓存十六进制
) h2 B8 b" u6 a$ b/ ?. ?* r! M  dim tempLow'缓存低位
  f4 L, v9 X) _& k# n- A  dim tempHigh'缓存高位 & F# O8 C' ~$ W% v( t
  dim mod3String'
( [0 a+ u& m$ h+ N4 H8 m  dim mod4String'
# S. J# N8 T6 |5 w6 Z# {; R: M  dim tempBinary' 3 {7 g! M% r" j) y
  dim tempByteOne' & F# U4 i) z8 t; u
  dim tempByteTwo' 3 V5 P# m7 k, l! u
  dim tempByteThree' + l0 v/ ?4 k/ O/ N3 p( ]# b
  dim tempByteFour' 9 p, \: l; ^& V* X
  dim tempSaveBitsOne' 9 V5 p. {6 H1 ]+ S5 F+ J
  dim tempSaveBitsTwo' 2 n. z: |+ C) }+ R- g- U# ~
  '********************************************8 ?% m" b7 v6 U& K
  'begin初始化类
/ p5 ?: V* }2 d  '********************************************
; ^$ t' a# c9 g7 d7 g1 R! f  private sub Class_Initialize() & Q# W( }1 W: |3 x; f
  sBASE_64_CHARACTERS = "ABCDEFGHIJKLMNOPQRSTUVWXYZabcdefghijklmnopqrstuvwxyz0123456789+/" end sub
$ k/ M( \. ~+ }1 p  '******************************************** ; X; _4 N& y& N5 Y' V- ~
  'end初始化类 '& c  L/ P, M" w; f7 f! S+ M; K
  ******************************************** ' o/ ~: ]/ w+ M/ o: m5 f
  '******************************************** 1 A* n6 n. G9 W
  'begin销毁类 6 c7 W# M7 n% @) _% k+ [  k
  '********************************************
: W+ M3 v& z2 m; i  Private Sub Class_Terminate() 7 D3 Q- y  A9 B+ X( v
  sBASE_64_CHARACTERS="" end sub
+ ?: J+ E& `- I9 q  '********************************************
( b" ^4 S0 j  o, p9 l  'end销毁类 , Z  b( f$ @* x  ?/ G. l9 g
  '********************************************
3 W$ S1 K; [1 C7 l% P. @  '********************************************
; q+ A5 f' v" n! ]" a  'begin将Ansi编码的字符串进行Base64编码 . M5 t5 a6 L5 I$ ^. d# A6 n
  '********************************************
' R) [+ s4 ~" [  public function Encode(paramString) $ |' G! J1 N. U& \% g# N) y
  tempString=""
: s, n0 G5 V" p9 g+ J  returnValue="" 9 S# ?& C2 j5 [- ~
  lenString=len(paramString)
9 ~' h! r( l: |! c; v8 }6 b  if lenString<1 then
# t2 q: m1 G/ g) H& |1 ^# ?+ l" ]  Encode=returnValue
. `& \0 w5 e% P3 Q5 `  else 4 ?8 ^; |% Q0 d) a0 o
  mod3String=lenString mod 3 . ?0 E1 k* Z1 R  g4 o
  '补足位数是为了便于计算 # E1 ^- x4 Q4 U2 u4 b' b# D2 N
  if mod3String>0 then
! q% q- o9 T) _, P! H6 S- d1 p  lenString=lenString+3-mod3String # u6 E6 a3 E, k4 t% R3 ~
  lenString=lenString-3 : Q  y$ o; l& T/ K" \! T; o7 U1 f
  end if

返回列表