암호학

암호학(cryptography)은 정보의 내용을 보호하고 통신 상대 또는 데이터의 무결성을 검증하기 위한 수학적·계산적 방법을 연구하는 분야이다. 전통적으로 비밀 메시지를 다른 사람이 읽지 못하게 만드는 기밀성에 집중했으나 현대 암호학은 전자 서명, 인증, 무결성 검사, 안전한 키 교환...

영문명Cryptography
분류수학 · 컴퓨터 과학 · 정보 보안
주요 목적기밀성 · 무결성 · 인증 · 부인 방지
기본 요소암호 알고리즘 · 비밀키 · 공개키 · 난수
암호 방식대칭 키 암호 · 공개 키 암호
대표 알고리즘AES · RSA · 타원 곡선 암호
해시와 인증SHA-2 · SHA-3 · HMAC · 전자 서명
키 관리키 생성 · 교환 · 저장 · 회전 · 폐기
프로토콜TLS · 키 교환 · 공개키 기반 구조
안전성 조건수학적 가정 · 구현 안전성 · 위협 모델
주요 위험키 유출 · 부적절한 난수 · 사이드채널 공격
관련 분야사이버 보안 · 컴퓨터 네트워크 · 양자 컴퓨팅
공식 표준 자료NIST 암호 기술 표준

암호학(cryptography)은 정보의 내용을 보호하고 통신 상대 또는 데이터의 무결성을 검증하기 위한 수학적·계산적 방법을 연구하는 분야이다. 전통적으로 비밀 메시지를 다른 사람이 읽지 못하게 만드는 기밀성에 집중했으나 현대 암호학은 전자 서명, 인증, 무결성 검사, 안전한 키 교환, 비밀 계산과 개인정보 보호 기술까지 포함한다. 실제 암호 시스템의 안전성은 알고리즘의 수학적 구조뿐 아니라 키의 생성·보관과 소프트웨어 구현, 프로토콜 사용 방식에 좌우된다.[1]

암호 기술은 오래전부터 군사·외교·상업 통신의 메시지를 보호하는 데 사용됐다. 기계식 암호 장치와 전쟁 시기의 암호 분석 연구를 거쳐 전자 컴퓨터가 보급되면서 수학적·정보이론적 기반이 강화되었다. 1970년대에는 DES와 공개 키 암호 개념이 등장했고, 이후 RSA 및 타원 곡선 암호 기술, 현대적인 블록 암호 표준이 확산됐다. 인터넷이 보편화되면서 TLS 같은 보안 통신 프로토콜과 공개키 인증서가 실용적으로 중요해졌고 양자 컴퓨터를 고려한 양자 내성 암호 연구도 발전했다.

대칭 키 암호는 암호화와 복호화에 같은 비밀키 또는 이에 대응하는 키를 사용하는 방식이며 대표적인 블록 암호로 AES가 있다. 사용자는 키를 안전하게 공유해야 하고, 블록 암호를 실제 메시지에 적용할 때에는 적절한 운용 모드와 nonce 관리가 필요하다. 공개 키 암호는 공개키와 개인키를 구분하고 공개키를 통해 암호문이나 서명 검증을 처리한다. 실제 대용량 통신에서는 공개 키 기술로 키를 협상하고 빠른 대칭 키 알고리즘으로 데이터 자체를 보호하는 하이브리드 구성이 흔하다.

암호학적 해시 함수는 입력을 고정된 길이의 다이제스트로 변환하며 충돌 저항성, 역상 저항성 등 요구되는 안전성 성질을 다룬다. SHA-2·SHA-3는 무결성 검사와 서명 시스템 등에서 사용되지만 해시값만 계산한다고 데이터의 위조 가능성을 완전히 배제할 수 있는 것은 아니다. 키가 포함된 HMAC은 메시지 인증에 활용되며 디지털 서명은 개인키가 생성한 서명을 공개키로 검증하는 방식을 제공한다. 비밀번호 저장에는 일반 해시만 사용하기보다 의도적으로 연산 비용을 높인 전용 암호학적 비밀번호 해시 함수가 필요하다.

암호 알고리즘은 이론적으로 안전하더라도 잘못된 구현과 프로토콜 때문에 취약해질 수 있다. 예를 들어 약한 난수 생성기, 키의 평문 저장, nonce 재사용, 패딩 오류와 시간·캐시를 통한 사이드채널 공격은 보안 수준을 크게 낮출 수 있다. 따라서 표준화된 알고리즘과 검증된 라이브러리를 사용하고, 키 회전·폐기·접근 권한 관리 및 사고 대응 절차를 마련해야 한다. 양자 내성 암호는 충분한 능력의 양자 컴퓨터가 등장할 때 기존 공개키 기술의 일부가 약화될 가능성에 대응하기 위한 연구와 표준화 분야다.

암호학은 웹의 HTTPS, 금융 거래, 소프트웨어 코드 서명, VPN, 안전한 부팅, 저장 장치 암호화, 전자 신원 인증과 분산 시스템의 보안 통신에 활용된다. 그러나 암호화가 적용되어 있어도 이용자 기기가 악성코드에 감염되거나 서버 운영자가 잘못된 권한을 부여하면 정보가 노출될 수 있다. 암호학은 사이버 보안의 필수 기술이지만 사이버 보안 전체를 대신하지 않으며, 안전한 시스템을 위해서는 운영체제와 네트워크, 응용 프로그램의 보안 설계가 함께 필요하다.

역사

고전 암호와 암호 분석

현대 암호학의 발전

기본 개념

키와 난수

안전성 모델

대칭 키 암호

블록 암호와 스트림 암호

운용 모드

공개 키 암호

키 교환

전자 서명

해시 함수와 인증

프로토콜과 키 관리

구현 보안과 공격

양자 내성 암호

활용 분야

관련 문서

  1. NIST CSRC: 암호 알고리즘과 표준 ↩