Chrome扩展程序打包为zip存档。安装完成后,它将安装在文件夹上,用户可以访问它。他也可以重写扩展,甚至克隆到新扩展。如何保护Chrome扩展程序
如何保护用户修改和克隆的扩展? 我发现DLL文件的可能性(可以编译) - 但它不是很好。
Chrome扩展程序打包为zip存档。安装完成后,它将安装在文件夹上,用户可以访问它。他也可以重写扩展,甚至克隆到新扩展。如何保护Chrome扩展程序
如何保护用户修改和克隆的扩展? 我发现DLL文件的可能性(可以编译) - 但它不是很好。
前提似乎很简单。默认情况下,浏览器解释HTML/Javascript,与页面一起运行的chrome扩展也是如此。
一种方法是您的JavaScript代码,或者依靠NPAPI编译二进制插件,或者使用的NaCl
如果你有一些专有代码(例如特殊的算法,你想保持安全等),你的目标是铬 - 我会建议去Native Client。 Nacl允许您在浏览器中运行C/C++代码。这是非常强大的,你可以肯定,有人挑选你的二进制文件是非常困难的。
目前还没有办法可以隐藏用户或竞争对手的浏览器扩展程序的源代码。
有在Chrome web store faq声明:
我可以在店里卖的扩展? 还没有,但是这个功能即将推出。
您可以等待此功能或尝试以下办法:
您的JavaScript源:选中此了解更多详情How can I obfuscate (protect) JavaScript?
保持你的关键逻辑在远程服务器上,从后台脚本进行Ajax调用以与服务器通信
个Chrome扩展是从“同源策略”免费的,如果跨域权限在清单中定义:
普通网页能够使用XMLHttpRequest对象来发送和 从远程服务器接收数据,但他们受相同的 原产地政策限制。扩展不限于此。一个分机可以与 远程服务器通话,只要它首先请求 跨域权限。
定义您的清单如下:
{
"name": "your extension",
...
"permissions": [
"http://www.yourserver.com/"
],
...
}
我使用Gulp plugin for JavaScript obfuscation。它不会打破扩展的代码。
所以:混淆工具:http://www.javascriptobfuscator.com/default.aspx和http://stackoverflow.com/questions/194397/how-can-i-obfuscate-javascript – mpz 2012-08-10 00:35:55