11월 5일 (목)양자 뉴스·논문·데이터를 매일 검증해 한국어로 전합니다

튜토리얼 목록
Tutorial중급양자통신

포스트양자암호(PQC) 기초: 양자 컴퓨터 시대의 암호 설계

포스트양자암호(PQC)는 양자 컴퓨터가 기존 공개키 암호 체계를 위협하는 상황에 대응하기 위해 설계된 고전 컴퓨터 기반 암호 알고리즘군이다. 격자·해시·코드 등 양자 알고리즘으로도 효율적으로 풀기 어려운 수학 문제를 기반으로 하며, NIST 표준화를 거쳐 실용 단계에 진입했다.

난이도 중급4분 읽기연습문제 3개

개념 소개

오늘날 인터넷 보안의 근간인 RSA와 타원곡선 암호(ECC)는 대형 정수의 소인수분해 또는 이산 로그 문제의 계산적 난이도에 의존한다. 고전 컴퓨터로는 수백 비트 크기의 이 문제를 풀려면 우주 나이보다 긴 시간이 걸린다.

그러나 양자 컴퓨터가 실용 규모로 구현된다면, 쇼어(Shor) 알고리즘이 다항 시간 안에 소인수분해와 이산 로그를 해결해 기존 공개키 암호를 무력화한다. 이에 대한 해법으로 등장한 것이 **포스트양자암호(Post-Quantum Cryptography, PQC)**다. PQC는 양자 컴퓨터 환경에서도 고전 컴퓨터 위에서 실행되면서 안전성을 유지하도록 설계된 암호 알고리즘이다. 즉, 양자 컴퓨터를 사용하는 것이 아니라 양자 컴퓨터의 공격을 버티도록 만든 고전 알고리즘이다.


핵심 원리

양자 알고리즘의 위협 정도

공격 알고리즘 대상 영향
쇼어 알고리즘 RSA, ECC, DH 완전 파괴
그로버(Grover) 알고리즘 AES 등 대칭키 유효 키 길이 절반 감소

그로버 알고리즘은 개의 후보 중 답을 연산으로 찾으므로, AES-128의 보안 강도가 약 64비트 수준으로 낮아진다. 대칭키 암호는 키 길이를 두 배로 늘리는 것으로 대응 가능하지만, 공개키 암호는 근본적 교체가 필요하다.

PQC의 수학적 기반

PQC 알고리즘은 다음과 같은 양자 컴퓨터로도 효율적으로 풀기 어려운 문제들을 기반으로 한다.

1. 격자 기반 암호 (Lattice-based)

가장 활발히 연구되는 분야로, LWE(Learning With Errors) 문제가 핵심이다.

여기서 는 공개 행렬, 는 비밀 벡터, 는 작은 오류 벡터다. 공격자가 와 만 알 때 를 복원하는 것이 계산적으로 어렵다는 성질을 활용한다. 이 문제는 최단 벡터 문제(SVP)의 어려움에 환원되며, 현재 알려진 양자 알고리즘으로도 지수 시간이 필요하다.

2. 해시 기반 암호 (Hash-based)

일방향 해시 함수의 난이도만을 가정하므로 안전성 근거가 가장 단순하다. 주로 디지털 서명에 사용된다 (예: SPHINCS+).

3. 코드 기반 암호 (Code-based)

오류 정정 부호에서 신드롬 디코딩 문제의 NP-난이도를 활용한다. 역사가 길어 신뢰도가 높으나 키 크기가 크다.

4. 다변수 다항식 기반 (Multivariate)

유한체 위의 다변수 2차 방정식 계의 해를 구하는 MQ 문제를 기반으로 한다.


예시·응용

NIST PQC 표준화

미국 국립표준기술연구소(NIST)는 2016년부터 PQC 표준화 공모를 진행해 왔으며, 최종적으로 다음 알고리즘들을 표준으로 선정했다.

