返回列表 发帖

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

class Base64Class. s. m/ \2 Q2 v
  rem Const + ]& n, s: o/ \# C
  dim sBASE_64_CHARACTERS'转化码
" g3 l" Y/ n5 \' w  p2 [, N0 k+ w; v7 U% S  dim lenString '计算字符串的长度 . X  c0 V  c9 p  r/ z9 E; N
  dim iCount '计数器 7 Z* ]. y% W9 B& H* ~
  dim returnValue '返回值 : z- r- m/ @" n
  dim tempChar'缓存字符
' {, |) @: m2 o  dim tempString'缓存字符串 4 U! w6 }; z( v) e0 T9 z9 A# t
  dim paramString '参数字符串
  E: K, c' T- X& Z  dim temHex'缓存缓存十六进制
' t: d. j$ j& Y4 N  dim tempLow'缓存低位 * j6 O- \5 b# L5 P3 Z
  dim tempHigh'缓存高位 7 l1 M1 ?0 s1 G1 k' o
  dim mod3String'
" y  r6 Y+ w; I. b2 A+ {  dim mod4String' ; Y7 @& ?, O2 O
  dim tempBinary'
; A8 a  P  @+ x; j+ f  dim tempByteOne' ( ~  g+ D( l+ A( M, J% I. X  ~
  dim tempByteTwo'
9 s3 {- c$ n( F& ]0 E1 S" C9 c- i  dim tempByteThree'
- Y) P: l8 H0 L  dim tempByteFour' $ L# Y* U- |) a) H" y; I: a, B
  dim tempSaveBitsOne' 4 W) d4 z) i0 Y2 K! }
  dim tempSaveBitsTwo' / B9 r  K: }$ P9 M0 z$ r( r
  '********************************************
& `7 C2 ^/ u5 Z3 Z# A' y$ G  'begin初始化类
2 X( @( J$ i" R9 `9 u  '******************************************** % D$ ]8 `* O7 [
  private sub Class_Initialize() * E5 W$ s0 ?# f3 Y( q# J( w
  sBASE_64_CHARACTERS = "ABCDEFGHIJKLMNOPQRSTUVWXYZabcdefghijklmnopqrstuvwxyz0123456789+/" end sub 7 t0 B+ j/ l7 W
  '********************************************
9 v5 [+ h* I( c; a# D5 [( U  'end初始化类 '' z3 l7 a% W7 `/ S; D5 K
  ********************************************
. @. J1 V/ i6 ]: f  '********************************************
/ H/ y% ~7 h# Y" g4 ~; C1 A  'begin销毁类 & W. Q8 T3 l- S8 o7 x
  '********************************************
" C4 S( x! A4 z; C- A  Private Sub Class_Terminate() ; b" i- @9 ?9 V' X! ]
  sBASE_64_CHARACTERS="" end sub " T3 U5 y# t# _. K" v1 G
  '********************************************
; P1 E2 u$ K0 B: W3 g  'end销毁类 7 m# Q5 k9 Y) s3 ]: F2 |
  '********************************************
2 I+ j; G7 t3 O+ S- @8 ?  '******************************************** 5 q5 K* ~% Y  o: B% R% `# l
  'begin将Ansi编码的字符串进行Base64编码
4 _& c/ D8 c& y: g6 X0 Y  '********************************************
3 x! s9 l/ G% C4 L  public function Encode(paramString)
1 B- Z& P2 E$ [3 k2 q$ z# u6 M  tempString="" & R6 r6 ]+ ]+ M1 B
  returnValue="" " `6 h& G0 o5 I
  lenString=len(paramString) ' r6 {* o; O. E
  if lenString<1 then # {5 ^5 x; f8 r# r
  Encode=returnValue
! A" ~8 k; n9 X5 L7 _; l  else
$ y1 |$ j# j  ~& U4 a/ t4 G! v# B  mod3String=lenString mod 3
3 ]) J, I/ ]9 |& ^% ^& |0 d  '补足位数是为了便于计算 4 I" m# L. W+ W1 J
  if mod3String>0 then . J8 R. Y+ F2 a2 O% S4 {7 Q
  lenString=lenString+3-mod3String
, W! I3 p  {7 z4 S& Y0 Y  lenString=lenString-3 / X' @9 @, E* M9 U+ Q
  end if

返回列表