wuyuxiaoqiang 发表于 2011-1-21 23:53 2 D/ c' r( ^6 G6 ^/ m8 u5 D8 f( E
LZ误解,无双完全有可以写出网关放万能的登录器。。对于我来说就是这样!!!!不解释测试OK一句话!
% }: F/ I# @1 p你说的这个可能是可以吧!但是现在确实还没有发现类似的东西出来!
1 `# [% b6 I# t$ Q: {7 X关于网关的主要组成部分是通过密匙来完成。到是有可能实现阻止其他登录的做法!% t5 |. S. J2 c
; {% _/ \7 g4 a
不过这个技术含量明显是个小防火墙了!
) v- m: Y3 k! P* `' R! P9 d* f( A* c/ ?; P7 u" g# x
具体实现步骤:(编程人员仅供参考)9 M( _/ A$ c6 n q0 B& K- z& ?% H9 v
! q) o3 q: W8 x: |6 E5 o项目:10 |4 m# J! d$ k- i
( \' ~- ~4 i" Q# M n' m
1)。建立一组密匙,建议采用一套算法,不推荐固定值!- D d% v+ {1 v8 \4 A1 I' X/ E- I
2)。建立Socket(网络通信)Server实现端口数据过滤。
+ g5 J+ [: Q5 g6 |7 x; \3)。建立客户端也可以叫做登录器,由于Bf_client启动的时候会关闭掉登录器,可以将客户端写成动态链接库的方式注入到Bf_client内。
$ v. h$ {/ a# F f' b$ Y: j4)。通过动态链接库截取Bf_client发送账号密码的封包,将其修改为添加一组密匙
' z7 |9 h- h1 S( K例如:Bf_client发送的数据有Account,PassWord,梦幻版带有安全码,截取后将其发送至自己建立的Socket服务器(也可以称为网关)。
1 s: R; w* Q, d n5 i' }0 t
; G; T9 ~* l& }1 |$ m: f5 x: e$ G-----------------未改变方式(例如)-----------------% \/ {2 S, O' n/ a
Account='xxxx'
2 X8 B0 F0 P( ?5 @* H4 L, G% VPassWord='xxxx'
" V& Z- ]/ ~0 J3 Q# h3 N------------------加密后---------------------------------
8 D0 J) O+ V( U0 W; P: bAccount='xxxx'; X0 k* X+ K, d: b$ R3 r
PassWord='xxxx'
4 y& ]1 H6 H2 V1 fUserKey='推荐使用算法,固定值容易破解': ~& R$ q* A: B4 A# `$ U
------------------------------------------------------------3 }8 }! j- m( y1 p# g4 z- C# B8 e
; U+ M3 D6 H: e6 O: k; N
//false 进制通过4 C- y# y3 z- T, \% P2 Q& S
//true 验证成功* k' z3 A- v. \3 h& A. E
网关得到消息后判断是否存在密匙
) h( j5 P8 n( q) G8 eif(UserKey==""){
+ ?' ^) V, P* K+ K0 h1 B: i* preturn false;
; H% r' X4 a$ _, M* R' e7 `}else if(UserKey!=算法){+ P# Q4 ?. @' \8 T3 O1 s
return false;
K3 R0 Q' ~, B$ |% h$ ?* l& A}else{, r( Q& w2 [: p' g% R3 B
return true;
8 M* E! P* s$ {3 ]) O- }3 e% p5 l}/ Q& D$ b' |7 W: C. o
7 P# A' f, o' ^- V-------------------------------------------------------------$ w3 V* U8 f$ c y4 J) H. E7 H
只可以说是治疗标的方法,不能从根本上解决问题!" r9 M1 \( O$ Q7 \! h2 C
9 I* O3 T( b; b6 H/ f建议还是不要投入过大精力来完善这个鸡肋的功能。出售就更没有必要了!9 G6 Y) y" K8 i2 `# R" ?
9 i' |" h w0 B- f- o如果您真的已经完成该网关还是建议共享!或者开源。。 |