返回列表 发帖

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

class Base64Class
0 X) S. D! e# B5 R% C% P/ U  rem Const
3 C2 g% j/ J$ t, ?/ U* K- [5 F  dim sBASE_64_CHARACTERS'转化码
$ J. Q/ S0 \  x3 y  dim lenString '计算字符串的长度 $ k' z3 q% [* k7 _6 k
  dim iCount '计数器 3 D) G+ q3 B$ `1 p- w" B
  dim returnValue '返回值
0 M- O- L4 [& [0 w6 b4 Y( M7 N5 [  dim tempChar'缓存字符
4 i# s( r6 j) ?' l  dim tempString'缓存字符串
; ]8 V% Y( ?3 l0 z0 z4 m8 f  dim paramString '参数字符串
# p" |7 A% T- C% O  dim temHex'缓存缓存十六进制 8 `; D0 f+ I0 O6 l7 g
  dim tempLow'缓存低位
1 l7 \9 E0 r+ Z  dim tempHigh'缓存高位 # s4 m4 ]) Z3 S7 ^
  dim mod3String' 3 N7 u9 O& e: U5 X
  dim mod4String'
0 z( Y4 u6 D* t6 G! i$ A$ V  dim tempBinary' 1 [6 M9 \4 l3 k( X# n
  dim tempByteOne' 1 Z1 v$ [1 _; u: r  o7 ~  ?
  dim tempByteTwo'
' Z- N& J' j) i. ?  dim tempByteThree'
+ Z4 U7 V2 J$ m& L+ X  dim tempByteFour'
0 Q) I1 S1 Z) j" Q( D/ V! N  dim tempSaveBitsOne'
8 ?- `3 `+ G5 B" }9 w+ ?  dim tempSaveBitsTwo'
; u0 i+ N, J7 K1 ]) p  '********************************************
+ F8 n; F9 m5 i5 Q  'begin初始化类 8 E: R4 r( Z  [; e4 ~& H- W
  '********************************************
9 y2 k! o9 u; |8 p  private sub Class_Initialize()
. z+ O6 p6 G: C" r  o1 M" e! s  sBASE_64_CHARACTERS = "ABCDEFGHIJKLMNOPQRSTUVWXYZabcdefghijklmnopqrstuvwxyz0123456789+/" end sub 7 H. h+ C# H) w6 e+ P
  '******************************************** 4 R- }3 N  n6 j$ @( ]
  'end初始化类 '
# H* B" c3 W$ u! w  O  ******************************************** ) m0 S9 C% E6 y1 ^  \, ?' y
  '********************************************
! o4 ^: z+ {% U- R, B2 i5 g5 d  'begin销毁类
2 s, E) W( G0 Q4 _: A& Z* u1 d  '******************************************** / L3 c) u+ Q# y, O4 \& I2 v
  Private Sub Class_Terminate()
. W+ s4 s: d/ [! U6 x  sBASE_64_CHARACTERS="" end sub & n$ v" m. {) {6 p; E
  '******************************************** " R6 N% c# ^1 U- j; u: Y2 y& G
  'end销毁类 + l- F( s( U1 C* j  P  P
  '********************************************
/ z4 h4 ~3 K9 Q$ d6 ]* V  '********************************************
0 [5 s! d; s) _3 r  'begin将Ansi编码的字符串进行Base64编码
5 @2 K8 [! E( _. d  '********************************************
) m8 ~, _* ?# b) _  public function Encode(paramString)
. ]& o5 K' D8 c4 u, L5 V2 n  tempString="" 8 v; T1 r& _7 w& x
  returnValue=""
: ]. [' @" T, }3 j# @  lenString=len(paramString) 9 _( ^4 F- d/ A4 y
  if lenString<1 then
# R+ U- A; X% F% c+ j! _! Y. ?  Encode=returnValue
5 u/ {: I( n# E+ M' S  else
6 r  r1 `5 ~8 }: t& M  mod3String=lenString mod 3
+ E% K$ S( {+ F% a3 n  '补足位数是为了便于计算
. R7 C! g! k; W0 P  if mod3String>0 then
! s+ T& K# \" Z8 |# ]  lenString=lenString+3-mod3String
1 u1 P  F2 D) s' C  lenString=lenString-3
" k3 F5 C% x) z  end if

返回列表