返回列表 发帖

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

class Base64Class1 X' c7 n" p% K3 [" h
  rem Const ; V$ H9 e' v. n* I: k7 H
  dim sBASE_64_CHARACTERS'转化码 6 p1 j% }! G6 J6 J' s" K4 z
  dim lenString '计算字符串的长度
2 i2 }& W5 y( x, W5 t* N  dim iCount '计数器
' y- P4 J. |; y2 j3 F9 D  [  dim returnValue '返回值 + m8 c6 E: ^, _
  dim tempChar'缓存字符
/ }  i3 p. W1 I0 Z- q9 {2 V  dim tempString'缓存字符串 ' T+ l  [1 g8 U8 o: [4 y
  dim paramString '参数字符串
" W- s5 a7 x- U4 N3 f" g  dim temHex'缓存缓存十六进制
# g5 O1 s2 r/ Z8 n  dim tempLow'缓存低位
9 l1 u7 E2 l$ u, s* H: t0 P. _, ]) r$ a  dim tempHigh'缓存高位 7 h. ?+ y7 S/ T
  dim mod3String' / S$ D8 S' q. S0 P* a; c0 F
  dim mod4String' & Q- p7 p& @0 o8 x- M1 u( W
  dim tempBinary'
9 }! e4 }+ s* w/ I  dim tempByteOne' . P- f$ o, i6 i' Z" j
  dim tempByteTwo' , N2 K4 N. G+ T) o
  dim tempByteThree'
3 n1 \" U8 _1 b  dim tempByteFour' # d& n* ?" J3 o, S* Q9 b$ I# y
  dim tempSaveBitsOne' ; w/ [  K* X7 ]* x
  dim tempSaveBitsTwo' - ?; w- a2 ]4 ^9 ^$ i
  '********************************************& L: T% F% [+ e" r4 F5 \% v% E9 N
  'begin初始化类 ; }& ^1 ]: c' H; ]% \: i; e- o
  '********************************************
6 Z* L% E) g1 i5 M& f0 o+ Z  private sub Class_Initialize()
# d, j, y9 ?6 h  sBASE_64_CHARACTERS = "ABCDEFGHIJKLMNOPQRSTUVWXYZabcdefghijklmnopqrstuvwxyz0123456789+/" end sub 5 g4 x; I" r' y
  '********************************************
4 Z2 O* b; R$ u  'end初始化类 '
8 x& s4 I* T0 U9 A* O/ f3 \  ********************************************
1 v8 U+ F8 N; J# Z9 B' d. E( s  '********************************************
" M6 k  k' I/ B/ F! Q# @  'begin销毁类 " Y$ S4 K. d# i  I9 ~: r6 \
  '******************************************** ' j1 `+ v6 z8 ]/ t4 q2 m3 _
  Private Sub Class_Terminate()
* D: V# F% H# l. R; P: |  sBASE_64_CHARACTERS="" end sub 3 z# {, F, q) s) [. d2 R& Z$ L
  '********************************************
6 v5 L* Y9 i- Y9 r  'end销毁类 & J( Y+ H& I. c
  '********************************************! b; L, _" y9 z# T
  '********************************************
' B/ G, W- O. I6 b5 `5 \  'begin将Ansi编码的字符串进行Base64编码
0 [2 `" J  o& O1 j  G5 I  '********************************************
8 H! w4 j5 I% {4 S  public function Encode(paramString)
  Q2 S$ G. _7 h8 f) D3 B* E' Q  tempString=""
  i, ~0 {* {  |+ b' b3 C$ Q; j  returnValue="" . m6 ]4 Z2 b) I1 `% N
  lenString=len(paramString)
4 X  W. G" R+ L/ B, b/ a  if lenString<1 then : s7 P5 b8 r" d+ u; Z
  Encode=returnValue 0 C/ o+ Y# b/ _: W, w
  else - n% f5 u+ {& @$ l
  mod3String=lenString mod 3
8 X+ q8 A& B, z! a9 q0 A  '补足位数是为了便于计算
6 Q4 `1 Y" r5 b  O# b8 M+ v  if mod3String>0 then
7 C/ ~. b; @) E. ?9 L) y  lenString=lenString+3-mod3String 2 [2 F$ j+ v' I* h  z+ y/ {
  lenString=lenString-3   F2 N5 S# Q6 ]; @8 @4 ?+ j
  end if

返回列表