返回列表 发帖

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

class Base64Class9 ^, f1 z" [4 @7 v
  rem Const
9 C. G$ e& A. f: e* u% _  dim sBASE_64_CHARACTERS'转化码 1 Z  c/ v% g% a. e- G
  dim lenString '计算字符串的长度 " z) o2 U: ~2 p
  dim iCount '计数器
; F- W& S$ ?& {3 x3 D  dim returnValue '返回值
; R' @' K% P' `) n  dim tempChar'缓存字符 6 t; s# H1 l; P* C: k4 F; q
  dim tempString'缓存字符串
) O$ ?( w: u. T0 j+ A  dim paramString '参数字符串
7 ~1 u  w6 z2 q1 [0 R  dim temHex'缓存缓存十六进制 7 E; b3 E5 @' T" Q; j4 J: g
  dim tempLow'缓存低位
. l& r0 f' E! F, m, ^$ z  dim tempHigh'缓存高位 # d% B! ~0 J% A  d/ O
  dim mod3String'
- w- B/ K3 ^6 x6 J  dim mod4String' 4 R. n: y0 h; y" R
  dim tempBinary' 5 ^2 {0 S2 \- G
  dim tempByteOne'
: @4 [  Y9 Z0 N# g  dim tempByteTwo'
' }" l! d6 U/ T9 |# g  dim tempByteThree'
- |* o- S8 A4 {4 U0 a; |  dim tempByteFour' 9 W# ~) e. K. r' ?' G4 {3 s9 D' o
  dim tempSaveBitsOne' : f; a7 I: W: @# x
  dim tempSaveBitsTwo'
( x$ m, C6 O- J  '********************************************5 H" H8 A0 {" ^" [9 \" h5 G
  'begin初始化类 + ^2 ?, X8 X. c. _
  '********************************************
8 E% k" z& Y% u2 O# }- M  private sub Class_Initialize() / }6 @" J2 }  L0 E; ]9 [0 X
  sBASE_64_CHARACTERS = "ABCDEFGHIJKLMNOPQRSTUVWXYZabcdefghijklmnopqrstuvwxyz0123456789+/" end sub ( G, e3 L; A9 f  V8 B  I. `2 g$ r3 u
  '********************************************
! q! O: z9 E8 g% }, E0 u  'end初始化类 '
6 g. V3 X. p- T  ********************************************
! x* s$ S$ s5 f" u/ f: p  '********************************************
' g" I, d. u6 G( s# A$ A6 w  'begin销毁类 + b6 s2 M8 j1 `$ M$ }
  '********************************************
: U; R9 [$ n7 s0 J" n0 K  Private Sub Class_Terminate() 0 E0 _) i( G( d) ~* r/ R
  sBASE_64_CHARACTERS="" end sub . {$ i( m* w+ c1 V( W$ n
  '******************************************** & K8 h6 x' H+ q
  'end销毁类 & e& A# t0 a$ |/ d! u1 f" j% Z
  '********************************************) V6 V+ }# ]' e1 Z) w' F- n. [- e
  '********************************************
# m4 e% G, M2 ?! n( Y9 l: S8 J! X  'begin将Ansi编码的字符串进行Base64编码 # D% r. U  D6 p4 l# h) t& T
  '******************************************** # L3 q6 _4 |3 X: c5 S& p
  public function Encode(paramString) 8 ^: z0 w" j0 O, V4 I1 A
  tempString="" 4 k7 M% y$ `$ M4 G7 w
  returnValue=""
9 G) F! h) ]! k5 i& g2 O  lenString=len(paramString)
- `, _& T/ G; K1 E2 l5 C9 Z2 {8 s  if lenString<1 then
1 X5 N' O# m; W5 E+ Q  Encode=returnValue
$ U2 f; A- S2 N, a  else
/ y, r8 N5 r- c1 y' ^# p  mod3String=lenString mod 3 - f: a; y7 p' u) O
  '补足位数是为了便于计算
5 r' w, j. Z: w& r$ V7 ^  if mod3String>0 then
* `( \5 r0 _* A6 j  lenString=lenString+3-mod3String 6 _" O! |0 e! n2 j1 Y' ]1 {8 m
  lenString=lenString-3
* Q" o1 n  J% ]  end if

返回列表