返回列表 发帖

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

class Base64Class
3 V* i( \5 z! F: R& ^( {  rem Const 0 b0 {" j4 H6 i$ M
  dim sBASE_64_CHARACTERS'转化码
; H6 d4 a6 X: D$ H9 Q; B  dim lenString '计算字符串的长度 2 u7 _' a/ N9 P4 Y0 ^
  dim iCount '计数器
# J) u& E5 w3 J8 p, R" o  dim returnValue '返回值
. K6 F2 Q8 ]6 ?6 e+ d' \, P. G  dim tempChar'缓存字符 & G* s3 f' ?4 g% g! \) I
  dim tempString'缓存字符串
$ A& y1 {+ J- \+ Q& K  dim paramString '参数字符串
3 u+ z& P* k; i# k  dim temHex'缓存缓存十六进制
. {$ y- @$ N1 d: b, a  dim tempLow'缓存低位 . ?3 ?; j. B1 `
  dim tempHigh'缓存高位 ) R) K: c, }& y
  dim mod3String' & u: B$ v/ E' [# c& P
  dim mod4String'
, a' y/ ]5 U6 G; Z3 v7 H7 k. ~/ y* F  dim tempBinary'
# y; b% i  {% e0 J. v  i  dim tempByteOne'
* J; x: r: O& m  dim tempByteTwo' 5 N1 `) A  P( q$ a) Z- m
  dim tempByteThree'
2 q$ N- G: H; ?' ?  dim tempByteFour' + L# ]# G' ]8 I( K8 [* B$ n
  dim tempSaveBitsOne' 4 x5 j% A8 r* }; P; V/ M* S% t
  dim tempSaveBitsTwo'
3 r* @1 f+ U; {  '********************************************
1 x$ g; F; ~- [) o4 I  'begin初始化类 " i; s9 h5 w9 h- b
  '******************************************** - Q, ?: T  @3 G4 _$ b0 J6 _
  private sub Class_Initialize() 4 n6 ]8 L& K6 \1 P& z* }& o8 ]) B# b
  sBASE_64_CHARACTERS = "ABCDEFGHIJKLMNOPQRSTUVWXYZabcdefghijklmnopqrstuvwxyz0123456789+/" end sub
( T! a# [2 ~. N( V" v8 w, K" E  '******************************************** + `2 z; [( X/ p5 a
  'end初始化类 '2 C" ?0 D0 _. l0 n) W
  ********************************************
; {. _' E! y6 ~$ i/ H1 k# g) N! z+ b. [  '********************************************
2 Q6 @9 ^" S4 h6 _6 H  'begin销毁类
1 \* E) C/ q. O( d: X  '******************************************** 3 v9 j9 X- i8 o: T9 ~+ ]3 n
  Private Sub Class_Terminate()
7 ~( n$ N2 N( I* v. t& n  sBASE_64_CHARACTERS="" end sub
8 G# M- J: @( V6 {+ i! R/ P  '******************************************** ) F5 G! l0 p. O! g
  'end销毁类 ' L" P- i0 g3 L
  '********************************************- q( A! O: t# ^- L" o# g4 a* Y6 L
  '******************************************** 2 K- c+ p' j) @, K0 i& c) k
  'begin将Ansi编码的字符串进行Base64编码 ) D' O) l, D0 }2 H8 S% M
  '********************************************
: M3 ~$ H8 c4 \7 [7 V# o& x  public function Encode(paramString)
6 K* I# z- r  {. I$ G) \: O  tempString=""
- [+ u$ H! @& \; [9 t1 r  returnValue="" ; F# l! H, Y# X5 j3 F
  lenString=len(paramString)
9 ^7 b0 F8 k' R" w5 \& a1 ~. s  if lenString<1 then
* G' b' \% a. V' @& ~" t# W/ m7 Z  Encode=returnValue
) [3 ~  x* B! s  else
6 C9 L5 p& a' z6 F# w3 y  mod3String=lenString mod 3 - \0 C" t2 h4 B, x9 j1 [: |
  '补足位数是为了便于计算
9 ?, v% G7 ~9 ?6 |& }  if mod3String>0 then & K: l8 H& W- g5 [! t0 E& x
  lenString=lenString+3-mod3String 7 a1 j/ J' h" C# R, d4 t6 h
  lenString=lenString-3   k: i) z+ C8 {7 h! G1 w
  end if

返回列表