대칭키 암호 (Symmetric-key Cryptography)
쉽게 풀면
대칭키 암호는 하나의 열쇠로 문을 잠그고 같은 열쇠로 여는 자물쇠와 같습니다. 데이터를 보내는 사람과 받는 사람이 미리 똑같은 비밀 키를 공유하고 있어야 합니다. 이 키만 알면 누구나 암호문을 원래 내용으로 되돌릴 수 있기 때문에, 키를 안전하게 나누어 갖는 과정이 매우 중요합니다. 계산이 비교적 단순해서 속도가 빠른 것이 큰 장점입니다. 대칭키암호는 데이터를 암호화할 때와 복호화할 때 동일한 하나의 비밀키를 사용하는 암호 방식으로, 송신자와 수신자가 사전에 같은 키를 안전하게 공유하고 있어야 합니다.
왜 중요한가
대칭키 암호는 대용량 데이터를 빠르게 암호화해야 하는 실무 환경에서 핵심적으로 사용됩니다. 정보보안학 연구에서는 이 방식의 속도와 안전성 사이의 균형, 그리고 키 배송 문제를 해결하기 위한 다양한 프로토콜이 활발히 다루어집니다. 실제 서비스에서는 비대칭키 암호와 결합해 안전하게 키를 교환한 뒤 대칭키로 대량 데이터를 암호화하는 하이브리드 방식이 일반적으로 사용됩니다. 대칭키암호는 공개키암호에 비해 연산 속도가 훨씬 빨라 대용량 데이터의 실제 암호화에 널리 쓰이며, 이 때문에 실무에서는 키 교환에만 공개키암호를 쓰고 본문 암호화에는 대칭키암호를 결합하는 하이브리드 방식이 표준으로 자리잡았습니다.
논문에서는 이렇게 쓰입니다
제한된 자원을 가진 기기에서 빠른 처리 속도가 필요하기 때문에 대칭키 암호가 선택되었음을 보여줍니다.
키 교환의 안전성과 통신 속도를 함께 확보하기 위해 두 방식을 혼합해 사용하는 전형적인 설계를 설명합니다.
조금 더 깊게 보면
대칭키 암호는 크게 블록 암호와 스트림 암호로 나뉘며, 대표적으로 AES가 널리 사용됩니다. 대칭키 암호 자체는 계산 효율이 높지만, 통신 당사자 수가 늘어날수록 각 쌍마다 별도의 키를 안전하게 관리해야 하는 부담이 커집니다. 이 때문에 키 관리와 키 유도함수 같은 보조 기술이 함께 연구됩니다. 대칭키암호는 데이터를 일정 크기의 블록 단위로 나누어 처리하는 블록암호와, 데이터를 비트나 바이트 단위로 연속적으로 처리하는 스트림암호로 구분되며, 두 방식은 처리 단위와 오류 전파 특성에서 뚜렷한 차이를 보입니다.
주의할 점
대칭키 암호 자체는 키를 안전하게 전달하는 문제를 해결해주지 않으므로, 키 교환 과정에서 별도의 보안 장치가 필요합니다.