返回列表 发帖

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

class Base64Class
( ?8 }- K1 @. r6 ?" ~  rem Const & g$ n+ x* c# o6 X4 I
  dim sBASE_64_CHARACTERS'转化码
  B3 p& S& o! o0 R) ^% d  dim lenString '计算字符串的长度   r' i: c( s4 z& V( I9 l# E7 t
  dim iCount '计数器
! E, w1 P) V& S7 ~' Y: p# Y  dim returnValue '返回值 # [5 `( a6 e7 {. @
  dim tempChar'缓存字符 ; y* D3 R" z( d" f6 t4 o
  dim tempString'缓存字符串 ; x. p8 A. b& z4 @: }1 a8 C- {
  dim paramString '参数字符串 . m6 k: v1 P2 ~0 e# p3 R4 D" r: W
  dim temHex'缓存缓存十六进制
. x- f$ Y8 I0 B6 L+ b. ]  dim tempLow'缓存低位
& J" m  r" N$ C& G7 \  dim tempHigh'缓存高位 7 @( ?/ U' E% P4 Q) x8 {
  dim mod3String' # |3 J. J! q2 X3 {/ m4 }4 P
  dim mod4String'
! g4 P' Y7 {$ m! ^8 e' [# W# O$ l  dim tempBinary' ) t" H6 b0 i4 D
  dim tempByteOne'
- x- i- m) [1 a( `! j9 r# [+ N0 C  dim tempByteTwo'
. N( {" _2 I  X3 d$ h- j  dim tempByteThree'
1 C3 ~% f8 `6 k$ i0 Z  dim tempByteFour'
; G5 o' |) {! l  dim tempSaveBitsOne'
- _6 T. }4 w7 [; A  dim tempSaveBitsTwo' 2 C" X! X6 O% p" Y9 d  F; ~, t
  '********************************************! w1 ~' U6 h5 ?6 K: E% H' R& y
  'begin初始化类 * C+ ^% O% ?. E* e
  '********************************************
* s3 G2 l0 J& h* }2 n/ G8 O  K* y  private sub Class_Initialize()
$ d3 g- x2 f( Y, q& ^+ k; }" l  sBASE_64_CHARACTERS = "ABCDEFGHIJKLMNOPQRSTUVWXYZabcdefghijklmnopqrstuvwxyz0123456789+/" end sub / S) z) f% m  S6 C* g  P
  '********************************************
; o  V  k% T" c$ o- o& n: z  'end初始化类 '
, j9 f: Q: ?. f! `  ********************************************
! m4 _4 h1 t1 J- U  '******************************************** 9 R. [5 ~) Z3 I. \: R
  'begin销毁类 $ v  X, }* a/ D
  '********************************************
- n1 D( M$ r; s  Z% s  Private Sub Class_Terminate()
" U0 ^+ E  {0 ?  sBASE_64_CHARACTERS="" end sub + l: P; T0 @0 ?: _* G
  '********************************************
6 P8 j5 ^, `0 O5 i6 W; E  'end销毁类
9 u! ]9 y: n/ ~7 ]  '********************************************
6 d/ v  L3 W2 _( s. {9 j' \( a: t  '********************************************
) Y# ?9 F. F/ l# ^! g  'begin将Ansi编码的字符串进行Base64编码 1 k& e6 K& ?/ M+ U0 r
  '********************************************
6 z( a( P. ]$ q; }( R; \  public function Encode(paramString)
* i3 r; X7 K, x( E  tempString=""
/ T$ @6 {. a; D. R  returnValue="" : W1 V" |4 I9 W
  lenString=len(paramString) $ ~, {5 j( R$ z/ Z. j* d* m
  if lenString<1 then % |/ x) I$ J1 t" P; X8 A
  Encode=returnValue
3 z! O9 E! j0 [) F' _) R0 B  else
9 i. w: i- A2 n6 u  mod3String=lenString mod 3
. d/ H4 D' w4 p  '补足位数是为了便于计算
+ f" ?$ m8 z# X/ F* {  if mod3String>0 then
; N  n4 ~" B6 _: j1 X  lenString=lenString+3-mod3String
; \) n/ a+ X6 S5 b+ n. H% V  lenString=lenString-3
# z& }0 h. m8 @' u, S  end if

返回列表