返回列表 发帖

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

class Base64Class; r; N  u3 u  g& z7 E
  rem Const
% v, S7 f! c2 P6 S, D: Y  dim sBASE_64_CHARACTERS'转化码 ) K& W) x5 }+ T# `) G7 J
  dim lenString '计算字符串的长度 2 q; v& s! M/ t& L, s  j5 H
  dim iCount '计数器 . R5 t; F; n4 s1 _8 J1 [' ?
  dim returnValue '返回值 ( j2 R3 _. D( Z1 f
  dim tempChar'缓存字符 . h  \4 i6 J' ]7 }5 q/ o; a: Z
  dim tempString'缓存字符串 : r6 s  p) f6 Y% ?% e( K$ K
  dim paramString '参数字符串 + F# R9 ~* s" b" ~
  dim temHex'缓存缓存十六进制
8 i7 T0 k  a8 z5 W; [  dim tempLow'缓存低位
3 f7 d; J& b' O2 U  L  dim tempHigh'缓存高位
. O" ?# I, v) o! _  dim mod3String'
9 d6 Y. r0 ?8 i0 {  dim mod4String'
1 l$ K6 r+ L0 E  [0 u. J2 R' Y  dim tempBinary' $ N' r7 ^' x" W3 ]
  dim tempByteOne'
! ]: \( k4 |5 B: u. i# z  dim tempByteTwo'
9 J1 }; _4 X" o' {' k. p2 I  dim tempByteThree'
" R/ t- o) k) }3 f2 w+ m  dim tempByteFour'
9 L4 h: e5 \% F2 ~& e; A+ Y2 K3 _4 h  q  dim tempSaveBitsOne' $ h* z5 x! R7 {! H
  dim tempSaveBitsTwo' + [; V, ~9 d7 ?* k2 o+ r( k
  '********************************************2 D, b+ g7 N9 e- t7 ?: E
  'begin初始化类
$ w+ [. @7 W) Q( u" _  '********************************************
' K( B7 H  s) U, t0 _8 p  private sub Class_Initialize()
- I& d4 F6 n, P- m' g& T/ K  sBASE_64_CHARACTERS = "ABCDEFGHIJKLMNOPQRSTUVWXYZabcdefghijklmnopqrstuvwxyz0123456789+/" end sub
# B! b, e- u" t0 f$ c) ]: e- ]  '********************************************
, T0 @' J  q8 }) }* M; S7 R  'end初始化类 '
! y. w5 x1 o; Z% P$ f  ******************************************** , _( i* _& @2 e, ~  v0 }& Q$ s, h
  '******************************************** 2 A% W4 Z+ V  u0 X
  'begin销毁类 6 r4 C- z; a* G& [  b, q
  '******************************************** 3 G( o& ?- G' R# B" Z: y0 P
  Private Sub Class_Terminate() ! W- E9 O3 z) ]$ \
  sBASE_64_CHARACTERS="" end sub 1 j+ Z. X/ q3 M  J- k. F- \
  '******************************************** / q: K  @( K, x" t. [7 e
  'end销毁类
& C0 o9 X3 `. u/ I  '********************************************: v! \. `" |3 D5 v" b# {( V! n
  '******************************************** ' E5 P5 z; A) k* O0 X
  'begin将Ansi编码的字符串进行Base64编码 1 x) a9 q. s' y, q3 g
  '******************************************** ; i$ d; {, H" H
  public function Encode(paramString)
3 [; q; h( K, l  tempString="" 8 S. s7 a( k% e, `. t
  returnValue=""
/ f8 I/ z/ S# l, s  lenString=len(paramString) ) S! d7 S2 ~# O0 k4 @
  if lenString<1 then : g9 F6 W" N1 U/ p( b) [
  Encode=returnValue # h0 `* r  }7 U5 K
  else ; `) q' `0 N% R3 O" B& {$ h
  mod3String=lenString mod 3 + ^! v2 j: O0 A; f. d' C: a
  '补足位数是为了便于计算
' J( g% _3 Y. L* K2 W) M5 O2 \3 \* W# t  if mod3String>0 then & g2 I+ C; h/ P% O2 v5 `" f3 h; {
  lenString=lenString+3-mod3String
) A6 V6 Z% b8 l8 T  lenString=lenString-3
# ^/ v: c9 M' x. t( a! ~3 F  end if

返回列表