你的安卓手机究竟是FDE加密还是FBE加密?
2024-03-01 03:03:52发布 浏览309次 信息编号:101648
友情提醒:凡是以各种理由向你收取费用,均有骗子嫌疑,请提高警惕,不要轻易支付。
你的安卓手机究竟是FDE加密还是FBE加密?
从2016年初开始,法医界就流传着一种很丧气的说法:“你的手机被加密了!”,然后从2017年中期开始,又出现了一种更丧气的说法:“你的手机被FBE加密了!” ,为什么又无奈呢? 我们来仔细看看手机的“加密”是什么,“FBE加密”到底是什么。
回到 4时代。它还是bate版本。 为什么这么说? 这种加密机制会在用户手动启动后对整个用户分区进行全面加密。 由于当时的硬件水平有限,手机的CPU和内存的运行速度着实令人烦恼。 执行一次就很难了。 加密过程可能需要几十分钟到几个小时,并且加密过程中手机无法正常使用。 如果加密过程不小心因为断电而中断,用户数据很可能会消失,所以只有那些有进取心、敢于冒险的用户才能体会到这个功能的缺点。 因此, 4.0的用户区会再次尝试加密)。
毕竟这么大的国际化公司,产品经理的强迫症是非常强的。 他们对 4.X 上 FDE 加密的性能确实不满意。 经过一年多的优化,FDE优化版本上线,并伴随着 5.0的发布一起发布,但我还是太自信了。 为什么,居然实现了强制FDE加密(好自信!手机用户购买的新手机第一次开机时默认开启强制FDE加密,用户区域完全加密,不给用户任何权限)有选择的机会且不可取消)。 原本的计划是优化系统,但万万没想到的是,很多手机厂商都干脆对系统进行了修改。 到了令人发指的程度(典型的是三星手机UI的负面优化),当时一个可笑的问题是,5000元的高端FDE加密模型的实际体验还不如没有2000元低端机的速度快。 FDE 加密。 手机生产生意没了,客户体验也很糟糕。 在大家的一致反对下,三个多月后 5.1系统更新上线。 除了继续优化之外,取消了强制启用FDE加密功能,改回用户可以设置是否启用该功能。
FDE最大的问题是启用后会拖累本来不是很强大的硬件。 于是,我们开始尽力而为,别无选择。 我们没有制造手机CPU或内存。 只能说,用户区加密这个概念对于当时的手机来说是非常重要的。 它仍然太先进,硬件阻碍了它的发展。
今年,高通与小米的合作已超过2年。 小米手机一经推出就备受关注。 高通很快就推出了自己的顶级移动CPU——骁龙810,这时候我眼睛一亮,哈哈,这性能不错啊,赶紧 6.0发布了,又默认启动FDE加密了,不过这次没有丢脸了。 由于高通推出的新CPU平台自带了自己的硬件模块,因此FDE加解密的速度得到了质的提升。 此时,高通和MTK发布的新CPU平台将通过自己的硬件优化对FDE加密的支持。 而且还引入了另外一个硬件——UFS存储(小编以后会告诉大家EMMC存储和UFS存储)
什么是 FDE 加密? 我们来看看它是如何定义的(以下部分引用了某位互联网专家的解释):会通过随机生成的128位设备加密密钥(Key,DEK)对设备进行加密。 文件系统。 使用用户的 PIN 或密码来加密 DEK 并将其存储在设备的加密文件系统中。 从物理上讲,它也位于设备的闪存芯片中。 当您输入正确的 PIN 或密码时,设备可以解锁 DEK 并使用密钥解锁文件系统。
然而,事情并不像上面那么简单:DEK 实际上使用用户的 PIN 或密码,加上称为 Key Blob 的加密数据块进行加密。 该数据块包含以编程方式生成的 2048 位 RSA 密钥,该密钥在设备处理器上的安全飞地上运行。 创建 RSA 密钥并将其存储在数据块中,并为 系统创建加密副本。
重要的是要认识到 和您的移动应用程序在处理器的不安全区域上运行。 无法访问安全世界,因此它无法知道数据块中的 RSA 密钥。 只能访问此数据块的加密版本,并且只能对其进行解密。
当您输入 PIN 或密码时, 会获取加密的数据块,并将其连同处理后的 PIN 或密码一起传回在处理器安全区域中运行的处理器。 使用处理器中携带的私钥对数据块进行私下解密,以获得长RSA密钥。 然后,它将私下使用处理后的 PIN 或密码以及长 RSA 密钥来创建 RSA 签名并将签名发送回 。 然后使用一系列算法来处理这个签名,最终解密DEK并解锁设备。
因此,所有的进程都是基于数据块的。 数据块包含解密 DEK 所需的长 RSA 密钥。 仅具有加密的数据块,并且只有用户拥有 PIN 或密码。 此外,只有加密的数据块可以被解密。
设备厂商又陷入困境了,为什么? 如果没有开机密码,则无法解密用户分区。 如果在未输入密码的情况下打开计算机,您将无法接听电话或短信。 最基本的手机需求都无法满足。 数据是安全的,但是用户体验还是很差。 啊!
在广大手机厂商对系统进行神奇修改(并攻破)之后,最终采用强制FDE加密方式的机型都拥有与加密数据无关的开机密码。 这是什么意思? 无论手机用户如何设置开机模式密码,解密加密数据的密钥都不会改变。 而且,当手机用户不输入开机密码时,默认对用户区数据进行解密,并且开机密码不参与加密(广大取证工作者应该感谢这些厂商,所提出的FDE加密模型的数据提取/开机密码解密难度直接降低了一维,但优秀的数据提取方法如9008端口、MTK端口、芯片关闭等都被杀掉了)。
前面说过,最初设计的FDE加密其实安全性是非常非常高的。 但由于用户体验不佳,不得不降低自身的安全性来平衡自身的强迫症和厂商之间的矛盾(其实是用户关心用户信息的安全)。 与用户体验冲突),还是不愿意这样做,目的没有达到,于是又一年多的时间推出了另一种加密方式——FBE。
FBE加密不会加密整个用户分区,而是有选择地加密用户的敏感数据。 非敏感数据以及系统运行产生的数据均不加密,既保证了用户体验,又达到了最佳的用户体验。 在数据保护方面,很明显FBE加密模型的安全性要强于FDE。 伴随着 7.0,FBE加密被华为首次引入到一款神机华为Mate9上,运行18个月无卡顿。 事实上,FBE加密方式也是它的辅助手段之一。 为了表达得更清楚,我们看一下首次未输入开机密码时FDE加密和FBE加密的数据状态:
首次开机输入密码前后FBE加密变化
上图中我们可以看到,FBE加密模型第一次开启(即重启后进入系统)没有输入密码时,data/data目录是乱码,但是根目录/data不乱码是因为 /data 根目录没有经过 FBE 加密,但是 /data/data 子目录经过了 FBE 加密。 加密的是文件和文件。 输入正确的开机密码后,手机进入系统并再次访问/data/data。 解密了,是不是很神奇? 也就是说,如果用户数据想要被解密并使用,就必须输入开机密码。 这样开机密码就参与了整个FBE加解密方式,大大增强了用户数据的安全性。 接下来我们看一下FDE加密模型的首次启动。 输入开机密码前后的变化:
上图中,输入密码前后几乎没有变化。 FDE的加密和解密不受开机密码的影响。
综上所述,对于FDE加密机型,开机密码不参与用户数据的加解密,因此FDE机型的开机密码只是一个不相关的数据文件,而FDE机型的开机密码只是一个无关的数据文件。 FBE 加密模型可以。 说到加解密过程,在那些FBE加密模型中,如果侦查人员无法获取实际的开机密码,基本上很难从手机中获取有价值的信息。 因此,对于FBE加密机型来说,破解开机密码的主要方向是知道密码的实际内容(FBE加密机型能否在不知道开机密码的情况下提取有效信息?我们暂且不讨论,请听。回到分解)。
提醒:请联系我时一定说明是从星空网上看到的!