返回列表 发帖

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

class Base64Class
& O  A7 m( J/ M& Q. H  rem Const : Y- _/ o$ ?# S
  dim sBASE_64_CHARACTERS'转化码
, ]- d& N9 H/ k) d% b: |7 W  dim lenString '计算字符串的长度 ! O  v% D  ~! {8 m7 @
  dim iCount '计数器 $ y) f+ d6 N8 q! Q
  dim returnValue '返回值 3 m+ M6 ~; ?1 y- q3 E% f" x
  dim tempChar'缓存字符
8 l% l! n) [7 O( D  dim tempString'缓存字符串 2 A/ k! M# d) ?, l6 Q
  dim paramString '参数字符串 ) v( L# @4 \3 T: J3 h  t( }1 H
  dim temHex'缓存缓存十六进制 6 q& S0 a$ O9 X" Y9 ?
  dim tempLow'缓存低位
- z7 {3 r5 v" n9 h; {/ E  dim tempHigh'缓存高位 9 z& ~9 |  p9 d, \. ^
  dim mod3String' 0 [5 [1 L! [+ W. {! U
  dim mod4String'
7 T5 j9 Y% B. }; Q  dim tempBinary'
1 _* ~0 x) Y  _8 W  D  dim tempByteOne' # S7 n* S1 [0 m" e3 `/ R. i
  dim tempByteTwo' , T" r) V' e) g# I2 D
  dim tempByteThree'
* D) r* q* e" t% c3 W  I  dim tempByteFour'
% I$ R, @4 j8 K  dim tempSaveBitsOne' 6 q, Y; \% S9 W7 m4 `% ]% B
  dim tempSaveBitsTwo' 2 \: P' R! M+ w6 Y2 W
  '********************************************2 E* Z) H6 ?! W9 |
  'begin初始化类   Q+ y, b# w$ I* Q. t
  '******************************************** 7 f4 S: P2 Y" C2 d7 O
  private sub Class_Initialize()
3 B2 x/ |$ [' `: v  sBASE_64_CHARACTERS = "ABCDEFGHIJKLMNOPQRSTUVWXYZabcdefghijklmnopqrstuvwxyz0123456789+/" end sub
) A3 l- S) {1 F2 W9 W5 F! ~  '********************************************
) K0 y: ~+ z8 d# }  l  `* j: c  'end初始化类 '
5 [; `1 a. [7 G1 w$ O; B* c  ********************************************
7 o9 M9 r3 d: Y: O& J  '********************************************
6 d3 O3 e( g2 C3 C% V  'begin销毁类
" f4 L$ E5 ~/ Q  '********************************************
7 c3 v' {* ~* R9 ?  b# ?  Private Sub Class_Terminate()
# q4 B+ e' q6 C1 t6 {, z  sBASE_64_CHARACTERS="" end sub ! R. f' _  q% E; A6 T4 T
  '******************************************** ! }7 H8 S# O# k4 W+ ~
  'end销毁类 7 K% _8 V% ?$ T; w2 R2 m. b' D) b  d4 ]
  '********************************************% h' I  ~) K' u. ?3 n
  '********************************************
$ M) l, R$ o( U' X. h* e  'begin将Ansi编码的字符串进行Base64编码 7 V2 Z% q3 ?9 l
  '********************************************
1 k% Y7 k) D- W  public function Encode(paramString)
# ?. g9 ?' _0 j  tempString=""
0 B1 |# E" h9 H9 y9 e  returnValue=""
  a+ O2 c+ P' `$ \( U: U  lenString=len(paramString)
6 ~; ?% I! x, n1 A1 d2 m. o4 a  if lenString<1 then 5 |, E' G4 z4 Y8 H( k6 K
  Encode=returnValue
# Z* R9 H7 C; G6 U8 b/ O1 t: r  else 9 \* k( G; d+ V+ X( A: M5 Y1 D$ S
  mod3String=lenString mod 3 7 \6 E5 r- x& ~+ r) \, m
  '补足位数是为了便于计算
& p4 e! h$ m1 p( e7 t8 c  if mod3String>0 then   i  [, X# }& [( m$ F6 j
  lenString=lenString+3-mod3String
/ S, {6 ]8 l! Q8 N% M) F  lenString=lenString-3 7 C: z5 H7 @5 T8 f# {5 K
  end if

返回列表