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

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

포스트양자암호(PQC): 양자컴퓨터 시대의 새로운 암호 체계

포스트양자암호(PQC)는 양자컴퓨터의 공격에도 안전하도록 설계된 암호 알고리즘 체계다. 현재 널리 쓰이는 RSA·ECC 같은 공개키 암호가 Shor 알고리즘에 의해 무력화될 수 있다는 위협에 대응하여, 격자·해시·코드 기반 등의 수학적 난제를 활용한 새로운 암호 표준이 개발되고 있다.

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

개념 소개

현대 인터넷 보안의 근간을 이루는 RSA 암호는 큰 수의 소인수분해가 고전 컴퓨터로는 사실상 불가능하다는 사실에 의존한다. 그런데 1994년 Peter Shor가 제안한 양자 알고리즘(Shor 알고리즘)은 충분히 큰 양자컴퓨터를 사용하면 이 문제를 다항 시간 안에 풀 수 있음을 보였다. 타원곡선 암호(ECC) 역시 이산로그 문제에 기반하므로 동일한 위협에 노출된다.

포스트양자암호(Post-Quantum Cryptography, PQC) 는 양자컴퓨터로도 풀기 어렵다고 알려진 수학적 난제에 기반한 암호 방식을 총칭한다. '양자암호(QKD)'와는 달리, PQC는 기존의 고전 통신 인프라 위에서 소프트웨어만으로 구현할 수 있다는 장점이 있다.


핵심 원리

왜 양자컴퓨터에 안전해야 하는가

Grover 알고리즘은 비대칭 탐색 문제에서 의 가속을 제공하므로, AES-128 같은 대칭키 암호는 키 길이를 두 배로 늘리면(AES-256) 어느 정도 방어가 가능하다. 그러나 Shor 알고리즘은 소인수분해와 이산로그를 지수적으로 가속하기 때문에 RSA·ECC는 키 길이를 늘리는 것만으로는 대응이 불충분하다.

주요 PQC 난제 유형

1. 격자(Lattice) 기반 암호

격자란 차원 공간에서 기저 벡터의 정수 선형결합으로 이루어진 점들의 집합이다. 핵심 난제는 다음 두 가지다.

  • SVP(Shortest Vector Problem): 격자에서 가장 짧은 벡터를 찾는 문제
  • LWE(Learning With Errors): 잡음이 섞인 선형 방정식 시스템을 푸는 문제

여기서 는 공개 행렬, 는 비밀 벡터, 는 소규모 오차 벡터다. 와 만 주어졌을 때 를 복원하는 것이 계산적으로 어렵다는 가정이 암호의 안전성 근거가 된다.

NIST 표준 후보인 CRYSTALS-Kyber(키 캡슐화)와 CRYSTALS-Dilithium(전자서명)이 격자 기반 암호의 대표 사례다.

2. 해시(Hash) 기반 서명

해시 함수의 충돌 저항성과 단방향성만을 안전성 근거로 삼는다. 수학적 가정이 단순하여 신뢰도가 높으나, 서명 크기가 크다는 단점이 있다. SPHINCS+ 가 NIST 표준으로 채택됐다.

3. 코드(Code) 기반 암호

선형 오류 정정 부호에서 임의 선형 코드의 **디코딩 문제(Syndrome Decoding)**가 NP-난해임을 이용한다. 1978년 제안된 McEliece 암호가 원형이며, PQC 시대에도 안전한 것으로 평가받는다.

4. 다변수(Multivariate) 다항식 암호

유한체 위의 다변수 이차 다항식 시스템 풀기(MQ 문제)에 기반한다. 일반적으로 전자서명에 특화된다.

NIST PQC 표준화

미국 국립표준기술연구소(NIST)는 2016년부터 PQC 표준화 공모를 진행했으며, 2024년 FIPS 203(ML-KEM, Kyber 기반), FIPS 204(ML-DSA, Dilithium 기반), FIPS 205(SLH-DSA, SPHINCS+ 기반)를 공식 표준으로 발표했다.


예시·응용

Python으로 살펴보는 LWE 개념 (교육용 단순 예시)

import numpy as np

