최근 여러 기업에서 정보 유출 사건이 연이어 발생하면서, 보안이나 암호화에 대한 주제가 뉴스가 아니라 사내에서도 실제 이슈로 다뤄지기 시작했다.
우리 회사 역시 예외는 아니었고, 서버 개발자로서 직접 확인하고 정리해야 할 부분들이 하나둘씩 보이기 시작했다.
막연히 “중요하다”는 이야기를 넘어, 지금 우리 서비스는 어떤 상태인고 어떻게 개선할 수 있는가를 설명할 수 있어야 하는 상황이었다.
이참에 암호화와 관련된 기본적인 개념들을 다시 정리해보자는 생각이 들었고, 그 과정을 기록으로 남기기로 했다.
이 글의 목적은 암호 알고리즘을 나열하거나, 각 알고리즘의 수학적 안전성을 설명하는 것이 아니다.
대신 다음 질문에 답하는 것을 목표로 한다.
<aside> 💡
서버 개발자로서 “이 데이터는 암호화가 필요해요”라는 이야기를 들었을 때, 그 말의 의미를 최소한의 배경 지식으로 이해할 수 있는가
</aside>
암호화 이야기를 하다보면 자주 등장하는 단어들이 있다.