返回列表 发帖

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

class Base64Class
* p, l1 t- G  X7 V  rem Const ( q- Y3 a6 n9 b
  dim sBASE_64_CHARACTERS'转化码 / s( n; \0 f" \. s# i
  dim lenString '计算字符串的长度 , U$ P/ D: ~4 J
  dim iCount '计数器
3 f1 y! p$ f! ~$ D6 ^  dim returnValue '返回值 * P# R/ w! b( p  d, g" S
  dim tempChar'缓存字符 : W% j4 M: p1 o
  dim tempString'缓存字符串
" L  J: ?, M# Y3 P) ~  Q& N9 k  f  dim paramString '参数字符串
0 }* P6 m% W0 x3 F' @. x+ s; z0 ], X  dim temHex'缓存缓存十六进制   X9 G9 t  g0 W% Y  A9 G
  dim tempLow'缓存低位
( F0 R* j6 N2 f  dim tempHigh'缓存高位
% }: D9 H5 M  R6 n: f. F  dim mod3String' ! d3 K. O  C5 r8 d) N
  dim mod4String' 3 M  O- v* A& v" x" e1 b
  dim tempBinary' ! N' J+ v$ c: H, w$ U! P& w
  dim tempByteOne'
5 y, ^0 t( B9 u' E/ P, Q  dim tempByteTwo' % H5 v0 z+ Q0 n  \, A0 f
  dim tempByteThree' ( d& ?# T  v  Z$ q
  dim tempByteFour'
' I' A$ T# G" p) ?5 I5 ~  dim tempSaveBitsOne'
9 K- Y. l: F+ C7 V! b* }  dim tempSaveBitsTwo' " E; h) m0 Q& i6 W9 }" [% C
  '********************************************: F1 Z3 ^2 ~  \) E4 x* _
  'begin初始化类
/ W9 L# M1 v  v9 b' ^6 I9 p) I% ~  '********************************************
1 V6 c9 p4 `3 c1 s5 d1 _+ f  private sub Class_Initialize()
6 _% ?/ j5 L) A1 ~  Z- |" m3 Z  sBASE_64_CHARACTERS = "ABCDEFGHIJKLMNOPQRSTUVWXYZabcdefghijklmnopqrstuvwxyz0123456789+/" end sub $ h) N' `6 ]% _. n# M2 [- v
  '********************************************
' R" M# f2 Z; I9 K  'end初始化类 '
' L- n. l/ |5 I  ********************************************
) |; s/ h7 e6 D: R7 b2 ~$ t' {4 U0 A5 ~6 Y  '********************************************
9 `4 D% e% m* d' Q% O6 J  'begin销毁类 2 P9 j" Q/ |" \. w1 _% O
  '******************************************** $ W4 C$ \0 h! q
  Private Sub Class_Terminate() 7 Z+ J6 P7 n$ Q+ b7 |
  sBASE_64_CHARACTERS="" end sub
3 R, \" G( ~* Q3 x( ?! ?  '******************************************** % }+ s! w4 v0 `) d! R
  'end销毁类
7 O* E, Q; w! B+ j7 T- `  '********************************************7 e. d& n" ]4 i& |
  '********************************************   C4 _2 d% l7 A( a5 l
  'begin将Ansi编码的字符串进行Base64编码 . ^# a5 Q: r) x, y
  '******************************************** 9 V. }1 ]3 ?" u( k/ W" r2 y
  public function Encode(paramString)
. N  v7 C4 X& i" ]( y2 q+ o  tempString=""
, c5 j- b- K) ~8 Z  returnValue="" $ @( K: d4 q/ F1 [
  lenString=len(paramString) ' K8 L# |' Z. O9 c$ I* A
  if lenString<1 then
0 {$ M  a; p' `  Encode=returnValue / p$ k0 R) k, _
  else 2 `& U3 g6 z: E5 `# d$ x
  mod3String=lenString mod 3 7 ~7 q# O8 V5 W/ V
  '补足位数是为了便于计算
0 C( f( ^7 g; J( F8 X  if mod3String>0 then 7 @- j& i( t7 V5 F% H/ _
  lenString=lenString+3-mod3String 7 q6 V: _# N9 p
  lenString=lenString-3 8 U& l% R2 y9 s' K- A4 S
  end if

返回列表