어제 "데이터를 어디에 둘지(리전)"를 다뤘다면, 오늘은 "그 데이터를 어떻게 안전하게 보호할지"를 본다. 핵심 기술은 **암호화(Encryption)**다. 데이터를 알아볼 수 없는 형태로 바꿔두면, 설령 누군가 데이터를 훔쳐가도 키가 없으면 무용지물이 된다.
오늘은 암호화의 두 가지 상태(전송 중/저장 시), 암호화 키를 관리하는 서비스(KMS와 CloudHSM), 그리고 비밀번호·API 키 같은 민감 정보를 안전하게 보관하는 Secrets Manager를 개념 수준으로 정리한다. CLF 시험은 알고리즘 같은 깊은 내용이 아니라 "언제 무엇을 쓰는가"를 묻는다.
데이터는 두 가지 상황에서 보호되어야 한다.
1. 전송 중 암호화 (Encryption in Transit): 데이터가 네트워크를 통해 이동하는 동안의 보호. 브라우저와 서버 사이를 오가는 데이터를 가로채도 읽을 수 없게 한다. 대표 기술은 TLS/SSL(https://로 시작하는 통신)이다.
2. 저장 시 암호화 (Encryption at Rest): 데이터가 디스크나 스토리지에 저장되어 있는 동안의 보호. 누군가 물리 디스크나 저장된 파일에 접근해도 키 없이는 읽을 수 없다. S3, EBS, RDS 등 대부분의 AWS 스토리지 서비스가 저장 시 암호화를 지원한다.