android怎么反混淆?反编译完,他之前代码混淆过,怎么反混淆?

反不了的,如果没加固的话是可以反编译,甚至还能二次打包。但现在开发一般都会开启混淆,即使反编译了也是混淆之后的代码

为什么这么多商业Android开发者不混淆代码?

android怎么反混淆?反编译完,他之前代码混淆过,怎么反混淆?

不是不混淆,而是有些代码没有办法混淆,一混淆就出问题。从有一个项目,写的人多,经过几轮团队之手,反射什么的,各种恶心判断,大段没有用逻辑,非常复杂,我们称为天然加密,一般的开发团队根本没有那个精力处理,一混淆就出问题,性能差,不流畅等等。另外一项目,大部分内容是c++写的,java层就是用来做ui,没有必要混淆,外层针对核心代码加固加壳,给了你也没有用,反编译只是部分代码。还有一些项目大部分逻辑在后台,前端逻辑太简单,要实名制等等,业务更改太过于频繁,所以无所谓混淆。还见过一些项目是外包的,公司基本不懂it,别人拿过发出去了,整体素质没有想象的那么好。

软件公司如何保障源代码不会被外泄?

android怎么反混淆?反编译完,他之前代码混淆过,怎么反混淆?

。防止源代码外泄这是一个常见的需求,不同的公司有不同的做法,包括技术和流程规范等,相关的解决方案有很多。这里介绍一种技术:VDI(虚拟桌面),感兴趣者可以评估一下。

android怎么反混淆?反编译完,他之前代码混淆过,怎么反混淆?

VDI(Virtual Desktop Infrastructure)这里不多做解释,直译就是虚拟桌面基础设施,也是虚拟化技术的一种典型应用,其技术实质是程序运行在后台的服务器端,客户端(使用者的电脑)呈现的只是一个画面,思杰、VMware、深信服等都有这种技术,感兴趣可以自行百度。这种技术一大好处是:源代码集中保存在服务器端,代码根本不在研发人员的电脑中落地,这样可以防止代码被本地病毒等侵袭,还可以防止屏幕拷贝等非法操作;VDI的另一个好处是,采用这种技术后代码的拷贝、修改等行为都是可审计的,如果有恶意拷贝行为也可以及时发现。

这种技术其实已经存在多年,现在算是比较成熟了,对用户而言面临的挑战主要是成本(一套新架构,服务器、存储、网络成本都可能增加),以及用户体验。尤其是用户体验,因为计算不在本地电脑而是后台服务器,所以开发人员可能感觉反应比较慢。不过,近些年由于超融合的存在,用户体验有了很大改善,目前已经有些大型(过千人)的研发中心采用了这种技术来保护源代码。如果你的源代码的确非常重要,不妨考虑下这种技术。

本答案来自科技行者团队邹大斌

版权声明:本文内容由互联网用户自发贡献,该文观点仅代表作者本人。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如发现本站有涉嫌抄袭侵权/违法违规的内容, 请发送邮件至 ttt5cn@163.com 举报,一经查实,本站将立刻删除。

发表评论

登录后才能评论