返回列表 发帖

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

class Base64Class
, |9 c  R! B5 r* y" R  rem Const
4 ~3 N5 ?3 W( N! K, i0 H2 }  dim sBASE_64_CHARACTERS'转化码 6 }4 |5 N& u7 b8 U' b
  dim lenString '计算字符串的长度
) B! g0 O) t) G9 H6 A% L  dim iCount '计数器
- C8 |5 R9 W2 w  dim returnValue '返回值
7 O5 D+ d* w" P) U  dim tempChar'缓存字符
' G. S+ O7 ?& M5 w; V; g$ D! o- S  dim tempString'缓存字符串
; |+ r; H8 ^4 K1 [, N1 h: y  dim paramString '参数字符串
. a& C  }" r# F8 S3 A2 E- f  dim temHex'缓存缓存十六进制 & D+ w) f2 p7 N0 Z8 l) q
  dim tempLow'缓存低位
" l- D' H* w. R4 u0 q6 g  dim tempHigh'缓存高位
' b/ r$ a. g* k, u  dim mod3String' 5 T; z8 r* |: ?- T$ B
  dim mod4String'
8 |9 \6 C! f$ D1 k  dim tempBinary'
2 ]+ E3 {3 `. v- M  dim tempByteOne'
$ z: ?' Y8 L! T! v  dim tempByteTwo'
* A2 |. u  i, ~6 T  dim tempByteThree' ) y9 {" F1 ~4 V8 o+ f) z6 \. o
  dim tempByteFour' , ~- i; \$ e1 K9 M" y, M
  dim tempSaveBitsOne'
0 }/ Q" ?7 o$ ]& e" U2 w  dim tempSaveBitsTwo'
3 p3 Z# R7 B/ B1 b' A" p  '********************************************
9 Z7 \+ g5 u  W4 r  'begin初始化类 " G9 Z% x! C2 W2 i1 N( I0 G3 O' ~
  '******************************************** : h7 L; K7 ~3 D5 {
  private sub Class_Initialize() / S' O" g3 i2 n8 W7 R" a+ c
  sBASE_64_CHARACTERS = "ABCDEFGHIJKLMNOPQRSTUVWXYZabcdefghijklmnopqrstuvwxyz0123456789+/" end sub
; v+ j- ?+ R$ M9 R; f& b+ \8 O  '********************************************
0 Z# B* R7 d0 F' Q  'end初始化类 '
2 X6 R+ V1 v3 o- K6 ^  ******************************************** 7 A- H& B+ b1 i& d" @5 j6 d
  '********************************************
$ ]# L" ]  P7 F! i$ V* q  'begin销毁类
" Z8 U: I+ r5 M8 ]  '********************************************
) l5 O1 E- k, |  Private Sub Class_Terminate()
. h3 A/ D0 @2 z, w  sBASE_64_CHARACTERS="" end sub - k: H$ k: k3 {+ _/ m! i$ y
  '******************************************** 9 ~! T- d' l/ Q
  'end销毁类
3 e; F2 P' I7 T! n* p* a4 l  '********************************************# P+ R* t) }: Q  S
  '********************************************
$ H, |* f7 g: F, K1 ]  'begin将Ansi编码的字符串进行Base64编码 4 @' @6 k* F7 F5 l4 H: f5 {  I
  '******************************************** 0 ?8 T  c; ?4 ?* R
  public function Encode(paramString) : H" f' h6 E* ?) S$ }" X
  tempString="" 0 c7 \4 j3 s) k
  returnValue="" 2 q3 `: ^1 `5 d1 H: O
  lenString=len(paramString)
9 W) r0 d; [2 P* ~1 i1 U5 B  g  if lenString<1 then / o. l2 e- t/ F4 b4 h3 l
  Encode=returnValue
1 F7 c+ ?% o9 }5 f5 ]  else
) y2 W, \2 ^: `. Z' q2 K  mod3String=lenString mod 3
  F& L0 E; H8 O. S  ?  '补足位数是为了便于计算 : s. |* \: s3 B+ V
  if mod3String>0 then
0 x2 `! q3 E8 I; v9 S% C' i& Y  lenString=lenString+3-mod3String
3 z! a8 \: c5 m+ v' [  lenString=lenString-3 6 i3 @. ?' P$ k( D& h- Y" W3 P
  end if

返回列表