一个免费且高效的JavaScript混淆器(包括ES2017)。使您的代码难以复制,并防止人们窃取您的作品。该工具是javascript-obfuscator@0.18.7
Timofey Kachalov创建的优秀(开源)Web UI 。
- 官方网站: https://obfuscator.io/
- Github:详情
本站下载:
来源于Github
[b2_file link="https://cdn.getimg.net/npc/2019/github/javascript-obfuscator-t191218.zip" name="Obfuscator" pass="" code=""]
这是什么?
此工具可将您的原始JavaScript源代码转换为新的表示形式,未经授权,该表示形式将更难理解,复制,重用和修改。混淆后的结果将具有原始代码的确切功能。
因此,就像UglifyJS,Closure Compiler等?
是的,没有。尽管UglifyJS(和其他压缩程序)确实使输出代码更难理解(压缩和丑陋),但可以使用JS Beautifier将其轻松转换为可读的代码。
该工具通过使用各种转换和“陷阱”(例如 自卫和调试保护)来防止这种情况的发生。
混淆如何工作?
通过一系列转换,例如变量/函数/参数重命名,字符串删除等,您的源代码被转换为不可读的内容,而工作方式却与以前一样。
听起来不错!
只需粘贴您的代码或将其上传到下面,然后单击“混淆”即可。
另外,请务必阅读所有选项,以了解代码保护与代码大小/速度之间的所有权衡。
常问问题
我为什么要混淆我的JavaScript代码?
保护代码是个好主意的原因有很多,例如:
- 防止任何人简单地复制/粘贴您的作品。这对于100%客户端项目(例如HTML5游戏)尤其重要。
- 删除不需要的注释和空格。使加载更快,更难以理解;
- 保护尚未支付的工作。您可以向客户展示您的工作,知道他们在支付发票之前不会拥有源代码。
这个混淆器绝对万无一失吗?
不,虽然不可能恢复确切的原始源代码,但有时间,知识和耐心的人可以对其进行反向工程。
由于JavaScript在浏览器上运行,因此浏览器的JavaScript引擎必须能够读取和解释它,因此无法阻止这种情况。任何承诺不诚实的工具。
为什么我的混淆代码比原始代码大?
因为混淆器引入了新的代码段,旨在保护和防御调试和逆向工程。字符串也被转换为\xAB
十六进制代码,使事情变得有些难以理解。您不必太担心代码的大小,因为重复的次数很多,混淆的代码将被您的Web服务器很好地压缩(如果您的服务器上启用了GZIP压缩,则如今大多数情况下都如此)。
我可以在混淆后的输出上运行诸如UglifyJS或Google Closure Compiler之类的压缩程序吗?
不,不建议这样做,在某些情况下,它会破坏代码(例如,如果您启用了自卫)。不过,您可以先通过minifier运行代码,以确保它删除了无效代码并进行了其他优化。
您存储我的源代码吗?
不会。源代码是由我们的应用程序服务器处理的,然后由混淆器处理,然后又返回到浏览器,因此源代码仅在我们的服务器内存上保留很短的时间(通常为毫秒)。
我可以从经过混淆的代码中恢复原始源代码吗?
不,不可能将混淆后的代码恢复为原始代码,因此请确保原始代码的安全。
此工具可与Node.js源代码一起使用吗?
是。
我想在自己的服务器/机器上运行混淆器。可能吗?
当然。该工具使用以TypeScript编写的免费开放源代码(BSD-2-Clause许可)混淆器。您可以转到其GitHub页面并在此处阅读更多信息。
还有许多插件,例如:webpack-obfuscator,gulp -javascript-obfuscator 和 grunt-contrib-obfuscator。
此外,此Web应用程序也是开源的。查看我们的GitHub。
还有哪些其他类似工具?
如果您只喜欢丑陋的代码和压缩的代码,建议使用JSCompress.com。