返回列表 发帖

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

class Base64Class4 z  i+ F2 Z1 d$ D# X8 q( S" ^
  rem Const
! d2 a+ L) d( P  dim sBASE_64_CHARACTERS'转化码
5 C; u" K9 @8 j, A  dim lenString '计算字符串的长度 8 T" x: Q  V  n+ ^
  dim iCount '计数器
( `( _. |: M  d  n; j0 W1 p9 H  dim returnValue '返回值 ( r2 X0 g2 m- D( ?& v0 z. ]
  dim tempChar'缓存字符
) w8 P" Z0 S( W( t( A  dim tempString'缓存字符串
- b% ~  z3 g3 P3 _# Q  dim paramString '参数字符串
0 |+ C$ T. J5 N- j! E! K+ c  \  dim temHex'缓存缓存十六进制
2 @! F  k' a1 E* w* {  dim tempLow'缓存低位
9 R. x6 a0 |1 ?/ [* E" C* c  dim tempHigh'缓存高位 ; J" f4 j) m! |
  dim mod3String'
2 T, y( N9 \7 d7 ~4 S8 h& M6 c. {  dim mod4String' 9 b6 z; _! C/ D2 u3 Q
  dim tempBinary'
0 I2 v2 r! u. u, R8 l  dim tempByteOne' ) Z( |3 u: X9 G+ g' ?& ]
  dim tempByteTwo' ! L+ i9 W& s7 z; p
  dim tempByteThree' $ Y7 {/ J+ a+ ~% r+ v
  dim tempByteFour'
. U5 [% l6 w/ Q7 H7 x% I  dim tempSaveBitsOne' ; q/ ?' L4 P3 k
  dim tempSaveBitsTwo' , M1 s3 M* I- M9 w, i
  '********************************************
- z# Q' F6 G8 p& e  'begin初始化类 # C  \: m2 E& D& e, |5 F
  '********************************************
5 [3 S2 v( _+ c6 W+ c' P( v  private sub Class_Initialize()
+ M$ r1 i* v! m' f7 r  sBASE_64_CHARACTERS = "ABCDEFGHIJKLMNOPQRSTUVWXYZabcdefghijklmnopqrstuvwxyz0123456789+/" end sub 5 x: l$ c; w* _0 K7 D% O
  '******************************************** + t/ D2 w: O3 _& g  i  h
  'end初始化类 '5 ^9 F: l& |% [: t" y1 r3 G$ |
  ********************************************
3 [- P# q( X, \5 [7 g& s  '********************************************
$ j; B! u. R* r5 Y4 E+ O  q1 A2 B  'begin销毁类
! @! b7 i9 b  v% K8 L! v  '******************************************** 0 G: [( m& @0 i9 W# S* G' e4 @
  Private Sub Class_Terminate() 6 ?6 \- K& S! |, f' _9 q
  sBASE_64_CHARACTERS="" end sub
. q: M6 c5 j6 v5 S$ Q  '******************************************** & T! ^6 E& W  U4 Q/ k* N9 Y
  'end销毁类
0 n; B- ]3 ^2 a* N6 S/ J  '********************************************
; ]' W  s+ N1 p7 M  '********************************************
7 _* u' d3 b0 ]- [& E4 t6 N  'begin将Ansi编码的字符串进行Base64编码
: \) m: V) U5 ~8 p  '********************************************
# X9 l+ d9 `0 R; n+ Y* ?  public function Encode(paramString)
" a, ]! {7 P6 ]  tempString="" ! l1 v6 ^' v3 S9 y  p. w
  returnValue=""
  h6 k% E! C7 E  lenString=len(paramString) . g* Q# \/ c& u7 f
  if lenString<1 then
: i4 p* A# U' \/ T& F  Encode=returnValue
, ?3 N7 d& [- u; k- H( B8 {2 F  else 6 R, x' z, [+ |, i
  mod3String=lenString mod 3 : B* h  f" L# U& _
  '补足位数是为了便于计算
: |0 x, n7 J) n& \+ ^, T0 n  if mod3String>0 then
, J4 R& k% [# Z4 F+ w7 c  lenString=lenString+3-mod3String
$ f! u4 ^* v, l% Q+ R2 s  lenString=lenString-3 ' E6 ~* \1 m& a+ {
  end if

返回列表