返回列表 发帖

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

class Base64Class
" q" E) Y' Y+ ?- H: a# m  rem Const
9 o$ {. U  Z& Y+ v. E  dim sBASE_64_CHARACTERS'转化码 ' l3 P5 f, g. g8 k
  dim lenString '计算字符串的长度
% ^7 D' d  d) d8 Z& }9 N& q  dim iCount '计数器 # r) D- {& ~6 |  K' d- {
  dim returnValue '返回值
# \7 h- F$ [2 A& k4 v7 d  dim tempChar'缓存字符 ( q. J" z3 q5 R1 ?" a
  dim tempString'缓存字符串 4 G* F8 W4 @9 V  t4 e
  dim paramString '参数字符串
5 C7 O! q3 ?" _4 o5 Z& {& H  dim temHex'缓存缓存十六进制
- P4 ]8 ~: x& \. ^9 r  dim tempLow'缓存低位 ) r6 s; l4 V# ~( ?* {
  dim tempHigh'缓存高位 + s- x) L/ I7 E- r6 S
  dim mod3String'
; j8 u+ R6 T/ T  dim mod4String' : e, o% g' W0 `' ], B
  dim tempBinary'
. p: `; t1 `# D  Q, N  dim tempByteOne'
1 D- c& P% a2 s, z' S  dim tempByteTwo' 0 V& b0 G4 @% b, q9 f
  dim tempByteThree'
/ x0 v7 ]3 |0 ]+ R9 Z" Y1 {  dim tempByteFour'
5 Q, `) d5 R) _/ W7 p  dim tempSaveBitsOne'
8 @. C/ }2 j  Z* X. z  dim tempSaveBitsTwo'
% m0 p, o/ J: N8 ]2 ~  '********************************************4 r  Y' L% u6 Y" [6 O1 I- w
  'begin初始化类
: _) F; z( g% }8 L5 r) w  '********************************************
; @( _  ]4 f/ r+ f# p$ ~3 d$ K2 |  private sub Class_Initialize() 0 I# @# |2 b- a
  sBASE_64_CHARACTERS = "ABCDEFGHIJKLMNOPQRSTUVWXYZabcdefghijklmnopqrstuvwxyz0123456789+/" end sub * A( P: C: P# W
  '********************************************
  W) u. L0 R, s0 K& \( m& y2 V  'end初始化类 '
3 n. K% L, b8 a2 r, F" E# ^  G0 n  ********************************************
, j& E+ ?% X6 n5 F; D  '******************************************** 9 [2 L2 X# ], N# ^% K, R0 Q8 T
  'begin销毁类
3 z9 D, f+ m5 W- F2 z4 |. b  '********************************************
$ l4 J4 J* o8 A* K- o  Private Sub Class_Terminate()
/ e( k! `0 l) b/ x2 g0 I% h  sBASE_64_CHARACTERS="" end sub ( g' B9 e% g) k7 B! j
  '********************************************
! g, ?+ b5 Q- j& V  'end销毁类
% [- ~0 S) }/ H2 y  '********************************************
2 I, n8 }5 }1 V- z0 m: h  '******************************************** ' A0 B. o8 T% ]! F( A
  'begin将Ansi编码的字符串进行Base64编码
- U0 _: w6 @: I6 J: q, x  '******************************************** 2 h+ N' J8 E- s
  public function Encode(paramString) 2 w0 q9 n( ~5 c, `1 j  Y. c. x
  tempString="" " Q5 Q) ]9 E7 V& x9 w% ?  q* ~
  returnValue="" * @. z) B, R" B! Q! ?  Y. T
  lenString=len(paramString) % m$ ?. A, y0 E: s: U! E
  if lenString<1 then 3 F& G  j7 I0 a5 v
  Encode=returnValue
2 M. Z5 a9 E& g' B2 i; q# a  else
+ D, d% O( W2 g; R9 e9 K  mod3String=lenString mod 3 ! t# k/ `: J; G, b7 E
  '补足位数是为了便于计算 & q. {! s) [' {2 L
  if mod3String>0 then " J/ s/ }4 X3 O" h3 ]$ e( G6 e
  lenString=lenString+3-mod3String
1 D' f: ^/ x1 u$ F* D3 h  lenString=lenString-3
* q# Z" U. S$ r3 w% u; j" I+ s8 M  end if

返回列表