dm crypt加密存储问题学习过程记录

老师给了一个词,dm-crypt,让我们自己搞,说要改进它的加密速度。首先拿到这个词,第一反应是看看dm-crypt是什么。从名字看是一种加密。

一句话概括kiwi,dm是linux内核的一种结构,dm-crypt可以对设备进行加密。

0、dm是什么

Device Mapper(DM)是Linux 2.6全面引入的块设备新构架,通过DM可以灵活地管理系统中所有的真实或虚拟的块设备。

DM以块设备的形式注册到Linux内核中,凡是挂载(或者说“映射”)于DM结构下的块设备,不管他们是如何组织,如何通讯,在Linux看来都是一个完整的DM块设备。因此DM让不同组织形式的块设备或者块设备集群在Linux内核面前有一个完整统一的DM表示。

1、dm-crypt是什么?

dm-crypt是dm构架中用于块设备加密的模块。dm-crypt通过dm虚拟一个块设备,并在bio转发的时候将数据加密后存储来实现块设备的加密,而这些对于应用层是透明的。

2、dm-crypt效率问题

dm-crypt传给算法的每一个request只包含一个sector,即512字节。如果硬件密码引擎每次处理了的数据量远大于这个数目的话,每次只灌入一个sector的数据是一种浪费。可以考虑把队列中相邻甚至不相邻的sector合并到一个scatterlist里面进行DMA。这样设计就不能使用内核中已有的那个请求队列,而得自己设计一个效率更高的。

3、使用dm-crypt创建加密文件系统试一下
待续


extra

查资料查到在另一门课听过docker这个名词,只知道它是一个容器,这里两个东西居然联系了起来。查docker的时候可以仔细看一下。

Docker的devicemapper存储驱动就是基于该框架的精简置备和快照功能来实现镜像和容器的管理。


参考:
https://wiki.archlinux.org/index.php/Dm-crypt(锻炼英语的时候)
https://www.ibm.com/developerworks/cn/linux/l-devmapper/index.html(看到这篇文章脑袋就冒烟了,看不懂,马住希望有一天可以看懂吧)
https://blog.csdn.net/SonicLing/article/details/5460311(好文,dm代码分析)
https://www.cnblogs.com/informatics/p/7903391.html(好文,第一遍学概念,第二遍了解机制,第三遍看算法)
https://blog.csdn.net/cndes/article/details/6474284(dm-crypt创建加密文件系统)

猜你喜欢

转载自blog.csdn.net/qq_34415866/article/details/80118417
dm