알고리즘 용도 기반 문제
ML-KEM (Kyber) 키 캡슐화(KEM) 격자 (Module-LWE)
ML-DSA (Dilithium) 디지털 서명 격자 (Module-LWE/SIS)
SLH-DSA (SPHINCS+) 디지털 서명 해시 함수
FN-DSA (FALCON) 디지털 서명 격자 (NTRU)

하이브리드 접근법

현재 전환 기간에는 기존 알고리즘과 PQC를 병렬로 사용하는 하이브리드(hybrid) 방식이 권장된다. TLS 핸드셰이크에서 X25519(ECC)와 ML-KEM을 동시에 사용하면, 어느 한쪽이 안전한 한 전체 세션이 보호된다.

# 개념 예시: LWE 기반 암호화 간략 구현 (교육 목적)
import numpy as np

def lwe_keygen(n=256, q=3329):
    """ML-KEM에서 영감을 받은 단순화된 LWE 키 생성"""
    A = np.random.randint(0, q, size=(n, n))
    s = np.random.randint(0, 3, size=n) - 1  # 비밀 벡터 (작은 값)
    e = np.random.randint(0, 3, size=n) - 1  # 오류 벡터 (작은 값)
    b = (A @ s + e) % q                       # 공개키 일부
    return (A, b), s  # (공개키, 비밀키)

pub, sec = lwe_keygen()
print("공개키 A 크기:", pub[0].shape)
print("비밀 벡터 s (처음 5개):", sec[:5])

현실 보안 고려사항

"지금 수집, 나중에 복호화(Harvest Now, Decrypt Later)" 공격에 주의해야 한다. 공격자가 현재 암호화된 트래픽을 저장해 두었다가, 미래 양자 컴퓨터로 복호화할 수 있으므로, 장기 기밀 데이터는 지금 당장 PQC로 전환할 필요가 있다.


정리

PQC는 양자 컴퓨터의 연산 능력에도 안전성을 유지할 수 있도록 격자, 해시, 코드 등 다양한 수학적 난제를 기반으로 설계된 암호 알고리즘 집합이다. 쇼어 알고리즘에 의한 공개키 암호의 붕괴 위협에 대응하며, NIST 표준화 완료로 실용화 단계에 접어들었다. 기존 인프라와의 하이브리드 적용이 현실적인 전환 경로이며, 데이터의 장기 기밀성을 고려할 때 조기 전환이 권장된다.

Exercises

연습문제

  1. Q1쇼어 알고리즘이 RSA를 위협하는 핵심 이유는 무엇인가? 그로버 알고리즘과의 위협 수준 차이를 함께 설명하시오.

    힌트 보기

    RSA의 안전성이 어떤 계산 문제에 의존하는지, 쇼어 알고리즘이 그것을 어떤 복잡도로 해결하는지 생각해보자.

    해설 보기

    RSA의 안전성은 대형 정수의 소인수분해가 고전 컴퓨터로 지수 시간이 걸린다는 점에 의존한다. 쇼어 알고리즘은 소인수분해를 다항 시간 O(n³) 수준으로 해결하므로 RSA를 완전히 파괴한다. 반면 그로버 알고리즘은 키 공간 탐색을 O(√N)으로 줄여 AES-128의 보안 강도를 약 64비트로 낮추지만, 키 길이를 두 배(AES-256 사용)로 늘리면 대응이 가능하다. 따라서 공개키 암호는 근본적 교체가, 대칭키 암호는 키 길이 확장이 각각 요구된다.

  2. Q2LWE(Learning With Errors) 문제를 수식으로 표현하고, 이 문제가 왜 격자 기반 암호의 안전성 근거가 되는지 설명하시오.

    힌트 보기

    최단 벡터 문제(SVP)와의 연관성을 생각해보자.

    해설 보기

    LWE 문제는 $\mathbf{b} = \mathbf{A}\mathbf{s} + \mathbf{e} \pmod{q}$ 로 표현된다. 공격자는 공개 행렬 $\mathbf{A}$와 벡터 $\mathbf{b}$가 주어져도 비밀 벡터 $\mathbf{s}$를 복원하기 어렵다. 이 문제는 격자에서의 최단 벡터 문제(SVP) 등 NP-난이도 문제로 수학적으로 환원(reduction)되며, 현재까지 알려진 양자 알고리즘으로도 지수 시간이 필요하다고 알려져 있다. 즉, 오류 벡터 $\mathbf{e}$의 존재가 단순 선형대수 풀이를 막고, 격자 구조 탐색을 어렵게 만들어 양자 내성을 제공한다.

  3. Q3"지금 수집, 나중에 복호화(Harvest Now, Decrypt Later)" 공격이란 무엇이며, 이것이 PQC 조기 전환의 필요성과 어떻게 연결되는가?

    해설 보기

    공격자가 현재 양자 컴퓨터가 없더라도 오늘의 암호화된 트래픽을 대량 수집·저장해 두었다가, 미래에 충분한 양자 컴퓨터가 실현되면 사후에 복호화하는 공격이다. 특히 국가 기밀, 의료 기록, 금융 데이터처럼 수십 년간 기밀성이 요구되는 정보는 지금 당장 탈취되어 저장되어도 위험에 노출된다. 따라서 양자 컴퓨터가 실용화되기 이전이라도, 장기 기밀 데이터를 다루는 시스템은 PQC로의 조기 전환을 통해 이 위협을 차단해야 한다.

