返回列表 发帖

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

class Base64Class
) I2 p- I4 {. A! v2 U8 s  rem Const 9 Z) q$ ?9 R. v, U# m5 k+ M: e# I
  dim sBASE_64_CHARACTERS'转化码
' i+ @8 b6 D$ C- g  dim lenString '计算字符串的长度
, f, N# A1 a! x+ k* g. ~  e  dim iCount '计数器 & A8 z  J* u' k6 I3 h  n
  dim returnValue '返回值
3 n- W& [, K: j, L" u. v5 S  dim tempChar'缓存字符
6 w3 L4 g9 N  g' \6 a  dim tempString'缓存字符串
. n0 [1 G5 f  s: _7 u  dim paramString '参数字符串 : a, m, @9 R' D/ T! [; x
  dim temHex'缓存缓存十六进制 : q" x* M; [7 T1 q) V, {
  dim tempLow'缓存低位
* k2 ]5 f) _& Y. ?% s% L/ E  dim tempHigh'缓存高位   P7 i+ Y- V* D2 i( Y. I  y
  dim mod3String' 7 V- O$ N- ]3 {2 D
  dim mod4String' 8 v& \) k8 A3 ]+ y
  dim tempBinary' & x$ L& {6 ^" l- J: q# d: l
  dim tempByteOne' 7 s. U) c- e: L7 ?0 h
  dim tempByteTwo'
7 x1 [  h7 r1 X3 G9 Z5 s  dim tempByteThree' 4 J: {# r# c& r6 S8 L5 u! h
  dim tempByteFour' ( E3 I  k1 y; h3 |! `, T+ P. v
  dim tempSaveBitsOne' 3 V1 ~, z0 {5 h( K# u. i7 @% d
  dim tempSaveBitsTwo' , z0 @% x2 o% L: a: B7 Q8 y
  '********************************************
7 d/ |3 {7 p$ U* i- t4 [$ V6 t, V  'begin初始化类
7 z# p8 T8 E, R% y  '******************************************** : }. H4 S9 b7 i0 t# Y
  private sub Class_Initialize() . B$ }4 k* l! @7 `
  sBASE_64_CHARACTERS = "ABCDEFGHIJKLMNOPQRSTUVWXYZabcdefghijklmnopqrstuvwxyz0123456789+/" end sub ) n1 \2 o1 O% ]6 H9 \* Z9 f
  '********************************************
4 ?8 R; i& T( L" x/ m# b  'end初始化类 '
, y: ?! C) a9 S: _- _$ a  ********************************************
: d  \" S1 ~$ T  '********************************************
2 D. R: N/ E8 z# M  _  'begin销毁类
* Z0 }# z" W% P9 c! F* m, y8 a! \  '******************************************** " {5 ?: D6 Z$ w# t
  Private Sub Class_Terminate()
& y' N0 ]4 J) ^" z) c& X0 s  sBASE_64_CHARACTERS="" end sub 0 i% N1 j+ _. X; ~3 E- l
  '******************************************** : r1 a3 O) R* Z: w
  'end销毁类
/ V& X! Q. R' S3 ^2 c  '********************************************. _9 j) g) y& K5 F; n- k! B( f
  '******************************************** ' n9 g" }  `) M. S
  'begin将Ansi编码的字符串进行Base64编码 2 ~* h7 C1 Y3 u' L. m
  '******************************************** 4 v' M4 S$ l/ ]7 V- D
  public function Encode(paramString)
& w( S$ U6 f9 h1 ^( J  tempString="" , {7 G5 a+ M2 K9 i# o9 D$ J2 e$ B
  returnValue=""
; V& A  F- l6 y8 D' t/ l4 L3 K  lenString=len(paramString)
" o: Q" L& H! |; a8 i" u1 t  if lenString<1 then
( C# b/ W: J0 O: {# }  Encode=returnValue
, M9 T0 _7 t- M3 o% [- q# L8 f  else 3 m7 t+ b$ n3 I/ y- i
  mod3String=lenString mod 3
9 t) b" _* Y4 M8 f8 l) l9 I  G! n9 N  '补足位数是为了便于计算
4 O  p5 j! t0 u/ i5 v5 P4 C  if mod3String>0 then 6 `8 D! A: q* {0 G9 y# H
  lenString=lenString+3-mod3String
4 @5 O/ j: W. R8 P7 m1 k2 z  lenString=lenString-3 ' w4 n8 f  T2 G
  end if

返回列表