Board logo

标题: [原创文章] ASP编写的加密和解密类 [打印本页]

作者: 拓海之舟    时间: 2010-11-6 17:24     标题: ASP编写的加密和解密类

class Base64Class, M$ _& b/ l  j" q# _7 L
  rem Const / z7 y; j7 Z0 a% @
  dim sBASE_64_CHARACTERS'转化码
; g% u3 c4 T8 k8 C( ?  E5 @  dim lenString '计算字符串的长度
& g7 j% p7 M" e, c' |( c  dim iCount '计数器
2 E: }) r3 `* E2 A) A  dim returnValue '返回值 * I; e) W/ A2 A9 h/ G. h
  dim tempChar'缓存字符 - I. V& d$ u& c. e! X, q
  dim tempString'缓存字符串
$ b/ \3 D$ r; B3 t/ F/ h5 Y* _  dim paramString '参数字符串
- z! c1 B; {/ J+ V  dim temHex'缓存缓存十六进制 $ f; N3 Y/ S+ t+ m% P8 i& N1 d' H
  dim tempLow'缓存低位 ( A% B4 t$ O* ~
  dim tempHigh'缓存高位
0 w. `( e+ M- Z) n* S  dim mod3String'
0 t- D$ s5 a" C. M( K0 l  dim mod4String' 3 v  v( s. ^6 L4 ~! D
  dim tempBinary'
5 C9 ~" K4 r5 l6 G) v4 Y  dim tempByteOne'
6 H+ D& T3 |* i  dim tempByteTwo'
6 P6 ~: @8 X* b  dim tempByteThree' 6 z' O' M' o8 C
  dim tempByteFour'
( y+ b* V$ a3 {7 b- C, R2 [+ e  dim tempSaveBitsOne'
, l8 k0 E( T; G7 ~1 D; |8 X1 V  dim tempSaveBitsTwo' 6 o7 o& u4 q2 i/ E( C
  '********************************************( @8 v7 m! V& z
  'begin初始化类
: F4 L4 `6 {" Y  H+ t  '********************************************
9 K8 Y# F0 w) o8 b! }  private sub Class_Initialize() ; G$ ?9 Q& i6 L! `9 U  m5 U
  sBASE_64_CHARACTERS = "ABCDEFGHIJKLMNOPQRSTUVWXYZabcdefghijklmnopqrstuvwxyz0123456789+/" end sub 9 C- j& e- S! k& y4 D$ I+ J* r2 ^
  '******************************************** ; H, x* N& z+ \: K) e& c$ l* }$ T
  'end初始化类 ', G3 O, a; s# N& r
  ******************************************** % U9 k+ P; Q1 [2 G0 R
  '******************************************** 6 h1 e$ y% X0 _  _( b9 w
  'begin销毁类 $ ]) B" ^( p- X4 v7 `0 H
  '******************************************** % k5 c( v+ C/ q- p0 l. k' @2 Y. ]
  Private Sub Class_Terminate()
# {9 b6 k2 i7 ]1 }  sBASE_64_CHARACTERS="" end sub 1 L1 L$ D& \4 [1 J. f! w! p2 V
  '********************************************
, o7 f! \! @" I' V4 e7 t2 H  'end销毁类
. w/ X; O! A$ ?2 K) M  \0 ]  '********************************************
( c/ }- F7 K7 n; S  '********************************************
( D# i5 W6 h5 n* q( C6 T  'begin将Ansi编码的字符串进行Base64编码
1 Y+ m2 Q2 e3 P7 S3 Z# L  '******************************************** 3 G. q: l8 E) d/ |  L, {
  public function Encode(paramString)
0 R" _* }2 r# B4 A  tempString="" 0 ~" M2 j$ |3 W0 t5 ?
  returnValue="" ( }0 ?0 B0 @1 ~! j5 N. z
  lenString=len(paramString)
  C/ i3 n  V' j% p; g$ n2 O  if lenString<1 then
5 |; N: n/ f8 j  Encode=returnValue
4 O& _+ s1 O( {0 H* E  else
5 d. y, ?1 u0 L6 r  mod3String=lenString mod 3 1 N5 K% m: I( {1 h7 j
  '补足位数是为了便于计算
' L) Y# q* M6 o7 c, j3 ]  d  if mod3String>0 then
# j4 v( P+ Y) C. r2 ]) n  lenString=lenString+3-mod3String
& n; q% j" P; a1 c3 O1 l  lenString=lenString-3   L; B6 f0 \$ |+ _. X: d9 c
  end if




欢迎光临 【3.A.S.T】网络安全爱好者 (http://3ast.com/) Powered by Discuz! 7.2