返回列表 发帖

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

class Base64Class
) J! t" d  }: M) g! O/ G  rem Const
! a* a, E6 O  W% G5 n& b2 F% t  dim sBASE_64_CHARACTERS'转化码
" X; _! g) U# }6 `3 K4 n& E  dim lenString '计算字符串的长度
9 h. c1 G: ?3 o  dim iCount '计数器 ; }6 I  g) @" U* d
  dim returnValue '返回值 0 n* J; C2 A/ x# V3 h% c- S/ L
  dim tempChar'缓存字符
( e" v/ ]* ?. o1 M* w- \  dim tempString'缓存字符串 * f* d$ D- A* W& S. k, p) X
  dim paramString '参数字符串 9 {4 {# `% S8 s6 S* y
  dim temHex'缓存缓存十六进制
% z: J0 l" d  `% b! V7 ]: ^3 A  dim tempLow'缓存低位
* C9 Y* r1 j- x" i) R) w; h, C  dim tempHigh'缓存高位
9 O! a: S5 R# l9 p3 k0 {- {3 W  u% [2 O1 E  dim mod3String'
  K2 G" ?9 K8 {. A$ b  dim mod4String'
0 d$ b& M0 M: @7 {9 a5 F  n% l  dim tempBinary' ' L4 y+ H; b9 T0 H3 G  Y& ]
  dim tempByteOne'
' i! C/ U$ d. {, v/ b* ]  dim tempByteTwo'
, i$ f& m! I' S7 T  dim tempByteThree' : V- k- h8 m* |& i6 j
  dim tempByteFour' 1 y1 E2 g, z: {
  dim tempSaveBitsOne' 6 o. N' ~3 r% A) ]5 z* _; f! l
  dim tempSaveBitsTwo' ' K! A3 V9 X$ a7 G- b
  '********************************************3 [7 J. t: G- q
  'begin初始化类 7 K# g. {7 [' t& o( [
  '******************************************** : t: G. T  [# B2 Z3 ?
  private sub Class_Initialize()
% C. x* P6 c2 T  sBASE_64_CHARACTERS = "ABCDEFGHIJKLMNOPQRSTUVWXYZabcdefghijklmnopqrstuvwxyz0123456789+/" end sub & ?- R2 P  k: P5 Y" `" Y/ _
  '********************************************
( ]1 P- D% \$ r6 Y3 c' g' }& [5 B- Q  'end初始化类 '' s! u* J. E# a2 u) v
  ********************************************
4 X/ K! d3 b' n  '******************************************** 8 ]1 W3 r4 r# |5 R/ s0 D: \
  'begin销毁类 " O6 E0 O0 c2 H1 r$ a9 }: N
  '********************************************
1 z0 f9 i4 l0 G1 e  e/ S" T  Private Sub Class_Terminate()
( ~% ]/ t. z$ o4 p" E/ c; q  sBASE_64_CHARACTERS="" end sub 4 i* H  Z% [  G7 G+ A
  '********************************************
" G; j+ F# y" c  O' ]6 O9 S% G" u  'end销毁类
) m. s& ]0 k+ q+ u# O. U# m  '********************************************6 g! ~- ~/ v/ {' v' a
  '********************************************
4 U! v$ Q2 `" o( c% i  u4 v- {! G  'begin将Ansi编码的字符串进行Base64编码
0 a- Z$ ~! c7 ?  '******************************************** 2 W- x$ b9 O5 R+ W
  public function Encode(paramString)
$ i3 b4 v/ c# f0 c6 w: G% s  tempString=""
/ C1 y# b7 |2 U; O  returnValue=""   N2 S! ?! e' ~9 e
  lenString=len(paramString)
5 \( C4 C. X. r  if lenString<1 then ( ^% e' m8 O0 ~4 B: r# N
  Encode=returnValue
; `3 m, k2 {6 I4 j  else 3 ^+ m! f# F( C) ?8 z7 |
  mod3String=lenString mod 3
9 p: h) r3 C8 w6 t  '补足位数是为了便于计算
/ U/ x% v2 M% K+ |3 b* q  if mod3String>0 then 3 E4 p) M+ F1 q. I
  lenString=lenString+3-mod3String
, M  g6 c/ F+ i, [  lenString=lenString-3 " x: X9 c0 u" u  n# J& R0 x
  end if

返回列表