??当看到这张图片是有点懵逼嘚因为之前都在分析FBE,还没分析过FDE不过想想大概分析流程应该是差不多的吧。首先当然是看看fstab的内容了
了解到这个信息后我们接着看加密失败的log,首先是kernel log搜索encrypt有用的信息比较少
0 |
main log的有用信息就稍微多一些了,如上面列出的
- 接下来的两种系统格式也都失败
// 参数准备没什么好看的 |
下面重点来了:可以看到,这里device-mapper使用的加密插件是req-crypt那么req-crypt是什么东西呢?其次为什么CONFIG_HW_DISK_ENCRYPTION宏会被定义为true,这个宏看着像是使用硬件加密啊8909能用?带着疑问继续分析
但是这个CONFIG_DM_REQ_CRYPT宏在项目对应的msm8909_defconfig文件中没有找到定义所以可以判断这个文件是不会编译进内核的。那加载映射表的时候当然就找不到这个加密插件了。
博主这边使用的是EMMC而且/dev/icesdcc也不存在。那么就暂且判断为不支持ICE了(这里存在另一个可能就昰设备是支持ICE的但是设备数没有配置好,这个哪个兄dei知道怎么判断不请告知一声)。
如果不支持ICE那就只能使用软件加密了,这个就仳较影响性能了要使用软件机密,需要解决的问题取消CONFIG_HW_DISK_ENCRYPTION宏的定义了查看vold的Android.mk文件,有下面这一段玩意
然后编译试试看能不能行了?Interesting…………….