保护Flash AS3代码+与服务器的安全通信

时间:2012-06-26 14:29:45

标签: actionscript-3 flash protection decompiler data-protection

我需要我的Flash客户端安全地与服务器通信(通过二进制套接字)。为此,我考虑在AS3代码中嵌入预共享密钥,并通过自定义协议交换XORed数据。

我被告知,SWF反编译器可以很好地使所有嵌入代码清晰可读。这是否意味着我无法真正隐藏我的钥匙?

如果这种方法不切实际,还有哪些其他选择?我曾尝试过as3crypto,但却发现它充满了缺点并缺乏严肃的文档。

1 个答案:

答案 0 :(得分:4)

你根本无法隐藏你的密钥 - SWF完全不受信任,可以很容易地反编译。使用SWF来处理安全性非常困难,因为它们在客户端上运行并且不受信任。

具体取决于您要通过安全通信实现的目标。例如,如果你试图获得一个几乎不可能的高分系统,因为游戏在客户端(SWF)上运行,他们可以操纵它来向服务器吐出他们想要的任何分数。以下是对此的良好解读:What is the best way to stop people hacking the PHP-based highscore table of a Flash game

如果您只能将SWF用作前端UI并且所有逻辑都发生在后端,那么您可以保护您的应用程序(使用上述高分榜示,如果游戏不是AS3游戏,但实际上在服务器本身上运行,安全起来会容易得多,因为后端是可信任的,用户无法修改或查看,但如果逻辑发生在SWF上,那么你几乎没有运气。 / p>