我们应该把飞镖代码混淆在扑翼应用程序中吗? [英] Should we obfuscate the Dart code in Flutter apps?

查看:16
本文介绍了我们应该把飞镖代码混淆在扑翼应用程序中吗?的处理方法,对大家解决问题具有一定的参考价值,需要的朋友们下面随着小编来一起学习吧!

问题描述

此问题与此相关:How to check obfuscation results of flutter app? 但那里的答案并不清楚。

黑客有没有可能在颤动应用程序中看到飞镖代码?或者它是以一种难以理解和跟踪的方式编写的?

解压flutter build apk产生的APK后,我发现与我自己的DART代码相关的唯一文件是"libfltter.so"。查看nm -D libflutter.so中的函数没有显示任何类似于我的代码的内容,因此它似乎相当安全。但是-我希望真正知道的人来证实,也许我漏掉了什么。

发布扑翼应用程序的最佳实践是什么?

更新-2019年12月-以下帖子称,如果应用程序是在发布模式下编译的,则飞镖代码将编译为汇编,这很难进行反向工程:https://medium.com/@rondalal54/reverse-engineering-flutter-apps-5d620bb105c0

推荐答案

在调试模式下,颤动应用程序将从源代码中删除。这要求源代码与应用程序一起分发。但是,您不应该分发调试版本,因此我们不必担心这种可能性。

在发布模式下,您的源代码是AoT编译的,因此没有您的源代码的实际副本,但如果有人想要重新创建它,他们可能会(很容易?)从装配中对其进行反向工程。

如果您想要混淆已编译的代码,最好的办法可能是遵循下面给出的建议: https://github.com/flutter/flutter/wiki/Obfuscating-Dart-Code

我不自称是这方面的专家,所以请自己做研究,但希望这能为你指明正确的方向。

进一步阅读有关构建过程的信息: https://proandroiddev.com/flutters-compilation-patterns-24e139d14177

这篇关于我们应该把飞镖代码混淆在扑翼应用程序中吗?的文章就介绍到这了,希望我们推荐的答案对大家有所帮助,也希望大家多多支持IT屋!

查看全文
登录 关闭
扫码关注1秒登录
发送“验证码”获取 | 15天全站免登陆