返回列表 发帖

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

class Base64Class
7 }6 Q+ @; p( }+ G" v2 ^, N! t  rem Const
. u5 n& e6 G0 L' ?: f  dim sBASE_64_CHARACTERS'转化码
  ~- k7 a1 f( a2 k  dim lenString '计算字符串的长度 ! w$ J& t$ A. [, ~  r7 l& D0 `
  dim iCount '计数器 # X: W+ y3 M3 B+ h# K' J2 b
  dim returnValue '返回值
7 Z( l2 a' \3 D1 Q+ l) j  M- k  dim tempChar'缓存字符
3 O9 y8 ~( _; @( [' s  dim tempString'缓存字符串 - F4 O+ o2 b1 ]# e7 l2 U4 C4 g, B
  dim paramString '参数字符串 0 r% l. q1 f; j7 l# h# H* K
  dim temHex'缓存缓存十六进制
+ ?: i& Q' z3 h5 O. k! x/ R  dim tempLow'缓存低位 ; C: l* C( v. d4 w
  dim tempHigh'缓存高位 ; Z' g& Z4 p8 ?# a
  dim mod3String'
/ ]) i! \5 y7 V! i  H  dim mod4String'
4 s8 B9 w0 J' A; E* x, k  dim tempBinary' ' {+ I) ], i4 ?$ H% Z8 j3 z' G' O
  dim tempByteOne' " d2 A5 `" q6 x
  dim tempByteTwo' ' g+ [( S2 r& G
  dim tempByteThree' 8 m5 k1 b- _2 G' D9 Z# k" i% e# F6 H
  dim tempByteFour'
2 ?& [& O4 E2 G  dim tempSaveBitsOne' 7 f9 S6 ]/ V; p/ X
  dim tempSaveBitsTwo'
- X# U, H" |# ^$ J  '********************************************
9 W1 E8 q+ {" e# }% {  'begin初始化类 7 ~" D; ^8 Q7 X; j5 O6 |
  '******************************************** , j7 q$ U' T9 Y2 M: x  d- j
  private sub Class_Initialize() 7 R3 n- s$ s  e. |8 r9 q; W! `
  sBASE_64_CHARACTERS = "ABCDEFGHIJKLMNOPQRSTUVWXYZabcdefghijklmnopqrstuvwxyz0123456789+/" end sub
. c2 T& [0 X9 \, @% g4 U  '********************************************
. R! m9 z4 ?6 ~7 w4 D5 Y$ y  'end初始化类 '
  ~& e# Y: _! y( Y  ********************************************
. g2 r- Q% v2 Z2 Q; G1 z- c( Q  '********************************************
, N1 ]0 O( ^. Q  P  'begin销毁类
( ~9 b, k8 |  f, |/ {# l8 f, L% h  '******************************************** $ ^7 x+ E4 Q# Y$ d
  Private Sub Class_Terminate() - Y4 g5 g$ \; h9 c9 {
  sBASE_64_CHARACTERS="" end sub
% @  ?9 n( D8 r: a* N: J- V  '********************************************
& }) C* r0 Z# r7 n! O  'end销毁类 3 M5 C# ~4 M$ v" T, C
  '********************************************
- x( F8 d6 ]3 E- g) U, ]  '********************************************
/ h* Z$ l% X5 N8 w# \- |$ n: \  'begin将Ansi编码的字符串进行Base64编码
+ @% ?( R& D3 S  '******************************************** - [3 `* h( L# k8 L" M0 p
  public function Encode(paramString)
5 d# e* O/ A- g3 x: P! }- G- b6 V  tempString="" - W0 f4 L+ {( D- M6 k8 Y
  returnValue=""
/ S6 R" S, H, n- y4 k. z* {; T) T6 M  lenString=len(paramString)
, l+ G/ k' a7 f  Q5 I) I; E; w5 a  if lenString<1 then ( Y6 F0 g7 b3 k3 G% c/ p
  Encode=returnValue : m; d! k& v# R* T( {+ E
  else , A: f+ k  t# x# n, m( E
  mod3String=lenString mod 3
  J4 o8 O+ k3 z" H6 E  '补足位数是为了便于计算 : z; V6 |" _: w, V& r! d5 e
  if mod3String>0 then
6 A/ s! Y5 D% E* a0 b7 B  lenString=lenString+3-mod3String
( d! \* `9 U. V1 A1 v& }9 s/ v  lenString=lenString-3 ! ?2 ^6 @$ I9 C4 H$ E2 b5 H! a0 x
  end if

返回列表