【发布时间】:2012-05-28 20:14:48
【问题描述】:
我知道我不能防止人们对我的协议进行逆向工程,但我想采取一种通过隐蔽性来确保安全的方法,以使其尽可能困难。
我有一个服务器/客户端系统,它通过网络使用http 样式的数据包进行通信。
例子:
Header
Attribute: Value
Attribute2: Other Value
Payload
我想让除我的客户以外的任何人访问网络变得尽可能困难。把他们反编译我的程序集的问题推到一边——我可以对这个网络规范做些什么好事情,这会使 非常困难 理解并在没有源代码的情况下进行另一个实现?
我在想某种奇怪的散列方法或某种很难的加密算法。
编辑我不想保护我的程序集或源代码。例如,我试图阻止某人使用 WireShark 或类似工具查看我的协议,然后根据该信息进行自己的实施。
【问题讨论】:
-
使用一些加密怎么样?
-
@zerkms:建议已经在我的问题中
-
@caesay:为什么你认为使用一些可用的加密很困难,但发明一种新的加密很容易?
-
通过默默无闻的安全性不存在。充其量您可以加密连接(ssl 等),但如果有些客户端应用程序的副本毫无意义。游戏厂商在这方面投入了多少?饼干需要多长时间才能闯入?
-
@AdamHouldsworth:我不是在谈论我的源代码。
标签: c# security networking obfuscation