反编译是什么水平
㈠ 反编译是什么意思
高级语言源程序经过
编译
变成可执行文件,反编译就是逆过程。
但是通常不能把可执行文件变成高级语言源代码,只能转换成汇编程序。
㈡ vb exe程序能够反编译到何种程度
反编译到代码的程度。和你自己的源代码的差别就是一些sub/function的名字。
想增加反编译后解读难度的话,多加一些sub/function,多加一些goto。
㈢ C++能够反编译的程度如何
vc反汇编还是相对容易的,反而简单的vb反编译却很难。
㈣ 反编译是什么意思
计算机软件反向工程(Reverse engineering)也称为计算机软件还原工程,是指通过对他人软件的目标程序(比如可执行程序)进行“逆向分析、研究”工作,以推导出他人的软件产品所使用的思路、原理、结构、算法、处理过程、运行方法等设计要素,
某些特定情况下可能推导出源代码。反编译作为自己开发软件时的参考,或者直接用于自己的软件产品中。
(4)反编译是什么水平扩展阅读
反编译是一个复杂的过程,反编译软件有:
1、SWF相关的反编译程序
Action Script Viewer
第一个也是最强大的商业SWF反编译工具,同类产品中,它的AS代码反编译效果最好,SWF转Fla工程重建成功率最高。
2、Android相关的反编译程序
SMALI/BAKSMAL
SMALI/BAKSMALI是一个强大的apk文件编辑工具,用于Dalvik虚拟机(Google公司自己设计用于Android平台的虚拟机)来反编译和回编译classes.dex。其语法是一种宽松式的Jasmin/dedexer语法,而且它实现了.dex格式所有功能(注解,调试信息,线路信息等)。
3、python相关的反编译程序
uncompyle2
uncompyle2可以直接转化为十分完美的python源码,并可以将反编译后的源码再次生成字节码文件。
参考资料来源:网络-反向编译
㈤ c语言生成的exe文件还能不能反编译成源程序
不能!!!!!!
只能人为的翻译。
没有这样的软件!!!!!!
如果要是能反编译,这个世界的程序员就全失业了!
㈥ app可以被反编译到什么程度
Android APK中的Java代码可以被反编译到什么程度主要看APK的加密程度。
第一种情况:无混淆无加密无加壳。
直接利用Dex2jar和JD-GUI可把源码从APK里抠出来,代码逻辑清晰,基本上做到可复用,只是资源文件的引用需要计算一下。
第二种情况:混淆。
通常是利用Proguard做的防护。因为是对jar做的不可逆混淆(除非有mapping),因此不能还原成原来的代码。但是代码结构,代码逻辑一致,只要花长时间对代码进行梳理一样可找准核心代码,解密方法跟第一种一致。
第三种情况:加密。
这里以DexGuard为例。对于这种代码加密的方法,在程序运行中必定会进行解密,只要抽出它解密的逻辑便可。PS:我自己做过DexGuard的解密,如果用Dex2jar反编译看的话逻辑是不对的,一定要从Smali代码看。后来发现网上已经有人做了。
解密的脚本:A look inside Dexguard
第四种情况:加壳。
这种情况跟第三种类似。无论你怎么加壳,运行的时候必定是Dalvik可识别的Odex代码,建议直接在内存里mp出来。这里推荐Xpose的ZjDroid。
加固可以在一定程度上保护自己核心代码算法,提高破解/盗版/二次打包的难度,缓解代码注入/动态调试/内存注入攻击等。
目前市面上有很多第三方加固的平台, 如果新应用发布前需要扫描或者加固的话,可以先试试免费的,例如腾讯御安全,建议自己先去扫描测试下。
㈦ 什么软件可以看的到程序的源代码
【27】源码+课件+软件免费下载
链接:https://pan..com/s/1VnUXtXrbK1N8j33D48IkhQ
源代码(也称源程序)是指未编译的按照一定的程序设计语言规范书写的文本文件,是一系列人类可读的计算机语言指令。 在现代程序语言中,源代码可以是以书籍或者磁带的形式出现,但最为常用的格式是文本文件,这种典型格式的目的是为了编译出计算机程序。计算机源代码的最终目的是将人类可读的文本翻译成为计算机可以执行的二进制指令,这种过程叫做编译,通过编译器完成。
㈧ snowman反编译代码怎么运行
使用反编译软件即可获得源代码。
反编译获得的是汇编格式的源代码,读懂需要较高的水平,大多反编译软件都具有生产C语言格式的功能,但是效果不同,而且并非是全部都能生成C语言,还有很多是汇编格式的。所以对已生成的程序进行反编译需要足够的耐心和经验才能读懂。
使用Reflector反编译exe或dll文件都可能无法进行编译(这里指已经对目的文件进行了脱壳处理),主要原因有以下几点:1、如果对方使用了混淆技术,我们再反汇编会非常棘手,我常用的做法是把某个乱七八糟的名称使用自己的命名规范重新批量重命名,这样便于分析程序的结构。2、Reflector对枚举类型的支持不是很好,它往往会把枚举当做整数进行处理,这个需要你手动更正过来。3、对于自动属性,你需要把不符合编译语法的地方更正过来。自动属性的私有字段一般都含有等,需要手动更正一下。4、对于Winform,你需要重新编译一下相关的资源文件,如果编译过程提示找不到资源的话。5、对于静态变量或者静态类,这个你更要注意。
㈨ VB6可以被很多软件反编译,那学VB还有何用
理论上,任何软件都可以被反编译,只是时间问题。与汇编、C语言比较VB6属于比较难反编译的了,如果不是做商业软件,学一种编程语言的作用是能方便工作,提高效率。
VB6编译器确实过时了,而且VB6有自身不足,但是一般软件还是可以做的,而且比VB.net要小很多,VB.net的优点是很多东西都是现成的,比如菜单,可以直接设置出各种效果来,用VB6就要掌握API和自绘技术,或者借用第三方控件。但是通过这样可以提高自己的编程水平,缺点是开发效率低。