2013-04-03 98 views
2

保护我的“工艺”的冲动一直存在。使用C/C++我发现人们可以反编译。经过大量的心理斗争,我不知何故接受了难以理解的事实:人们总能通过努力工作,回到应用程序的源头。发现了这个,我花了很多时间手动模糊代码。使饼干很难重新获得我宝贵工作的来源。Javascript代码可以隐藏吗?

最近我有机会看到HTML 5和JavaScript的美丽。我从一开始就喜欢它;现在可以联系到很多人,唯一的要求是网络浏览器。我预计很多软件将被移植到HTML 5.也许高端游戏,整个CAD程序和巨大的开发工具包。现在和将来的浏览器都可以使用。

我遇到的唯一问题是;这种可移植性不允许隐藏源。它非常困扰我,知道我提供的服务可以被利用。
虽然我发现了很多关于JavaScript混淆的内容,但它始终是相同的解释语言。这意味着混淆可以颠倒非常非常简单。

现在我的实际问题是:
有谁知道隐藏在浏览器中运行的客户端代码的方法,因此恢复原始源代码将非常困难?

+4

不,没有什么可以做超越混淆。 – Pointy 2013-04-03 18:44:26

+6

跳上OpenSource的火车,永不回头,那是你最好的选择。 – Chad 2013-04-03 18:44:41

+0

你可以缩小它,但这是关于你可以做的最好的,这不是很多。 – 2013-04-03 18:45:23

回答

2

JavaScript代码可以缩小和混淆,但这只会阻止偶然尝试进行反向工程。

在客户端运行的任何代码都可以通过足够的努力进行反向设计。对于JavaScript,逆向工程的障碍不是很高。

现实情况是,混淆只能在少数用例中提供真正的经济利益。即使是以闭源着称的微软,也开始使用实体框架,ASP.Net MVC和其他项目开源。在这些情况下,开源的经济收益明显超过封闭源的经济收益。

+0

奖励不应该很高:) – Esailija 2013-04-03 18:54:55

0

您不能隐藏页面的javascript/html/css源代码,因为浏览器必须能够读取它。你可以缩小/混淆它,但它只是使它有点难以阅读。

我理解你的立场 - 我已经花了项目数百个小时,我不希望人们能够把我的代码等

但开源的力量实在是太大了。你无法想象有多少人可以真正从你的工作中学习,或者将你的工作用于他们正在试图建立自己的项目。这是令人难以置信的权力和价值。

我欠我的整个职业生涯能够看到网页的来源和学习他们如何他们完成。