标题:
[原创文章]
ASP编写的加密和解密类
[打印本页]
作者:
拓海之舟
时间:
2010-11-6 17:24
标题:
ASP编写的加密和解密类
class Base64Class
. k4 y: t; }( R6 C1 H0 r- Z
rem Const
' H7 B; b$ P$ z# A. U0 }
dim sBASE_64_CHARACTERS'转化码
k0 b- G7 k3 d! R" r& U6 M
dim lenString '计算字符串的长度
& z2 P* h% p1 {" D) W H
dim iCount '计数器
# R- _ q# A4 _+ q. s8 Q2 n
dim returnValue '返回值
7 H) P% J8 H, A5 |8 J
dim tempChar'缓存字符
+ _. X" O* V& z6 d! [. N/ j" ^: u# e
dim tempString'缓存字符串
, t" j: g$ U! g; t4 K8 h( m) `9 m3 ?
dim paramString '参数字符串
& y$ t8 a! ]; L/ y
dim temHex'缓存缓存十六进制
W; ?* w# k, ~5 a+ L) t& p
dim tempLow'缓存低位
) V& u! }, l f/ I% G7 w S
dim tempHigh'缓存高位
0 D' h) z$ J0 ]$ z% c0 N. t
dim mod3String'
, B1 t' O" @, {3 n1 u
dim mod4String'
, i8 W7 v) ^( t2 C8 O
dim tempBinary'
; A6 I( t. T8 O9 f: R6 Q$ c
dim tempByteOne'
# P. }! A; D& {8 G& W& {3 G
dim tempByteTwo'
4 K+ c( p" F" ] z
dim tempByteThree'
Z' n% ~: O5 M
dim tempByteFour'
7 n; e+ a& J7 Q, ?7 V" c3 i; `0 a4 H
dim tempSaveBitsOne'
8 T( k! i5 q6 ~* U7 X$ M
dim tempSaveBitsTwo'
7 F m2 u' U% S
'********************************************
; |; E7 E$ J0 d' P: g
'begin初始化类
# n" w- o( `0 y5 D9 Q9 B
'********************************************
( F5 \1 F8 p6 I0 u! ?/ q
private sub Class_Initialize()
2 A/ T b# y/ R, _8 p
sBASE_64_CHARACTERS = "ABCDEFGHIJKLMNOPQRSTUVWXYZabcdefghijklmnopqrstuvwxyz0123456789+/" end sub
( k9 t1 K6 Y7 E, M4 s- m
'********************************************
( g: X; ?& @$ R' @- R
'end初始化类 '
; r2 a, I! l& @! A: {' R
********************************************
. o: w' j, p- O9 W' _1 m/ \! ~2 D8 Q
'********************************************
8 `+ K( \0 o$ }7 ^
'begin销毁类
6 u O& ]& h P# f, C. ~5 w+ ^2 ~! O
'********************************************
% R* N/ X# p. t: R" l( O5 x
Private Sub Class_Terminate()
5 Q" U) f: `" a! n
sBASE_64_CHARACTERS="" end sub
, o+ r# X/ B' j' }% i
'********************************************
+ b" }$ I% G( Y' ~: x
'end销毁类
0 ?+ p5 w( Y3 @! [% _7 q
'********************************************
/ ^) ~) ^0 x1 H# X- d* [
'********************************************
, p7 |. L7 z( d1 G
'begin将Ansi编码的字符串进行Base64编码
$ o6 r' Z5 W9 o7 D) f
'********************************************
2 X7 A4 k& Z% j8 s$ A
public function Encode(paramString)
' E& k" n& \+ w/ S
tempString=""
. V9 x8 i, g4 R9 Y! k# c2 J! ?
returnValue=""
1 E3 T+ A/ A: j0 `, b6 K- s/ k! U
lenString=len(paramString)
1 W% z! F, }& R3 T9 Q ?6 V
if lenString<1 then
3 Y6 e5 b$ A3 A6 U
Encode=returnValue
7 w! d1 [/ O+ a" j) e6 E4 n
else
$ S3 t x7 P3 d7 p" F& g. g) D
mod3String=lenString mod 3
6 ]7 L9 ?8 q) x8 L. @
'补足位数是为了便于计算
( S" T! h/ g9 N& g: J8 U B; j6 S
if mod3String>0 then
( S- B, |& i$ m+ |+ Q1 }1 [8 G$ [7 ?& w( c
lenString=lenString+3-mod3String
% f9 k( f; w! q' Y& z
lenString=lenString-3
4 H+ n1 J4 B3 U$ K0 O/ ^5 v
end if
欢迎光临 【3.A.S.T】网络安全爱好者 (http://3ast.com./)
Powered by Discuz! 7.2