Linux是一套免费使用和自由传播的类Unix操作系统,是一个基于POSIX和Unix的多用户、多任务、支持多线程和多CPU的操作系统。它能运行主要的Unix工具软件、应用程序和网络协议。它支持32位和64位硬件。Linux继承了Unix以网络为核心的设计思想,是一个性能稳定的多用户网络操作系统。
分享到: 分享到QQ  分享到Twitter

作者: BigLoser    访问次数: 696 创建时间: 2020-05-16 10:05:34 更新时间: 2024-04-20 06:37:35

为了提供更好的加密性能,目前谷歌工程师正在为 Linux 文件系统加密管理工具 fscrypt 添加内联加密支持。而与之相关的开发包括在 Linux 5.8 的块设备队列管理 blk-mq 中引入内联加密。

 

 

fscrypt 是用于 Linux 文件系统加密管理的高级工具,它管理元数据、密钥生成、密钥封装与 PAM 集成,并提供用于创建和修改加密目录的统一界面。fscrypt 的内核部分已集成到诸如 ext4 的文件系统中。

 

blk-mq 则是 Linux 的块设备层多队列机制,它将 Linux 内核存储栈中请求层的单队列改成多队列,理论上提升性能。

 

如果接下来 blk-mq 支持内联加密,那么它能够在存储栈中向下传递加密上下文,目前 Linux 内核源码 commit 中解释:我们必须通过某种方式让存储设备驱动程序知道它应该用于加密/解密请求的加密上下文。

 

而上层(例如文件系统/fscrypt)知道情况并且管理加密上下文。这样,当上层提交 BIO 到块层,这个 BIO 最终到达的设备驱动程序支持内联加密,那么设备驱动程序则已经表明了 BIO 的加密上下文。

 

代码上具体改动是将 struct bio_crypt_ctx 添加到 struct bio 中,用来表示加密上下文,同时引入各种用于操作 bio_crypt_ctx 并使 bio/request 合并函数逻辑知晓 bio_crypt_ctx。

季度最有价值文章

月度最有价值文章

投票统计

是否原创: 0 %

0 % Complete (success)

是否有价值: 0 %

0% Complete

是否有素质: 0 %

0% Complete (warning)

是否合法: 0 %

0% Complete

   群组工具

   外部链接