【问题标题】:Encrypted a project in ASP.NET在 ASP.NET 中加密项目
【发布时间】:2010-12-03 16:51:45
【问题描述】:

有什么方法可以在 ASP.NET 中加密项目,这样我的客户就无法更改检查许可证代码的功能?

【问题讨论】:

    标签: asp.net licensing obfuscation encryption


    【解决方案1】:

    看看Eziriz's .NET Reactor。在保护方面还不错。从他们的网站:

    .NET Reactor 通过以下方式防止反编译 多种转换方法 您的 .NET 程序集进入进程 没有现有工具可以反编译( 并且也很可能 防止任何未来的反编译 工具)。 .NET Reactor 构建原生 潜在黑客之间的代码墙 和您的 .NET 程序集通过生成 无法理解的文件 直接作为 CIL。因为 CIL 在 您的程序集仅原封不动地发出 在运行时或设计时(以一种形式 其中来源完全 无法访问),没有工具能够 反编译 .NET Reactor 受保护 程序集。

    .NET 打造的原生代码墙 黑客和你的反应堆 来源包括行业领先的 NecroBit 技术,这是 .NET Reactor 独有。 。网 反应堆的保护从来没有 自从第一次发布以来就坏了 2004. 这些技术使你的源代码重构 这么多订单更难 NecroBit 的规模是迄今为止 您可以使用的最有效的保护 用于 .NET 程序集。

    【讨论】:

    • 嘿,这很好.. 所以它需要您的 MSIL 并将其中的一些实际编译为本机代码... 这肯定会有效。
    • 听起来是个好方法。虽然不是 100% 防弹,但威慑水平相当高。很好的发现!
    • 太棒了。已经用了几年了。
    • 从字面上看,这些说法似乎有些牵强。毫无疑问,该工具具有威慑作用。
    • 抱歉,我好像找不到私信的方法。您对他们的其他产品 Intellilock 有任何经验吗?除了原生代码与 100% 托管代码之外,还有什么显着差异?
    【解决方案2】:

    如果客户坚持不懈,甚至有一点技巧,就不会。混淆只能让你走这么远。任何 .Net 程序集都可以反编译。

    请参阅此处了解信息: http://aspnet.4guysfromrolla.com/articles/080404-1.aspx

    已添加

    另外,请参阅上一个问题: .NET obfuscation tools/strategy

    【讨论】:

      【解决方案3】:

      不,这是不可能的。

      您可以实施某些措施,使客户更难逆转或更改您的程序,以便尝试进行此类逆转或更改的成本过高。但是,如果他们有足够的决心,你不能阻止他们逆转或改变你的程序。

      【讨论】:

      • 如果他们真的改变程序并不是很危险。这是CMS和网上商店的话题。但我不希望他们转售我的产品或提供更多产品。因此,我希望对域和许可证密钥进行合并。正如他在下面提到的一些帖子,所以如果 EXE 文件已被修改,我可以冷静下来,但绝大多数或获取 web 主机不允许执行 EXE 文件。并且由于我这样做将是有几个供应商拥有该产品的产品,这不是很好。您认为最好的解决方案是什么?
      • 如果他们确实转售了您的软件,您必须平衡您在威慑上投入的工作量与损失的机会/金额。我没有答案,这真的取决于你的软件/业务/客户等的性质。
      • 我的客户大部分是网店内的企业。 CMS 中包含企业和私人客户。谈论几百个客户是很好的。
      【解决方案4】:

      使用 VS 附带的 Dotfuscator 社区版。还要加上校验和功能来检查你的EXE是否被改变。

      【讨论】:

      • 这是一个网络应用程序,没有 EXE。但是仍然可以通过将校验和函数注入到核心独立程序集的 onf 中(如果有的话)。
      猜你喜欢
      • 2015-10-15
      • 1970-01-01
      • 2011-05-20
      • 2011-02-25
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 2016-10-19
      • 1970-01-01
      相关资源
      最近更新 更多