有什么办法可以反编译任何Java或Python库的导入。

问题描述 投票:-1回答:1

你好,我正在寻找一种方法来了解任何预安装或需要单独安装的库的Imports的内部工作原理,有什么方法可以做到这一点?

java python decompiling
1个回答
2
投票

是的,学习库的工作原理的方法是有的,但是,根据库的不同而不同。

许多Java和Python库都是开源的,所以你不需要反编译它们。例如,你可以下载整个源代码的 OpenJDK 并原汁原味地研究它,甚至进行修改,建立自己的版本。

CPython 解释器也是开源的,所以不需要反编译。

如果你想研究一个没有源代码的库,你所需要的工具取决于该库是用什么语言编写的。

对于Java,有 很多好的反编译器因为Java在编译的字节码中保留了很多信息。

还有一个 反编译Python的工具 字节码,而解释器本身有一个 内置反汇编器尽管通常Python库都是以源代码的形式出现,即使它们是本体的。

这些工具主要是为了调试的目的。

如果库中有底层的本地组件(通常是用C或C++编写的),反编译就需要另一种工具,而且不会产生高级别的结果。

有一些反汇编工具,但你需要学习相关平台的汇编代码。

最大的工具有 IDA (这是很昂贵的,但有一个有限的免费版本)和 Ghidra - 一个由中情局制作的免费软件反汇编程序。

是的,美国中央情报局不仅制作了一个反汇编软件,他们还免费提供给世界上任何一个人,并附有源代码!这取决于编译器。


0
投票

这要看编译器的情况。有针对不同编译器的反编译器,但不是每个编译器都有。请注意,这是非法的:)

© www.soinside.com 2019 - 2024. All rights reserved.