Насколько я понимаю, ecryptfs использует упакованную фразу-пароль для шифрования файлов. Когда я монтирую две пары зашифрованных / дешифрованных каталогов, используя один и тот же ключ, я ожидаю того же результата при шифровании ключа. Однако, похоже, это не так

$ sudo mount -i -t ecryptfs -o ecryptfs_passthrough=n,ecryptfs_enable_filename_crypto=n,ecryptfs_sig=f8ac65b530d4aebc,ecryptfs_key_bytes=32,ecryptfs_cipher=aes,ecryptfs_xattr=y safe1/ open1
$ sudo mount -i -t ecryptfs -o ecryptfs_passthrough=n,ecryptfs_enable_filename_crypto=n,ecryptfs_sig=f8ac65b530d4aebc,ecryptfs_key_bytes=32,ecryptfs_cipher=aes,ecryptfs_xattr=y safe2/ open2
$ echo "Hi" > open1/testfile
$ cp -a open1/testfile open2/testfile 
$ md5sum open*/testfile
31ebdfce8b77ac49d7f5506dd1495830  open1/testfile
31ebdfce8b77ac49d7f5506dd1495830  open2/testfile
$ md5sum safe*/testfile
4fe5016ca0b9b283fd05e03ccaee0b14  safe1/testfile
75850506e568f60a77acd96dfb2d2895  safe2/testfile

Я думаю, что это связано не с содержимым файла, а с некоторыми метаданными. Потому что, когда я копирую зашифрованный файл из одного места в другое, я могу расшифровать содержимое

$ umount open*
$ cp -a safe2/testfile safe1/testfile2
$ sudo mount -i -t ecryptfs -o ecryptfs_passthrough=n,ecryptfs_enable_filename_crypto=n,ecryptfs_sig=f8ac65b530d4aebc,ecryptfs_key_bytes=32,ecryptfs_cipher=aes,ecryptfs_xattr=y safe1/ open1
$ sudo mount -i -t ecryptfs -o ecryptfs_passthrough=n,ecryptfs_enable_filename_crypto=n,ecryptfs_sig=f8ac65b530d4aebc,ecryptfs_key_bytes=32,ecryptfs_cipher=aes,ecryptfs_xattr=y safe2/ open2
$ cat open1/testfile2 
Hi

Кто-нибудь может объяснить это поведение?

Я ищу способ, которым зашифрованный файл в приведенном выше примере идентичен.

1 ответ1

3

Разница в зашифрованном значении заключается в дизайне. Каждый зашифрованный файл имеет случайно сгенерированный сеансовый ключ для каждого файла.

Всё ещё ищете ответ? Посмотрите другие вопросы с метками .