다른 시스템에서 암호화된 파일을 해독합니다.

다른 시스템에서 암호화된 파일을 해독합니다.

내 홈 서버는 OpenBSD 5.3을 실행하고 Samba를 통해 여러 Windows 시스템에 파일을 제공합니다. 각 파일을 암호화 openssl enc -aes-256-cbc하고 Amazon S3에 업로드하여 비디오 파일을 백업하는 스크립트를 작성했습니다 . 가능한 복구 시나리오를 테스트하기 위해 파일에서 스크립트를 실행하고 파일을 Windows 컴퓨터에 다운로드한 다음 AES 암호화 파일을 해독한다고 광고하는 여러 프로그램을 사용하여 해독했지만 해독할 수 없었습니다. OpenSSL로 암호화된 파일은 OpenSSL로만 복호화할 수 있나요? OpenBSD에서 OpenSSL을 통해 암호화된 파일은 OpenBSD의 OpenSSL을 통해서만 해독될 수 있습니까?

참고로 파일을 내 서버에 다운로드하고 OpenSSL을 사용하여 해독하는 데 아무런 문제가 없습니다. 그러나 어떤 서버 설정을 선택하더라도 S3(Glacier에 빠르게 보관됨)의 내 비디오에 계속 액세스할 수 있는지 알고 싶습니다.

답변1

AES-CBC-256은 암호화 알고리즘과 암호 해독 알고리즘을 완전히 지정합니다. 일반 텍스트, 키 및 IV가 주어지면 AES-256-CBC 암호화의 두 구현 모두 동일한 암호문을 생성합니다. 암호문, 키 및 IV가 주어지면 AES-256-CBC의 두 구현 모두 동일한 일반 텍스트를 생성합니다.

IV는 메시지를 암호화할 때 생성되는 임의의 문자열입니다. 동일한 데이터를 두 번 암호화하면 IV가 다르기 때문에 다른 암호문을 얻게 됩니다. 이는 부분적으로 동일한 길이의 두 암호문만 볼 수 있는 사람이 암호문이 동일한지 여부를 감지할 수 없도록 하기 위한 것입니다. 대부분의 도구는 해독에 필요한 모든 데이터가 한 곳에 있도록 IV를 암호문 앞에 추가합니다(물론 키는 제외).

OpenSSL 명령줄 도구는 16바이트 헤더, IV 및 암호 텍스트가 포함된 파일을 생성합니다. 이 형식은 OpenSSL에만 적용되지만 플랫폼에 따라 달라지지는 않습니다.

OpenSSL의 명령줄은 프로덕션급 명령줄 도구라기보다는 라이브러리로 가능한 작업을 보여주는 데 더 많은 역할을 합니다. 나는 그것을 사용하는 것을 권장하지 않습니다. 실수하기가 너무 쉽고 복구할 수 없거나 안전하지 않은 데이터로 끝날 수 있습니다. 또한 OpenSSL은 키 관리에 도움이 되지 않습니다.

대신 파일을 암호화하도록 설계된 도구를 사용하십시오.GPG이 목적을 위해 설계되었습니다. 키 쌍을 생성하고 사용하십시오.gpg -e [email protected] /path/to/file

답변2

AES 암호화 및 포맷NIST 사양. 호환성이 구현되는 한 플랫폼 전반에서 파일에 액세스할 수 있다고 가정하는 것이 안전합니다.

관련 정보