返回列表 发帖

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

class Base64Class
$ w/ m6 C  V4 \! B& k8 z  rem Const
0 H' O0 Z  [5 r0 T; I' V4 U! f$ G  dim sBASE_64_CHARACTERS'转化码 * J7 K, B& f! b2 M/ t# j2 V
  dim lenString '计算字符串的长度 . `+ q' m7 k8 c, C& `' ^
  dim iCount '计数器 5 o- {& ]+ w3 e$ B! v6 Q
  dim returnValue '返回值 / U# h: ^4 y: X! P. C7 m, O
  dim tempChar'缓存字符
6 \1 o% `. t; N7 F) N  dim tempString'缓存字符串
8 S+ T% A( U0 Q7 b5 t* ~, Z  dim paramString '参数字符串 8 P7 Q  D" F& T7 @
  dim temHex'缓存缓存十六进制 % {6 r0 `3 U* [+ S) F
  dim tempLow'缓存低位
# A. o( i0 v. {: R! t" s6 f' U  dim tempHigh'缓存高位 4 S8 X1 [* A) Z; ^* b
  dim mod3String' ! H) `) p9 h7 v3 w9 c. b
  dim mod4String'
2 d+ X: D2 H! G) v  dim tempBinary'
$ N; d. r- O' \) R8 h* M  dim tempByteOne' " {& U5 U6 k; d1 O  L4 Q
  dim tempByteTwo'
# R& j4 e7 U+ e! A6 N& D  dim tempByteThree'
  F5 [9 I2 T+ C* ]. R% @  dim tempByteFour' ! A; u# m' N, H, z. n
  dim tempSaveBitsOne' " l: N9 w) [3 }, x
  dim tempSaveBitsTwo'
# ?) L3 Z) O1 _7 `5 V  '********************************************; M  a! ?: c4 r2 D- y. R
  'begin初始化类
& W# y1 j4 j  r% p3 ~  '******************************************** ( I, T; m& j' W  K' z; W. L; J# t
  private sub Class_Initialize() $ t' v3 l7 h/ |+ ?5 u8 ~( V; q3 r
  sBASE_64_CHARACTERS = "ABCDEFGHIJKLMNOPQRSTUVWXYZabcdefghijklmnopqrstuvwxyz0123456789+/" end sub
/ x. N! H8 q1 r; P/ W4 h8 ]% o  '********************************************
2 r4 h! @+ H9 F, H; ~2 B( w2 }! P8 v  'end初始化类 '$ K( G& T/ v+ q% S- O
  ********************************************
9 d& M5 a* ?# |  '********************************************
" e: L( Y( Z1 e2 g% j. K  'begin销毁类 " j- d6 a* p6 U" u2 T, w+ O3 i/ j
  '********************************************
8 _' G' U0 Q! [5 o9 z  Private Sub Class_Terminate()
+ L4 F4 X" X. e  sBASE_64_CHARACTERS="" end sub
. T5 _0 _- m# H3 w6 B& \% C  '******************************************** ) S8 {5 z; J5 T9 w
  'end销毁类 % |4 W) q4 B* D# v" [
  '********************************************
. K1 s3 M+ d% r7 R  '********************************************
3 \" t# `( e4 a% {( g! \1 R  'begin将Ansi编码的字符串进行Base64编码 - Y3 {) p# K" c/ o! u6 c- v
  '********************************************
$ w' L4 b6 z- w: @  `' F" Y% f  public function Encode(paramString) # |( s- t3 h2 F! P  G
  tempString=""
) m$ [. f( o) M  returnValue="" / z, D! O3 C1 q1 d% r" g
  lenString=len(paramString)
# ^/ |# L9 P  X# |  if lenString<1 then
  }4 [/ [& s8 I4 Q+ ^6 d+ ^  Encode=returnValue
1 V8 Z) A+ e/ t: ~5 a  q# v  else
$ a2 p& s, [7 ]. \% P  mod3String=lenString mod 3 ( c# N; G0 c9 B
  '补足位数是为了便于计算 : ?8 S/ T' o: V" _' z" k% J4 i, W
  if mod3String>0 then   F% g, k; Q" i- m" |
  lenString=lenString+3-mod3String % ~' F7 B3 s6 C
  lenString=lenString-3 , r) P$ x+ k1 _3 _
  end if

返回列表