암호학을 다룬 책의 도입부에서 몹시 인상적인 문장을 발견한 적이 있었습니다.
“암호학은 잔인하리만큼 어렵다.”
필자는 이 문장에 동의하지 않습니다. 물론 아무런 노력 없이 쉽게 지식을 얻을 수는 없지만, 암호학이 어려워서가 아니라 암호학을 배우는 환경에 근본적인 원인이 있다고 생각하기 때문입니다. 세세한 암호화 지식은 어렵게 느낄 수도 있지만 보안 시스템과 암호학 뼈대는 누구나 쉽게 이해할 수 있습니다.
우선 교재에 문제가 있습니다. 누구나 이해할 수 있도록 용어를 일관되게 사용한 번역서를 찾는 것은 암호학을 이해하는 것만큼이나 어렵습니다. 또 암호화를 학습하는 방식에도 문제가 있습니다. 전체 구조를 먼저 이해하고 세부 내용을 알아 가는 방식이 적합하나, 대부분의 교재는 알고리즘 하나하나를 설명하는 데 급급해 숲을 제대로 보여 주지 못합니다. 그러다 보니 실무에서 암호화 제품을 적용할 때 필요한 최소한의 지식조차 얻기가 어렵습니다. 이 장에서는 암호 시스템의 기본 원리를 쉽게 설명하고 이를 바탕으로 암호 시스템1의 안전성은 어떻게 판단하는지 알아봅니다.
1 암호 시스템이란 암호 기술이 적용된 IT 시스템을 의미합니다.