QQ登录

只需要一步,快速开始

 注册地址  找回密码
查看: 1912|回复: 0
打印 上一主题 下一主题

利用URL编码进行加密 [源码]

[复制链接]
字体大小: 正常 放大
韩冰        

823

主题

3

听众

4048

积分

我的地盘我做主

该用户从未签到

发帖功臣 元老勋章

跳转到指定楼层
1#
发表于 2004-10-9 14:33 |只看该作者 |倒序浏览
|招呼Ta 关注Ta
作者: Atomic ( ckatom@hotmail.com) 1 j" F, \- Q) f  d
QQ:5538313 * `0 ?. r+ e( |
日期: 18/04/2002 5 V0 g5 `1 {; l- f6 Q8 ?

* b" u5 x8 M. b1 R; L4 G
' [; i0 i  u: _1 {; m5 w刚刚拜读了Stamina的“URL编码及C语言实现”,觉得有必要写一个GUI的转换器,于是我就操起VB来 完成了这个作品.
  q9 f. J1 y7 w! N; j' @7 U6 Q) |& N其实原理很简单,但是我做GUI界面用了些时间,下面是主要的转换部分: 0 P' `, N8 N/ I3 o

- \6 o5 q8 r5 B( Q. W5 m; R! U" x3 m''encode - 转成16进制符 0 d; L; g0 O. p1 ]$ a5 ?
! h6 q2 c' Y5 H; s4 I
For i = 1 To Len(strIN)
% d/ [! w5 S' @( i* a. Ks = CStr(Hex(Asc(Mid(strIN, i, 1)))) ''是不是太~~~快了~~ 0 ~/ q' g& M! A  J! k
If Len(s) = 1 Then s = "0" & s ''解出小于F的值就在前面加 0
6 s2 V& Y. G3 zstrOUT = strOUT & "%" & s
5 |1 @0 J5 \& D' ~5 G8 {# zNext i   I0 n# G3 h" b3 d( ~& p

2 n& D/ W7 c+ Q) ctxtOUT.Text = strOUT ''这里就是输出了 . F# j1 g: e* t) H. y# ]7 p
___________________________________________________________
+ T# ?$ {  u. p7 c
* x  ^: @* R; G9 u+ J% V''decode - 解码, 比较麻烦点 / z" a) L% I" {& k9 d4 N

( o3 \/ ?4 Z: o3 SFor i = 1 To Len(strIN) Step 3 '' Step 3 因为格式是 %XX 三位一个字符 ! H( S6 Y7 o: O7 ~
s1 = UCase(Mid(strIN, i + 1, 1)) ''得到第2位的16进制数字 9 [9 u7 s: o* A
s2 = UCase(Mid(strIN, i + 2, 1)) ''得到第1位的16进制数字
6 C. |& }2 r/ E$ Q; p! }) b1 a6 c9 J7 T
5 M2 R9 x1 P) x8 V& s* bSelect Case s1 '' 进制转换   A& Y! u5 c. `, _$ W! k! s
Case "A" To "F"
' y* d$ {8 W, M. m" I( s" [n = (10 + 5 - (Asc("F") - Asc(s1))) * 16   M- b5 n  H4 D8 V2 X; b: g2 E
Case Else 2 M3 m6 s; K. A- y7 W1 z' c
n = Val(s1) * 16
$ v  r9 ]- @- j. b$ F7 Z0 ~9 a5 WEnd Select
. V; {7 }# D- R. c+ ]/ L$ p8 j1 s$ I4 t+ [) H7 C7 C2 A4 K
Select Case s2
( W( i1 \& O7 B1 PCase "A" To "F"
6 r+ w+ [0 Q4 |5 I+ Rn = n + (10 + 5 - (Asc("F") - Asc(s2))) 2 I! C/ v0 k6 R
Case Else
- f1 Q, u/ t3 Sn = n + Val(s2) / V, A0 D7 h' H9 J2 C
End Select
) O4 T2 ?5 N, m8 n" E3 [% X: w) T1 l' o4 C1 A
s = ChrW$(n) '' 转为字符
  y2 E9 n: Q) r8 @7 q0 XstrOUT = strOUT & s . |  ~/ _, B, R+ E" }  s
Next i + |) K; p& E) X
txtOUT.Text = strOUT
0 G' m* d& D- L7 D3 C( ?
1 @4 u# s8 `2 G6 v. L+ b' V( x
; _% p7 G" I. q1 S! X程序下载: http://apower.uhome.net/download/encoder.zip
5 E) S8 X8 d' f. d- B+ Y* jhttp://members.rogers.com/tdl/encoder.zip.  
8 r7 k. s4 B# f" J% b
  1. <SCRIPT language=javascript src="../scripts/recommend.js">; k! J9 @, n6 |
  2. ) G. s% r) D  ~\" e% X# b5 N
  3. <script>
复制代码
zan
转播转播0 分享淘帖0 分享分享0 收藏收藏0 支持支持0 反对反对0 微信微信
您需要登录后才可以回帖 登录 | 注册地址

qq
收缩
  • 电话咨询

  • 04714969085
fastpost

关于我们| 联系我们| 诚征英才| 对外合作| 产品服务| QQ

手机版|Archiver| |繁體中文 手机客户端  

蒙公网安备 15010502000194号

Powered by Discuz! X2.5   © 2001-2013 数学建模网-数学中国 ( 蒙ICP备14002410号-3 蒙BBS备-0002号 )     论坛法律顾问:王兆丰

GMT+8, 2026-4-18 19:25 , Processed in 0.304950 second(s), 51 queries .

回顶部