admin管理员组

文章数量:1589660

1、常规文件加密

一般性文件加密,通常采用对称非对称组合式加密。

通过对称加密完成大文件的机密和性能的要求。例子:算法 SM4   使用密钥记为key1 (128bit)

通过非对称加密完成对 对称密钥key1 的加密。通过公私钥的分离完成对 key1的异地管理。

2、参考 IOS 文件加密

最近看了 ios 的安全白皮书,在涉及的大的文件处理、敏感的军事信息、全区加密非常有参考意义。

先说一个整体概念,安全删除,

安全删除意思敏感数据,或者数据泄露情况下,完成对数据的删除,并且不可恢复(对删除后的磁盘分区进行写脏数据操作)。

这样做如果是在一个大的磁盘内,则耗时较久,时间差可类比 U 盘的拷贝和删除时间差。

我们在这里把写多遍脏数据的方案记为 "方案1"

苹果方案记为  " 方案2"

先看下 ios 的文件加密架构:

1、文件系统密钥本质不是用来保证机密的,是用来瞬间擦除的,放在明文分区,明文磁盘内。

2、擦除这个密钥是可以瞬间完成的。

3、擦除密钥后整体的磁盘文件就无法完成解密。相当于变相完成文件的擦除、不可用。

梳理下 ios 的文件保护策略:

文件使用文件独有密钥进行加密。将文件独有密钥和文件密钥的分类采用类密钥封装,最后采用文件系统密钥进行加密。

组合式加密,两把钥匙组合保护文件独有密钥。其中类密钥和设备绑定在一起。一共三把密钥。

解密: 文件系统密钥解密对应的文件元数据+ 文件密钥。 暴露出具体元数据,然后找对应类密钥进行解密。 获取文件独有密钥--》 提供给 AES 引擎,进行对文件解密。

思考:

如果手机切换了不同机主,机主则实际访问文件的时候,是有类密钥的,如果不引入文件系统密钥,就需要方案1 才可以。缺点耗时久,安全性不够、可以暴力破解和恢复。

引入方案2 ,这擦除是瞬间完成的,实际相当于保留了类密钥,基于新机主创建新的文件系统密钥。组合钥匙丢了一把,旧的数据就不可用了,然后文件索引再删除,相当于新的数据分区。

注意:

1、文件密钥不会提供给应用程序。

2、处理过程在 安全区域 secure enclave。

3、通过对文件系统密钥的瞬间擦除,保证系统被彻底破解后,攻击方获取了类密钥,也无法完成对文件密钥的解密,无法获取文件密钥,无法完成对文件的解密。

4、 如果不引入文件系统密钥,则获取类密钥后通过暴力破解可以完成对文件密钥的获取。

本文标签: 浅谈文件加密