数学建模社区-数学中国
标题:
利用URL编码进行加密 [源码]
[打印本页]
作者:
韩冰
时间:
2004-10-9 14:33
标题:
利用URL编码进行加密 [源码]
作者: Atomic ( ckatom@hotmail.com)
) q$ X, n% a, R
QQ:5538313
9 N& O+ U' U- W9 f
日期: 18/04/2002
8 w, b1 ^- \) h1 t' Y1 j: f
1 t: I+ I" |- M8 l9 [! N# d+ h u5 P
3 H/ o' {! B4 \
刚刚拜读了Stamina的“URL编码及C语言实现”,觉得有必要写一个GUI的转换器,于是我就操起VB来 完成了这个作品.
1 @9 ^/ n A" Q- h8 J
其实原理很简单,但是我做GUI界面用了些时间,下面是主要的转换部分:
+ K$ d: ?" @2 ^6 ^3 V
/ D/ Q/ y7 Y, }3 I2 F
''encode - 转成16进制符
9 i. x. S- Y0 l0 T8 ~
/ |' R$ {; i& u' ~. T' F
For i = 1 To Len(strIN)
* S0 X" r# l5 ?. o' @3 V
s = CStr(Hex(Asc(Mid(strIN, i, 1)))) ''是不是太~~~快了~~
3 I) d" t- n. k1 U4 M( _
If Len(s) = 1 Then s = "0" & s ''解出小于F的值就在前面加 0
& k2 Z, e5 F6 K2 s! I) g$ m9 Y
strOUT = strOUT & "%" & s
0 b% j) G( ^: x6 A
Next i
/ Q% f5 @$ ?( A2 n
% b9 @( u6 ^# [' O! \) j
txtOUT.Text = strOUT ''这里就是输出了
* I' U' [6 N7 S0 j! s
___________________________________________________________
; c& ?5 l2 H/ R& K3 Z2 v! A. T
$ l; E6 V U$ v, A, a* f
''decode - 解码, 比较麻烦点
( I2 H- r! l( s2 \6 w2 N) A
) i0 d. l) Y8 S) J1 J
For i = 1 To Len(strIN) Step 3 '' Step 3 因为格式是 %XX 三位一个字符
' ?. A. U' ~: S& [3 k- R' g
s1 = UCase(Mid(strIN, i + 1, 1)) ''得到第2位的16进制数字
. J' s' X8 c/ n8 b- z9 N
s2 = UCase(Mid(strIN, i + 2, 1)) ''得到第1位的16进制数字
8 w4 m6 a& g, z$ g9 ?- R* C
- i: r! u3 e2 Z% ?) i4 g1 r+ [3 a
Select Case s1 '' 进制转换
/ W9 b4 @" H0 g; c
Case "A" To "F"
0 G! i( o' A8 D+ p: j s% b
n = (10 + 5 - (Asc("F") - Asc(s1))) * 16
9 M/ c9 i! ^3 o# Z1 U; T W
Case Else
: n% L% N) u( L$ b9 H' i! J
n = Val(s1) * 16
0 T! Q. y* o! ^' j% s2 H
End Select
) _0 k$ E! g5 L8 s( M
, P7 d F8 h7 E% Z, W. s
Select Case s2
1 C6 H- j$ E5 s/ Y
Case "A" To "F"
6 S. x, a: P* H" g5 ]: o n- ~
n = n + (10 + 5 - (Asc("F") - Asc(s2)))
* p* c* j' i2 v
Case Else
0 r4 r5 [: T1 |# t) E& @
n = n + Val(s2)
! j/ A" {) k0 W- g, s
End Select
: l4 u' @% I! W5 |& ^
- J/ b6 ^4 z i& V. \
s = ChrW$(n) '' 转为字符
- l! x: x7 _6 [
strOUT = strOUT & s
/ Y8 l; C8 V4 d; B( p+ O
Next i
$ e, m/ ^" A# t2 r& [4 g( {' m( ^
txtOUT.Text = strOUT
0 k4 R' I* s2 V4 \% i- ~( o
+ s+ i+ ]# ?/ u1 @& M* _1 g
) C7 n% l4 k$ j! W1 x8 |: p
程序下载: http://apower.uhome.net/download/encoder.zip
) ]; l' b1 [# h
http://members.rogers.com/tdl/encoder.zip.
1 j4 d! y, a; t B4 a7 }
<SCRIPT language=javascript src="../scripts/recommend.js">
% L G7 w, h0 ?4 @! V3 n
! S& K( ^" F& F* p4 e0 {% ~" T1 H
<script>
复制代码
欢迎光临 数学建模社区-数学中国 (http://www.madio.net/)
Powered by Discuz! X2.5