标题:
[原创文章]
ASP编写的加密和解密类
[打印本页]
作者:
拓海之舟
时间:
2010-11-6 17:24
标题:
ASP编写的加密和解密类
class Base64Class
; d/ C4 w1 {( \+ l7 H' |
rem Const
- g9 X( e u( L" K* ~
dim sBASE_64_CHARACTERS'转化码
0 @3 A, B! x/ u; T$ Z
dim lenString '计算字符串的长度
% ?( |# b8 K8 g! _
dim iCount '计数器
5 Q% l0 w7 ^& P% O! v: d2 h. `
dim returnValue '返回值
0 S- A/ d6 q2 u* t1 ?! q" a
dim tempChar'缓存字符
8 a5 ]/ G, | y# I
dim tempString'缓存字符串
+ |- ^5 b8 q7 Y( R8 @
dim paramString '参数字符串
8 D/ E+ J8 I6 t! t3 i1 l
dim temHex'缓存缓存十六进制
+ {* m: k* N# W" I
dim tempLow'缓存低位
# m4 C/ g6 z: V) ^
dim tempHigh'缓存高位
! q% s/ j6 f6 O% C J
dim mod3String'
( @& _+ R+ ?/ K; ]3 M9 Y. S. f
dim mod4String'
0 _+ }( w" t$ K6 l" ~: O9 [
dim tempBinary'
, U6 g% l2 K, a8 P9 o
dim tempByteOne'
) O1 D+ v& X( b2 o4 E; Q4 s% o6 Y
dim tempByteTwo'
8 \- K; w5 ?! @
dim tempByteThree'
S D2 s. p4 }5 c4 }
dim tempByteFour'
# ?: f$ F9 A# _7 F9 p8 D) Q: r
dim tempSaveBitsOne'
" _; N3 q" R: T5 K
dim tempSaveBitsTwo'
. ^) Y$ ?" i9 ?* w; B( h2 h7 j
'********************************************
1 ]1 i- M+ H- i+ i7 D' r! ?
'begin初始化类
9 K' O+ V9 w' S0 c* n
'********************************************
' X. ?( m1 U5 U Q1 }6 @8 D7 t3 `
private sub Class_Initialize()
: L" w- `1 V* E
sBASE_64_CHARACTERS = "ABCDEFGHIJKLMNOPQRSTUVWXYZabcdefghijklmnopqrstuvwxyz0123456789+/" end sub
; l3 z$ Y& m& a( }9 n g- S
'********************************************
. Z0 a. |4 G, r# q% F% A
'end初始化类 '
?/ k4 y9 F9 I( y' U4 y( o
********************************************
+ b9 e q8 M( u9 Q& G5 \
'********************************************
! A2 U& t1 {& r( v! A s
'begin销毁类
( Q) K# w% Q4 Q3 m
'********************************************
# O9 q+ Z6 r" U1 Y% f9 i
Private Sub Class_Terminate()
3 x3 ^! b5 `% d% e
sBASE_64_CHARACTERS="" end sub
: Q0 h8 E) l* K0 ~! Z$ I6 _, c
'********************************************
" r, C/ d! ~' ?
'end销毁类
* b0 F7 A1 O. g" k$ q0 \
'********************************************
- o2 R$ y1 C+ ?3 b
'********************************************
& h, o9 f/ S' _/ }. F& f1 V: h) {
'begin将Ansi编码的字符串进行Base64编码
6 p- `: U3 Y1 A
'********************************************
- o3 S; I1 l0 A& W A
public function Encode(paramString)
) b1 [9 `* @6 m. ~! o! }/ z9 ]
tempString=""
5 v8 ^' o9 X! F, Z/ ?' e7 `
returnValue=""
, S& h# Y! y, b% c4 A
lenString=len(paramString)
# h. S; [- i: V* G, a+ y
if lenString<1 then
% P: T7 H- D0 l/ M7 {" x+ A
Encode=returnValue
& d6 Z3 u& N2 K6 x/ ~% N
else
0 s4 Q0 l# }) a& T
mod3String=lenString mod 3
6 p3 [. n8 w( Y8 `0 I3 V }% i$ Q
'补足位数是为了便于计算
5 a5 F2 t; Y8 `. w# b
if mod3String>0 then
6 U: x: M$ {$ d- E. m+ d4 c
lenString=lenString+3-mod3String
3 Y1 J4 C: W, A, ?9 m# }( {- U
lenString=lenString-3
1 _% D9 y0 [$ [7 d
end if
欢迎光临 【3.A.S.T】网络安全爱好者 (http://3ast.com/)
Powered by Discuz! 7.2