如何保护javascript代码不被其他域(被盗)运行?需要更多的想法

Pio*_*ler -6 javascript security obfuscation

首先,这可能看起来像重复

如何防止您的JavaScript代码被盗,被复制和查看?

和其他,但事实并非如此.

我搜索可以做的想法,窃取JS可能非常困难

我的一些例子:

  • 当然是混淆代码
  • 使用document.location检查域中的某个字母是否等于脚本正常工作的那个位置上的字母
  • 在函数调用中使用此位置的一部分,例如eval('first_part_of_function_name'+ part_from_location +'third_pard(parameters)');
  • 在页面设计的某个元素中存储一些重要的常量需求,并从JS中获取它 $('#header div.onright a rel')
  • 通过AJAX,并得到脚本的某一部分eval()
  • 添加脚本一些不必要的功能,说明.
  • 检查页面中某些元素是否存在(页脚上的版权文本)
  • 在PHP中生成一些时间变量哈希并放入JS,其中将是检查此哈希和当前工作时间的函数
  • 也许使用其他JS文件?或绑定到隐藏在非常常见的脚本中的元素的事件(比如绑定jquery-min.XXXjs文件中的所有jquery所在的某些操作.

他们是好主意吗?还有一些吗?我认为最重要的可能是你可以用文档定位做各种各样的事情,这是唯一比我们网站上的正常编码更有用的元素吗?

phi*_*hag 7

无论您编写代码有多复杂,都可以随时阅读,如有必要,可以使用抽象解释,即自动捕获代码的本质.不知道内部,变量名称的代码(我假设您已经使用最小化,例如使用YUI压缩器),文档,支持和泛化对其他任何人都毫无价值.

如果您的竞争对手(或潜在客户)正在窃取您的代码,请考虑简单起诉他们.如果它是互联网上的随机人,你为什么关心?

  • @killer_PL有很多方法可以让解码花费10个小时,但这些方法也适用于使用该网站的其他人.我讨厌打破它,但是[你的代码极不可能是编程的圣杯](http://en.wikipedia.org/wiki/Illusory_superiority),并且首先值得偷窃.如果一些随机的孩子将它用于他的地理位置主页,你为什么要关心? (6认同)