dmsetup の代わりに openssl 暗号化ツールを使用して暗号化されたイメージを作成できますか?

dmsetup の代わりに openssl 暗号化ツールを使用して暗号化されたイメージを作成できますか?

通常、次のようにして暗号化された ext4 イメージを作成できます。

fallocate -l 6553600 encrypt.img
losetup -f encrypt.img
dmsetup create encrypt_disk --table "0 12800 crypt aes 32BYTEKEY 0 /dev/loop0 0"
mkfs.ext4 /dev/mapper/encrypt_disk

次に、/dev/mapper/encrypt_disk をディレクトリにマウントすると、このディスク内のすべてのファイルが自動的に暗号化されます。そして、encrypt.img を取得しました。これは、次回 dmsetup によってロードできます。

質問です: dmsetup の代わりに openssl ツールを使用して encrypt.img を作成できますか? おそらく次のようになります:

fallocate -l 6553600 encrypt.img
losetup -f encrypt.img
mkfs.ext4 /dev/loop0
openssl aes ...

ありがとう。

答え1

いいえ、これはできません。
使用するファイルシステムはカーネルに実装されているため、基盤となる暗号化ブロックデバイスの実装もカーネルに実装されている必要があります。これは の場合に当てはまりますdmsetup ... crypt
opensslはカーネル外で暗号化を行うユーザー空間の実装であるため、ファイルシステムをサポートするデバイスの実装には使用できません。

ext4代わりに、 ではないが の周辺にあるユーザー空間ファイルシステムを使用した場合fuse、これはできたカーネルベースのブロックデバイス以外のものに基づく場合もありますが、これはまったく別の話題です。

関連情報