返回列表 发帖

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

class Base64Class' s2 a+ p4 c" Q+ ]. f0 H$ `3 ~+ d" O
  rem Const # ]% Y% F2 Y2 j" W7 x5 t0 R. S( A
  dim sBASE_64_CHARACTERS'转化码
, `- O# A6 A$ v. ^: f  dim lenString '计算字符串的长度 % I6 _2 a. G2 ]/ e$ d/ y3 g5 q
  dim iCount '计数器
( j9 K) e; ?( q* g4 L  dim returnValue '返回值
' E: J6 J8 Q) k) y, Q  dim tempChar'缓存字符 " Y7 T1 ~( Y& R' `% u0 S8 h
  dim tempString'缓存字符串 # l$ |0 a% {- |: b2 P( v7 ~4 C: D
  dim paramString '参数字符串 + E" r( k3 L, b& q
  dim temHex'缓存缓存十六进制 ! C! @: e3 I( R! Z- l
  dim tempLow'缓存低位
2 p! ^+ X& n6 v  dim tempHigh'缓存高位
* _5 s8 D1 y; k: l. B  dim mod3String' * ~3 q8 c7 G- ^* b, s( {5 K
  dim mod4String'
) p0 c3 b9 b. z  dim tempBinary' , m$ _3 c5 r' q  ]5 j1 T
  dim tempByteOne' : q. f/ J% u/ h! X
  dim tempByteTwo'
' K! ]9 H. [/ Z" n( I  dim tempByteThree'
* b  U) l2 }& d4 M: Z; v6 F  dim tempByteFour'
) v+ X9 J: e$ l* S2 P0 |  dim tempSaveBitsOne' 9 m4 Y- [9 i$ a& h; }
  dim tempSaveBitsTwo' ! Z7 y! ?; o* \$ `
  '********************************************
" u( V( I  C1 g/ P  'begin初始化类 ! I* v. @  j/ @8 \& H- |$ r1 O
  '********************************************
. S& b( g4 b1 Q) E, O  private sub Class_Initialize()
; Q& T% l/ g: x' Q; T  I4 z; S  sBASE_64_CHARACTERS = "ABCDEFGHIJKLMNOPQRSTUVWXYZabcdefghijklmnopqrstuvwxyz0123456789+/" end sub # c& Y) v: ?3 r
  '********************************************
* I+ p0 H- Z0 V! u$ v' y* Y  'end初始化类 '% y0 n) {6 F& r0 o
  ******************************************** 6 J2 q: T1 u% l, Q% T$ y2 a9 a
  '******************************************** 9 G3 j* r3 T( o. o
  'begin销毁类
% ~) L" J$ g6 q8 z" p( V+ s3 k( O/ A0 g  '********************************************
4 R  @/ W9 b, q. I  Private Sub Class_Terminate()
1 S$ R; f$ }. q  sBASE_64_CHARACTERS="" end sub
3 z3 z/ X8 l3 I; z! x4 x, ~  '******************************************** + w. y8 R, ]* n$ X* b
  'end销毁类 9 I5 p3 `" N1 s. p
  '********************************************! j7 O: W1 Z2 M0 E* l0 G9 k
  '******************************************** " j) C! C# Z$ Z0 T
  'begin将Ansi编码的字符串进行Base64编码
9 O7 ^2 b9 \% l& E& X  '******************************************** ) i0 I! }' ]& h% n6 q& ^- |
  public function Encode(paramString) 8 s  q3 T- c: F2 r4 j9 O" o
  tempString=""
6 J1 w! _, a6 u6 t5 r  returnValue="" ' k* p+ _' P/ G( d1 j" J* F
  lenString=len(paramString) : ?) @# {2 O" r% \  |( l
  if lenString<1 then
% t# B: w9 w' {. Z  u  Encode=returnValue 9 A0 F5 ^$ x* G
  else
/ q2 m2 `1 |$ }/ I  mod3String=lenString mod 3 # t4 T' Q. `- \7 t% L5 r
  '补足位数是为了便于计算
; p4 U' ]9 m* v/ E  if mod3String>0 then
2 m! I8 x; F$ u9 `' m  lenString=lenString+3-mod3String
3 S/ v5 w/ Q5 ?: {  lenString=lenString-3 6 g+ o, Z+ h' ?' n5 |7 P  A9 v
  end if

返回列表