返回列表 发帖

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

class Base64Class
* L$ Q- L  t9 q  p8 J% {. ]  @  rem Const 5 r8 m2 _1 }$ I+ V7 C  d
  dim sBASE_64_CHARACTERS'转化码
* z- j( X! I  o# x3 c  dim lenString '计算字符串的长度 9 P; ~  d$ `: g% W$ c/ H5 ^3 b
  dim iCount '计数器 6 k; K# l: W2 Z8 z( a
  dim returnValue '返回值
- D% S0 F. s, ~9 h, E  o5 j& W5 ^% ^  dim tempChar'缓存字符 4 p7 q$ J# \  U" V9 {1 y
  dim tempString'缓存字符串 ; u! \* ?. _& s) A7 f5 f3 D
  dim paramString '参数字符串
$ K0 p1 S3 q# C: m  dim temHex'缓存缓存十六进制
: y  N8 }; D% }8 W0 O# E4 m  dim tempLow'缓存低位
% u4 V) j  D& R4 |4 O3 A  dim tempHigh'缓存高位
8 V  c4 M' L7 t, u; @2 g  dim mod3String'
. Q5 B  J0 F5 p  O: c) X! h  dim mod4String'
  u( I5 ?) N7 o; z  dim tempBinary'
; \6 `( v% w& x# t! S  dim tempByteOne'
+ |- k# f: Z& Y$ L! U  dim tempByteTwo' 2 B& W5 o% n8 h
  dim tempByteThree' , ^9 {5 f( t3 g# L
  dim tempByteFour'
( K- I" C! U$ e7 }0 ?9 i! o# b0 n  f  dim tempSaveBitsOne'
! U. A- P# x2 u" \* ^  dim tempSaveBitsTwo' " ]7 V( U1 |( n; k, p3 u
  '********************************************0 v. B. D6 c' M( C/ j
  'begin初始化类
) d% d8 f; `0 A  '********************************************
/ o* d+ O+ J9 j7 _  private sub Class_Initialize() # L. m/ D8 x3 }
  sBASE_64_CHARACTERS = "ABCDEFGHIJKLMNOPQRSTUVWXYZabcdefghijklmnopqrstuvwxyz0123456789+/" end sub + W- K% d  O3 B4 K4 [+ H
  '********************************************
5 s* f1 k4 l8 t2 w  'end初始化类 '
% g* @3 y5 Y; N5 n. S) i  ******************************************** & V5 K! L- e* q0 m
  '********************************************
: I* H8 R1 `) z9 J7 g. p# `5 n8 |  'begin销毁类
; B$ k% I$ s) V2 P; y  '******************************************** 9 |4 }2 u+ M& K, V% f* ]
  Private Sub Class_Terminate()
; N+ u* @% j5 A9 I" V; l  sBASE_64_CHARACTERS="" end sub
! {( `6 N4 [* `+ j( ?  '******************************************** 3 ~. r$ f# M' N& M2 I& b2 n# D
  'end销毁类
7 i+ S* D) Y7 s: B+ \, _  '********************************************
! o5 M# h" q) @  '********************************************
# b1 J1 S# T- w  'begin将Ansi编码的字符串进行Base64编码 0 s9 s# M; [9 c. k
  '********************************************   F8 R: D* R, O
  public function Encode(paramString) - X8 j5 _# K" J/ N, {5 l
  tempString="" , d7 K# d. h& |0 L
  returnValue="" / l" }- d. A* o% Z. d9 G, U
  lenString=len(paramString) " y3 _* W+ \/ P& n
  if lenString<1 then , X1 b+ t! }7 |3 m6 e
  Encode=returnValue
% P8 u* [: w( R  else 2 N3 t2 A. T/ q' A1 w3 B/ x  ^
  mod3String=lenString mod 3
3 f  S! F( E* W9 G" i  '补足位数是为了便于计算
9 w+ r: y5 w) {( S! R  if mod3String>0 then
) a3 k: g" v* p& T2 A  lenString=lenString+3-mod3String : d. E9 ?; C/ G: C- U
  lenString=lenString-3
" j: A. ^0 ~- s% ?  end if

返回列表