最近,我的客户要求我混淆JavaScript代码以隐藏API密钥。我使用Grunt。
grunt-contrib-uglify能够混淆我的JavaScript代码吗?
uglify和obfuscate有什么区别?它们中的一个比另一个更安全吗?
最近,我的客户要求我混淆JavaScript代码以隐藏API密钥。我使用Grunt。
grunt-contrib-uglify能够混淆我的JavaScript代码吗?
uglify和obfuscate有什么区别?它们中的一个比另一个更安全吗?
Uglify是一个代码压缩工具。它解析JS代码,构建代码的令牌树,然后可以用于压缩/缩小代码或“美化”代码,以便于调试等。
另一方面,使用类似Stephen Mathieson的Obfuscator这样的混淆工具可以将多个项目文件合并成一个,捆绑需要和打包。在这种情况下,它还会在最后对整个作业进行Uglify处理,生成混淆、缩小的JS文件。虽然不是100%安全的,因为有方法可以反混淆JS代码,但相比于明文文本,这使得代码更难以解密。
然而,我建议尽可能避免将客户端API密钥放在浏览器端代码中。即使它被混淆了,也仍然可能被发现。