我想做一个JavaScript应用程序,不是开源的,因此我希望学习如何可以混淆我的JS代码?这可能吗?


当前回答

你可以随心所欲地混淆javascript源代码,但它总是可以通过要求所有源代码实际运行在客户端机器上进行逆向工程…我能想到的最好的选择是用服务器端代码完成所有的处理,而javascript所做的所有客户端代码都是向服务器本身发送处理请求。否则,任何人都将始终能够跟踪代码正在执行的所有操作。

有人提到base64是为了保证字符串的安全。这是个糟糕的主意。Base64可以立即被那些想要对你的代码进行反向工程的人识别出来。他们要做的第一件事就是解编码,看看是什么。

其他回答

我可以推荐Patrick J. O'Neil的JavaScript Utility。它可以模糊/紧凑和压缩,它似乎很擅长这些。也就是说,我从未尝试将它集成到任何类型的构建脚本中。

至于混淆和缩小,我不太喜欢前者。它使调试不可能(错误在第一行…“等等,只有一行”),而且他们总是要花时间打开行李。但如果你需要…好。

我以前用过这个,它做得很好。它不是免费的,但你一定要看看。 JavaScript混淆器和编码器

我的印象是,一些企业(例如:JackBe)将加密的JavaScript代码放在*.gif文件中,而不是JS文件中,作为一种额外的混淆措施。

JScrambler试试。最近我试了一下,印象深刻。 它为那些不太关心细节,只想快速完成的人提供了一组模板,用于混淆预定义的设置。您还可以通过选择任何您想要的转换/技术来创建自定义混淆。

你试过香蕉脚本吗?它生成高度压缩且完全不可读的代码。