返回列表 发帖

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

class Base64Class
: `. ^& j8 ?9 U- }# \/ g9 p2 j  rem Const 4 |* O% [% O2 L" j* z( F
  dim sBASE_64_CHARACTERS'转化码 * o" a" m8 [% I! [
  dim lenString '计算字符串的长度 4 \7 }( _* x: j  W" ]: N$ S; I
  dim iCount '计数器 . h$ P' |5 \7 u- L2 f2 `# W4 T
  dim returnValue '返回值
$ Y3 J4 ^. P# e; s; @0 V1 L3 Q( @  dim tempChar'缓存字符 8 J, _+ K: d# _( ~: t; w( w
  dim tempString'缓存字符串 ' d" R( _  U7 V* p' x: A
  dim paramString '参数字符串
! T, B& E, a+ r5 j1 {7 I  dim temHex'缓存缓存十六进制
3 O+ M4 F% e# ?% o  dim tempLow'缓存低位 : y5 @* ?/ @8 n( O* }3 z
  dim tempHigh'缓存高位
# n' c, s- {3 D3 k0 ^8 k5 O- M  dim mod3String' ' s% O9 V( W' e% n# ?! @' q4 M! U0 U
  dim mod4String' , D, l6 j7 C0 Y6 J. N4 v
  dim tempBinary' + n4 K! g  X! H) K- D& ~! |  p6 B7 e! W
  dim tempByteOne' * _3 A: ~* k. t4 y$ [
  dim tempByteTwo' , s! L* J, [" ^$ z6 J  l
  dim tempByteThree' ; H/ G1 m) s! }1 K% c! `
  dim tempByteFour' 2 \9 s' R4 U- A) ^1 `/ {' X
  dim tempSaveBitsOne' $ K' g/ e6 y* ~7 }1 I
  dim tempSaveBitsTwo' 0 U6 H7 |$ M; X3 V" U, M2 J& ?
  '********************************************) V$ p! {8 [+ X# g0 W
  'begin初始化类
1 \+ J: v' A, I) r0 W  '******************************************** 6 f# S6 [- L/ o3 F3 e6 _2 |
  private sub Class_Initialize()
4 C5 d2 ^/ t. S+ t4 o8 e$ T  Q3 p3 y0 ?  sBASE_64_CHARACTERS = "ABCDEFGHIJKLMNOPQRSTUVWXYZabcdefghijklmnopqrstuvwxyz0123456789+/" end sub : v) _0 I3 K  b5 V! ~
  '******************************************** 3 C7 l5 y, D& _
  'end初始化类 '3 G7 B3 ?# ~  w1 Y& l3 ^
  ******************************************** 1 ~4 z8 o* L8 y* r, I- \
  '********************************************
- I: n6 e8 O# ^% o  'begin销毁类
1 Q4 o! }, Z* q9 t. P6 K3 V  '******************************************** & ~; Q( m: h9 U# B
  Private Sub Class_Terminate()   ~) `, w  Z( W% z9 s/ v5 Q
  sBASE_64_CHARACTERS="" end sub " C6 k$ g- g: a
  '********************************************   ?7 T4 ^4 d* C4 l- T7 h5 {8 O
  'end销毁类
. V" Z6 N4 ?& c. ]5 q% h7 o. `  '********************************************
- W/ r5 G; a6 A$ B0 L4 A) B  '********************************************
# g" @" E: Z0 ^' F* Y( m* U  'begin将Ansi编码的字符串进行Base64编码 % s% C6 ~5 n& S8 ^: F9 Y
  '******************************************** 9 O* `8 D6 n2 x3 m, c( _
  public function Encode(paramString)
2 h! l: {. r  b* f9 a, O. v6 L  tempString="" ' d# O8 \* i. R- j
  returnValue=""
' n' @6 q) Y  b& W( r  lenString=len(paramString) : l  F$ p/ v3 _# E' E* K
  if lenString<1 then * @2 W% K. Z! `2 R6 ^
  Encode=returnValue / X7 i: P, _# U8 W
  else 8 b- ]6 i* E/ h6 p3 p3 f4 C
  mod3String=lenString mod 3
3 d' x* [( r- l  '补足位数是为了便于计算
0 h% @  e2 g' W5 _' R  if mod3String>0 then 5 z+ V9 P6 n5 x9 m& }2 }" ~
  lenString=lenString+3-mod3String
' y5 `+ ^4 W' q$ [! T7 u9 q  T  lenString=lenString-3
6 h. c$ ]8 P$ K5 D8 Y1 g6 l; i  end if

返回列表