返回列表 发帖

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

class Base64Class+ n& C! t. @% \
  rem Const - J. x3 c5 G# i( u
  dim sBASE_64_CHARACTERS'转化码
. v3 f  Z+ g- P  dim lenString '计算字符串的长度 # G# D( K, p( M3 k3 a/ r
  dim iCount '计数器 ; b+ x0 x6 {6 K/ P5 |, m6 M
  dim returnValue '返回值
" {1 F0 @/ ?* q  dim tempChar'缓存字符 5 s/ N' e0 f! X
  dim tempString'缓存字符串
! j; t9 p+ f/ ^* V8 \9 T  dim paramString '参数字符串
; \* l; n, R" y) p: }  dim temHex'缓存缓存十六进制 5 o# w6 b7 a% w" V
  dim tempLow'缓存低位 2 o# j* J6 L9 R/ |
  dim tempHigh'缓存高位
  K' L+ g- @4 ~  dim mod3String' 5 ]2 N8 n+ @; [; `
  dim mod4String'
% X: q( ~& e; I# _6 H7 H8 B  dim tempBinary'
! h3 _7 ]& K/ r( {  y' v1 j  dim tempByteOne' . V/ j. z. ~6 Q' }# p! Y" u! Z  r
  dim tempByteTwo'
$ ^5 _- e) W* w& s# _5 R: M8 h2 K  dim tempByteThree'
' f/ i& S) U6 j" g' Y. L  dim tempByteFour' . @' A" A: o( F) N0 {; A
  dim tempSaveBitsOne' 1 @' r8 \8 g) c+ j& G
  dim tempSaveBitsTwo'
4 S& y# m4 d( V3 n+ K( {1 F8 ^  '********************************************- F( j! }  {- e# i7 g3 L3 q
  'begin初始化类 ' ~+ T  O; ]+ b) t+ m
  '********************************************
- {" r# f0 B' t. k8 _) q  private sub Class_Initialize() " E4 X  n# ]! k1 J
  sBASE_64_CHARACTERS = "ABCDEFGHIJKLMNOPQRSTUVWXYZabcdefghijklmnopqrstuvwxyz0123456789+/" end sub
6 i# T+ y/ V5 o0 N% C5 r' N$ l  '********************************************
) `. w2 n% r+ ?8 M& a  'end初始化类 '
' Y# y$ X; c7 {  ********************************************
8 Y! P/ w* z1 t4 b  '********************************************
" e; n: n3 p5 X0 [' |8 ~  'begin销毁类
$ e$ S; ]0 b- X& d2 {1 O1 E& D- e  '******************************************** $ k+ Z$ v7 M2 d) m4 M
  Private Sub Class_Terminate() 5 C$ o/ V' b! E! f' w+ ~
  sBASE_64_CHARACTERS="" end sub
3 C7 T5 f* g5 f0 [* H; z) ~4 i5 L3 y  '********************************************
! F' n2 g6 b6 Q8 y' j- Y  j  'end销毁类
- @( L8 G3 z' J- k( E! i. `& p  '********************************************1 U; H# o# X/ u0 N, b
  '********************************************
0 i( z8 M& e. q1 A* V2 e# L  'begin将Ansi编码的字符串进行Base64编码 ! c# z/ s1 a) \4 n
  '******************************************** " [5 L) ~- @0 r. s
  public function Encode(paramString)
' [- K# P# W- n$ m  tempString="" " @, K% B- g, K$ N! A
  returnValue=""
% k8 D! `5 k. [$ V7 Y( n3 `  lenString=len(paramString)
+ J8 J+ D1 a3 s! m+ V  if lenString<1 then , G1 x7 {7 k5 o$ Z
  Encode=returnValue
! W* ~, m3 E& Y* I; X2 X' A  else # f2 v, M! @; d$ S5 ?
  mod3String=lenString mod 3
5 {& q8 O7 j) y" p7 V- j  '补足位数是为了便于计算
  z0 l. I" i  ^2 t" k( ^  V. w  if mod3String>0 then
* h# F2 I% L6 Q3 u9 E& `  lenString=lenString+3-mod3String
9 y/ |5 F6 K) }; y$ ~) i- {. H, M  lenString=lenString-3
- [1 h! L4 v( o" z  end if

返回列表