返回列表 发帖

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

class Base64Class
4 r8 F5 z, T/ S, j  c9 B8 b  rem Const
5 k8 T7 G% a$ r, k! ]; I! {% h  dim sBASE_64_CHARACTERS'转化码
' P) O+ _: `& a' ~: [: H- A  Y  dim lenString '计算字符串的长度
% Q9 [0 a5 `8 j) k, I3 L& }  dim iCount '计数器
( X- a9 s* G* }* g  dim returnValue '返回值 ; G/ @" E$ g. z# ]! |
  dim tempChar'缓存字符 1 \8 L, [0 C( K- c6 c6 c* P# Y- a
  dim tempString'缓存字符串
9 N: d3 \( \+ Y) t9 r+ D  dim paramString '参数字符串
* z  \$ f, T# x0 @  dim temHex'缓存缓存十六进制 5 w/ p6 \  y9 e* F0 r+ F' H0 _- E
  dim tempLow'缓存低位 # Q; ^- \' R. @2 K, b& H  C
  dim tempHigh'缓存高位 7 z$ @# x( Q% f% n" ]3 L
  dim mod3String' $ d9 p/ i9 @2 V) Z
  dim mod4String' 1 u3 {$ U/ a) T: l4 j) c
  dim tempBinary' ) D! i- q, o, w* V
  dim tempByteOne' 4 j- \$ X# n- U- N
  dim tempByteTwo' 4 z$ T! G/ [* R4 u5 l& l; Y
  dim tempByteThree'
! `% A3 m' X' g4 b  dim tempByteFour' " G+ |- q; b1 T- N  t4 c+ A
  dim tempSaveBitsOne'
$ @' }& \# \$ n4 S0 V0 B: w  P  dim tempSaveBitsTwo' , E5 H9 `4 `8 p. n7 W
  '********************************************
9 E0 I5 y1 ]# l5 t" K1 W: [/ I  'begin初始化类
" w3 j9 c( X: u/ Q4 G2 }+ S  '******************************************** - n# Y1 j5 k% D! a7 ^" l% B
  private sub Class_Initialize()   i9 b0 p0 E, ~8 S! c
  sBASE_64_CHARACTERS = "ABCDEFGHIJKLMNOPQRSTUVWXYZabcdefghijklmnopqrstuvwxyz0123456789+/" end sub
% a8 ^6 V7 ]1 a$ @" L1 e, v  '********************************************
/ d) A1 X' B* M0 S  'end初始化类 '
3 F; g' k, k  R9 M6 d( Z  ******************************************** 0 U. D, M6 r: w4 Y8 k
  '******************************************** 5 _( T1 M3 k! N. D
  'begin销毁类 # v' G+ @' E, s7 _$ j% {3 H
  '******************************************** ; _" o( K5 u  h: [" U7 h# z; [' e- w
  Private Sub Class_Terminate() 5 D3 S: o8 M& ~% B
  sBASE_64_CHARACTERS="" end sub / D+ \% j! a" I" X
  '******************************************** ) e! }6 a6 @" V. {
  'end销毁类
+ c9 ^1 H: x4 [$ z  '********************************************' i8 l4 S5 ?( a' p" f
  '********************************************
8 J; X5 _* L$ |, F1 D" |  'begin将Ansi编码的字符串进行Base64编码
" F# S! T: D- T9 P' n  '********************************************
0 [, U8 k( d: o+ t  public function Encode(paramString) ; l; {0 X8 O' ^" C
  tempString="" " J4 E# |# J$ a
  returnValue=""
; @- F/ Z. p- {# ~6 S/ e  lenString=len(paramString)
) P2 d) F3 I+ ^1 e8 k9 s, k  if lenString<1 then
3 w9 D9 m6 g8 X7 q5 ]! \  Encode=returnValue
% b- O7 {2 a; s, p  else   q9 M6 G, ^; E8 A, |; y. |
  mod3String=lenString mod 3 5 n) C0 \* z  S9 i8 w+ H
  '补足位数是为了便于计算 , T' f4 u9 Q! m
  if mod3String>0 then
3 c; n, {; o- J) K5 X5 t- v  lenString=lenString+3-mod3String * s! f2 L" R! a6 D, G- m
  lenString=lenString-3
- f) b' N" Y) r, r, u- e  end if

返回列表