Android CE DE加密小结

本文详细介绍了移动设备上的数据加密方法,包括全盘加密和文件级别加密,对比了它们的性能差异,并阐述了不同文件系统如ext4和f2fs在加密中的作用。此外,还解释了DE、CE和NE等加密类型的区别,以及它们在系统、媒体和应用存储空间中的应用。

1.全盘加密
    数据在空闲的时候进行加密
    每个设备只有一个用户可以被全盘加密进行保护
    那个用户在做任何工作前必须登录
    
2.文件级别加密
    使用ext4文件系统
    使用AES-256方式对文件内容进行加密
    文件名也需要进行加密
    
文件级别加密的性能要稍微好于全盘加密
f2fs文件系统用于支持nand flash


DE(device encrypted)
文件会被一个密钥进行加密,这个密钥仅在系统执行了可验证的启动后才能获得。
在系统中,只有一个DEsys的key,有多个DEn的key对于每一个用户

CE(credential encrypted)
文件加密使用一个和用户认证(PIN,图案,密码)关联的key,这个key只有用户先执行了认证后才能获取
每一个用户拥有一个ce key

NE(none encrypted)
文件不加密,这种情况十分少见,而OTA更新文件是个例子


用户数据布局的变更:
    APPS:   1.默认的app的存储必须使用ce key来保证数据安全
            2.一个app可以存取一个DE存储空间
    
    MEDIA:  内部的共享存储必须是使用CE进行加密的
    
    SYSTEM: 1.默认的系统存储空间必须是使用DEsys进行加密的,以使数据迁移变得简单
        2.系统可以访问多个CE和DE存储空间,以便更好地保护数据


存储空间和key的对应关系

system存储空间  SYSTEM
DEsys   /data/system/
        /data/misc

CE0-n   /data/system_ce/{0-n}
    /data/misc_ce/{0-n}        
        
DE0-n   /data/system_de/{0-n}
    /data/misc_de/{0-n}

media存储空间   MEDIA
CE0-n   /data/media/{0-n}

应用存储空间   APP
CE0-n   /data/user/{0-n}
DE0-n   /data/user_de/{0-n}


如何判断数据应该属于CE还是DE
    DE:
    WIFI认证,蓝牙匹配码
    闹钟数据
    壁纸,铃声

    CE:
    通讯录
    账户授权密码
    历史浏览信息,地址信息
    最近任务,截屏


获取系统存储空间的CE,DE目录的API
    Environment.getUserSystemDirectory    DEsys
    Environment.getUserSystemEncryptedDirectory    DE0-n
    Environment.getUserSystemCredentialEncryptedDirectory     CE0-N
    Environment.getMiscNotEncryptedDirectory

获取应用存储空间的CE,DE目录的API
    应用中的上下文(Context)默认指向CE目录,如果需要访问DE目录,需要使用Context.createDeviceEncryptedStorageContext函数创建指向DE目录的上下文
    
用户的状态和key的获取
    running locked: DEsys和DEn
    running unlocked: DEsys,DEn,CEn

加密敏感APP
    应用的组件可以申明encryptionAware=true,以在没有拿到CE的key的时候也可以运行
    package会根据用户的状态对组件的查询进行过滤

判断用户状态的API
    当用户进入locked state状态的时候,会发送LOCKED_BOOT_COMPLETED
    当用户进入unlocked state状态的时候,BOOT_COMPLETED,USER_UNLOCKED广播会被发送

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值