知识产权和缩小/混淆的JavaScript代码



我们的供应商为我们提供了一个JavaScript库,我们在客户端上使用该库来执行一些数据收集,并在使用AJAX发送(将其发送到其收集服务器)之前对数据进行加密。

他们缩小/混淆了JavaScript,因此我们无法从代码中轻松分辨出他们的收集。

我们问他们是否可以提供非限制/脱离的版本,以便我们可以在有问题时进行调试,但他们说不,原因是其知识产权。

我的问题是,因为我们将所有代码下载到每个用户的浏览器上,从理论上讲,我们可以手动解码它。他们是否真的可以不向我们提供非限制/删除的代码?

他们真的可以不为我们提供非限制/删除的代码吗?

是。除非您与他们达成协议要求他们提供原始源代码,否则他们不必这样做;即没有法律义务。

假设他们编写了代码,我也不会说他们也有道德义务。这包括您付钱给他们为您编写代码的情况,但是您不需要它们提供源代码。(例如,他们可能会向您收取比开发成本少的费用,因为他们希望通过向其他客户出售相同的代码来弥补其成本。)

如果没有编写代码,则它们是不同的,但是它们是从开源代码得出的。然后,他们可能需要提供源代码...取决于原始工作的开源许可证。例如,GPL许可证将义务他们提供源代码(包括其修改的源代码),如果您要求它。

,所以我们有两个问题。第一个问题是关于法律的。如果他们是此代码的所有者,他们可以确定使用此代码的任何变体。如果他们购买了它们,则其权利受协议的限制。

第二个问题是关于这样做的态度。没有明确的答案。我认为(但这只是我的观点),在开发过程中向您隐藏代码不是一个好主意。但是...先见点。

这是一个很好的工具。

http://jsbeautifier.org/

但是,如果您未经许可使用代码,您可能会遇到法律麻烦。

尽管很难屏蔽浏览器中显示的代码...

否,它们没有义务,但是,您可以使用自动工具将其拆开。到那时,任何一个好的开发人员都可以查看代码,并对正在发生的事情有一般的感觉,足以调试。您也可以进行Deobfuscating的工作,但这取决于代码的复杂程度,对您的源头以及您愿意在其中花费多少小时的重要性。

最新更新