AST是个啥?

简介: AST是个啥?


 简介

AST(抽象语法树)将源代码转化为抽象语法结构树表示 在这个节点树种你可以做多种操作 巴拉巴拉的 太多了

具体可以跳转

https://blog.csdn.net/weixin_39408343/article/details/95984062

去了解


 有什么用?

在js混淆领域 很多站为了让你头疼 经常会使用一些混淆

最常见的当属OB混淆了 也有D象 S美 T盾 J验等

图左为加密前 图右为加密后

既然AST可以用来加密代码 那也是可以用来解密代码的

我写的一键反混淆工具便是通过AST来还原混淆代码的

原代码

混淆后代码

工具解混淆后代码

通过对比可知 虽然工具无法百分百还原 但是在可读性上是倍的提升


 怎么学?

面对使用混淆的站的增加 AST也逐渐走进人们的视野 但是在早一段时间 教AST的人少之又少 会的人少之又少 但是 但是 现在我就要着重介绍一个人了

那就是 老板 他的公众号是 菜鸟学Python编程

里面有着丰富的教程 大家可以去关注一下蔡老板的公众号 学学AST基础


当然除了他的公众号 蔡老板也开通了星球 在星球上有着大量的AST的教程

适合大家的入门以及进阶

如果你想仔细学习 加入星球也是一个不错的选择


题外话

最近刚开学 更新可能会少一点 等安顿好啦 再多多更新 冲鸭


[完]



相关文章
|
6月前
|
JavaScript 前端开发 安全
抽象语法树(AST):理解JavaScript代码的抽象语法树
抽象语法树(AST):理解JavaScript代码的抽象语法树
|
19天前
|
安全 数据可视化 编译器
AST 的应用
【10月更文挑战第23天】抽象语法树在软件开发的各个领域都有着广泛而重要的应用。它为代码的分析、优化、生成、转换等提供了基础和支持,是提升代码质量和开发效率的重要工具。随着技术的不断发展,AST 的应用还将不断扩展和深化,为软件开发带来更多的创新和便利。
|
17天前
|
自然语言处理 算法 JavaScript
怎么转化成 AST
【10月更文挑战第25天】将代码转化为 AST 是编译器和代码分析工具中的重要环节,通过对 AST 的操作,可以实现对代码的深入理解和各种自动化处理。不同的编程语言和工具都有各自的 AST 表示和相关的处理方法,但基本的原理和步骤是相似的。
|
17天前
|
JavaScript 前端开发
利用 AST 进行代码优化
【10月更文挑战第25天】利用AST进行代码优化需要对编程语言的语法和语义有深入的理解,以及对AST的结构和遍历操作有熟练的掌握。通过合理地运用各种优化技术,可以显著提高代码的质量和性能。在实际应用中,通常会结合多种优化方法,并根据具体的项目需求和代码特点进行综合优化。
|
17天前
|
JavaScript 前端开发 Java
|
3月前
|
JSON JavaScript 前端开发
JS逆向 AST 抽象语法树解析与实践
JS逆向 AST 抽象语法树解析与实践
58 2
|
自然语言处理 Shell Python
[oeasy]python0135_python_语义分析_ast_抽象语法树_abstract_syntax_tree
[oeasy]python0135_python_语义分析_ast_抽象语法树_abstract_syntax_tree
115 0
[oeasy]python0135_python_语义分析_ast_抽象语法树_abstract_syntax_tree
|
Java 编译器 程序员
字节码插桩(四) | AST
我们通过 AndroidStudio 生成Bean对象一般是通过注解来实现自动生成getter/setter方法、equals()和hashCode()方法,其中类(或接口)要符合驼式命名法,首字母大写。方法要符合驼式命名法,首字母小写,类或实例变量要符合驼式命名法,首字母小写。常量要求全部由大写字母或下划线构成,且第一个字符不能是下划线,否则编译器会报警告
164 0
字节码插桩(四) | AST
|
JSON 自然语言处理 JavaScript
什么是 AST?
什么是 AST?
149 0
什么是 AST?
|
存储 JavaScript 开发者
vue2-编译之生成AST
前言 在上篇文章我们分析了编译中parse的部分代码,也就是parseHTML的实现。在parseHTML中通过逐字匹配将template进行了初步解析。现在我们继续分析在parseHTML中输出的结果是如何被parse进行使用的。以此结束完整parse流程的分析。