파일을 암호화하면서 점차적으로 파일을 삭제하는 방법은 무엇입니까?

파일을 암호화하면서 점차적으로 파일을 삭제하는 방법은 무엇입니까?

대용량 파일을 암호화해야 하는데 하드 드라이브에 파일과 암호화된 버전을 모두 저장할 저장 공간이 부족합니다.

사용된 공간이 거의 동일하게 유지되도록 파일을 암호화하면서 점차적으로 파일을 삭제하는 것이 가능할 것 같습니다.

다음을 사용하여 내 파일을 암호화하면

 openssl aes-256-cbc  -in myfile -out myfile.aes-256-cbc

원본 파일과 암호화된 파일의 단계별 삭제를 어떻게 권장합니까 myfile?

답변1

Linux에서는 다음을 사용할 수 있습니다.fallocate파일에 "구멍을 뚫습니다". 즉, 일부 데이터 블록을 버립니다. ext4, XFS 또는 btrfs 파일 시스템(또는 tmpfs)이 필요합니다.

$ perl -e 'print "a" x 16384' > foo
$ ls -sl foo
16 -rw-r--r-- 1 foo foo 16384 Oct 18 13:12 foo
$ fallocate -p -o0 -l 8192 foo
$ ls -sl foo
8 -rw-r--r-- 1 foo foo 16384 Oct 18 13:12 foo

다른 시스템에도 유사한 기능이 있을 수도 있고 없을 수도 있지만 이와 관련된 유일한 이식 가능한 시스템 호출은 다음과 같습니다.posix_fallocate그리고truncate첫 번째는 파일을 위해 새 공간을 예약하는 것만 허용하고 두 번째는 파일을 자르는 것만 허용하므로 이는 실제로 도움이 되지 않습니다.끝에서.

openssl어떤 경우든, 예를 들어 입력 파일을 파이프로 연결하고 파일에서 읽은 부분(다른 부분은 제외)을 삭제하는 프로그램을 설치해야 합니다 . 어떤 프로그래밍 언어로든 구현하는 것은 어렵지 않지만, 충돌이 발생하면 사용할 수 없는 부분이 남을 수 있기 때문에 그다지 안전하지도 않습니다.

파티션을 암호화할 수 있는 전체 디스크 암호화 유틸리티가 있는지 모르겠습니다.

또한 관련 내용은 다음과 같습니다.대용량 파일을 복사하지 않고 서로 첨부

관련 정보