2017-02-01 2 views
0

저는 KMS 대신 S3를 사용하여 본질적으로 자격 증명 파일을 저장하고 Python은 파일의 내용을 읽습니다. 세부 사항 - -S3 암호화 파일을 해독해야합니까?

내가 수동으로, S3에서 클릭 속성으로 이동하여 암호화 된 파일 설정 서버 측 암호화 : AES는-256

그리고 내 파이썬 스크립트, 나는시에서 변경하지 않고 키를 읽을 I 암호화되지 않은 파일을 읽습니다. 또한 파일을 다운로드하고 해독과 같은 작업을 수행하지 않고도 파일을 열 수있었습니다. 해독해야 할 것으로 예상했기 때문에 조금 혼란 스럽습니다.

나는 서버 측 암호화가 무엇을 보호하는지 이해할 수 없다. S3/S3 버킷에 액세스 할 수있는 사람이 이미 키/파일을 읽을 수 있습니까? 누가 파일을 열 수 없습니까?

답변

4

사용하도록 설정 한 "서버 측"암호화를 사용하면 나머지는 암호화를 켭니다. 즉, 파일이 S3에있는 동안 암호화됩니다. 그러나 S3는 파일을 다운로드 할 때 데이터를 보내기 전에 파일의 암호를 해독합니다.

따라서 파일을 암호화 할 때 파일을 다운로드 할 때 파일을 처리하는 방법이 변경되지 않습니다.

이 유형의 암호화는 API를 사용할 때와 같이 유효한 방법을 통해 파일을 다운로드하는 경우 파일을 보호하지 않습니다. 누군가가 S3 데이터 센터 또는 그와 유사한 것을 우회하는 경우에만 파일을 읽기로부터 보호합니다.

파일을 보호해야하므로 다운로드 할 때 암호를 해독해야하므로 S3에 업로드하기 전에 파일을 클라이언트 측에서 암호화해야합니다.

AES256 등 클라이언트 측 암호화 체계를 사용할 수 있습니다.하지만 S3에서는이를 수행하지 않습니다.

+0

설명해 주셔서 감사합니다. 방금 만든 키를 사용하여 S3에 파일을 업로드하고 다운로드 한 다음 볼 수있었습니다. 이게 정상인가? 다운로드를 위해 파일을 보내기 전에 S3가 해독 했습니까? – simplycoding

+0

업로드하기 전에 암호화하면 다운로드 한 후에 해독해야합니다. S3는 당신을 위해 그것을하지 않습니다. S3 서버 측 암호화를 사용하는 경우 S3은 데이터를 보내기 전에 파일의 암호를 해독합니다. 실제로 클라이언트 측 암호화와 서버 측 암호화를 모두 수행 할 수 있습니다. S3는 여전히 데이터를 제공하기 전에 서버 측 암호화를 해독하지만 클라이언트 측에서 직접 해독해야합니다. –

관련 문제