이 문서의 과거 버전 (r1)을 보고 있습니다. 수정일: 2026.02.26 09:14
암호학은 메시지나 데이터를 안전하게 보호하기 위한 기술과 이론을 연구하는 학문 분야이다. 이 분야는 수학을 기반으로 하며, 정보보호와 사이버 보안의 핵심적인 기반을 제공한다. 암호학의 역사는 시저 암호 같은 고대 기법부터 시작하여 현대의 양자 암호에 이르기까지 매우 길다.
암호학의 주요 용도는 온라인 뱅킹, 모바일 결제, 가상사설망(VPN), 전자서명 등 현대 디지털 생활의 다양한 분야에서 찾아볼 수 있다. 이를 통해 민감한 정보의 기밀성과 무결성을 보장하고, 통신 상대방을 인증하며, 부인 방지를 제공하는 등 여러 보안 목표를 달성한다.
암호 기술은 크게 대칭키 암호와 비대칭키 암호, 그리고 해시 함수로 분류된다. 대칭키 암호는 암호화와 복호화에 동일한 키를 사용하는 반면, 비대칭키 암호는 공개키와 개인키라는 한 쌍의 키를 사용한다. 해시 함수는 임의의 길이의 데이터를 고정된 길이의 값으로 변환하여 데이터 무결성 검증 등에 활용된다.
고전 암호는 현대 암호학의 기초가 되는 초기 암호화 기법들을 가리킨다. 이 시기의 암호는 주로 치환 암호와 전치 암호라는 두 가지 기본 원리에 기반했다. 치환 암호는 평문의 문자를 다른 문자로 바꾸는 방식이며, 전치 암호는 평문 문자의 순서를 재배열하는 방식이다. 이러한 기법들은 수동으로 수행되거나 간단한 도구를 이용했으며, 복잡한 수학적 이론보다는 은닉과 규칙에 의존했다.
가장 유명한 고전 암호 중 하나는 율리우스 카이사르가 사용했다고 전해지는 시저 암호이다. 이는 알파벳을 일정한 간격으로 밀어서 치환하는 단순한 시프트 암호이다. 예를 들어, 3칸 밀면 'A'는 'D'가 되고 'B'는 'E'가 되는 방식이다. 그러나 이러한 단순한 치환은 빈도 분석과 같은 방법으로 쉽게 해독될 수 있어 보안성이 매우 낮았다.
고전 암호의 정점은 2차 세계대전 당시 나치 독일이 사용한 에니그마 기계이다. 이는 여러 개의 로터를 이용해 매번 다른 복잡한 치환을 생성하는 전자기계식 암호 장치였다. 에니그마의 해독은 앨런 튜링을 비롯한 블레츨리 파크의 암호해독가들의 노력으로 이루어졌으며, 전쟁의 흐름에 지대한 영향을 미친 사례로 기록된다. 고전 암호의 역사는 단순한 기법에서 점점 더 정교한 기계적 장치로 발전해 나갔지만, 근본적인 한계로 인해 현대의 컴퓨팅 환경에서는 더 이상 사용되지 않는다.
근대 암호는 기계적 장치를 활용한 암호 체계가 등장하고, 제1차 세계대전과 제2차 세계대전을 거치면서 군사적 필요에 의해 급격히 발전한 시기이다. 이 시기의 암호는 단순한 치환 암호나 전치 암호를 넘어 복잡한 기계적 암호화 방식으로 진화했으며, 암호 해독과 암호 분석 간의 치열한 경쟁이 전쟁의 흐름에 직접적인 영향을 미쳤다.
가장 대표적인 근대 암호 장비는 독일군이 사용한 에니그마 기계이다. 에니그마는 여러 개의 회전자(로터)와 플러그보드를 조합하여 평문을 암호문으로 변환했다. 키 설정이 매일 변경되었고, 로터의 조합이 엄청나게 많아 당시에는 해독이 거의 불가능하다고 여겨졌다. 그러나 블레츨리 파크에서 앨런 튜링을 비롯한 연합국의 암호 해독가들이 봄브라는 특수 장치를 이용해 에니그마를 해독하는 데 성공했으며, 이는 전쟁의 향방을 바꾸는 결정적 역할을 했다.
에니그마 외에도 로렌츠 암호나 퍼플 암호 같은 다른 기계식 암호 체계도 개발되어 사용되었다. 이 시기 암호학의 발전은 순수한 수학과 논리뿐만 아니라 전자공학의 초기 형태와도 결합하기 시작했으며, 이는 현대 컴퓨터 과학의 태동에 중요한 기반을 제공했다. 근대 암호의 경험은 이후 대칭키 암호 체계의 설계와 암호 알고리즘에 대한 체계적인 분석 방법의 필요성을 부각시키는 계기가 되었다.
현대 암호는 20세기 중후반 컴퓨터의 등장과 함께 본격적으로 발전하기 시작했다. 이 시기의 암호학은 수학적 이론과 컴퓨팅 기술이 깊이 결합되어 고전 암호와는 차원이 다른 보안 강도와 복잡성을 갖추게 되었다. 현대 암호의 핵심은 대칭키 암호와 비대칭키 암호라는 두 가지 근본적인 패러다임으로 구분된다.
대칭키 암호는 암호화와 복호화에 동일한 비밀키를 사용하는 방식이다. 1970년대 미국 표준으로 제정된 DES가 초기 대표적인 예시였으나, 컴퓨터 성능 향상으로 인한 취약점이 발견되면서 더 강력한 알고리즘인 AES가 새로운 표준으로 자리 잡았다. 대칭키 암호는 연산 속도가 빠르다는 장점이 있어 대량의 데이터 암호화에 적합하다.
반면, 비대칭키 암호는 한 쌍의 공개키와 개인키를 사용하는 방식을 말한다. 1976년 디피-헬먼 키 교환과 1977년 RSA 알고리즘의 발표는 이 분야의 혁명이었다. 공개키는 누구나 알 수 있지만, 대응되는 개인키로만 복호화할 수 있어 키 배포 문제를 해결하고 전자서명 및 인증을 가능하게 했다. 다만 연산 속도가 상대적으로 느리다는 단점이 있다.
이러한 두 체계의 장단점을 보완하기 위해 현실에서는 하이브리드 암호 시스템이 널리 사용된다. 예를 들어, SSL/TLS 프로토콜에서는 비대칭키 암호로 안전하게 세션 키를 교환한 후, 실제 데이터 통신은 대칭키 암호로 빠르게 암호화한다. 현대 암호는 온라인 뱅킹, 모바일 결제, 가상사설망 등 디지털 생활의 보안을 뒷받침하는 핵심 기술로 자리매김했다.
암호화는 평문이라고 불리는 읽을 수 있는 원본 데이터를 암호문이라는 읽을 수 없는 형태로 변환하는 과정이다. 이 과정은 암호 알고리즘과 키라는 비밀 정보를 사용하여 수행된다. 반대로, 복호화는 암호문을 다시 원래의 평문으로 되돌리는 과정을 의미한다. 암호화와 복호화는 암호학의 가장 핵심적인 개념으로, 정보의 기밀성을 보장하는 기본 수단이다.
암호화 과정은 수학적 함수를 기반으로 한다. 평문(P)과 키(K)를 입력값으로 하여 암호화 함수(E)를 거치면 암호문(C)이 출력된다. 이를 기호로 표현하면 C = E(K, P)와 같다. 복호화는 이와 반대로, 암호문(C)과 동일한 키(K)를 복호화 함수(D)에 입력하여 평문(P)을 얻는다. 즉, P = D(K, C)이다. 이처럼 암호화와 복호화에 같은 키를 사용하는 방식을 대칭키 암호라고 한다.
암호화 기술은 단순히 내용을 숨기는 것을 넘어, 데이터의 무결성과 인증, 부인 방지 등 다양한 보안 목표를 달성하는 기반이 된다. 예를 들어, 온라인 뱅킹이나 모바일 결제에서 금융 정보를 보호하거나, 가상사설망을 통해 안전한 통신 채널을 구축하는 데 필수적으로 적용된다. 암호화의 역사는 시저 암호와 같은 고대 기법부터 시작되어 현대의 복잡한 알고리즘에 이르기까지 진화해 왔다.
키는 암호 시스템에서 암호화와 복호화 과정을 제어하는 비밀 정보이다. 평문을 암호문으로 변환하거나 그 반대의 변환을 수행할 때 사용되는 핵심 요소로, 올바른 키를 가진 사람만이 정보에 접근할 수 있도록 보장한다. 키의 비밀성과 무작위성은 전체 시스템의 보안 강도를 직접적으로 결정한다.
암호 알고리즘은 사용하는 키의 특성에 따라 크게 대칭키 암호와 비대칭키 암호로 분류된다. 대칭키 암호에서는 암호화와 복호화에 동일한 비밀키가 사용된다. AES나 SEED와 같은 알고리즘이 이에 해당하며, 연산 속도가 빠르다는 장점이 있지만, 통신 당사자 간에 키를 안전하게 공유해야 하는 문제가 있다. 반면, 비대칭키 암호는 한 쌍의 키, 즉 공개키와 개인키를 사용한다. RSA나 ECC가 대표적이며, 공개키는 누구나 알 수 있지만 개인키는 소유자만이 비밀로 보관한다. 이를 통해 키 배포 문제를 해결하고 전자서명과 같은 기능을 제공할 수 있다.
키의 길이는 보안 수준과 직결된다. 일반적으로 키가 길수록 무차별 대입 공격에 대한 저항력이 강해진다. 예를 들어, 현대적인 대칭키 암호에서는 128비트 이상의 키 길이를 권장하며, RSA와 같은 비대칭키 암호에서는 2048비트 이상의 키를 사용한다. 키의 수명 주기 관리, 즉 생성, 저장, 배포, 교체, 폐기에 이르는 전 과정을 안전하게 처리하는 키 관리 또한 암호 시스템의 필수 구성 요소이다.
평문은 암호화되기 전의 원본 메시지 또는 데이터를 의미한다. 이는 사람이 읽을 수 있는 일반 텍스트일 수도 있고, 이미지, 동영상, 데이터베이스 파일 등 모든 형태의 디지털 정보가 될 수 있다. 암호학의 목적은 이 평문을 권한이 없는 제삼자가 이해할 수 없도록 변환하여 기밀성을 보호하는 것이다. 예를 들어, "안녕하세요"라는 문장이나 중요한 금융 거래 내역은 모두 평문에 해당한다.
암호문은 평문을 특정 암호 알고리즘과 키를 사용하여 변환한 결과물이다. 이 과정을 암호화라고 한다. 암호문은 외관상 무작위적인 문자열이나 데이터처럼 보여, 키를 모르는 사람이 그 내용을 유추하거나 복원하는 것이 극히 어렵다. 시저 암호에서 'HELLO'라는 평문을 키 3으로 암호화하면 'KHOOR'라는 암호문이 생성되는 것이 간단한 예시이다.
평문과 암호문의 관계는 암호 시스템의 핵심이다. 안전한 암호 시스템은 암호문으로부터 평문 또는 키를 추론하는 것이 계산상 불가능하도록 설계된다. 복호화는 수신자가 올바른 키를 사용하여 암호문을 다시 원래의 평문으로 되돌리는 과정이다. 대칭키 암호와 비대칭키 암호는 이 암호화와 복호화에 사용하는 키의 방식에서 차이가 있다.
대칭키 암호는 암호화와 복호화에 동일한 비밀키를 사용하는 암호 방식을 가리킨다. 이 방식은 암호문의 발신자와 수신자가 사전에 동일한 키를 안전하게 공유해야 한다는 특징을 가진다. 대칭키 암호는 연산 속도가 빠르고 구현이 비교적 단순하여 대량의 데이터를 암호화하는 데 널리 사용된다. 대표적인 예로는 DES, 3DES, AES 등이 있으며, 특히 AES는 현재 전 세계적으로 가장 널리 채택된 표준 대칭키 블록 암호 알고리즘이다.
대칭키 암호는 사용되는 키의 형태와 운영 방식에 따라 블록 암호와 스트림 암호로 구분된다. 블록 암호는 고정된 길이의 데이터 블록 단위로 암호화를 수행하며, AES나 SEED가 이에 해당한다. 반면 스트림 암호는 데이터 스트림을 비트나 바이트 단위로 연속적으로 암호화하는 방식이다. 대칭키 암호의 주요 단점은 키 관리의 어려움이다. 통신 당사자 간에 키를 안전하게 배분하고 관리해야 하며, 키가 유출될 경우 해당 키로 암호화된 모든 통신 내용이 노출될 위험이 있다.
이러한 키 배분 문제를 해결하기 위해 실제 인터넷 통신에서는 하이브리드 암호 시스템이 자주 사용된다. 이는 비대칭키 암호를 이용해 세션 키(대칭키)를 안전하게 교환한 후, 실제 데이터 암호화에는 빠른 대칭키 암호를 사용하는 방식이다. SSL/TLS 프로토콜이 대표적인 사례이다. 또한, 한국인터넷진흥원에서는 ARIA와 같은 국산 대칭키 알고리즘을 개발하여 공공기관 등에서 사용을 권장하고 있다.
비대칭키 암호는 공개키 암호라고도 불리며, 암호화와 복호화에 서로 다른 두 개의 키를 사용하는 방식을 말한다. 이 두 키는 공개키와 개인키로 구성되며, 수학적으로 밀접한 관계를 가지고 있지만 하나를 통해 다른 하나를 쉽게 유추할 수 없다는 점이 핵심이다. 공개키는 누구나 알 수 있도록 공개되며, 주로 데이터를 암호화하거나 전자서명을 검증하는 데 사용된다. 반면 개인키는 소유자만이 비밀로 보관하며, 암호화된 데이터를 복호화하거나 전자서명을 생성하는 데 사용한다.
이 방식의 가장 큰 장점은 키 배포 문제를 해결한다는 점이다. 대칭키 암호에서는 통신 당사자가 사전에 동일한 비밀키를 안전하게 공유해야 하지만, 비대칭키 암호에서는 공개키를 자유롭게 배포할 수 있어 키 교환 절차가 간편해진다. 대표적인 알고리즘으로는 RSA가 있으며, 이는 큰 소수의 곱을 인수분해하는 것이 어렵다는 수학적 문제에 기반을 두고 있다. 또한, 더 짧은 키 길이로 동등한 수준의 보안 강도를 제공하는 타원곡선 암호(ECC)도 모바일 환경 등에서 널리 활용되고 있다.
그러나 비대칭키 암호는 대칭키 암호에 비해 연산 속도가 느리고 더 많은 컴퓨팅 자원을 필요로 한다는 단점이 있다. 따라서 실제 응용에서는 두 방식을 결합한 하이브리드 암호 시스템이 자주 사용된다. 예를 들어, SSL/TLS 프로토콜에서는 먼저 비대칭키 암호를 사용해 세션 키(대칭키)를 안전하게 교환한 후, 실제 데이터 전송은 빠른 대칭키 암호로 처리한다. 이 방식은 온라인 뱅킹, 전자상거래 등 다양한 보안 통신의 기반이 된다.
해시 함수는 임의의 길이의 데이터를 입력받아 고정된 길이의 출력값을 생성하는 암호학적 함수이다. 이 출력값은 해시값, 다이제스트 또는 메시지 다이제스트라고 불린다. 해시 함수의 주요 목적은 데이터의 무결성을 검증하는 것이며, 암호화와 달리 복호화 과정이 존재하지 않는 일방향 함수이다. 즉, 해시값으로부터 원본 데이터를 역산하는 것은 계산상 불가능하다.
해시 함수는 몇 가지 중요한 암호학적 성질을 만족해야 한다. 첫째, 충돌 저항성으로, 서로 다른 두 입력값이 동일한 해시값을 생성하는 것을 찾기 어려워야 한다. 둘째, 역상 저항성으로, 주어진 해시값에 대해 그 해시값을 출력하는 입력값을 찾기 어려워야 한다. 셋째, 제2 역상 저항성으로, 주어진 입력값에 대해 동일한 해시값을 생성하는 다른 입력값을 찾기 어려워야 한다. 이러한 성질 덕분에 해시 함수는 전자서명, 메시지 인증 코드, 비밀번호 저장, 데이터 무결성 검증 등 다양한 보안 응용 분야에서 핵심 역할을 한다.
대표적인 해시 함수로는 MD5, SHA-1, SHA-2 계열(예: SHA-256), SHA-3 등이 있다. 역사적으로 널리 사용되던 MD5와 SHA-1은 충돌 공격에 취약점이 발견되어 현재는 보안 목적으로 사용되지 않는다. 현대에는 더 강력한 안전성을 가진 SHA-256이나 SHA-3와 같은 알고리즘이 권장된다. 특히 블록체인 기술과 암호화폐에서 거래의 무결성을 보장하기 위해 해시 함수가 광범위하게 활용된다.
해시 함수는 단독으로 사용되기도 하지만, 키와 결합된 HMAC이나 키 유도 함수와 같은 형태로도 응용된다. 또한, 의사 난수 생성이나 데이터 식별자 생성 등 암호학 외의 분야에서도 유용하게 쓰인다. 안전한 해시 함수의 선택과 구현은 전체 시스템의 보안 강도를 결정하는 중요한 요소이다.
기밀성은 허가되지 않은 자가 정보의 내용을 알 수 없도록 보호하는 암호학의 핵심 목표이다. 이는 정보가 의도된 수신자만 접근할 수 있도록 하는 것을 의미하며, 암호학이 제공하는 가장 기본적인 보안 서비스로 간주된다. 기밀성을 달성하기 위한 주요 수단은 암호화이다. 암호화는 평문을 암호문으로 변환하는 과정으로, 오직 올바른 키를 가진 당사자만이 이를 원래의 평문으로 되돌릴 수 있다.
기밀성은 온라인 뱅킹, 모바일 결제, 가상사설망(VPN)과 같은 일상적인 디지털 서비스의 토대를 이룬다. 예를 들어, SSL/TLS 프로토콜은 웹 브라우저와 서버 간의 통신을 암호화하여 제3자가 중간에서 데이터를 엿보는 것을 방지한다. 대칭키 암호와 비대칭키 암호는 각각의 장단점을 바탕으로 기밀성을 보장하는 데 활용된다. AES와 같은 대칭키 알고리즘은 빠른 처리 속도로 대량 데이터 암호화에 적합하며, RSA와 같은 비대칭키 알고리즘은 안전한 키 교환을 가능하게 한다.
기밀성은 다른 보안 목표인 무결성, 인증, 부인 방지와 함께 종합적인 정보 보호 체계를 구성한다. 그러나 기밀성만으로는 정보가 전송 중 변조되지 않았음을 보장하거나 송신자의 신원을 확인할 수 없다. 따라서 현대 암호 시스템은 이러한 여러 목표를 조화롭게 달성하기 위해 다양한 암호 기술을 통합하여 설계된다.
무결성은 암호학의 핵심 보안 목표 중 하나로, 데이터가 전송 또는 저장 중에 고의적이거나 우발적인 변경 없이 그대로 유지됨을 보장하는 속성을 의미한다. 즉, 데이터가 생성, 전송, 저장되는 모든 과정에서 변조되거나 손상되지 않았음을 확인할 수 있어야 한다. 이는 온라인 뱅킹 거래 내역, 소프트웨어 다운로드 파일, 또는 중요한 전자 문서의 내용이 원본과 동일함을 신뢰할 수 있는 기반을 제공한다.
데이터 무결성을 검증하는 대표적인 암호학적 도구는 해시 함수이다. 해시 함수는 임의의 길이의 데이터를 입력받아 고정된 길이의 짧은 출력값(해시값 또는 다이제스트)을 생성한다. 이 해시값은 지문과 같아서 원본 데이터가 단 1비트라도 변경되면 완전히 다른 값으로 바뀌므로, 데이터 변조 여부를 쉽게 탐지할 수 있다. 예를 들어, SHA-256과 같은 안전한 해시 함수를 사용하여 파일의 해시값을 계산해 공개해 두면, 사용자는 동일한 파일을 다운로드받아 다시 해시값을 계산해 비교함으로써 파일의 무결성을 스스로 확인할 수 있다.
보다 강력한 무결성 보호와 인증을 결합한 기술로 메시지 인증 코드(MAC)가 있다. MAC은 대칭키 암호 방식을 사용하여, 송신자와 수신자만이 공유하는 비밀 키와 원본 메시지를 함께 해시 함수에 입력하여 생성된 코드이다. 수신자는 동일한 비밀 키를 사용하여 메시지와 수신된 MAC 값을 검증함으로써, 메시지가 변조되지 않았을 뿐만 아니라 지정된 송신자로부터 왔음을 동시에 확인할 수 있다. 이는 전자상거래의 결제 승인 메시지나 네트워크 보안 프로토콜에서 널리 활용된다.
한편, 부인 방지와 무결성을 함께 제공하는 고급 기술이 전자서명이다. 전자서명은 비대칭키 암호를 기반으로 하여, 송신자의 개인키로 메시지의 해시값을 암호화하여 서명을 생성한다. 누구나 해당 송신자의 공개키로 이 서명을 열어 해시값을 복원하고, 직접 계산한 메시지의 해시값과 비교할 수 있다. 이 과정을 통해 메시지의 무결성이 검증되고, 서명자의 신원이 인증되며, 나중에 송신자가 메시지를 보냈다는 사실을 부인할 수 없게 된다. 전자서명은 블록체인 거래나 공인인증서 기반의 문서 결재와 같은 다양한 분야에서 데이터의 진본성을 보장하는 데 필수적이다.
가용성은 암호학의 주요 보안 목표 중 하나로, 합법적인 사용자가 필요할 때 정보나 시스템 자원에 접근할 수 있도록 보장하는 속성을 의미한다. 이는 기밀성과 무결성과 함께 정보 보안의 핵심을 이루는 개념이다. 암호학적 기법 자체는 주로 기밀성과 무결성을 제공하지만, 가용성을 보장하기 위해서는 암호 시스템의 설계와 운영이 신뢰성과 내결함성을 갖추어야 한다.
가용성에 대한 위협은 주로 서비스 거부 공격을 통해 발생한다. 공격자가 암호화된 통신 채널을 과도한 요청으로 포화시켜 정상적인 사용자의 접근을 방해할 수 있다. 따라서 암호 프로토콜을 설계할 때는 이러한 공격을 완화할 수 있는 메커니즘을 고려해야 한다. 예를 들어, SSL/TLS와 같은 보안 프로토콜은 재전송 공격을 방지하기 위해 세션 재개 메커니즘을 포함하고 있으며, 키 관리 시스템은 키가 손실되거나 손상되었을 때를 대비한 백업 및 복구 절차를 마련하여 가용성을 유지한다.
또한, 암호 알고리즘의 효율성도 가용성과 직결된다. 처리 속도가 느리거나 리소스를 과도하게 소모하는 알고리즘은 시스템의 성능을 저하시켜 실질적인 가용성을 해칠 수 있다. 따라서 현대 암호학에서는 AES와 같은 대칭키 알고리즘의 빠른 처리 속도와 타원 곡선 암호와 같은 효율적인 비대칭키 알고리즘의 개발이 지속되어 왔다. 결국, 안전하면서도 실용적인 암호 시스템의 구현은 기밀성, 무결성과 더불어 가용성이라는 세 가지 축을 모두 충족시키는 데 목표를 둔다.
인증은 통신이나 시스템 접근 과정에서 상대방의 신원을 확인하는 암호학적 보안 속성이다. 이는 정보의 출처가 정확함을 보장하여, 허가되지 않은 사용자의 불법적인 접근을 차단하는 핵심 메커니즘이다. 인증은 단순히 사용자가 누구인지 확인하는 것을 넘어, 메시지나 데이터가 변조되지 않고 진정한 발신자로부터 왔음을 검증하는 데에도 사용된다.
인증을 구현하는 주요 방법으로는 비밀번호, 생체 인증, 하드웨어 토큰, 그리고 암호학 기반의 디지털 서명과 메시지 인증 코드(MAC) 등이 있다. 특히 공개 키 기반 구조(PKI)에서의 전자 서명은 발신자의 개인키로 서명을 생성하고 수신자가 해당 공개키로 이를 검증함으로써 강력한 인증과 부인 방지 기능을 제공한다. SSL/TLS 프로토콜은 이러한 인증 과정을 활용하여 웹사이트의 신원을 확인하고 안전한 통신 채널을 수립한다.
인증은 기밀성, 무결성, 가용성과 함께 정보 보안의 주요 목표를 이루는 요소 중 하나이다. 현대의 다중 인증(MFA) 시스템은 지식(비밀번호), 소유(토큰), 존재(생체정보) 등 두 가지 이상의 인증 요소를 결합하여 보안 수준을 크게 강화한다. 이는 온라인 뱅킹, 모바일 결제, 가상사설망(VPN) 접근, 전자문서 결재 등 디지털 생활의 다양한 영역에서 필수적인 보안 층으로 작동한다.
부인 방지는 암호학이 제공하는 핵심 보안 속성 중 하나로, 메시지의 발신자가 이후에 그 메시지를 보냈다는 사실을 부인하지 못하도록 증거를 제공하는 것을 목표로 한다. 이는 디지털 환경에서 계약 체결, 거래 승인, 명령 전달 등 법적 구속력이 필요한 상호작용에서 특히 중요하다. 부인 방지가 없다면, 발신자는 자신이 보낸 전자 문서나 메시지에 대해 "나는 그런 것을 보내지 않았다"라고 주장할 수 있어 신뢰와 책임의 근간이 흔들릴 수 있다.
이 목표를 달성하기 위한 주요 기술이 전자서명이다. 비대칭키 암호 방식을 활용하는 전자서명은 발신자의 개인키로 메시지에 서명을 생성하고, 누구나 해당 발신자의 공개키를 사용하여 그 서명의 진위를 검증할 수 있게 한다. 공개키로 검증에 성공했다는 것은 반드시 대응되는 개인키를 가진 자만이 그 서명을 생성할 수 있었다는 것을 의미하므로, 서명 행위에 대한 부인을 방지하는 강력한 증거가 된다. 이러한 메커니즘은 인증과 무결성도 함께 보장한다.
부인 방지 기능은 전자상거래, 온라인 뱅킹, 전자문서 결재 시스템, 블록체인 기반 거래 등 다양한 분야에서 필수적으로 적용된다. 예를 들어, 공인인증서를 이용한 전자계약이나 암호화폐 거래에서의 디지털 서명은 해당 행위의 당사자를 확정지어 분쟁을 예방하는 근거가 된다. 따라서 부인 방지는 단순한 기술적 개념을 넘어, 디지털 사회의 신뢰 체계와 법적 효력을 유지하는 데 기여하는 암호학의 중요한 축이다.
대표적인 대칭키 알고리즘은 암호화와 복호화에 동일한 비밀키를 사용하는 암호 체계를 구현한다. 이는 비대칭키 암호에 비해 일반적으로 처리 속도가 빠르며, 대량의 데이터를 암호화하는 데 널리 사용된다. 주요 알고리즘으로는 DES, 3DES, AES, SEED, ARIA 등이 있다.
알고리즘 | 개발 국가/기관 | 블록 크기 (비트) | 키 길이 (비트) | 주요 특징 |
|---|---|---|---|---|
DES | 미국 (IBM) | 64 | 56 | 역사적인 표준이지만, 현재는 키 길이가 짧아 안전하지 않음. |
3DES | 미국 | 64 | 112 또는 168 | DES를 세 번 적용하여 보안성을 강화했으나, 현재는 점차 사용이 줄어드는 추세. |
AES | 벨기에 | 128 | 128, 192, 256 | 현재 가장 널리 쓰이는 국제 표준 대칭키 알고리즘. 빠르고 안전함. |
SEED | 한국 (KISA) | 128 | 128 | 한국에서 개발된 국가 표준 알고리즘으로, 국내 공공기관 등에서 활용. |
ARIA | 한국 | 128 | 128, 192, 256 | 한국에서 개발된 또 다른 국가 표준 블록 암호. |
이들 알고리즘은 블록 암호 방식으로, 고정된 크기의 데이터 블록 단위로 암호화를 수행한다. 현대에는 AES가 사실상의 세계적 표준으로 자리 잡았으며, 온라인 뱅킹, 모바일 결제, 가상사설망 등 다양한 정보보호 시스템의 핵심 요소로 사용된다. 국내에서는 SEED와 ARIA가 공공기관 및 민간 분야에서 활발히 적용되고 있다.
비대칭키 암호는 공개키 암호라고도 불리며, 암호화와 복호화에 서로 다른 두 개의 키를 사용한다. 하나는 공개적으로 배포되는 공개키이고, 다른 하나는 사용자가 비밀로 보관하는 개인키이다. 이 방식의 핵심 장점은 키 배포 문제를 해결한다는 점이다. 즉, 안전하지 않은 채널을 통해 공개키를 공유하더라도, 암호화된 메시지는 오직 대응되는 개인키를 가진 수신자만이 해독할 수 있다.
가장 대표적인 비대칭키 알고리즘은 RSA이다. 1977년에 개발된 이 알고리즘은 큰 소수의 곱을 인수분해하는 것이 어렵다는 수학적 문제에 기반을 두고 있다. RSA는 전자서명, 디지털 인증서, 안전한 키 교환 등 다양한 분야에서 널리 사용된다. 다른 주요 알고리즘으로는 타원곡선 암호가 있다. 이는 이산 로그 문제에 기반하며, 동일한 수준의 보안을 제공하면서 RSA보다 훨씬 짧은 키 길이를 사용하기 때문에 모바일 장치와 같은 자원이 제한된 환경에 적합하다.
비대칭키 암호는 대칭키 암호에 비해 연산 속도가 느리다는 단점이 있다. 따라서 실제 통신에서는 두 방식을 혼합한 하이브리드 암호 시스템이 자주 사용된다. 예를 들어, SSL/TLS 프로토콜에서는 먼저 비대칭키 암호를 사용하여 세션 키를 안전하게 교환한 후, 실제 데이터 전송에는 빠른 대칭키 암호를 사용한다. 이 외에도 디피-헬먼 키 교환 프로토콜은 두 당사자가 사전에 비밀 키를 공유하지 않고도 안전한 공유 비밀 키를 생성할 수 있게 해주는 대표적인 비대칭키 기반 프로토콜이다.
해시 함수는 임의의 길이의 데이터를 고정된 길이의 해시값으로 변환하는 단방향 암호학적 함수이다. 복호화가 불가능한 일방향성과 서로 다른 입력이 동일한 출력을 생성하기 어려운 충돌 저항성을 핵심 속성으로 한다. 이러한 특성으로 인해 데이터 무결성 검증, 패스워드 저장, 전자 서명의 구성 요소 등 다양한 보안 분야에서 필수적으로 활용된다.
대표적인 해시 함수로는 SHA-256이 있다. 이는 미국 국립표준기술연구소가 표준으로 제정한 SHA-2 계열의 알고리즘으로, 256비트 길이의 해시값을 생성한다. 비트코인을 비롯한 많은 블록체인 시스템과 SSL/TLS 보안 프로토콜에서 데이터 무결성을 보장하는 데 광범위하게 사용되고 있다. 이전에 널리 쓰이던 MD5나 SHA-1은 심각한 충돌 취약점이 발견되어 현재는 보안 목적으로의 사용이 권장되지 않는다.
보다 향상된 보안성을 위해 설계된 최신 표준은 SHA-3이다. 이는 SHA-2와 내부 구조가 완전히 다르며, 스펀지 구조를 기반으로 한다. 양자 컴퓨팅 등 미래의 공격에 대비한 대안으로 평가받고 있다. 한편, 메시지의 무결성과 인증을 동시에 제공하기 위해 비밀 키와 결합된 HMAC도 널리 사용되는 기법이다. 이는 해시 함수와 비밀 키를 함께 사용하여 메시지 변조 여부와 발신자를 동시에 확인할 수 있게 한다.
키 교환 프로토콜은 안전하지 않은 공개 채널을 통해 통신 당사자들이 비밀 키를 공유할 수 있도록 설계된 암호학적 방법이다. 이는 대칭키 암호의 핵심적인 문제인 키 배포 문제를 해결하기 위해 등장했다. 대칭키 암호는 암호화와 복호화에 동일한 키를 사용하므로, 통신을 시작하기 전에 양측이 비밀 키를 안전하게 공유해야 한다. 키 교환 프로토콜은 이 공유 과정을 수학적 원리를 기반으로 안전하게 수행한다.
가장 유명한 키 교환 프로토콜은 디피-헬먼 키 교환이다. 이 프로토콜은 이산 로그 문제의 계산적 난해함에 기반하여, 공개 채널에서 교환되는 정보만으로는 제3자가 비밀 키를 계산해내기 어렵게 설계되었다. 통신 당사자 각각은 자신의 개인키를 비밀로 유지한 채, 이를 바탕으로 생성한 공개키를 상대방에게 공개한다. 이후 각자는 상대방의 공개키와 자신의 개인키를 조합하여 동일한 세션 키를 도출한다. 이렇게 생성된 세션 키는 이후 대칭키 암호를 통한 빠른 데이터 암호화에 사용된다.
디피-헬먼 키 교환은 중간자 공격에 취약할 수 있다는 단점이 있다. 이를 보완하기 위해 공개 키 기반 구조를 활용한 인증 방식을 결합하거나, RSA와 같은 비대칭키 암호를 이용해 키를 암호화하여 전송하는 방식이 사용된다. 현대의 SSL/TLS와 같은 보안 프로토콜은 이러한 키 교환 메커니즘을 핵심 요소로 포함하여, 웹 브라우징, 이메일, 가상사설망 등 다양한 보안 통신의 기반을 제공한다.
암호학 기술은 네트워크 보안의 핵심 기반으로, 특히 SSL/TLS와 VPN 같은 프로토콜에서 광범위하게 응용된다. SSL/TLS는 인터넷 통신에서 기밀성, 무결성, 인증을 보장하기 위한 핵심 프로토콜이다. 이 프로토콜은 하이브리드 암호 시스템을 채택하여, 비대칭키 암호 방식(예: RSA 또는 ECC)으로 세션 키를 안전하게 교환한 후, 실제 데이터 전송은 빠른 대칭키 암호 방식(예: AES)으로 암호화한다. 이를 통해 온라인 뱅킹, 전자상거래, 이메일 등 HTTPS를 사용하는 모든 웹 트래픽의 안전한 전송을 가능하게 한다.
VPN은 공중망을 통해 마치 전용 회선처럼 안전한 통신 채널을 구축하는 기술이다. VPN은 주로 IPsec이나 SSL VPN 프로토콜을 사용하며, 이들 프로토콜 역시 암호학에 의존한다. IPsec은 네트워크 계층에서 작동하여 전체 IP 패킷을 암호화하고 인증하며, 터널 모드에서는 출발지와 목적지 IP 주소까지 숨겨 완전한 가상사설망을 형성한다. 이는 재택 근무자나 지사 직원이 회사 내부망에 안전하게 접근하는 데 필수적이다.
프로토콜/기술 | 주요 암호학 기술 | 주요 용도 |
|---|---|---|
SSL/TLS | 웹 브라우징 보안(HTTPS), 이메일 보안, API 보안 | |
IPsec VPN | 사이트 간 VPN, 원격 접근 VPN, 안전한 네트워크 연결 | |
SSL VPN | SSL/TLS 프로토콜 스택 | 웹 기반 원격 접근, 클라이언트 없는 VPN 접속 |
이러한 네트워크 보안 기술의 효과적인 적용은 단순히 알고리즘 선택을 넘어, 키 관리, 인증서 관리, 프로토콜 버전 관리 등 전반적인 보안 태세에 달려 있다. 암호학은 눈에 보이지 않게 디지털 통신의 신뢰성을 뒷받침하는 보이지 않는 기둥 역할을 한다.
전자 서명은 디지털 문서의 무결성과 인증, 그리고 부인 방지를 보장하는 암호학적 기술이다. 이는 종이 문서에 직접 서명하는 것과 유사한 기능을 디지털 세계에서 제공한다. 전자 서명은 해시 함수와 비대칭키 암호를 결합하여 작동한다. 서명자는 먼저 문서의 해시값을 계산한 후, 자신의 개인키로 이 해시값을 암호화하여 서명을 생성한다. 수신자는 서명자의 공개키로 서명을 복호화하여 얻은 해시값과, 직접 계산한 문서의 해시값을 비교함으로써 문서가 변조되지 않았고 특정 발신자로부터 왔음을 확인할 수 있다.
공개키 인프라(PKI)는 이러한 전자 서명의 신뢰성을 뒷받침하는 체계이다. PKI의 핵심 구성 요소는 인증서와 이를 발급 및 관리하는 인증 기관(CA)이다. 인증서는 특정 개인이나 조직의 공개키와 그 소유자의 신원 정보를 묶어, 신뢰할 수 있는 제3자인 CA가 전자 서명한 디지털 문서이다. 이를 통해 공개키의 진위와 소유권을 검증할 수 있다. 사용자는 웹 브라우저나 운영체제에 내장된 신뢰할 수 있는 루트 CA 목록을 통해 인증서 체인을 검증한다.
전자 서명과 인증서는 다양한 분야에서 널리 활용된다. 온라인 뱅킹, 전자 상거래 결제, 전자 문서 결재 시스템에서는 거래의 승인과 문서의 법적 효력을 부여하는 데 사용된다. 또한, SSL/TLS 프로토콜은 웹사이트의 신원을 인증서로 확인하고 안전한 통신 채널을 구축하는 데 이 기술을 적용한다. 블록체인 기술에서도 암호화폐 거래의 소유권 증명을 위해 전자 서명 알고리즘이 필수적으로 사용된다.
블록체인 기술은 암호학의 여러 핵심 기술을 기반으로 구축된 분산 원장 시스템이다. 블록체인의 핵심은 데이터의 무결성과 신뢰성을 보장하는 데 있으며, 이는 해시 함수와 전자 서명을 통해 실현된다. 각 블록은 이전 블록의 해시값을 포함하는 해시 체인 구조로 연결되어 있으며, 한 번 기록된 데이터는 변경이 거의 불가능하게 설계되었다. 이러한 불변성은 비트코인과 같은 암호화폐의 거래 내역을 신뢰할 수 있게 만드는 근간이 된다.
블록체인에서 거래의 유효성과 소유권 증명은 주로 비대칭키 암호 방식을 활용한다. 예를 들어, 비트코인 네트워크에서는 타원 곡선 암호 기반의 전자 서명 알고리즘(ECDSA)을 사용하여 거래를 서명하고 검증한다. 사용자는 자신의 개인키로 거래에 서명하고, 네트워크의 다른 참여자들은 해당 공개키를 이용해 서명의 진위를 확인한다. 이 과정을 통해 중앙 기관 없이도 거래의 인증과 부인 방지가 가능해진다.
암호화폐 외에도 블록체인 기술은 스마트 계약, 공급망 관리, 디지털 신원 확인 등 다양한 분야에 응용되고 있다. 이러한 응용 분야에서도 데이터의 기밀성, 무결성, 인증을 보장하기 위해 암호학적 기법이 필수적으로 사용된다. 예를 들어, 하이퍼레저 패브릭 같은 기업용 블록체인 플랫폼은 채널 기반의 기밀 거래를 지원하기 위해 강력한 암호화 프로토콜을 도입하고 있다.
현대 블록체인 시스템이 직면한 주요 과제 중 하나는 양자 컴퓨팅의 위협이다. 현재 널리 사용되는 타원 곡선 암호나 RSA 알고리즘은 대규모 양자 컴퓨터에 의해 해독될 가능성이 제기되고 있다. 이에 대응하여 격자 기반 암호나 다변량 다항식 암호와 같은 후양자 암호학 알고리즘을 블록체인에 통합하려는 연구가 활발히 진행 중이다.
데이터 저장 암호화는 저장 매체에 보관된 데이터의 기밀성을 유지하기 위해 적용되는 암호 기술이다. 하드 디스크, USB 메모리, 클라우드 스토리지 등 다양한 저장 장치에 보관된 민감한 정보가 무단 접근이나 유출 시 노출되는 것을 방지하는 것이 주요 목적이다. 이 기술은 데이터가 '휴지 상태'일 때 보호를 제공하며, 전송 중 데이터를 보호하는 네트워크 보안 기술과 상호 보완적인 역할을 한다.
데이터 저장 암호화는 구현 방식에 따라 전체 디스크 암호화, 파일 수준 암호화, 폴더 암호화 등으로 구분된다. 전체 디스크 암호화는 운영체제가 부팅되기 전에 전체 저장 장치를 암호화하여, 장치 분실이나 도난 시 물리적 접근으로부터 데이터를 보호한다. 파일 수준 암호화는 개별 파일이나 데이터베이스의 특정 필드만을 암호화할 수 있어 세밀한 접근 제어가 가능하다. 일반적으로 대칭키 암호 알고리즘인 AES가 널리 사용되며, 처리 속도가 빠르고 대용량 데이터 암호화에 효율적이다.
이 기술의 적용은 규정 준수 요구사항을 충족하는 데 필수적이다. 예를 들어, 개인정보 보호법이나 GDPR(일반 데이터 보호 규정)은 민감한 개인정보를 저장할 때 적절한 암호화 조치를 의무화하고 있다. 또한, 모바일 기기 관리 정책에서 기업 소유 스마트폰이나 태블릿의 데이터를 보호하거나, 클라우드 서비스 제공자가 고객 데이터를 암호화하여 저장할 때 핵심적으로 활용된다.
데이터 저장 암호화를 효과적으로 운영하기 위해서는 키 관리가 매우 중요하다. 암호화 키의 생성, 저장, 순환, 폐기 과정을 안전하게 관리하지 않으면 암호화 자체의 보안 효과가 크게 약화될 수 있다. 따라서 하드웨어 보안 모듈이나 전용 키 관리 서비스를 도입하여 키를 보호하는 것이 일반적인 모범 사례이다.
양자 컴퓨팅의 등장은 현대 암호학의 근간을 뒤흔드는 잠재적 위협으로 간주된다. 이는 양자 컴퓨터가 특정 수학적 문제를 기존 컴퓨터보다 지수적으로 빠르게 해결할 수 있는 능력을 지니기 때문이다. 특히, 피터 쇼어가 제안한 쇼어 알고리즘은 소인수분해와 이산 로그 문제를 다항 시간 내에 풀어낼 수 있어, RSA나 타원곡선 암호와 같이 이러한 문제의 난해함에 기반한 공개키 암호 체계를 무력화시킬 수 있다. 또한, 그로버 알고리즘은 대칭키 암호에 사용되는 키 탐색 속도를 가속화하여, 키 길이를 효과적으로 절반으로 줄이는 효과를 가져올 수 있다.
현재 널리 사용되는 암호 알고리즘들은 양자 컴퓨터의 실용화 시점에 심각한 위험에 처할 수 있다. RSA와 타원곡선 디지털 서명 알고리즘은 쇼어 알고리즘에 의해, 고급 암호화 표준과 같은 대칭키 알고리즘은 그로버 알고리즘에 의해 그 안전성이 크게 약화될 전망이다. 이는 온라인 뱅킹, 전자 서명, 블록체인 기반 시스템을 포함한 현재의 디지털 보안 인프라 전체를 위협할 수 있는 중대한 문제이다.
이러한 위협에 대응하기 위해 포스트 양자 암호학이라는 새로운 연구 분야가 활발히 진행되고 있다. 포스트 양자 암호는 격자 기반 암호, 코드 기반 암호, 다변량 다항식 암호 등 양자 컴퓨터로도 해결하기 어려운 새로운 수학적 문제에 기반한 알고리즘을 개발하는 것을 목표로 한다. 미국 국립표준기술연구소를 비롯한 여러 표준화 기구들은 이러한 새로운 암호 표준을 선정하고 평가하는 과정을 진행 중이다.
양자 컴퓨팅의 위협은 이론적 가능성에서 점차 현실적인 과제로 다가오고 있다. 따라서 기존 암호 체계를 양자 내성 암호로 점진적으로 전환하는 이행 계획이 국가 및 기업 차원에서 요구된다. 이는 단순한 알고리즘 교체를 넘어, 광범위한 시스템과 프로토콜의 업그레이드를 수반하는 장기적이고 복잡한 과정이 될 것이다.
양자 암호는 양자역학의 원리를 이용하여 통신의 안전성을 보장하는 암호 기술이다. 이 분야의 핵심은 양자 키 분배(QKD, Quantum Key Distribution) 프로토콜로, 통신 당사자 사이에 암호키를 안전하게 공유하는 방법을 제공한다. 양자 키 분배는 기존의 수학적 복잡성에 기반한 공개키 암호 방식과 근본적으로 다른 접근법을 취한다. 대표적인 프로토콜로는 찰스 베넷과 질 브라사르가 제안한 BB84 프로토콜이 있다.
양자 키 분배의 핵심 원리는 양자역학의 불확정성 원리와 양자 중첩 상태의 측정 붕괴 현상을 이용하는 것이다. 송신자(일반적으로 앨리스)는 광자와 같은 양자 입자를 특정 편광 상태로 인코딩하여 수신자(밥)에게 전송한다. 이 과정에서 제삼자(이브)가 도청을 시도하면 양자 상태가 필연적으로 교란되어 그 흔적을 남기게 된다. 따라서 통신 당사자는 전송된 양자 비트의 일부를 공개적으로 비교함으로써 도청 여부를 통계적으로 탐지할 수 있고, 안전성이 확인된 나머지 비트를 최종적인 암호키로 사용한다.
이 기술의 가장 큰 장점은 도청 시도가 물리적으로 탐지 가능하다는 점으로, 이론적으로는 완벽한 기밀성을 보장할 수 있다. 그러나 현실에서는 장거리 전송 시 광섬유나 자유 공간에서의 신호 감쇠, 검출기의 효율성과 노이즈 등의 기술적 한계가 존재한다. 이러한 한계를 극복하기 위해 양자 중계기나 위성 통신을 이용한 연구가 활발히 진행되고 있다. 양자 암호는 현재 금융망이나 정부 기관 등 극히 제한된 고보안 네트워크에서 시범 적용되고 있으며, 양자 컴퓨터 시대에 대비한 미래 보안 기술로서 그 중요성이 점차 커지고 있다.
후양자 암호학은 양자 컴퓨터의 등장으로 기존 공개키 암호 체계가 위협받는 상황에 대비하여 연구되는 새로운 암호학 분야이다. 양자 컴퓨터는 쇼어 알고리즘을 통해 RSA나 타원 곡선 암호와 같이 현재 널리 사용되는 공개키 암호의 안전성 기반이 되는 수학적 난제(큰 수의 소인수분해, 이산 로그 문제)를 효율적으로 해결할 수 있어, 충분히 강력한 양자 컴퓨터가 실용화되면 기존 암호 체계가 붕괴될 위험이 있다. 이에 대응하기 위해 양자 컴퓨터로도 해독하기 어려운 수학적 문제에 기반한 새로운 암호 알고리즘을 개발하고 표준화하는 것이 후양자 암호학의 핵심 목표이다.
주요 후양자 암호 알고리즘은 격자 기반 암호, 코드 기반 암호, 다변량 다항식 암호, 해시 기반 암호 등 여러 수학적 분야에서 그 안전성을 도출한다. 예를 들어, 격자 기반 암호는 다차원 격자에서의 최단 벡터 문제와 같은 문제의 계산적 어려움에 의존한다. 미국 국립표준기술연구소(NIST)는 2016년부터 후양자 암호 표준화 프로젝트를 진행하여, 2022년에 CRYSTALS-Kyber(키 교환용)와 CRYSTALS-Dilithium(전자 서명용) 등을 포함한 최초의 표준 알고리즘들을 선정했다. 이러한 표준화 작업은 금융, 정부, 인터넷 인프라 등 주요 분야가 미래의 양자 위협에 대비할 수 있는 기반을 마련하는 데 중요하다.
후양자 암호로의 전환은 상당한 도전 과제를 동반한다. 새로운 알고리즘들은 기존 알고리즘에 비해 키 크기나 서명 크기가 크고, 연산 효율성이 낮을 수 있어, 제한된 자원을 가진 IoT 장치나 고성능이 요구되는 데이터 센터 등 다양한 환경에 적용하기 위해서는 최적화가 필요하다. 또한, 수십 년간 사용되어 온 기존 암호 체계를 새로운 체계로 대체하는 것은 전 세계적인 규모의 시스템 업데이트를 의미하므로, 점진적인 이행과 호환성 유지가 필수적이다. 이 분야의 연구는 암호 알고리즘 자체의 개발뿐만 아니라, 프로토콜 통합 및 실제 배포를 위한 공학적 노력까지 포함하며 지속적으로 활발히 진행되고 있다.