返回列表 发帖

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

class Base64Class
- o1 ]% J* s( \; e5 W& X* n# j  rem Const
* A3 t" F! K; Q' o. G9 P6 _( @  dim sBASE_64_CHARACTERS'转化码 * k" f' D+ r3 n0 @6 i+ |" ]8 d
  dim lenString '计算字符串的长度 + B0 X: v# S; |( ^
  dim iCount '计数器 3 e  G5 J6 A, _! Y- k' Y
  dim returnValue '返回值
8 O$ B4 a' x2 O; K' ~5 u) f  dim tempChar'缓存字符
7 ?" a5 o, ~" M  dim tempString'缓存字符串
, ~7 E$ V3 }$ z8 B! \  H5 R  dim paramString '参数字符串
, r6 D: k& Y6 }( Y' Q" Z" G+ l& \+ ?  dim temHex'缓存缓存十六进制
8 X0 s/ A& F/ U3 b) B  dim tempLow'缓存低位
4 n$ \1 ]4 d# V* k# E3 k  dim tempHigh'缓存高位 7 Y0 ?+ T" d: {: W2 |8 m, h' ]2 Q* j
  dim mod3String' 5 c- E0 i8 ~1 C0 Y( m
  dim mod4String' ( O. f! P5 ]* F; _% f8 k
  dim tempBinary'
+ Q, }- O% M9 }' u( e6 D  dim tempByteOne'
& M7 `3 H: A  W; y7 |; u( W# A  dim tempByteTwo' 2 p; p" t, g: T6 h
  dim tempByteThree'
8 Q4 U0 G7 |/ r, Y  dim tempByteFour'
; C. I2 ]4 P6 h9 ~  dim tempSaveBitsOne' 2 c5 L  b" I) c4 G
  dim tempSaveBitsTwo'
# U7 A  `3 E+ |( d  |* I  '********************************************! b& q  ]' X" E2 l' d. m
  'begin初始化类
" E) h( g7 `8 |( y% R  B1 w: T  '********************************************
& n: g4 k: P% P  private sub Class_Initialize()
6 E  G% v) g5 h* `5 g  sBASE_64_CHARACTERS = "ABCDEFGHIJKLMNOPQRSTUVWXYZabcdefghijklmnopqrstuvwxyz0123456789+/" end sub 3 V1 v& z/ Y) F
  '********************************************
2 d# \! f& a9 c  B  'end初始化类 '
( Y' s2 v6 N" {. }+ [  ********************************************
: l2 q" b4 S$ H! @( P" A. ]# z  '******************************************** 9 R  @2 j. |. i5 a
  'begin销毁类 7 h, |, g( v( q# P  L  x- a
  '********************************************
. A& P* H. f- Y) z0 M  ~4 F  Private Sub Class_Terminate()
& S5 E2 {6 X9 A1 [2 e  sBASE_64_CHARACTERS="" end sub
/ F% u5 f9 ]3 b% Q4 R. R% F  '********************************************
# N4 U& F! V6 l3 B: ]; l2 {  'end销毁类 * N; b! v9 N' J! p7 f3 L
  '********************************************8 A: j5 _& Z+ n6 ~; t: T4 L
  '******************************************** 7 S1 s+ s: ]7 g7 T0 W
  'begin将Ansi编码的字符串进行Base64编码 5 K" X4 w, ?: {
  '********************************************
$ @( i" q  j' \( [3 B4 s  public function Encode(paramString) " g1 Q, v; W2 l4 D% H7 X
  tempString=""
7 ~5 k3 e4 A! n& n; p  returnValue=""
1 y& E2 s5 ~  ^6 s( y5 S& {  lenString=len(paramString) 0 ?) u! }+ c  c! X1 c6 U9 s
  if lenString<1 then
: F' M. _% T4 q# b7 c# e  Encode=returnValue
) J6 j2 o' {# f- l  else + w; t0 F9 x- I6 u" |9 N% Q( X
  mod3String=lenString mod 3 $ [7 r- v7 f2 K% _0 o  ]
  '补足位数是为了便于计算
) `4 C1 t/ [9 ~0 ~4 x  if mod3String>0 then % y6 b: T6 i. H, g  U( b) z
  lenString=lenString+3-mod3String 9 t3 L% y: g& B0 |; F
  lenString=lenString-3
' T8 |1 h, T+ K7 p/ @. O; N, ]  end if

返回列表