标题:
[原创文章]
ASP编写的加密和解密类
[打印本页]
作者:
拓海之舟
时间:
2010-11-6 17:24
标题:
ASP编写的加密和解密类
class Base64Class
( [& s B2 v) y
rem Const
; d7 R T7 ~9 {
dim sBASE_64_CHARACTERS'转化码
9 J0 E. P5 g I3 C
dim lenString '计算字符串的长度
0 n W7 p' A H" z+ W
dim iCount '计数器
" I u7 }- |/ Y$ I" |
dim returnValue '返回值
m& Q7 R! i" ~' W
dim tempChar'缓存字符
; s$ e8 J( ~+ @ U1 e1 m
dim tempString'缓存字符串
: p$ P' m: @% M$ N: {% \1 |
dim paramString '参数字符串
0 X' v c3 D4 y ?$ y4 t+ o. M
dim temHex'缓存缓存十六进制
3 i7 H- j/ Q0 |3 E
dim tempLow'缓存低位
7 C4 H$ s! L. ^/ c) ?9 _8 C& d
dim tempHigh'缓存高位
- E' Q7 x* Y5 ~
dim mod3String'
6 i9 L6 t8 |; w0 r8 J
dim mod4String'
7 `+ D7 n! J: _. a) n$ M
dim tempBinary'
( C" z$ N$ i, [: q, m8 n$ Q* w
dim tempByteOne'
: M1 Z. ]8 C8 x) |* d) [
dim tempByteTwo'
( i7 R7 p4 L" D, @& A. P
dim tempByteThree'
, ]. I' ?! R; m/ k( f- J- h* {
dim tempByteFour'
9 [0 z' z* x! S4 Z V" T2 `# N2 K
dim tempSaveBitsOne'
' J# y( |. `: F5 _' j! L. y+ P8 p4 r
dim tempSaveBitsTwo'
9 z) u% ? W( s9 s
'********************************************
. R3 x0 q4 j3 O0 }$ [* p
'begin初始化类
) L9 W0 k6 l2 G5 [' T5 o. s8 O
'********************************************
8 u0 g7 Y. A- x" \" v. c5 b
private sub Class_Initialize()
5 F" p: s3 U6 D2 U3 A# v
sBASE_64_CHARACTERS = "ABCDEFGHIJKLMNOPQRSTUVWXYZabcdefghijklmnopqrstuvwxyz0123456789+/" end sub
# m% U8 h9 o# H3 B
'********************************************
- q3 W; _5 B6 U6 i% G7 Q; i
'end初始化类 '
& {1 w/ Q9 ]& D& y# h( K7 H& J2 M
********************************************
' E$ K& Q2 i! h: n- q
'********************************************
' N& _: K' e8 b1 K3 l* L1 V, z
'begin销毁类
) T& T+ y4 K& w$ j1 q; g" s% K+ T: {
'********************************************
9 U5 [) }, a+ \- }
Private Sub Class_Terminate()
8 z& S8 A0 p) F
sBASE_64_CHARACTERS="" end sub
5 N! Z" S5 l! L. ^
'********************************************
- b o# R5 S/ p$ V5 ?: s: g/ H
'end销毁类
3 C4 t$ ]! W% H
'********************************************
5 J8 H! F: ~! n+ j" ]- v) D: n; C1 G
'********************************************
Q8 P3 [9 W( t/ p! p) r9 r
'begin将Ansi编码的字符串进行Base64编码
. Z6 l& L0 v/ k/ k+ z
'********************************************
1 A1 N$ S2 G4 e2 A9 f: M6 s$ S5 G/ x
public function Encode(paramString)
! W C' Z. K; R) e8 Z% H
tempString=""
9 z9 O: B5 r' U" f2 ~0 a
returnValue=""
" [4 |/ i7 {' c e2 z E
lenString=len(paramString)
& C; X3 |3 S/ D( {4 Z9 V2 e1 m
if lenString<1 then
\7 O6 X; g0 @4 G
Encode=returnValue
# V. s, p0 s3 F C8 m& j
else
# C* ?, }9 L7 E3 X. `6 Z1 S
mod3String=lenString mod 3
* e9 a! O2 I8 |7 V
'补足位数是为了便于计算
% ~5 }5 ~% F8 M. v) a# G9 T7 Y
if mod3String>0 then
+ R. {* ^3 ]" ]
lenString=lenString+3-mod3String
4 q/ z* p7 E6 U! U* u
lenString=lenString-3
; V/ q9 _4 P* G' ?1 X
end if
欢迎光临 【3.A.S.T】网络安全爱好者 (http://3ast.com/)
Powered by Discuz! 7.2