返回列表 发帖

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

class Base64Class
2 L6 R2 F$ x9 P  E- D6 G  rem Const
- A2 ]7 ^. Q; b( r$ c/ O( ^  dim sBASE_64_CHARACTERS'转化码 / H4 [  [  g8 ?8 m9 b$ G: g
  dim lenString '计算字符串的长度
0 P5 Y- E2 x* D" Z* }# T6 J  dim iCount '计数器 4 p- U: K. r6 P8 R; E6 M2 i. R
  dim returnValue '返回值   m9 G. _7 c$ [5 {) c$ g0 }
  dim tempChar'缓存字符 1 N( ]3 P6 ]5 I0 O1 {
  dim tempString'缓存字符串
+ D) V- U$ D8 [: p0 r  s  dim paramString '参数字符串
/ ?$ `1 {5 v* `$ x" ]1 N* P( O9 d  dim temHex'缓存缓存十六进制 4 E8 F2 N3 `: e( o' \- N
  dim tempLow'缓存低位
: V3 R, q( D( I& i  dim tempHigh'缓存高位 0 U  T1 `# t$ p( u3 p2 r
  dim mod3String'
, Y/ G4 w4 j/ R; u- a4 Q, R  dim mod4String' 8 K* D: e+ n! a6 T
  dim tempBinary' ; ~! S6 S$ F6 Z8 `9 F2 ]3 q7 q
  dim tempByteOne'
% h: r0 Y7 |, X  W* W" Z- F  dim tempByteTwo'
: A- A5 H8 O7 _' ?: p6 c1 C/ _  dim tempByteThree'
- u+ ?+ P2 A" o3 v  dim tempByteFour'
! `. ?' Y( I3 f: V% e0 |) U" ]  dim tempSaveBitsOne' 3 L: g; c# Z1 b4 ~$ u
  dim tempSaveBitsTwo' % |7 |. P( r8 D  I8 j2 `9 v  S7 n! ?. {5 M
  '********************************************
1 m- F3 h2 c8 L  'begin初始化类 ( Q( w- }, g9 h
  '********************************************
% W& d( T4 y1 I. l  private sub Class_Initialize()
' h4 i# R+ e+ A/ H  x! ^  I  sBASE_64_CHARACTERS = "ABCDEFGHIJKLMNOPQRSTUVWXYZabcdefghijklmnopqrstuvwxyz0123456789+/" end sub
5 F4 N3 H; g4 x& Y6 M1 N( h) P2 |  '********************************************
: q+ f& B0 S% w5 g# Y  'end初始化类 '5 U+ r3 o: L$ ]' K  c/ v, F
  ********************************************
$ U% e/ L* U" E: z  '********************************************
3 ]) I$ J. \* A& F4 w( m- X  'begin销毁类
2 e( G- h) r0 L& [9 V  '********************************************
( q, r( H% _' F" l0 s( C; ]  Private Sub Class_Terminate()
9 z& K7 {6 a# u; v" S! N7 \- G8 D  sBASE_64_CHARACTERS="" end sub ' h8 D4 u* Z& m) b2 N. A
  '******************************************** 6 F/ q% I! O# h. E3 Z
  'end销毁类
$ e4 j" p# D8 S2 w  h* q  '********************************************. w' z5 Q' u0 d+ o; x1 K6 X. V
  '******************************************** ; C6 o$ @0 K( {
  'begin将Ansi编码的字符串进行Base64编码 6 y' n% [' j. f
  '********************************************
5 F7 j6 A5 a, \6 U  public function Encode(paramString) & `3 Y. e5 ~  e: U/ z# g  O
  tempString=""
$ f( \) M3 Z3 [' d9 [9 {% F  returnValue=""
* R% c7 L" X8 P* k  lenString=len(paramString)
5 B2 g; u& l) @  if lenString<1 then 5 h& u# J, z. b, a4 Y  ~1 a% _
  Encode=returnValue
2 V) {- Z, p6 G) h( M" l6 n9 \6 a  else
1 A& ?; U/ _. v) |2 I) [; g  mod3String=lenString mod 3
( c5 f7 \! Q$ Z4 L  C/ r  '补足位数是为了便于计算 ! {! p8 a& e2 s5 Q) D
  if mod3String>0 then
7 ]$ h6 O; d# N2 n( E. ~  l% |0 [  lenString=lenString+3-mod3String
+ B" t7 ?* _. F2 L0 x& ?) o5 z9 D  lenString=lenString-3   z, S3 s4 D2 s, ?
  end if

返回列表