wuyuxiaoqiang 发表于 2011-1-21 23:53 
# S8 x5 s* U5 S1 z# t1 TLZ误解,无双完全有可以写出网关放万能的登录器。。对于我来说就是这样!!!!不解释测试OK一句话!
\) `. a$ h0 f% p0 n7 J' G你说的这个可能是可以吧!但是现在确实还没有发现类似的东西出来!
4 {" d5 [) o' A$ h关于网关的主要组成部分是通过密匙来完成。到是有可能实现阻止其他登录的做法! N/ `$ y) S- Y- [+ X
7 M2 w( r/ T3 b4 `; M2 t5 ]% I不过这个技术含量明显是个小防火墙了!, Z) W+ j0 d% x$ i/ }
$ J( \4 Q$ I% A9 Y8 [3 d' B% n
具体实现步骤:(编程人员仅供参考)
/ G0 ^; V/ M, i. v% _! Q# I4 B- C+ B& a& ?
项目:1
- n% J( m0 w2 F/ w, |# n; z3 Q# ~% Q4 p' [, ?
1)。建立一组密匙,建议采用一套算法,不推荐固定值!
$ N+ U" w& k- D6 i1 z2)。建立Socket(网络通信)Server实现端口数据过滤。" _( t' _6 @) G+ C. K
3)。建立客户端也可以叫做登录器,由于Bf_client启动的时候会关闭掉登录器,可以将客户端写成动态链接库的方式注入到Bf_client内。8 l# ^" I0 e' R4 h! \
4)。通过动态链接库截取Bf_client发送账号密码的封包,将其修改为添加一组密匙
! Q3 Z$ A9 N) q& G例如:Bf_client发送的数据有Account,PassWord,梦幻版带有安全码,截取后将其发送至自己建立的Socket服务器(也可以称为网关)。
4 Y6 E, {. B' r5 `, r4 X* @, h4 G$ E% v* l
-----------------未改变方式(例如)-----------------* _ x, H; h+ z
Account='xxxx'
6 _' h$ K, g& {3 g( f( W6 QPassWord='xxxx'
M F o q! r) e" P/ y6 F------------------加密后---------------------------------# t6 ?, J2 Z4 u0 l" L" {
Account='xxxx'
- c+ J( E0 h, ~4 G" k% P+ o& QPassWord='xxxx'1 ~4 V% q/ g' ^1 P! S8 |: u9 m4 V
UserKey='推荐使用算法,固定值容易破解'
: N6 b8 O! w& \7 ~( r X------------------------------------------------------------4 R* p o' j+ h4 m" r U
; O5 j, N* m |3 s
//false 进制通过9 R& @9 x$ ^* N, l: z: u8 k
//true 验证成功0 m7 q/ l. j& k9 G
网关得到消息后判断是否存在密匙0 @- `+ x6 q, m+ J
if(UserKey==""){5 g4 p" ^$ C% M
return false;, w7 W( q, c! j8 A4 W
}else if(UserKey!=算法){8 G; b" P! q/ r+ I
return false;
& x6 m( r$ J" k9 s0 P |) H* ~}else{( F' k+ l6 X. O, B) _4 G5 Q. f# y
return true;
: s! P9 P$ n6 r. {9 x) q' e}
$ [, ~5 f7 q& b0 a2 X0 W
$ P* O7 n# u- @/ D" b2 h1 B; C-------------------------------------------------------------
/ A" u, P: u) p* q8 H6 h( s6 R- K1 {只可以说是治疗标的方法,不能从根本上解决问题!
! ^, c. q$ n2 T1 o( W: G. Y6 T2 w/ S; j" ] `
建议还是不要投入过大精力来完善这个鸡肋的功能。出售就更没有必要了!" L& x0 @& D0 B) [% }2 \1 g
) R' @/ d& ~1 O0 V I5 Z如果您真的已经完成该网关还是建议共享!或者开源。。 |