관련 용어

이 챕터는 Claude (claude-sonnet-4-6)가 작성했습니다. · 발행 2026. 7. 18.

Keep Learning

다음으로 볼 튜토리얼

전체보기
중급

양자통신

포스트양자암호(PQC) 기초: 양자 시대를 대비하는 암호 설계

포스트양자암호(PQC)는 충분한 규모의 양자 컴퓨터가 등장해도 안전하도록 설계된 고전 알고리즘 기반 암호 체계다. RSA·ECC 등 현행 공개키 암호의 취약점을 수학적 난제로 보완하며, NIST의 표준화를 통해 실용화 단계에 진입했다.

4분 읽기

중급

양자통신

PQC(포스트양자암호) 기초: 양자 시대의 암호 보안

양자 컴퓨터의 발전으로 RSA, ECC 등 현재의 공개키 암호 체계가 근본적인 위협에 직면했다. 포스트양자암호(PQC)는 양자 컴퓨터로도 풀기 어려운 수학적 난제에 기반한 새로운 암호 방식으로, NIST의 표준화 작업을 통해 실용화 단계에 접어들었다. PQC는 기존 통신 인프라 위에서 동작하므로 양자키분배(QKD)와는 구별되는 상호 보완적인 접근이다.

4분 읽기

고급

양자컴퓨팅

변분 양자 고유값 계산(VQE): 원리와 구현

VQE(Variational Quantum Eigensolver)는 변분 원리를 기반으로 해밀토니안의 바닥 상태 에너지를 추정하는 양자-고전 하이브리드 알고리즘이다. 매개변수화 양자 회로(Ansatz)로 시험 상태를 준비하고 고전 최적화기로 에너지를 최소화하는 반복 루프를 구성한다. 깊이가 얕은 회로를 사용하므로 NISQ 장치에서 실행 가능한 현실적 양자 알고리즘으로 평가받는다.

6분 읽기

고급

양자컴퓨팅

QAOA: 조합 최적화를 위한 양자 근사 최적화 알고리즘

QAOA(Quantum Approximate Optimization Algorithm)는 조합 최적화 문제를 양자 회로로 근사 해결하는 변분 양자 알고리즘이다. 비용 해밀토니안과 혼합 해밀토니안을 교대로 적용하는 $p$층 회로를 구성하고, 고전 최적화기로 매개변수를 조율하는 하이브리드 방식을 채택한다. MaxCut, 포트폴리오 최적화 등 NP-난해 문제에 대한 근사 해를 NISQ 장치에서 탐색하는 데 활발히 연구되고 있다.

5분 읽기