返回列表 发帖

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

class Base64Class
$ r: s; I; w) B0 O# |7 W- v  rem Const 6 U& e' Y0 b. N
  dim sBASE_64_CHARACTERS'转化码
0 H1 L: Y. {" Q- }" q+ P. w5 ?9 y  dim lenString '计算字符串的长度 & I% h6 T& E9 S3 f8 ~
  dim iCount '计数器
* c* s' {2 N' k. A4 S  dim returnValue '返回值 ( V1 h: F* l+ H) R! w* l5 {
  dim tempChar'缓存字符 1 l2 o+ H) h/ Z$ s1 f0 s* N* j' L$ V2 z
  dim tempString'缓存字符串 / n; A: y+ O! t5 Z! O
  dim paramString '参数字符串
; ^0 Q0 P3 _+ t* S7 m  dim temHex'缓存缓存十六进制
0 D& T8 S3 \; b- h$ N7 P" p  dim tempLow'缓存低位 ( J* v$ n1 o9 V& Y: a  L
  dim tempHigh'缓存高位 5 b( K( }0 r8 t9 H; T
  dim mod3String' # H' Z2 j; Y& P  m; l
  dim mod4String' 1 }1 w: M, t( P+ @; d6 G3 K! w: n
  dim tempBinary' , J, {6 w( |0 K! u+ K, s9 S
  dim tempByteOne'
! F; y- j( \, q( _$ d" ?  R  dim tempByteTwo'
' w! Q# Y& ^/ J6 I# f  dim tempByteThree'
  l! Q9 p  |5 t3 e+ |7 F  dim tempByteFour'
5 Q  Z3 J( z* v3 }" a: d  dim tempSaveBitsOne' 2 R, l& k( P: D; B# y  I+ ~, h( j2 k
  dim tempSaveBitsTwo' ; n0 q  O0 K3 o0 ]
  '********************************************% F0 u& n# g  [
  'begin初始化类
+ L: J2 Z& U& H5 w& w1 K) v& E  '********************************************
, s8 l; X6 t6 F4 J: |3 l6 n9 K  private sub Class_Initialize()
3 H" _9 g' U  a! ?  sBASE_64_CHARACTERS = "ABCDEFGHIJKLMNOPQRSTUVWXYZabcdefghijklmnopqrstuvwxyz0123456789+/" end sub 4 k% d3 j" V+ L5 {
  '********************************************
' K5 g$ W; B9 N  E" o' A5 ?/ W/ l- v/ m  'end初始化类 '
. [  `# ^( |0 h# H6 \5 o  ******************************************** + x/ c0 G' R5 t5 p# F, p. e" e; V3 t
  '********************************************
& {* Y- ^, e! D% c" P5 Z& M  'begin销毁类
- g  [6 Y% ~5 |! J, a2 D! I  '******************************************** 8 e* d9 t6 U/ }0 x! D1 }9 W
  Private Sub Class_Terminate() 7 Q0 ~' C! g. r3 I" x3 y
  sBASE_64_CHARACTERS="" end sub 4 V( r  i8 N& U& \
  '******************************************** : p2 A4 e% b. \; q( K2 N
  'end销毁类 * H! A4 `: U% V5 f+ r3 Y
  '********************************************
$ i. c8 @) S) B% t- r: c  '********************************************
& q6 A0 g$ Q, w8 s3 g/ w9 E% l  'begin将Ansi编码的字符串进行Base64编码
& \0 d0 O  W0 t+ @% \# E  '******************************************** ! l6 ]8 T6 ?: s: f9 X
  public function Encode(paramString)
! Z  h$ q, h* L9 {8 J7 x  tempString=""
; s8 D% D; y: ?& n$ F" a3 z  returnValue="" * S# G+ {' F' d
  lenString=len(paramString)
0 D% {8 a# f2 }3 ]  if lenString<1 then
- G& r4 m  r- u6 R2 P$ t# {  Encode=returnValue
, m. ~2 e. |7 t. ~$ l3 i3 m6 x; a7 E  else
; J/ |* ~) W1 ^) I% C4 b0 k: s  mod3String=lenString mod 3
) G+ n  D  `' c. E/ K0 j  '补足位数是为了便于计算
) @: m3 r5 c2 u% F4 ]  if mod3String>0 then
  E+ d1 ?4 V7 p9 |5 ~* v& D+ i+ ?  lenString=lenString+3-mod3String 8 }% k. b1 c/ W$ @( F
  lenString=lenString-3 ' _) g& g! B5 @  T  {
  end if

返回列表