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

튜토리얼 목록
Tutorial입문양자통신

QKD와 양자 암호: 도청이 불가능한 이유

양자 키 분배(QKD)는 양자역학의 근본 원리를 이용해 두 사람이 절대적으로 안전한 암호 키를 공유할 수 있게 하는 기술이다. 도청자가 통신을 엿보는 순간 양자 상태가 교란되어 흔적이 남는다는 점이 고전 암호와 근본적으로 다른 핵심이다. 이 챕터에서는 QKD의 작동 원리와 대표 프로토콜인 BB84를 입문 수준에서 소개한다.

난이도 입문5분 읽기연습문제 3개

먼저 읽으면 좋은 용어

개념 소개

우편으로 자물쇠와 열쇠를 함께 보내면 누군가 중간에 열쇠를 복사할 수 있다. 고전 암호 시스템은 이 문제를 수학적 어려움(소인수분해 등)으로 해결해 왔다. 그러나 양자 컴퓨터가 등장하면 이 수학적 장벽이 무너질 수 있다.

양자 키 분배(Quantum Key Distribution, QKD) 는 수학적 복잡도가 아닌 물리 법칙 자체에 보안을 기댄다. 핵심 아이디어는 단순하다.

도청하면 반드시 들킨다.

이는 수학적 추측이 아니라 양자역학의 두 원리에서 직접 도출된다.

  1. 측정이 상태를 바꾼다 — 알 수 없는 양자 상태를 측정하면 그 상태가 변한다.
  2. 복제 불가 정리(No-Cloning Theorem) — 임의의 미지 양자 상태를 완벽히 복사하는 것은 불가능하다.

핵심 원리

편광 큐비트와 기저

빛의 편광을 이용하면 큐비트를 물리적으로 구현할 수 있다. 수평(→)과 수직(↑) 편광을 각각 , 로 정의하는 직선 기저(+) 와, 45°와 135° 편광을 사용하는 대각 기저(×) 가 대표적이다.

| 기저 | 해당 편광 | 해당 편광 | |------|------------|------------| | + (직선) | → (0°) | ↑ (90°) | | × (대각) | ↗ (45°) | ↖ (135°) |

다른 기저로 측정하면 결과가 무작위가 된다. 예를 들어 → 편광 광자를 × 기저로 측정하면 ↗ 또는 ↖가 50:50 확률로 나온다.

BB84 프로토콜

1984년 Bennett과 Brassard가 제안한 BB84는 최초의 QKD 프로토콜이다.

① 양자 채널 단계

  • 송신자(Alice)는 무작위로 비트값(0 또는 1)과 기저(+ 또는 ×)를 선택해 광자를 전송한다.
  • 수신자(Bob)도 무작위로 기저를 선택해 측정한다.

② 기저 공개 단계 (공개 채널)

  • Alice와 Bob은 사용한 기저만 서로 공개한다 (비트값은 공개하지 않는다).
  • 기저가 일치한 경우의 비트만 남긴다. 이것이 원시 키(raw key) 다.

③ 도청 감지 단계

  • 원시 키의 일부를 공개 채널로 비교한다.
  • 도청자(Eve)가 중간에 측정했다면, 잘못된 기저 선택으로 인해 오류율이 상승한다.
  • 이상적인 채널의 오류율은 0%이지만, Eve가 모든 광자를 도청하면 약 25% 의 오류가 발생한다.

오류율이 임계값을 초과하면 키 사용을 중단하고 재시도한다.

복제 불가 정리와의 연결

Eve가 광자를 복사해 두었다가 나중에 분석하면 되지 않을까? 복제 불가 정리가 이를 막는다.

임의의 미지 상태 를 복제하는 유니터리 연산 는 존재하지 않는다. 따라서 Eve는 광자를 복사할 수 없고, 측정해야만 정보를 얻을 수 있으며, 측정은 곧 흔적을 남긴다.


예시·응용

파이썬 시뮬레이션 (BB84 단순 모델)

import random

