V2EX = way to explore
V2EX 是一个关于分享和探索的地方
现在注册
已注册用户请  登录
codeforyou
V2EX  ›  Android

不懂就问,如何保护 assets 内的文件安全?

  •  
  •   codeforyou · 2020-11-04 23:03:18 +08:00 · 2686 次点击
    这是一个创建于 642 天前的主题,其中的信息可能已经有所发展或是发生改变。
    众所周知,apk 文件被破解后,能直接拿到 assets 内的文件,进而威胁 App 的安全,那如何能提高安全性呢?比如说 assets 内有数据库、配置文件等等
    7 条回复    2020-11-16 13:54:14 +08:00
    mxT52CRuqR6o5
        1
    mxT52CRuqR6o5  
       2020-11-04 23:07:05 +08:00 via Android
    客户端没有绝对的安全,d 加密都能给你破了,区区 assets 根本不算什么
    DoctorCat
        2
    DoctorCat  
       2020-11-04 23:54:57 +08:00
    native library DIY 一套 loader,然后加虚拟机壳,内存中把资源解密,能稍微缓解一下下安全风险。
    jim9606
        3
    jim9606  
       2020-11-05 00:08:09 +08:00
    放到客户端的静态资源都会被解包的,各种加固都是增大解包难度而已。
    如果是运行生成的保密数据可以考虑用 Android keystore system 进行加密。
    fansangg
        4
    fansangg  
       2020-11-05 10:37:46 +08:00
    加密呗
    RikkaW
        5
    RikkaW  
       2020-11-05 10:59:57 +08:00
    客户端的东西默认可以被随便改,通过在 native 部分验证签名配合各种增加破解人工作的特技可以缓解。

    运行期间生成的需要保护的数据可以使用 KeyStore 那套,可选使用硬件支持的(背后是 TEE 或专用芯片,没人动得了),不过比较旧的手机很可能没有。
    m30102
        6
    m30102  
       2020-11-05 20:55:58 +08:00
    不在 assets 存放文件就安全了,用的时候网络下载
    kingiis
        7
    kingiis  
       2020-11-16 13:54:14 +08:00
    小手段
    改文件名后缀,文件头尾加东西
    关于   ·   帮助文档   ·   API   ·   FAQ   ·   我们的愿景   ·   广告投放   ·   感谢   ·   实用小工具   ·   1233 人在线   最高记录 5497   ·     Select Language
    创意工作者们的社区
    World is powered by solitude
    VERSION: 3.9.8.5 · 147ms · UTC 22:54 · PVG 06:54 · LAX 15:54 · JFK 18:54
    Developed with CodeLauncher
    ♥ Do have faith in what you're doing.