【问题标题】:How to prevent ActionScript code decompilaton如何防止 ActionScript 代码反编译
【发布时间】:2010-10-18 15:40:12
【问题描述】:

是否有可靠的方法来防止我的操作脚本代码(as2 或 as3)被复制(例如,如果其中有一些 IP)? 我知道有些工具可以反编译 flash 代码,因此很容易对其进行逆向工程,而且我还看到一些工具声称能够以不可窃取的方式混淆 actionscript 代码,但我想知道它的可靠性如何他们是... 你知道吗?谢谢!

【问题讨论】:

    标签: actionscript-3 actionscript-2 obfuscation reverse-engineering


    【解决方案1】:

    根据定义,这是不可能阻止的。

    原因很简单,代码需要在客户端运行,所以需要客户端能够读取。

    您能做的最好的事情就是努力(需要时间)去做,以致于无利可图。 Flash 有一个内置功能可以防止使用密码进行反编译。我不确定它是如何工作的,我猜是某种形式的加密。

    您可以尝试在运行时将感知数据溢出并加入它,对其进行加密并从服务器获取解密密钥。

    但最终你真的无能为力。除非您不希望用户输入加密密钥(密码或文件)。 Flash 中没有内置加密,但有几个免费库,例如 crypto lib http://code.google.com/p/as3crypto/

    【讨论】:

      【解决方案2】:

      我没有找到可靠且可持续的方法来混淆代码。如果有办法混淆代码,我敢打赌:

      • 这会影响代码的性能
      • 有人为该混淆方法制作/找到反编译器只是时间问题

      我不认为依赖客户端代码的安全性是一种好的做法。即使无法反编译代码,swf 也会在客户端上运行,并通过用户可以访问的网络连接与 Internet 进行通信。可以嗅探数据包,并且可以轻松分析所有正在传输的数据。

      我认为你应该找到一种方法来开发一个安全的应用程序,即使考虑到客户知道你所做的一切。您应该尝试使用服务器端约束并在使用之前过滤所有输入。此外,从服务器端脚本请求所有敏感数据,而不是将其嵌入到您的 AS 代码中可能是一个好的开始。

      【讨论】:

        猜你喜欢
        • 2011-09-17
        • 1970-01-01
        • 2010-12-11
        • 2012-01-11
        • 2013-07-28
        • 1970-01-01
        • 2011-05-30
        • 2014-02-07
        相关资源
        最近更新 更多