def bb84_simulation(n_bits=20, eve_present=False):
    bases = ['+', 'x']
    
    # Alice: 비트값과 기저 선택
    alice_bits  = [random.randint(0, 1) for _ in range(n_bits)]
    alice_bases = [random.choice(bases) for _ in range(n_bits)]
    
    # Eve (도청 시): 무작위 기저로 측정 후 재전송
    transmitted_bits = alice_bits[:]
    if eve_present:
        for i in range(n_bits):
            if random.choice(bases) != alice_bases[i]:
                transmitted_bits[i] = random.randint(0, 1)  # 교란
    
    # Bob: 무작위 기저로 측정
    bob_bases = [random.choice(bases) for _ in range(n_bits)]
    bob_bits  = [
        transmitted_bits[i] if bob_bases[i] == alice_bases[i]
        else random.randint(0, 1)
        for i in range(n_bits)
    ]
    
    # 기저 일치한 인덱스만 원시 키로
    matched = [i for i in range(n_bits) if alice_bases[i] == bob_bases[i]]
    alice_key = [alice_bits[i] for i in matched]
    bob_key   = [bob_bits[i]   for i in matched]
    
    errors = sum(a != b for a, b in zip(alice_key, bob_key))
    error_rate = errors / len(alice_key) if alice_key else 0
    return alice_key, bob_key, error_rate

key_a, key_b, err = bb84_simulation(n_bits=100, eve_present=True)
print(f"원시 키 길이: {len(key_a)}, 오류율: {err:.1%}")
# 예) 원시 키 길이: 49, 오류율: 24.5%

실제 응용

  • 금융·정부 통신: 중국의 묵자(Micius) 위성은 위성 기반 QKD를 통해 장거리 양자 암호 통신을 실증했다.
  • 양자 인터넷의 기반: QKD는 향후 양자 인터넷에서 노드 간 보안 채널을 담당할 핵심 기술이다.
  • 포스트 양자 암호(PQC)와의 비교: PQC는 수학적 난제를 이용하는 반면, QKD는 물리 법칙에 기반하므로 원리적으로 더 강력하다.

정리

QKD는 도청 행위 자체가 물리적으로 탐지 가능하다는 점에서 고전 암호와 본질적으로 다르다. 측정이 상태를 교란한다는 양자역학의 원리와 복제 불가 정리가 결합되어, 완벽한 보안을 물리 법칙 수준에서 보장한다. BB84 프로토콜은 이 원리를 편광 광자와 무작위 기저 선택만으로 구현한 우아한 방법이다.

Exercises

연습문제

  1. Q1Alice가 + 기저로 $|0\rangle$ (→ 편광) 광자를 보냈다. Bob이 × 기저로 측정했을 때 얻는 비트값과 그 확률은?

    힌트 보기

    × 기저의 두 상태 $|+\rangle = \frac{1}{\sqrt{2}}(|0\rangle+|1\rangle)$, $|-\rangle = \frac{1}{\sqrt{2}}(|0\rangle-|1\rangle)$로 $|0\rangle$를 전개해 보라.

    해설 보기

    $|0\rangle = \frac{1}{\sqrt{2}}|+\rangle + \frac{1}{\sqrt{2}}|-\rangle$ 이므로, Bob이 × 기저로 측정하면 0(↗) 또는 1(↖)을 각각 50% 확률로 얻는다. 결과가 무작위이므로 이 비트는 키 생성에 사용하지 않는다.

  2. Q2Eve가 모든 광자를 도청하되, 기저를 항상 + 로만 선택한다고 가정하자. Alice가 + 기저로 보낸 광자에 대한 오류율과 × 기저로 보낸 광자에 대한 오류율은 각각 얼마인가?

    해설 보기

    Alice가 + 기저로 보낸 경우, Eve의 기저가 일치하므로 오류 없이 통과한다(오류율 0%). Alice가 × 기저로 보낸 경우, Eve가 + 기저로 측정해 결과가 무작위가 되고, Bob이 × 기저로 측정할 때 50% 확률로 틀린 값을 받는다(오류율 50%). 전체 평균 오류율은 약 25%가 된다.

  3. Q3복제 불가 정리가 없다면 QKD의 보안에 어떤 영향을 미치는가?

    해설 보기

    Eve가 광자를 완벽히 복사해 원본은 Bob에게 전달하고 복사본은 나중에 기저가 공개된 뒤 측정할 수 있다. 이 경우 양자 상태 교란 없이 정보를 도청할 수 있어 BB84의 도청 탐지 메커니즘이 완전히 무력화된다. 복제 불가 정리는 QKD 보안의 필수 물리적 전제다.

관련 용어

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

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