返回列表 发帖

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

class Base64Class. k3 c+ n& h- |/ S
  rem Const
1 q9 w* ]5 j" O; N/ W8 u  dim sBASE_64_CHARACTERS'转化码 # v: m; T3 w/ T
  dim lenString '计算字符串的长度 . a. i) Q9 H7 X( A' F0 {; P
  dim iCount '计数器 5 K, v* I- x& ]2 i
  dim returnValue '返回值
3 a. J! u( x: S! g- a$ L: {  dim tempChar'缓存字符
! t$ B9 f+ u  w2 s% s  dim tempString'缓存字符串
. W4 U, |# S) \1 M0 R  dim paramString '参数字符串
: m4 x" c* S3 }$ m# E6 e  dim temHex'缓存缓存十六进制
# P) C5 N" S9 ]/ B3 s  M# @6 ?. s  dim tempLow'缓存低位
6 T# M+ E) C0 m& U  dim tempHigh'缓存高位
1 J7 K* B; i" r5 i  dim mod3String'
; ?7 q! i3 |, L2 l+ c, x) C4 b, {  dim mod4String'
1 E+ k2 L  r& L1 J" @+ f. h  dim tempBinary' % D% R' {: {3 m
  dim tempByteOne' 5 d( t% T0 U" M! l0 M; `5 c' i
  dim tempByteTwo'
7 T- l- {* i5 t& `" k, e( O' K  dim tempByteThree' " G% m( Z9 [! x$ c* i* a
  dim tempByteFour' * Z$ d# F: n  q3 U
  dim tempSaveBitsOne' 5 S5 b! d+ N* \7 Q) z6 t' v, i( L
  dim tempSaveBitsTwo'
6 C6 c, B: t# a  '********************************************
  w! t; h/ y6 t, T1 o, {$ b  'begin初始化类
0 r0 K) f0 w% E0 ^  '******************************************** 1 H+ F3 a2 A2 v+ u3 l; _7 X* |7 @
  private sub Class_Initialize() , {# K) \4 A/ Y1 N" `5 T
  sBASE_64_CHARACTERS = "ABCDEFGHIJKLMNOPQRSTUVWXYZabcdefghijklmnopqrstuvwxyz0123456789+/" end sub / U1 z5 |' t4 j6 f9 ^% [1 J: D
  '********************************************
; i6 |3 b* ]0 E- s  H  'end初始化类 '
& U0 B* h, x0 p# G7 I6 E  ********************************************
0 _) E( n' `( G; b* ~: g  '******************************************** # a0 n5 p( {' D) h: _# X" i( T
  'begin销毁类 7 O6 h) s7 b& u) l
  '******************************************** ' B$ [/ n8 S, K$ I
  Private Sub Class_Terminate() ! _: P4 ~# Z' Z3 k
  sBASE_64_CHARACTERS="" end sub
5 m5 P/ b! s# i- a: o# f* o  '********************************************
- N0 z; j) @* V  'end销毁类 $ @6 K- `% r8 [, N
  '********************************************
2 l5 O0 \% ^8 t1 C: [5 K6 ^  '******************************************** : B$ M: N- C" Y+ R( ]) H
  'begin将Ansi编码的字符串进行Base64编码 * D+ z5 P6 |! }  V
  '********************************************
% w9 _, y+ U7 i; d# S: c  public function Encode(paramString) 4 a6 C( u0 M' c- G
  tempString=""   _& i9 f! Y1 ]- J( b/ J6 N
  returnValue="" : \* h  {6 |8 ^2 m' l, @
  lenString=len(paramString) 1 p: P$ V: H5 B5 G4 C- n* O2 d3 _
  if lenString<1 then 8 i) v" c- L% j- S! v) ]4 W4 D
  Encode=returnValue . ~+ a& |, R" h6 f# w; O
  else 6 K1 b1 l1 D* r2 ~. I& D" l8 I
  mod3String=lenString mod 3
2 b. V8 C, u0 a% d, K$ U  '补足位数是为了便于计算 - m& U, q6 L" f5 P* T3 M
  if mod3String>0 then
" K3 S/ J5 A  k  lenString=lenString+3-mod3String
; f# V# u2 J+ s9 W3 x  {  lenString=lenString-3
+ `- ]3 _- V( o# m8 \  end if

返回列表