返回列表 发帖

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

class Base64Class9 y# V+ w. ^5 Z! f/ i; z! v
  rem Const 0 Y& L1 f/ @( F  X7 r) E; V3 g
  dim sBASE_64_CHARACTERS'转化码
* K% C3 r' Q7 N  dim lenString '计算字符串的长度
3 q" A& j) H2 ?% t( E  dim iCount '计数器 9 }4 Y8 x, \- x
  dim returnValue '返回值
- n, b1 J1 j$ ]' a9 B; h$ u  dim tempChar'缓存字符 " l* C2 c9 P( L+ H
  dim tempString'缓存字符串
1 p/ S) {+ {; }- [$ g1 F+ v  dim paramString '参数字符串 0 Y. U. S, t- e
  dim temHex'缓存缓存十六进制 5 H" x9 \; |2 v& W
  dim tempLow'缓存低位
- X* S2 }$ C' i; }5 r* c  dim tempHigh'缓存高位
% @) V& W) m, t% X1 @. G8 X) w) U  dim mod3String'
$ O0 h0 V% C$ S/ t! x( f% \% W  dim mod4String' 3 |' ^3 h6 M1 T* d  U2 x4 T
  dim tempBinary' 1 p+ W% |" l* K0 t% C9 m  |
  dim tempByteOne'
; C# S' n$ g& A. s  k1 Q1 \; G- B  dim tempByteTwo'
% V! v/ ]; i  G* u4 c) h$ u  dim tempByteThree'
/ m$ d3 T6 k2 \) X  dim tempByteFour' . N9 s# D8 \# H; v1 \
  dim tempSaveBitsOne'
' I: e9 S! {, t  dim tempSaveBitsTwo'
: P# y) ]) M; n  '********************************************% b( r2 ?7 w5 `
  'begin初始化类 2 t2 r2 E& a: ?! i9 M9 j
  '********************************************
0 s* H8 s" V) l$ d9 b  d( d2 J  private sub Class_Initialize()
5 V, y4 a% b% \+ b5 A% m  sBASE_64_CHARACTERS = "ABCDEFGHIJKLMNOPQRSTUVWXYZabcdefghijklmnopqrstuvwxyz0123456789+/" end sub ; i2 W; [4 m7 Y6 U. e8 e# u
  '******************************************** 5 _: s- r$ T3 Q: o  I. r6 _
  'end初始化类 '
4 b3 e4 s5 |+ O# l5 ]- }$ u; Y8 h' W1 _7 N  ******************************************** % [- {1 u  f2 _$ p
  '******************************************** 4 e; A! O- p1 Q; c4 c
  'begin销毁类
! g! Z3 C: q* Q7 O7 s: H  '********************************************
) p+ o# U& Q" W  T9 F  Private Sub Class_Terminate() ; M( y6 Y/ A4 \, k# I0 t
  sBASE_64_CHARACTERS="" end sub 8 Y8 B9 i! o" S3 g. \& f' H; A( ~
  '******************************************** . h9 o- [' E$ b# |
  'end销毁类 8 K$ n( M: H8 ]4 G/ \4 O- H
  '********************************************! n! W' M& q) T7 g
  '******************************************** 9 R- {) r3 ]% J) a
  'begin将Ansi编码的字符串进行Base64编码 : o1 H1 B, ~( \1 J1 q
  '********************************************
) `5 u  Y4 l6 {, y3 V  public function Encode(paramString)
: L, [! a$ h1 G. L. G; i2 k  tempString="" ! e5 Q7 ~3 |! k* Y$ P  i
  returnValue="" 6 s/ L# F# R, j- o
  lenString=len(paramString)
0 S' \7 W; E& X! T* L( P6 H# n- }  if lenString<1 then
4 f/ i" F4 z8 b, }  F/ M  Encode=returnValue % \+ l* V8 B' n+ [0 a, I
  else : D/ ^* x8 {! H* m1 I
  mod3String=lenString mod 3 7 e6 \) t5 O/ h- Y& T
  '补足位数是为了便于计算 5 e5 q% D+ `! e5 c0 J, V$ F
  if mod3String>0 then
6 T! ?0 I) `2 X3 s  lenString=lenString+3-mod3String
4 S" p7 _3 H8 D. H8 L3 W5 Y  lenString=lenString-3
: m/ a  o& A2 D+ G9 l  end if

返回列表