加密我的框架和代码

时间:2009-04-15 15:36:37

标签: c# asp.net encryption

我正在创建自己的CMS框架工作,因为我拥有的许多客户,具有相同的要求,如新闻模块,新闻稿模块等。

现在我做得很好,唯一困扰我的是,如果客户想要从我的服务器移动他会让我把他的文件给他,但当然如果我这样做的话拿它来看他会看到我的所有代码,使用它并从中受益,这对我来说太糟糕了,我花了所有这些时间来创建我的系统,任何人都可以很容易地看到代码,而且他会看到所有的逻辑我的系统,他很容易知道我的网站的其他客户是如何工作的,这对我来说是一个威胁,最后我使用的是我为他们的许可付费的第三方控件,我不希望他接受它在金盘子上。

现在解决这个问题的最佳方法是什么?我认为它是加密,但我怎么能这样做,效率如何?

- 我应该将我的所有CS文件和bin文件夹中的Dll合并到一个Dll并加密它,我该怎么做?

我非常感谢这件事的所有帮助,因为这对我来说非常重要。

3 个答案:

答案 0 :(得分:2)

答案 1 :(得分:1)

根据我的经验,这很少值得付出努力。许多提供这样的库的公司都不会费心去混淆他们的代码(Telerik等)。

特别是考虑到你正在撰写的内容(CMS无处不在),您可能会从实现使您的产品/实施具有竞争优势的功能所花费的时间中获得更多好处,并使公司看到您能够编写的软件有价值,而不是代码本身。

最后,您要确保是使软件适用于公司的关键因素,而不是您提供给它们的DLL。

答案 2 :(得分:0)

您需要预编译您的网站并对dll进行模糊处理。 Visual Studio附带了Dotfuscator Community Edition。你可以尝试一下。

当然,HTML输出,CSS声明,数据库结构和存储过程代码都无法加密。

然而,您可以尝试压缩CSS,这也会降低人类的可读性。

点击此处:The best approach to scramble CSS definitions to a human-unreadable state throughout an ASP.NET application

另一个想法是在HTML中使用框架并将大部分网站页面放在其中。这样,在执行“查看源”时它将不可见。

或者只是清楚地说明您提供的服务是什么,并且不提供您工作的源代码。我不知道怀疑salesforce是否愿意向任何要求的人提供他们的消息来源。