摸索出的 Js 混淆压缩方式

 

核心代码

1、先到该网站压缩和混淆变量名:

【可能是BUG:   每次操作后必须重新刷新页面 混淆变量名功能才会有效】

https://tool.oschina.net/jscompress/

 

2、在JsHaMan的免费版中做简单处理:

http://www.jshaman.com/protect_free.html

 

 

 

非核心代码

我们有时需要将 核心代码和非核心代码 混在一起,让攻击者无法直接删掉 加密的核心代码这段,提高破解难度。

非核心代码 代码量大,而且很可能不是我们自己写的,比如工具类等等。

我们可以对非核心代码只做压缩,压缩完后 再与混淆过一次的核心代码 通过 javascript-obfuscator 做一次混淆。

1、对非核心代码进行混淆:

https://www.sojson.com/js.html

注意:勾选 eval,不然 最后一步高强度压缩之后,有些程序会报错。

 

 

 最后

1、将 混淆过一次的核心代码 与 上一步处理完的非核心代码放在一起进行混淆:

https://obfuscator.io/

 

 混淆效果很强大,一定勾上 Debug Protection ,因为很多代码混淆后 面目全非,但一旦到了chrome的调试页面的 vm 中,全都原形毕露。

该工具也可以下载到自己的nodejs中执行:

红色框中为混淆过一次的核心代码,

蓝色框中为非核心代码,

这样就将 两块代码糅合在一起,提高破解难度。

 

使用该工具进行混淆,需要保证JS代码编写很规范,";  {  } " 这些都要规范。

在下面网址中有该混淆工具的三种推荐配置:高混淆、中混淆、低混淆

https://github.com/javascript-obfuscator/javascript-obfuscator

 

posted on 2020-03-13 16:27  HB1  阅读(1269)  评论(0)    收藏  举报

导航