在与他人分享之前,我应该对我的插件进行模糊处理吗?

时间:2014-01-07 12:34:48

标签: jquery obfuscation

我正在学习jQuery,我正在编写一个jQuery插件,并且很乐意在完成时与其他人(当然是那些想要的人)分享。我最近了解到,混淆可以帮助我保护代码并使其轻量化。但我也发现混淆的JS经常被用来插入恶意代码。因为我不打算在我的插件中包含任何恶意代码,所以如果我混淆了它,它会让人信任我的代码至少试用吗? 我使用混淆的主要想法是禁止对代码进行任何编辑,以便我的插件能够按预期继续工作。我相信混淆会帮助我。

由于

1 个答案:

答案 0 :(得分:2)

jQuery插件的普遍共识是发布两个版本。原始的,未压缩的代码,然后是另一个缩小版本。实际上,这是jQuery库的作者自己采用的方法,例如:

未压缩> http://ajax.googleapis.com/ajax/libs/jquery/1.10.2/jquery.min.js
缩小> http://ajax.googleapis.com/ajax/libs/jquery/1.10.2/jquery.min.js

您应该知道两个词minifiedobfuscated之间的区别,但通常会:

Minification:

  

计算机中的缩小(也是最小化或最小化)   编程语言,尤其是JavaScript,是一个过程   从源代码中删除所有不必要的字符而不更改   它的功能。这些不必要的字符通常包括白色   空格字符,新行字符,注释,有时是块   分隔符,用于为代码添加可读性但不是   它需要执行。

Obfuscation:

  

在软件开发中,混淆是故意创造的行为   混淆代码,即难以获得的源代码或机器代码   人类要明白。程序员可能会故意将代码混淆为   隐瞒其目的(通过默默无闻的安全)或其逻辑,在   为了防止篡改,阻止反向工程,或作为阅读源代码的人的谜题或娱乐挑战。

简而言之,minification != obfuscation。发布缩小版本的想法是减少文件大小,这通常可以通过缩小和混淆的组合来实现。