cryptsetup을 사용하여 암호화된 이미지 파일을 생성하고 Lostup의 암호화 옵션을 사용하여 이전 시스템에서 이미지 파일을 열 수 있어야 합니다.
이전 시스템은 Python 스크립트에서 이 명령을 사용하여 아카이브를 여는 스크립트를 변경하고 사용할 수 없습니다(사용 중인 losstup 파일에 비밀번호가 있습니다):
losetup -p %d -e aes /dev/loop0 /mnt/encMount' % (fdes)
Lostup이 이미지 파일을 성공적으로 열 수 있도록 cryptsetup이 어떤 설정을 사용하는지 알아보려고 합니다.
사용중인 두 가지 버전은 다음과 같습니다.
비밀번호 설정 2.3.2
util-linux 2.22.2의 손실
다음 비밀번호 옵션을 시도했지만 지금까지 아무 것도 작동하지 않았거나 모두 잘못 입력했습니다.
cryptsetup open /media/sda1/aes-cbc-essivmd5.img encryptedfile --type plain --cipher aes-cbc-essiv:md5 -h md5 --key-file /tmp/p
cryptsetup open /media/sda1/aes-cbc-essivsha256.img encryptedfile --type plain --cipher aes-cbc-essiv:sha256 -h sha256 --key-file /tmp/p
cryptsetup open /media/sda1/aes-cbc-plainmd5.img encryptedfile --type plain --cipher aes-cbc-plain:md5 -h md5 --key-file /tmp/p
cryptsetup open /media/sda1/aes-cbc-plainsha1.img encryptedfile --type plain --cipher aes-cbc-plain:sha1 -h sha1 --key-file /tmp/p
cryptsetup open /media/sda1/aes-cbc-plainsha256.img encryptedfile --type plain --cipher aes-cbc-plain:sha256 -h sha256 --key-file /tmp/p
감사해요!
답변1
@user566330 losstup 2.22 구현에는 명령줄이나 키 파일을 통해 무엇을 제공하든 키의 처음 31바이트만 가져오는 일종의 버그/모호성이 있습니다.
https://github.com/util-linux/util-linux/blob/stable/v2.22/lib/loopdev.c#L1091(lo_encrypt_key 및 LO_KEY_SIZE의 정의 및 사용법 참조)
또한 관리자는 v2.22+의 losstup에서 암호화 지원을 제거했을 때 다음과 같은 관찰을 했습니다.https://github.com/util-linux/util-linux/commit/5cf05c71472bf7230075cbdcd5cd6eb12b1d3654
이를 염두에 두고 cryptsetup/losetup 사이에 31바이트 키를 사용하려고 하면 이상적으로 작동해야 합니다. 즐거운 사냥!