返回列表 发帖

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

class Base64Class; c7 k- q1 ?* c3 Q
  rem Const 4 ]/ Z/ h* {1 A1 n; [  {4 f
  dim sBASE_64_CHARACTERS'转化码 2 P0 _+ a8 V+ d' ~4 X6 x  x
  dim lenString '计算字符串的长度 2 V# D, M0 P' T' R
  dim iCount '计数器
0 B( K) M0 B/ D$ P) U) ?  dim returnValue '返回值 1 k( r( ]2 p! \9 z# A0 C+ r1 H
  dim tempChar'缓存字符 - z; c( T- j& Q: ~8 k/ N
  dim tempString'缓存字符串
' \- z) k, ]9 b4 W# j5 A( Y4 J4 a  dim paramString '参数字符串 . W& Q) B, N' f# F+ v8 c
  dim temHex'缓存缓存十六进制 $ L) j5 V; K2 q! i0 U7 p$ O
  dim tempLow'缓存低位 ) x. f' {. l2 K( u5 T5 K
  dim tempHigh'缓存高位 . @- l; ^$ j* j6 X1 \) B* c
  dim mod3String' * h5 o$ S+ t; I/ E4 }3 c
  dim mod4String'
2 ~2 C" }" B' l: y  dim tempBinary' 6 y* ~* j/ t8 Y3 I
  dim tempByteOne'
  Q/ L) v# W' P+ y0 q' Z; h  dim tempByteTwo' $ O# P8 l3 G8 T8 ~% |; c" `
  dim tempByteThree'
1 a' ?/ I8 A: g) Q& b/ \: q  dim tempByteFour' # N8 d0 I6 A5 b, W
  dim tempSaveBitsOne' 4 h9 {% k/ z: b9 i
  dim tempSaveBitsTwo'   w0 I) F. t! D4 `" O
  '********************************************
3 t1 g: Z+ L0 e# x% f) L1 i/ G6 w  'begin初始化类 " A: F( P' J& f6 G; v% \" K
  '********************************************
8 O+ L, F  G; N; C& [6 c$ M8 z  private sub Class_Initialize()
7 Y  T5 F( \( {  sBASE_64_CHARACTERS = "ABCDEFGHIJKLMNOPQRSTUVWXYZabcdefghijklmnopqrstuvwxyz0123456789+/" end sub
& B5 N( W. l; }% C% H6 B1 A8 ^8 ]+ G  '********************************************
. U2 y4 I- n  `' t$ Y  'end初始化类 '
4 k: y; T1 G+ _, M% s  ********************************************
6 Z1 f8 I, I- S  '******************************************** : `0 v& B# `( g2 r" p
  'begin销毁类 1 @' K. \) q, g: k) N
  '******************************************** ; g' E- A  v' W: _% w0 s7 P0 t: d
  Private Sub Class_Terminate() ( {, U/ T- i7 e, \6 n" Y) u6 I, {
  sBASE_64_CHARACTERS="" end sub 0 a3 i! |# Z/ O  `9 F
  '******************************************** # @/ O/ a# U2 O9 s1 j  b
  'end销毁类
+ j2 Z2 }; ^5 d/ `4 h3 g  '********************************************
  O5 v3 a' j1 ]$ S2 A5 ?  '******************************************** / ~" z8 `! U& ^9 b$ y" f9 A
  'begin将Ansi编码的字符串进行Base64编码 6 j% I' g4 x: v- `0 a- F
  '******************************************** . q  D* b6 ^" W) {7 \& X9 m
  public function Encode(paramString)
  b; g8 ~1 r6 n; f5 z  tempString="" 5 @7 s# d" R0 Y' r6 n; u
  returnValue=""
5 n9 Y# K) ~) Q( V8 Q% u0 A# y  lenString=len(paramString)
+ M' ~) e& d$ N+ i" S  if lenString<1 then
* ~5 K: w/ c% f) N  Encode=returnValue " |: {* ?& Q! h8 @! f/ v
  else * `( b; i' e# X0 `2 `/ a0 Z
  mod3String=lenString mod 3
& r6 x3 M- C6 U0 K+ I  '补足位数是为了便于计算
+ ^1 P/ l' a+ _! c: y" c- |  if mod3String>0 then 1 M7 ?2 o, k: H& P9 m; j
  lenString=lenString+3-mod3String
  v2 I" E3 T9 O+ r" E9 v+ C  lenString=lenString-3
, H" y6 V+ Y* K9 K3 S3 ^  end if

返回列表