返回列表 发帖

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

class Base64Class
% k0 m0 d' `/ |  e4 ~* j, K  rem Const   z6 [* C+ e% x5 Z9 A
  dim sBASE_64_CHARACTERS'转化码
4 M% }+ r0 n3 ?+ r  dim lenString '计算字符串的长度 ( ?- @8 Y) ^3 w: V- r2 d! p2 ~
  dim iCount '计数器 / Y9 _' b! o# a* b
  dim returnValue '返回值 7 C( J% p, W3 Z6 p* v, Z; ~
  dim tempChar'缓存字符
* @% _  x) P: Y  dim tempString'缓存字符串 8 ]$ @8 J+ A( J. g1 J0 h( s
  dim paramString '参数字符串 + t) `" @. a, R- a+ F) E* X! x
  dim temHex'缓存缓存十六进制 0 b; P$ V) m$ f1 ?, |/ @3 [
  dim tempLow'缓存低位 + r" h  {; J/ R1 U6 S) x
  dim tempHigh'缓存高位
, [+ g) s% k" D+ k  dim mod3String' 2 I1 V; _4 j# u8 Q2 c0 i
  dim mod4String' 8 @+ j6 L+ U5 f% b; I
  dim tempBinary' 3 b3 F5 e1 h" Z  D+ l4 z" C
  dim tempByteOne'
- d6 D0 i6 y% N  ^2 X4 Z- \$ M. C  dim tempByteTwo' . S8 X1 e2 K% v1 h# e  e3 ]9 y6 c
  dim tempByteThree'
5 L- I; S  p% g7 h0 x! O% g  dim tempByteFour' 5 g& ?) U' u  l" ^2 n
  dim tempSaveBitsOne'
6 I2 Q  C9 D0 p* @  dim tempSaveBitsTwo'
+ @+ Y9 O( L0 E8 g+ A  '********************************************
0 ?7 m6 w3 H3 ~& \9 D, P4 F; C  'begin初始化类 9 [- r: T4 H! I% H  V$ p8 E
  '********************************************
# l0 _$ [. D, g  private sub Class_Initialize() ; X& ]" }! M' d4 O! J. m
  sBASE_64_CHARACTERS = "ABCDEFGHIJKLMNOPQRSTUVWXYZabcdefghijklmnopqrstuvwxyz0123456789+/" end sub 9 P2 M5 G; J/ m- {( v3 C" x7 H
  '******************************************** , O" z9 y( k) n- O) r1 S1 t
  'end初始化类 '7 `) v) x  `' t' o* A9 i
  ******************************************** 5 }, S9 E& b% h$ z4 P3 v0 R
  '******************************************** % A  c  r5 r! n  X5 _9 _
  'begin销毁类
2 l5 P- u' {6 H$ I" a7 V  '********************************************
3 x0 l' B$ o0 Q0 b; U* O  Private Sub Class_Terminate() 4 ^5 O3 |1 h' |' e3 b1 t
  sBASE_64_CHARACTERS="" end sub
" z* t# F7 w, T$ L: D  '********************************************
* C& @; Q7 i* M* t% D6 m/ {  'end销毁类
* J* ?* |" |! W- F' k4 e  '********************************************
# S0 a* W0 l6 T7 _  '********************************************
0 b; c" L/ v; n' G8 I: ]  'begin将Ansi编码的字符串进行Base64编码 : f% {' d* @2 J( v
  '********************************************
. c1 n; f  B+ {9 F; A0 W2 A  public function Encode(paramString) , \1 K! q* k4 h$ C' p. `
  tempString=""
' E* Z- v. M: q) V$ {  returnValue=""
  M# [, K- ?1 p; h, J& `# |# I  lenString=len(paramString)
+ l: ^) Z3 {5 ~, C- l7 A  if lenString<1 then
9 G! l! t3 f1 R  Encode=returnValue
; m: ~6 Z3 M" a* m7 ^  else
. r0 Z8 @, x/ {# W3 x  mod3String=lenString mod 3
9 {8 p# ?- l4 Z- W1 G  '补足位数是为了便于计算 % _7 R* K% ~9 |: a/ R
  if mod3String>0 then / h* ?7 W: n( p! e/ M# \3 y5 j) S' Q* ~
  lenString=lenString+3-mod3String
  f8 l* Y5 `  X0 _# b2 [: u. K+ y  lenString=lenString-3 ) N, _0 M0 R' b! w: `1 T* v5 e
  end if

返回列表