【问题标题】:Encrypt .dll from asp.net web application从 asp.net Web 应用程序加密 .dll
【发布时间】:2017-09-29 05:45:59
【问题描述】:

我想,是否可以加密来自 Web 应用程序 (.dll) 的所有源代码并让应用程序使用这种方法工作?

最近我们公司的服务器遭受了很多攻击,他们可以窃取一些源代码并通过逆向工程师阅读。

所以我的问题是这可能吗?

【问题讨论】:

  • 以前可以将整个网站作为 DLL 发布,但我不记得是怎么做到的了。
  • 好吧,攻击者肯定不可能访问源代码/程序集或您不希望他们访问的任何其他内容 - 这是您需要解决的问题 - 不考虑加密或混淆解决方法。
  • 没错,Alex K,但正如您所见,即使有保护,您也可能遭受攻击。在某些情况下,混淆可能是另一种保护级别。
  • 您愿意考虑第三方解决方案吗?

标签: .net encryption web-applications source-code-protection


【解决方案1】:

我认为您只是想保护您的代码在 Web 服务器上不可见,或者可能在部署后访问/进行修改?您可能需要查看 .NET Web 应用程序的发布选项。

当您发布 Web 应用程序时,有一个与预编译应用程序相关的选项。在我附加的屏幕截图中,左图突出显示了发布设置窗口中的选项 - “发布期间预编译”。现在,它做了什么 - 预编译器从页面生成程序集。即它从您的代码隐藏生成程序集(DLL)。此时,您的代码已经转换为程序集。您可以通过使用强名称对其进行签名来确保程序集的真实性。

进一步,您可以检查高级属性并配置您的预编译。您可以取消选中复选框“允许预编译的站点可更新”(查看我随附的屏幕截图)。它能做什么? -

"编译 .Aspx 页面,而不仅仅是代码文件 (.VB/.CS)。选中它允许您在部署 .Aspx 文件后对其进行某些更改而无需重新编译(例如 =移动控件的位置或添加一些额外的 HTML 标记)。"

如果您还不知道,希望这对您有所帮助。

【讨论】:

    猜你喜欢
    • 1970-01-01
    • 2014-06-09
    • 2015-02-15
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 2010-09-21
    • 1970-01-01
    • 1970-01-01
    相关资源
    最近更新 更多