怎样还原被混淆的JavaScript代码
巴扎黑
巴扎黑 2017-04-10 15:21:26
0
2
381

之前在某游戏页面上看到一些不错的交互效果,用Chrome开发者工具进行查看的时候,发现变量和函数名被优化成为a,b,c等单字母,请问一下这个是用Grunt里面的grunt-contrib-uglify进行压缩和混淆的吗?请问怎样才能把这些处理过后的代码还原成未进行混淆的源码呢?

巴扎黑
巴扎黑

全部回覆(2)
洪涛

Grunt里面的grunt-contrib-uglify可以进行类似的压缩和混淆,但是还有其他的工具也可以,例如Yahoo YUI Compressor,所以说不一定是那工具出来的。

早期的混淆是采用eval的机制来混淆的,把源代码的结构用 eval 改的面目全非,这个过程是可逆的。

而类似grunt-contrib-uglify这样的工具可以用自定义的符号对代码进行混淆,如果不知道自定义的符号 key,过程是不可逆的。

而后一种方式有点像谍战中的通过“代号”找人一样,打个比方:
我党的地下工作者有:xx(不告诉你名字) -> 三爷 xx(不告诉你名字) -> 四儿,这个名单中统并不知道,所以名字不能告诉你
中统获得一件情报:三爷打算5点去找人联络,请你告诉我,三爷是谁?

部分内容参考自:【知乎】在 JavaScript 开发中怎样做代码混淆?

大家讲道理

除非它提供了压缩对应的键值表,否则还原基本是不肯能的,最多用chrome跟你格式化下。

熱門教學
更多>
最新下載
更多>
網站特效
網站源碼
網站素材
前端模板
關於我們 免責聲明 Sitemap
PHP中文網:公益線上PHP培訓,幫助PHP學習者快速成長!