명령 줄을 사용하여 다음 명령으로 디렉토리를 암호화 할 수 있음을 알고 있습니다.
zip -er Directory.zip /path/to/directory
그러나 이것은 파일 이름 자체를 암호화하지는 않습니다. 누군가가 달린 경우 :
unzip Directory.zip
잘못된 비밀번호를 반복해서 입력하면 unzip 명령은 올바른 비밀번호를 입력 할 때까지 포함 된 모든 파일 이름을 반복합니다. 샘플 출력 :
unzip Directory.zip
Archive: Directory.zip
creating: Directory/
[Directory.zip] Directory/sensitive-file-name-1 password:
password incorrect--reenter:
password incorrect--reenter:
skipping: Directory/sensitive-file-name-1 incorrect password
[Directory.zip] Directory/sensitive-file-name-2 password:
password incorrect--reenter:
password incorrect--reenter:
skipping: Directory/sensitive-file-name-2 incorrect password
[Directory.zip] Directory/sensitive-file-name-3 password:
password incorrect--reenter:
password incorrect--reenter:
skipping: Directory/sensitive-file-name-3 incorrect password
등등.
명령 줄을 사용하면 파일 이름 자체를 암호화하거나 숨기면서 암호화로 디렉토리를 압축하는 방법이 있습니까?
감사합니다.
답변
zip 파일에서는 파일 내용 만 암호화됩니다. 파일 이름을 포함한 파일 메타 데이터는 암호화되지 않습니다. 파일 형식의 제한 사항입니다. 각 항목은 개별적으로 압축되며 암호화 된 경우 별도로 암호화됩니다.
대신 7-zip을 사용할 수 있습니다 . 메타 데이터 암호화 ( -mhe=on
Linux 명령 행 구현 사용)를 지원합니다.
7z a -p -mhe=on Directory.7z /path/to/directory
모든 주요 운영 체제와 대부분의 사소한 운영 체제에 대해 7zip 구현이 있지만 추가 소프트웨어를 설치해야 할 수도 있습니다 (IIRC Windows는 암호화 된 zip 파일의 압축을 풀 수 있습니다). 암호 해독에 7z가 필요한 경우 먼저 zip을 사용하여 디렉토리를 단일 파일로 압축 한 다음 해당 파일을 암호화하여 zip을 사용할 수 있습니다. 그렇게하면 개별 파일의 압축을 끄고 외부 zip에 zip 파일을 압축하도록 지시하면 전체적으로 더 나은 압축률을 얻을 수 있습니다.
zip -0 -r Directory.zip /path/to/directory
zip -e -n : encrypted.zip Directory.zip
답변
자주 사용하는 도구를 사용하여 아카이브를 만든 다음 bcrypt
암호화 / 암호 해독을 수행 하는 데 사용할 수 있습니다.
A) 암호화 된 파일을 만들려면
tar -czf Directory.tgz /path/to/directory
bcrypt Directory.tgz
이것은 당신에게 복어 암호화 파일을 줄 것입니다 Directory.tgz
B) 이 과정을 반대로하려면 :
bcrypt Directory.tgz.bfe
tar -xf Directory.tgz