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

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

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

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

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

먼저 읽으면 좋은 용어

개념 소개

현재 인터넷 보안의 근간인 RSA와 타원곡선 암호(ECC)는 소인수분해 또는 이산로그 문제의 계산적 어려움에 의존한다. 고전 컴퓨터로는 수천 년이 걸릴 이 문제들을 충분히 큰 양자 컴퓨터는 **쇼어 알고리즘(Shor's Algorithm)**을 이용해 다항 시간 내에 풀 수 있다. 이 시나리오는 흔히 'Q-Day'라고 불린다.

**포스트양자암호(Post-Quantum Cryptography, PQC)**는 이 위협에 대응하기 위해 설계된 고전적 알고리즘 집합이다. 양자 컴퓨터를 포함한 어떤 컴퓨터로도 효율적으로 풀 수 없다고 여겨지는 수학적 난제를 보안의 근거로 삼는다. PQC는 양자 채널이 아닌 기존 통신 인프라 위에서 동작하므로, 양자역학적 원리로 키를 분배하는 QKD와는 근본적으로 다른 접근법이다.


핵심 원리

PQC의 보안성은 다음과 같은 수학적 난제 계열에 기반한다.

격자 기반 암호 (Lattice-Based Cryptography)

현재 가장 주목받는 방향으로, 최단 벡터 문제(SVP)와 최근 벡터 문제(CVP)의 어려움을 활용한다. 실용적 구현에는 LWE(Learning With Errors) 문제가 핵심으로 쓰인다.

비밀 벡터 , 공개 행렬 , 작은 오류 벡터 가 있을 때, 다음을 만족하는 로부터 를 복구하는 문제다:

오류 항 로 인해 연립방정식으로 직접 풀 수 없으며, 격자 축소 알고리즘으로도 이 클 때 현실적인 시간 내에 풀리지 않는다. 이 어려움이 암호 체계의 안전성 근거가 된다.

해시 기반 암호 (Hash-Based Cryptography)

충돌 저항성이 있는 암호학적 해시 함수만을 기반으로 전자서명을 구성한다. 일회용 서명인 Lamport 서명을 일반화·트리 구조로 확장한 방식으로, 해시 함수의 안전성만 보장되면 전체 체계가 유지된다는 장점이 있다.

코드 기반 암호 (Code-Based Cryptography)

오류 정정 부호 이론에서 유도된 난제를 사용한다. 일반 선형 부호의 신드롬 디코딩 문제(Syndrome Decoding Problem)는 NP-완전으로 알려져 있어 고전·양자 컴퓨터 모두에 강인한 것으로 분석된다.

다변수 다항식 암호 (Multivariate Cryptography)

유한체 위의 다변수 이차 다항식 연립방정식을 푸는 것이 NP-완전임을 이용한다. 주로 전자서명 방식에 응용된다.


예시·응용

NIST PQC 표준

미국 국립표준기술연구소(NIST)는 장기간의 공개 검토 과정을 통해 PQC 표준 알고리즘을 확정했다.

표준 이름 기반 수학 주요 용도
ML-KEM (Kyber) 격자 (MLWE) 키 캡슐화(KEM)
ML-DSA (Dilithium) 격자 (MLWE) 전자서명
SLH-DSA (SPHINCS+) 해시 함수 전자서명
FN-DSA (FALCON) 격자 (NTRU) 전자서명

ML-KEM은 TLS 등 키 교환 프로토콜에, ML-DSA·SLH-DSA는 코드 서명·인증서 등에 우선 적용이 권장된다.

개념 데모: LWE 암호화 스케치

import numpy as np

def lwe_encrypt_demo(n=8, q=97, noise_bound=2):
    """LWE 기반 암호화의 개념적 데모 (실제 보안 파라미터 아님)"""
    # 비밀 키
    s = np.random.randint(0, q, size=n)
    # 공개 행렬 A
    A = np.random.randint(0, q, size=(2*n, n))
    # 작은 오류
    e = np.random.randint(-noise_bound, noise_bound + 1, size=2*n)
    # 공개키: b = A·s + e (mod q)
    b = (A @ s + e) % q

    # 1-bit 메시지 m 암호화
    m = 1
    r = np.random.randint(0, 2, size=2*n)  # 랜덤 부분집합 선택
    c1 = (r @ A) % q
    c2 = (int(r @ b) + m * (q // 2)) % q
    print(f"암호문 c2: {c2}")
    # 복호화: c2 - c1·s mod q ≈ m*(q//2)
    dec = (c2 - int(c1 @ s)) % q
    decoded = 1 if abs(dec - q // 2) < q // 4 else 0
    print(f"복호화 결과: {decoded} (원본: {m})")

lwe_encrypt_demo()

'Harvest Now, Decrypt Later' 위협

당장 충분한 양자 컴퓨터가 없더라도, 공격자는 현재 암호화된 트래픽을 대량 수집한 뒤 미래의 양자 컴퓨터로 복호화할 수 있다. 이 때문에 장기 기밀 데이터를 다루는 시스템은 지금부터 PQC로의 전환 계획을 수립해야 한다.


정리

PQC는 격자, 해시, 코드 등 다양한 수학적 난제를 기반으로 양자 컴퓨터의 공격에 대한 내성을 갖춘 암호 체계다. NIST의 표준화로 ML-KEM, ML-DSA 등 실용 알고리즘이 확정되어 현재 시스템에 단계적으로 통합되고 있다. PQC는 기존 인터넷 인프라와 호환되며, 양자키분배(QKD)와 함께 사용할 경우 수학적 가정과 물리적 보안을 동시에 제공하는 계층적 보안 구조를 구성할 수 있다.

Exercises

연습문제

  1. Q1RSA-2048이 양자 컴퓨터에 취약한 이유를 쇼어 알고리즘과 연결지어 설명하라.

    힌트 보기

    쇼어 알고리즘의 시간 복잡도를 고전 알고리즘(일반 체 거름법 등)과 비교해 보라.

    해설 보기

    RSA의 보안은 큰 수 $N = p \times q$의 소인수분해가 계산적으로 어렵다는 가정에 의존한다. 고전 컴퓨터로 최선의 알고리즘(일반 체 거름법)을 써도 준지수 시간 $O(\exp((\ln N)^{1/3}))$이 걸리지만, 쇼어 알고리즘은 양자 컴퓨터에서 다항 시간 $O((\log N)^3)$에 소인수분해를 수행할 수 있다. 따라서 충분한 큐비트와 오류 정정 능력을 갖춘 양자 컴퓨터가 등장하면 RSA의 안전성 가정이 붕괴된다.

  2. Q2LWE 문제에서 오류 벡터 $\mathbf{e}$가 없다면($\mathbf{e} = \mathbf{0}$) 어떤 문제가 발생하는가?

    해설 보기

    오류 항이 없으면 $\mathbf{b} = A\mathbf{s} \pmod{q}$가 되어 단순한 선형 연립방정식이 된다. 이 경우 $A$의 역행렬(또는 가우스 소거법)을 이용해 $\mathbf{s} = A^{-1}\mathbf{b} \pmod{q}$를 효율적으로 복구할 수 있으므로 암호로서의 보안성을 전혀 제공하지 못한다. 작은 오류 $\mathbf{e}$의 추가가 문제를 계산적으로 어렵게 만드는 핵심 장치다.

  3. Q3PQC와 QKD(양자키분배)의 근본적인 차이점을 보안 근거 측면에서 비교하라.

    해설 보기

    PQC는 수학적 계산 복잡도에 보안 근거를 둔다. 즉, 특정 수학 문제가 '계산적으로 어렵다'는 가정이 깨지면 이론적으로 보안이 위협받을 수 있다. 반면 QKD는 양자역학의 물리 법칙(측정에 의한 상태 교란, 복제 불가 정리)에 보안 근거를 두므로 수학적 가정이 필요 없다. 그러나 QKD는 전용 양자 채널과 특수 하드웨어가 필요하며 거리 제한이 있는 반면, PQC는 기존 인터넷 인프라에서 소프트웨어만으로 구현할 수 있다.

관련 용어

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

Keep Learning

다음으로 볼 튜토리얼

전체보기
중급

양자통신

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

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

4분 읽기

고급

양자컴퓨팅

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

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

6분 읽기

고급

양자컴퓨팅

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

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

5분 읽기

중급

양자컴퓨팅

초전도 큐비트: 구조와 작동 원리

초전도 큐비트는 극저온에서 작동하는 인공 원자로, 조셉슨 접합을 핵심 소자로 삼아 양자 정보를 저장하고 처리한다. 회로 양자전기역학(circuit QED) 프레임워크 안에서 마이크로파 펄스로 큐비트 상태를 제어하며, 현재 IBM·Google 등이 대규모 양자 프로세서에 적극 활용하고 있다.

4분 읽기