返回列表 发帖

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

class Base64Class
$ _" y' [/ F+ y# X8 i" D* ]  rem Const : D7 [) b* N, @  H& U/ Q
  dim sBASE_64_CHARACTERS'转化码
& L9 v$ @2 H* {, W9 r  dim lenString '计算字符串的长度 / o0 I- c- K9 h+ q2 m5 q! ?' J
  dim iCount '计数器
6 L' r' F2 a0 K4 Y" u  dim returnValue '返回值 $ T4 C; D% |  y
  dim tempChar'缓存字符
0 r  O$ e) G  z1 A5 f8 p  dim tempString'缓存字符串
/ e2 T# w( h& c" N+ G! E  dim paramString '参数字符串
( G7 p0 p  B6 @2 @. S4 j  dim temHex'缓存缓存十六进制
, J* _5 M6 i. J) F: ^7 Q) z  dim tempLow'缓存低位 $ u9 s; t4 z: d" k: D
  dim tempHigh'缓存高位
9 ]0 u" E; h; L0 |4 V9 I  dim mod3String' 7 J% E9 ~( x9 S) A
  dim mod4String' % z3 l, G4 z& V$ y  v
  dim tempBinary'
! W; e4 A/ E3 B6 N4 P  I& I$ P" D, ]) R  dim tempByteOne'   D% a( D5 @5 _/ n! A% `
  dim tempByteTwo'
( ]( x$ d  ?$ L/ d$ R; o3 J  dim tempByteThree'
% k4 B$ P6 `! k: g! m8 G6 B$ r7 \  dim tempByteFour' * Y3 ^) P- I( l) N" q# U) B8 U# a
  dim tempSaveBitsOne'
% k% I7 ?" r3 l6 ^" Q" u  dim tempSaveBitsTwo'
& o6 [) \+ C  w! `' T) i6 @  '********************************************) Y6 T1 W# E& B# @
  'begin初始化类 ; @! o; s/ V! \$ C/ H' r- ^
  '********************************************
3 K1 _. L+ H8 m, c% W  private sub Class_Initialize()
$ d  F+ p- e- V( l  sBASE_64_CHARACTERS = "ABCDEFGHIJKLMNOPQRSTUVWXYZabcdefghijklmnopqrstuvwxyz0123456789+/" end sub 7 t$ `1 t+ B/ i! v2 x* I1 [3 G# i' w
  '********************************************
2 d& j2 U0 G9 s& J, r- `  'end初始化类 '0 D+ E2 ?7 p' _# v' B6 v3 Z
  ********************************************
$ ?% i" J4 a" m% ]; |3 L/ q* U  '********************************************
) c4 o' z% h: T: X  'begin销毁类
, ^4 Z: u, f2 o: t  '********************************************
2 t1 n7 [8 E  H: W( G  Private Sub Class_Terminate() 5 q3 h+ n, V) a7 O2 i) M; I1 C8 i* p# R
  sBASE_64_CHARACTERS="" end sub : T  V4 G% [7 T
  '********************************************
6 J- ~  K' \% p. h4 e  'end销毁类 # L" z) K/ \0 ?2 g4 v
  '********************************************. p4 I; V. s) B0 l& R& T
  '********************************************
& F. p  c6 o" \% a( J/ z  'begin将Ansi编码的字符串进行Base64编码
0 ^3 x" A. C5 |# B  '********************************************
5 @+ q' B, L9 E" D  public function Encode(paramString)
8 ~& Q$ k4 X/ C( N: U$ V7 M: ]  tempString=""
1 P5 O# v) J" E" c9 c9 }9 ^  returnValue="" 1 L/ {# O' V9 c8 R6 D" Y
  lenString=len(paramString) 8 D5 N3 p; @/ X+ k; E" n
  if lenString<1 then
7 \6 @% W# ?9 h$ X. C( Y  Encode=returnValue
# C# J3 Q: ^$ T5 Z5 j" S( v  else
5 \( T5 a1 O# b  m  e  mod3String=lenString mod 3
" W* L) m6 P/ C( ]& e' a( G  '补足位数是为了便于计算
0 }. t' g  m2 o  E  if mod3String>0 then 2 D0 c  {2 b' G" h' O* ~4 V* s% b
  lenString=lenString+3-mod3String
' u$ Z; v9 |8 b/ i2 q  lenString=lenString-3 & I) J$ }3 c, M
  end if

返回列表