winrt代码是否更好地防止逆向工程?

时间:2012-04-01 21:00:09

标签: silverlight windows-runtime

我的应用程序正在Silverlight中开发。计划在今年晚些时候推出。我担心我的xaps会被逆向工程化。我的wcf服务中确实有大量的智能,但你无法将所有内容都放在服务中。现在winrt是另一种选择。事实上,silverlight和winrt都使用xaml,似乎可以将我的客户端代码移动到winrt,但前提是该代码可以防止逆向工程。意见?

2 个答案:

答案 0 :(得分:3)

答案 1 :(得分:2)

几乎没有什么可以保护您的代码免受逆向工程。在服务器上运行会隐藏代码以使其最安全,混淆仍然可以很好地保护它,但不是完全保护,并且它还有其他一些风险。 WinRT允许您编写本机代码,这比.NET代码更难以进行逆向工程,但只是略微。另一方面 - 如果你的应用程序是用非缩小的javascript编写的 - 你基本上是在发送你的源代码,你甚至没有要解压缩的xap文件 - 只需查看C:\ Program Files \ WindowsApps并且有一个您的应用程序的文件夹,其中存储了您在Visual Studio中看到的所有文件。

然后您可以查看这些选项并确定最适合您的选项。最终 - WinRT和Silverlight之间的选择是平台的选择--WinRT应用程序只能在Windows 8上运行,并且(我们可以推测)可能在下一版本的Windows Phone上运行,至少在最初阶段 - 限制了您的目标受众。我没有听说过通过Windows Store销售Silverlight应用程序的选项,除非你的目标是Windows Phone,那是唯一的选择(那和XNA都是基于.NET的)。

如果您的客户端代码确实是一种独特的知识产权 - 您最好使用专利和版权法保护它,而不是使用混淆和编译。