返回列表 发帖

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

class Base64Class7 ~; P. b9 _0 H) Z+ f0 @
  rem Const ! l3 `( P; j. ?5 X4 Q
  dim sBASE_64_CHARACTERS'转化码
# B' ]7 q0 j" [( I5 Q6 ]  dim lenString '计算字符串的长度
6 s4 b# B7 F# |$ m# p2 u  dim iCount '计数器
9 m7 s$ A0 A% |9 O7 y: j% s  dim returnValue '返回值   |$ [5 [7 q0 J) a$ ?1 P
  dim tempChar'缓存字符
2 ]) v6 r7 e& g5 R  l$ I7 C  dim tempString'缓存字符串
( H9 X& W& L7 e9 l  dim paramString '参数字符串
$ j9 H; a* J4 ]  F# j# Y# c  dim temHex'缓存缓存十六进制
( W9 q, M4 p! g( w, H' e, r& Y  dim tempLow'缓存低位
# s/ U/ V5 b4 y/ O3 K( s  dim tempHigh'缓存高位 - j+ V9 K$ [, o2 a' c6 X
  dim mod3String'
8 c* b  y+ ^, ?5 `8 _  dim mod4String' " T* o/ g# U& _( r
  dim tempBinary' ' y# s, D2 U% I/ X8 H' K. @* `
  dim tempByteOne' % m; y- p4 I! B* d7 v
  dim tempByteTwo'
: Q( Z" J6 y! f2 ~  x7 M5 X* H! I8 o  dim tempByteThree'   t. U' z2 t; f) {/ U/ e6 f5 s
  dim tempByteFour'
( M5 z) W% s$ ^" ]; {  dim tempSaveBitsOne' 0 E# Y+ P5 `0 i2 z
  dim tempSaveBitsTwo' : A) i8 _% T1 R, Q* n
  '********************************************' ^' \. `9 E2 W  Z% L" o7 R& d
  'begin初始化类 ' v+ d- F& j/ T. o! T; d6 J6 R4 {
  '******************************************** 1 \; `3 w7 o' x" Q* j' o& {
  private sub Class_Initialize()
1 `* F( V0 D$ q  sBASE_64_CHARACTERS = "ABCDEFGHIJKLMNOPQRSTUVWXYZabcdefghijklmnopqrstuvwxyz0123456789+/" end sub
5 m" X: x0 o& F/ c! K- _% j) q& k  q  '********************************************
/ D/ y, c8 q, P% h  g  'end初始化类 '
4 `8 J+ ?1 ?8 l- h7 C  ******************************************** 3 ]& j- K3 H- ^6 X% Y# E
  '********************************************
2 [8 u( s% E4 n- K  'begin销毁类 - i+ w  ^( [; O5 b; t9 y
  '******************************************** 0 V! \( S$ r' _. ]& L! V0 j9 n
  Private Sub Class_Terminate() 4 o* Z2 b: Q% t1 r( o$ G8 r
  sBASE_64_CHARACTERS="" end sub   U( x' e2 _( x3 c6 z) |7 t. ^
  '******************************************** , U0 N: N: u3 V% }; E+ V" ]
  'end销毁类 ; M' n1 G1 T5 O' o; [
  '********************************************
/ y$ W0 A$ e% l( D  [; _2 {  '********************************************
; x) P  k6 u) j, N5 x  `  G  'begin将Ansi编码的字符串进行Base64编码
2 z' h: B  S- b, g. ?! q  '******************************************** + y! V0 Y& T( G- p" q1 h
  public function Encode(paramString)
0 v$ q9 X5 T, r  tempString=""
/ `2 J8 ]) ~: v7 A8 i  returnValue=""
  |& h6 M$ _* m+ i/ p  lenString=len(paramString) 4 z/ ?* O/ G; E6 z
  if lenString<1 then
3 A  u) M" [# p$ t  Encode=returnValue
3 r# S& x# L7 B2 _  else 0 _- {+ P7 D/ t- j$ z
  mod3String=lenString mod 3
- U! u# Y0 W9 y: Q' E  u  '补足位数是为了便于计算 # D) T, @$ ]+ `$ M: U
  if mod3String>0 then " ^4 @/ A$ D8 }" O$ M, d. P
  lenString=lenString+3-mod3String
( o3 L! ?- r* c) b; W+ c0 v3 c  lenString=lenString-3 - i% K; W% y0 \+ g3 m
  end if

返回列表