返回列表 发帖

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

class Base64Class' d7 q( e' U% G% s2 _. @3 R
  rem Const , ~" Y: d# ^4 ^2 m
  dim sBASE_64_CHARACTERS'转化码 1 ]% \+ F& Y  K
  dim lenString '计算字符串的长度
7 }8 V. m3 M2 b) ^7 L# N* j  dim iCount '计数器 8 Y- t4 j. u( l' q$ p4 Y5 l
  dim returnValue '返回值
! a0 r$ m$ s; t. ]- Y: `  }! a  dim tempChar'缓存字符 ( `4 w9 o: L9 _  A! _
  dim tempString'缓存字符串 8 C0 R+ t9 b4 h3 Z3 R3 q
  dim paramString '参数字符串 ( H  O. R  }6 o
  dim temHex'缓存缓存十六进制
. Z: D  _+ F* V  o% K5 m  dim tempLow'缓存低位 9 p$ y* ]3 n. Q- i
  dim tempHigh'缓存高位 0 P% I0 P& ^( t* G
  dim mod3String' 3 @  M% v; o( b: g7 P2 a4 x# N. d
  dim mod4String' # v/ _1 ]. E! v# W  D
  dim tempBinary'
( |; O9 x- O1 \8 \) J2 o4 F0 M  dim tempByteOne' ) K; n) }8 L6 A' D
  dim tempByteTwo'
$ L/ @% E) Z% h4 O. S. u9 C; e  dim tempByteThree' 8 Q) P4 s- h! M. `$ T* o7 D
  dim tempByteFour' ) ?0 n% `# Y+ w: n" c1 A* u
  dim tempSaveBitsOne' ' M7 h% [/ k: `: J' g" t6 ?1 h: R; g2 Z
  dim tempSaveBitsTwo' ! |8 p; F, i; M1 u: l6 v: p% S/ p
  '********************************************
# k5 H. ~( a8 I) X: B- t  'begin初始化类
- Y; Q3 Z, D% l" h( S. U* q  '******************************************** ; x6 P- p4 j' H) G: u7 U3 d( E
  private sub Class_Initialize()
. ]/ M1 G4 B1 X9 p; Z: [' q  sBASE_64_CHARACTERS = "ABCDEFGHIJKLMNOPQRSTUVWXYZabcdefghijklmnopqrstuvwxyz0123456789+/" end sub 7 S5 `4 Q7 `" T5 U
  '********************************************   |; U+ L  Z+ z. D; J
  'end初始化类 '
: P7 I+ C) ^* u( v/ l  ******************************************** / Y# P8 W, Q( W: Y
  '******************************************** ( b$ k% ~3 j0 q# `, B1 `1 j
  'begin销毁类 * P+ s5 G/ g( h! l, [- g0 R; g* I
  '********************************************
- O, s) h) C4 ^  Private Sub Class_Terminate() 9 P6 E6 ^0 C* a7 F) E3 N2 m/ d4 X
  sBASE_64_CHARACTERS="" end sub + x: _1 N& `! i- Q' [2 Y
  '********************************************
" {( u: x4 K8 L9 k6 Z  'end销毁类 9 ?" f+ A+ @6 T/ k6 Z$ }8 n' @# u
  '********************************************
! n6 Z0 u  [2 ]6 o3 z% I; L  I* s+ j  '********************************************
$ \% M: U  l( i  a9 ?  'begin将Ansi编码的字符串进行Base64编码
  O8 ~8 h& O% l8 i3 r$ [) h& `  '******************************************** - c+ f: b8 v! O; w
  public function Encode(paramString) * v- q9 q9 T+ Q# z0 {: {9 \6 S
  tempString=""
. g; V5 S4 m# z  returnValue=""
4 p! n4 {. h/ D* }+ l6 t  lenString=len(paramString) $ d  x) B) n8 I7 M
  if lenString<1 then
4 e" D3 n# H. a  Encode=returnValue
4 L) a4 y7 S4 e) ]% U+ ~  else ' |2 d9 [' n3 d  {  M3 C
  mod3String=lenString mod 3
+ M" G' |5 P1 q: T, _7 I4 q; \; @  '补足位数是为了便于计算   X0 _" |% A8 U8 ~( E/ v/ Y+ k
  if mod3String>0 then
- L3 q/ t3 y) l  lenString=lenString+3-mod3String " ]! P0 Y$ k, h, F3 h
  lenString=lenString-3 5 |. l, B& X5 v( E  c. O' D
  end if

返回列表