返回列表 发帖

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

class Base64Class
" `: w3 @3 p+ k$ k  rem Const
& n+ }1 R" [: Q/ n  dim sBASE_64_CHARACTERS'转化码 $ v+ J* z* y. l' M
  dim lenString '计算字符串的长度 1 s) b# A4 N- Q
  dim iCount '计数器
( \) ?2 {! D9 _( w0 k+ j8 e' y  dim returnValue '返回值 6 d2 {3 Z- y# L
  dim tempChar'缓存字符
) W' u6 |& G: U7 I& w  dim tempString'缓存字符串
4 V3 z! P5 s% ^$ K9 `7 W  dim paramString '参数字符串
) s1 @( ~- b3 D; q4 p  dim temHex'缓存缓存十六进制
/ f: Z  T) Z6 Z$ x7 K  dim tempLow'缓存低位
. P& H( p2 j& |9 ?3 p, t  dim tempHigh'缓存高位 ! V4 Q: S8 n1 E+ C) c% ]+ B
  dim mod3String' 0 E5 F) w& Y! s- B% q; ~9 T
  dim mod4String'
  @: o) ~# Y$ b2 }! B; j  dim tempBinary' ; N7 q9 }2 Y# \* L% \
  dim tempByteOne'
! E1 B! `0 J! e' S! o* m. I  dim tempByteTwo' ' S2 ?! x5 A( N  o# t
  dim tempByteThree' ' N# a# N) b5 ^$ h' Y1 D
  dim tempByteFour' 3 @; i( C3 Y+ g7 X
  dim tempSaveBitsOne'
' Y! Z( r: V2 `. @1 t7 G  dim tempSaveBitsTwo' - w! U$ h8 C, ^, f
  '********************************************
1 p6 m; r+ R) l  'begin初始化类 5 }, k7 Y6 \; X- y2 m/ v
  '******************************************** - @( E0 L* U: G' P
  private sub Class_Initialize() * c% h; Q- g! L+ r& ~( t
  sBASE_64_CHARACTERS = "ABCDEFGHIJKLMNOPQRSTUVWXYZabcdefghijklmnopqrstuvwxyz0123456789+/" end sub / `8 Y3 d: U# v. o( Z, l
  '******************************************** * u7 H# d( z6 B2 @* o) v; M
  'end初始化类 '* a+ Y: s2 ^+ p. H  d
  ******************************************** 3 J7 G/ r! i2 O2 ]# @, N
  '********************************************
: i  `# r& E: p# `2 E  'begin销毁类
) G0 ]. ^* o# ~1 S4 R  B+ z( e5 R  '********************************************
  G) e0 z, l' U) p! I$ l5 O* E  Private Sub Class_Terminate()
/ ~% T3 n3 L2 i  sBASE_64_CHARACTERS="" end sub
, K. W( V- r. [. {3 H" Y" ~  '******************************************** 6 d$ r& m0 m% J- Y6 B7 u1 l
  'end销毁类 ' g7 f% w8 I  Z4 T
  '********************************************/ n  X7 W# ?  x7 x, d# N
  '******************************************** 8 v4 \0 S1 I; n! t# R1 @
  'begin将Ansi编码的字符串进行Base64编码
4 ^% N5 j9 C" G9 }  '******************************************** * K9 y8 \9 r  E4 g- G
  public function Encode(paramString) $ `: l' u  x! a
  tempString="" ( u, ^+ t! D$ o( L! z8 {
  returnValue="" * N0 g/ h3 r% l3 G; _
  lenString=len(paramString)
# S7 Q% s; V( U5 o( L+ T3 }2 g* u+ k  if lenString<1 then
' m( [4 ^+ y' Y& {4 o, i  w  Encode=returnValue
1 Y7 s. z# l8 E6 _: |  else
6 \- \2 O( d  o) @5 H  mod3String=lenString mod 3 ! u% {) A# W% Y, n1 y' q
  '补足位数是为了便于计算
" U6 y9 c1 {6 P# d4 I) Q  if mod3String>0 then " {! ]0 K7 j# f: N) z
  lenString=lenString+3-mod3String 2 _+ U' b% v. U
  lenString=lenString-3
1 b1 [7 A0 L, b5 e; Y  end if

返回列表