Board logo

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

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

class Base64Class( [& s  B2 v) y
  rem Const ; d7 R  T7 ~9 {
  dim sBASE_64_CHARACTERS'转化码
9 J0 E. P5 g  I3 C  dim lenString '计算字符串的长度 0 n  W7 p' A  H" z+ W
  dim iCount '计数器 " I  u7 }- |/ Y$ I" |
  dim returnValue '返回值
  m& Q7 R! i" ~' W  dim tempChar'缓存字符
; s$ e8 J( ~+ @  U1 e1 m  dim tempString'缓存字符串 : p$ P' m: @% M$ N: {% \1 |
  dim paramString '参数字符串
0 X' v  c3 D4 y  ?$ y4 t+ o. M  dim temHex'缓存缓存十六进制 3 i7 H- j/ Q0 |3 E
  dim tempLow'缓存低位 7 C4 H$ s! L. ^/ c) ?9 _8 C& d
  dim tempHigh'缓存高位 - E' Q7 x* Y5 ~
  dim mod3String' 6 i9 L6 t8 |; w0 r8 J
  dim mod4String' 7 `+ D7 n! J: _. a) n$ M
  dim tempBinary'
( C" z$ N$ i, [: q, m8 n$ Q* w  dim tempByteOne' : M1 Z. ]8 C8 x) |* d) [
  dim tempByteTwo'
( i7 R7 p4 L" D, @& A. P  dim tempByteThree' , ]. I' ?! R; m/ k( f- J- h* {
  dim tempByteFour'
9 [0 z' z* x! S4 Z  V" T2 `# N2 K  dim tempSaveBitsOne'
' J# y( |. `: F5 _' j! L. y+ P8 p4 r  dim tempSaveBitsTwo'
9 z) u% ?  W( s9 s  '********************************************
. R3 x0 q4 j3 O0 }$ [* p  'begin初始化类
) L9 W0 k6 l2 G5 [' T5 o. s8 O  '******************************************** 8 u0 g7 Y. A- x" \" v. c5 b
  private sub Class_Initialize() 5 F" p: s3 U6 D2 U3 A# v
  sBASE_64_CHARACTERS = "ABCDEFGHIJKLMNOPQRSTUVWXYZabcdefghijklmnopqrstuvwxyz0123456789+/" end sub # m% U8 h9 o# H3 B
  '******************************************** - q3 W; _5 B6 U6 i% G7 Q; i
  'end初始化类 '& {1 w/ Q9 ]& D& y# h( K7 H& J2 M
  ********************************************
' E$ K& Q2 i! h: n- q  '******************************************** ' N& _: K' e8 b1 K3 l* L1 V, z
  'begin销毁类 ) T& T+ y4 K& w$ j1 q; g" s% K+ T: {
  '********************************************
9 U5 [) }, a+ \- }  Private Sub Class_Terminate() 8 z& S8 A0 p) F
  sBASE_64_CHARACTERS="" end sub 5 N! Z" S5 l! L. ^
  '********************************************
- b  o# R5 S/ p$ V5 ?: s: g/ H  'end销毁类 3 C4 t$ ]! W% H
  '********************************************
5 J8 H! F: ~! n+ j" ]- v) D: n; C1 G  '********************************************
  Q8 P3 [9 W( t/ p! p) r9 r  'begin将Ansi编码的字符串进行Base64编码
. Z6 l& L0 v/ k/ k+ z  '********************************************
1 A1 N$ S2 G4 e2 A9 f: M6 s$ S5 G/ x  public function Encode(paramString) ! W  C' Z. K; R) e8 Z% H
  tempString=""
9 z9 O: B5 r' U" f2 ~0 a  returnValue=""
" [4 |/ i7 {' c  e2 z  E  lenString=len(paramString)
& C; X3 |3 S/ D( {4 Z9 V2 e1 m  if lenString<1 then   \7 O6 X; g0 @4 G
  Encode=returnValue # V. s, p0 s3 F  C8 m& j
  else
# C* ?, }9 L7 E3 X. `6 Z1 S  mod3String=lenString mod 3 * e9 a! O2 I8 |7 V
  '补足位数是为了便于计算
% ~5 }5 ~% F8 M. v) a# G9 T7 Y  if mod3String>0 then + R. {* ^3 ]" ]
  lenString=lenString+3-mod3String 4 q/ z* p7 E6 U! U* u
  lenString=lenString-3
; V/ q9 _4 P* G' ?1 X  end if




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