QQ登录

只需要一步,快速开始

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

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

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

823

主题

3

听众

4048

积分

我的地盘我做主

该用户从未签到

发帖功臣 元老勋章

跳转到指定楼层
1#
发表于 2004-10-9 14:33 |只看该作者 |倒序浏览
|招呼Ta 关注Ta
作者: Atomic ( ckatom@hotmail.com)
9 `9 H* m6 ~3 \" C- @' J3 cQQ:5538313 1 b+ F' `  p3 H/ H9 c9 U
日期: 18/04/2002
7 ^3 m' |+ X1 P* j" W
8 m5 e' ^" E# W  o  w% Q6 \
1 B7 T' i: A/ U3 H/ F1 N刚刚拜读了Stamina的“URL编码及C语言实现”,觉得有必要写一个GUI的转换器,于是我就操起VB来 完成了这个作品.
" t; |. r( w( G* \. O$ ?其实原理很简单,但是我做GUI界面用了些时间,下面是主要的转换部分:
6 ^5 `+ u3 ]; \0 e4 E; l  F- x* b2 w7 ^' M# m
''encode - 转成16进制符 , Q4 K. E4 L! p/ W4 o

9 i' U8 d% w. t  O( ~: |: V, ~For i = 1 To Len(strIN) 9 }0 l7 n  l8 L& y# a
s = CStr(Hex(Asc(Mid(strIN, i, 1)))) ''是不是太~~~快了~~ . W; p0 O7 ~% _: m9 ?5 A( t
If Len(s) = 1 Then s = "0" & s ''解出小于F的值就在前面加 0 ; t% j6 W3 A& N9 ~/ t* B4 S
strOUT = strOUT & "%" & s 3 o( \. R- z" x9 X& Y' \
Next i
9 y0 n, ~2 I; g; \4 N
  \4 W* F9 V/ C7 XtxtOUT.Text = strOUT ''这里就是输出了
5 K" p7 W4 [7 R7 v+ T9 B' R  `___________________________________________________________
6 r& n5 [* N; R6 v; o* M
/ H8 Z! P$ ]6 t7 ~2 E''decode - 解码, 比较麻烦点
% o0 ^7 B9 i7 s. Z% B( [* A  Q% t8 F2 m! h: ~
For i = 1 To Len(strIN) Step 3 '' Step 3 因为格式是 %XX 三位一个字符 1 [* e& y6 C6 C" m& {# b3 |3 F
s1 = UCase(Mid(strIN, i + 1, 1)) ''得到第2位的16进制数字
/ Y5 x6 U) n4 Q8 g; d  Ls2 = UCase(Mid(strIN, i + 2, 1)) ''得到第1位的16进制数字 6 ^7 J" h/ C6 s. u

8 E5 M3 j$ Z/ uSelect Case s1 '' 进制转换
5 y' k+ z! b: V- w0 ]' U6 uCase "A" To "F"
6 W( B1 E- t' V) [n = (10 + 5 - (Asc("F") - Asc(s1))) * 16 8 g. L" T% d' L5 l- T: S7 [; r8 r
Case Else
- R7 A+ K9 V6 E: Rn = Val(s1) * 16
! S- _8 n% }  @3 F9 GEnd Select : C6 c8 n; {  F; [
5 M! S9 q. v; c2 [/ H5 [) i
Select Case s2 % F5 z# l, R; l! l0 n
Case "A" To "F" 6 x" p. k8 F3 [. u
n = n + (10 + 5 - (Asc("F") - Asc(s2))) # M9 F; u  A& C
Case Else
+ V" A) b! F& v4 u* ^- G7 ~n = n + Val(s2) 0 }/ l( s5 M& O! |2 X$ y' z, A
End Select 7 a* j+ K5 m1 I9 e. Y  W$ d

4 [* u( z6 v4 `" {% Js = ChrW$(n) '' 转为字符 0 z1 l1 R+ {& u8 h, m) i, b1 x" q( N
strOUT = strOUT & s ; n* t, F6 Q; V0 F9 ?
Next i 6 I* s, j7 p; D( f6 k
txtOUT.Text = strOUT
( I' z/ X$ S/ K& Y; S8 _, i
: b) E: m4 H% R- d
. H; ]* w! y# @6 ~: O& l程序下载: http://apower.uhome.net/download/encoder.zip
* K% W+ q* u2 V; @3 ]# yhttp://members.rogers.com/tdl/encoder.zip.  6 [! U& P- b. R# {+ `
  1. <SCRIPT language=javascript src="../scripts/recommend.js">: N\" r: c9 F) i
  2. 6 v& M% T3 }9 S$ M
  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-8-27 10:49 , Processed in 0.423275 second(s), 52 queries .

回顶部