我正在研究一种加密文件系统,它在将数据写入磁盘之前对数据进行加密,并在从磁盘读取后立即对其进行解密。如果不先解密,磁盘中的任何文件都是无用的。到目前为止,我改变了文件系统重复的标准读写方法。
问题始于用于内存映射文件的mmap
。例如在ext4文件系统中,据我所知,它不使用标准I / O,因此应该像读/写系统调用一样加密/解密。那么如何在从磁盘读取数据时解密数据并在内核想要更新内存映射文件时对其进行加密?
如果可能,我想留在我的文件系统特定模块中。
更新:读/写完美地在终端中工作。但是:
我应该编辑任何其他系统调用,就像我读/写一样吗?