def lwe_keygen(n=4, q=97):
    """단순화된 LWE 키 생성 예시 (교육용)"""
    # 공개 행렬 A (무작위)
    A = np.random.randint(0, q, size=(n, n))
    # 비밀 벡터 s (작은 값)
    s = np.random.randint(0, 3, size=n)
    # 오차 벡터 e (작은 노이즈)
    e = np.random.randint(0, 2, size=n)
    # 공개키 b = As + e mod q
    b = (A @ s + e) % q
    return A, b, s  # (공개: A, b) / (비밀: s)

A, b, s = lwe_keygen()
print("공개 행렬 A:\n", A)
print("공개 벡터 b:", b)
print("비밀 벡터 s:", s)
# 실제 복호화는 s를 알 때만 가능

실제 응용 사례

  • TLS/HTTPS 전환: 구글 Chrome·Cloudflare 등은 이미 Kyber 기반 하이브리드 키 교환을 실험 배포하고 있다.
  • 암호화 민감 문서 보호: "지금 저장하고 나중에 해독(Harvest Now, Decrypt Later)" 공격에 대비해 장기 보존 데이터에 PQC 적용이 권고된다.
  • 전자서명 인프라: PKI 인증서 체계에서 RSA를 Dilithium으로 교체하는 마이그레이션 작업이 진행 중이다.

정리

PQC는 양자컴퓨터의 위협으로부터 기존 통신 인프라를 보호하기 위한 현실적인 대안이다. 격자·해시·코드 기반 등 다양한 수학적 난제를 활용하며, NIST 표준화를 통해 실용 단계에 진입했다. 현재는 기존 암호와 PQC를 병행하는 하이브리드 방식으로 전환이 권장된다. 양자암호(QKD)와 PQC는 상호 보완 관계에 있으며, 함께 활용하면 더욱 강력한 보안 체계를 구성할 수 있다.

Exercises

연습문제

  1. Q1Grover 알고리즘은 AES-128에 어떤 위협을 주며, 이를 완화하기 위해 어떤 조치가 권장되는가?

    힌트 보기

    Grover 알고리즘의 시간 복잡도 가속 비율을 생각해보자.

    해설 보기

    Grover 알고리즘은 $N$개의 탐색 공간에서 $O(\sqrt{N})$의 탐색을 수행한다. AES-128의 키 공간은 $2^{128}$이므로, 양자컴퓨터는 이를 $2^{64}$ 수준으로 줄일 수 있다. 이는 현재 기준으로 여전히 어렵지만 안전 마진이 줄어들기 때문에, AES-256으로 키 길이를 두 배 늘리는 방식으로 대응이 권장된다.

  2. Q2LWE(Learning With Errors) 문제에서 오차 벡터 $\mathbf{e}$를 제거하면 어떤 일이 발생하는가? 오차가 암호 안전성에서 하는 역할을 설명하라.

    해설 보기

    오차가 없으면 $\mathbf{b} = A\mathbf{s} \pmod{q}$ 가 되어 단순한 연립 선형방정식이 된다. 이는 가우스 소거법 등으로 다항 시간에 풀 수 있으므로 비밀 벡터 $\mathbf{s}$가 쉽게 노출된다. 오차 벡터 $\mathbf{e}$는 방정식 시스템에 의도적인 잡음을 더하여 선형대수적 풀이를 불가능하게 만드는 핵심 장치다.

  3. Q3PQC와 QKD(양자키분배)의 차이점을 두 가지 이상 비교하라.

    해설 보기

    ① **구현 방식**: PQC는 기존 고전 통신 인프라 위에서 소프트웨어로 동작하지만, QKD는 양자 채널(광섬유·위성)과 전용 하드웨어가 필요하다. ② **안전성 근거**: PQC는 수학적 난제의 계산 복잡도에 의존하지만, QKD는 양자역학의 물리 법칙(측정 시 상태 변화)을 안전성 근거로 삼는다. ③ **도달 거리**: QKD는 현재 거리 제한(중계기 필요)이 있는 반면, PQC는 기존 인터넷망으로 전 세계 통신이 가능하다.

관련 용어

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

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분 읽기