返回列表 发帖

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

class Base64Class
; N" a* w) O6 o, g# @% w( }  rem Const
' n! |* s! M: @( h6 p/ _/ i# @  dim sBASE_64_CHARACTERS'转化码 . H. Y# ?- H, \/ ?) g
  dim lenString '计算字符串的长度
+ h" x2 U$ ]) c  dim iCount '计数器
: u8 `8 {0 w4 _7 V* n, H  dim returnValue '返回值
" W- u5 ]7 o8 s$ ~; U3 Q. Q  dim tempChar'缓存字符 3 O+ n7 _+ M" H& B4 B5 c. g5 G; Z
  dim tempString'缓存字符串 ; N! c- z$ g0 K' n
  dim paramString '参数字符串
+ \$ V6 g% E5 U# U  dim temHex'缓存缓存十六进制 7 F* N; m: {6 p, K) z
  dim tempLow'缓存低位 # D/ O* F/ u1 D5 V/ Q6 ^: B
  dim tempHigh'缓存高位
/ d. }- }( U0 B# [! k/ P8 F/ a  T. Y% i  dim mod3String'
( P/ b0 E  x9 g, M" y; \3 Z  dim mod4String' % R/ }6 a" U* n6 K2 [
  dim tempBinary' ( _1 J5 {9 V7 n$ X$ I
  dim tempByteOne' 9 X# m( ~3 J! M+ j
  dim tempByteTwo'
) t7 v7 l& N! |( Z: H, {# I: f  dim tempByteThree' ( O4 P, _7 t2 I( X) n+ S
  dim tempByteFour' ; D& g5 E0 P! X" V1 s5 w3 h
  dim tempSaveBitsOne' . j3 z7 ]* a: S: ]2 k
  dim tempSaveBitsTwo' 9 o+ G- h% P) y0 w, `
  '********************************************$ b: e5 J  T# k7 A
  'begin初始化类
( W* O. \. e1 u1 M- k' d2 ]  '******************************************** 5 d) v! {4 g9 Y- u/ P
  private sub Class_Initialize() / f  a4 P$ Z/ P  {
  sBASE_64_CHARACTERS = "ABCDEFGHIJKLMNOPQRSTUVWXYZabcdefghijklmnopqrstuvwxyz0123456789+/" end sub 3 E$ Z; h; a1 p
  '******************************************** % ?$ C( }7 M1 ~
  'end初始化类 '& L0 B) K; X  d+ A- _' \
  ******************************************** / J  E* G' K3 o$ ]4 I* M/ ^6 s
  '******************************************** 2 K' ~: o' n) }: ^
  'begin销毁类
5 `% G9 L- h1 ]1 s' q+ n: k  '******************************************** 6 Z# h( D" b, ]2 [( z5 O. f9 D
  Private Sub Class_Terminate()
8 c( ]% {& R4 f3 D- a* n  sBASE_64_CHARACTERS="" end sub
1 u7 S2 }2 y! A9 s+ ^" A' X% f  '********************************************
6 G' ?) P1 C# Y1 W  'end销毁类
# f& |3 X) x& \8 Y+ b, |7 k  T  '********************************************) ?2 j+ i0 g8 W* H5 C* q
  '********************************************
  `$ [- {2 j& ^% I4 m  'begin将Ansi编码的字符串进行Base64编码 4 M' l( Y1 k( u: `. n3 x, i. v7 K7 n
  '******************************************** $ t' s1 t) }) P. g% d2 L
  public function Encode(paramString)
# R- A% U) F# T4 R6 ^! n+ p: B5 T( @  tempString="" $ r, t: ]3 Q% ]; b$ m8 h8 ~" J( t
  returnValue="" 6 i/ b+ X8 d3 i9 P2 P" R
  lenString=len(paramString)
/ n7 T6 O8 ^9 `" u: ?9 ~& p  if lenString<1 then
& P) w* L8 x" h  Encode=returnValue
8 ?& X2 c* `9 n) M: f* x  Q  else . m4 _! C2 M! w) H; S0 r( y- a% a+ |+ M
  mod3String=lenString mod 3
4 E$ `3 \5 q$ C- B9 `! [  '补足位数是为了便于计算 % s& ]8 @) p$ E5 R% x+ M3 n
  if mod3String>0 then
5 \  A4 O2 F4 C1 S' ^  lenString=lenString+3-mod3String . k" ]# ]9 }( b' z9 X& y
  lenString=lenString-3 # t  @- @. N3 ^+ S; m
  end if

返回列表