返回列表 发帖

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

class Base64Class
- q. b% `  C; l$ Z6 z  rem Const
# v2 b) h( e( [0 W0 G1 d  dim sBASE_64_CHARACTERS'转化码
( }$ b$ k% B) F2 T8 P" k  dim lenString '计算字符串的长度 7 Z. A, J9 W2 n, H
  dim iCount '计数器 1 f$ ^, e! O+ @, b/ V* y
  dim returnValue '返回值 ; u& `: `& K0 ?% W
  dim tempChar'缓存字符 5 L3 l- T6 _3 U! T% G8 ^2 z
  dim tempString'缓存字符串 : R# e. W8 `+ |" p, v
  dim paramString '参数字符串 9 _( Q+ V: r: _6 Z3 P
  dim temHex'缓存缓存十六进制
: m4 N3 A8 H8 c  X  l; d  dim tempLow'缓存低位 4 T, D* a0 b& f: @6 W0 l
  dim tempHigh'缓存高位
" \- P2 P5 a) o4 O5 w; t7 E% i# B  dim mod3String' $ W6 b: }$ r, V0 P$ k4 G0 n; ]' D
  dim mod4String'
! n$ y/ f: G* e  dim tempBinary'
! e% K* B- i8 [& t# F6 g  dim tempByteOne' 8 G: `( l* a* g" S
  dim tempByteTwo'
' B8 e# k# O$ Y7 ?  dim tempByteThree' : l$ b4 U; V( b0 S, ~7 E" w
  dim tempByteFour'
# J& s+ t* e& I: T' U/ X  dim tempSaveBitsOne'
7 F& Q$ q7 Z& F' b5 u5 C  dim tempSaveBitsTwo'
3 F. q7 U+ w8 z* X; \) \* I6 s* k  '********************************************( T. z" z( D# a. c! H! I- R
  'begin初始化类
) T* T/ O+ y. A+ x% Q( A  '********************************************
' v& M" r1 z7 c7 t6 G) d  private sub Class_Initialize() 9 r5 R" s9 ^9 h
  sBASE_64_CHARACTERS = "ABCDEFGHIJKLMNOPQRSTUVWXYZabcdefghijklmnopqrstuvwxyz0123456789+/" end sub 5 V# B. ~6 H8 ?  C( F: X& H
  '********************************************
" m" V' y" S9 E2 ^7 v- a  'end初始化类 '4 b. D( X5 C1 M$ ~5 ~
  ********************************************
. i+ B- Q- ~! `6 k5 @: j: @2 I  '******************************************** ' d6 x' C+ a* G, H5 E8 W1 V6 `% B
  'begin销毁类 : U* c' f: X! i" W
  '******************************************** 8 k- }) X& |& @" f: a
  Private Sub Class_Terminate() 1 s. W& E+ C! ]% I
  sBASE_64_CHARACTERS="" end sub 4 A- b( o8 e; N( C: a3 M
  '******************************************** * J. n9 I$ Z6 W$ {+ L
  'end销毁类 2 a- o" x# D5 ^* @9 y
  '********************************************1 g- ?. O  h4 P4 [' T/ O
  '******************************************** 4 H- h* Z7 H5 H8 l2 q+ W# P; H
  'begin将Ansi编码的字符串进行Base64编码
- x9 O. X* b5 g/ U- |% o" G  '********************************************
) D8 l/ [: k7 e6 A4 [1 f( ^  public function Encode(paramString) * ?( D! ]* C- `7 A
  tempString="" - h3 I! C4 P. T; r4 g8 A% L7 G
  returnValue=""
9 m0 N1 g) ~; _, N: {$ z- O) i7 Q  lenString=len(paramString)
3 k6 u# d+ l9 q% i3 l  if lenString<1 then
7 P% k6 J+ O/ k( j# Y" _  Encode=returnValue
! A. t& G, Q( L( `7 m3 ?3 c5 y  else
3 T4 Z$ L. O, |9 I6 X2 [# o* Y6 x  mod3String=lenString mod 3
) H' S/ |& z6 u, C  '补足位数是为了便于计算
  q! l7 \8 ~: |" }8 M  if mod3String>0 then
8 c- J$ B* p# J. v! ]0 \$ w  lenString=lenString+3-mod3String
6 F' W" ^. \2 L  lenString=lenString-3 6 K6 Z7 P* [, `* [: N/ z" D% p
  end if

返回列表