심화 · 양자내성 암호 (PQC)
이 책의 모든 신뢰는 결국 하나의 가정 위에 서 있다. "개인키에서 공개키는 만들 수 있지만, 공개키에서 개인키는 역산할 수 없다"(2장). 이 가정은 현재의 컴퓨터로는 사실이다. 그런데 충분히 강력한 양자컴퓨터가 등장하면, 이 한 문장이 무너진다.
❓ 이 챕터의 질문
왜 블록체인이 위협받나
블록체인이 쓰는 암호는 크게 두 종류고, 양자컴퓨터 앞에서의 운명이 서로 달라요.
서명(ECDSA): 치명적 위협. 2장에서 본 타원곡선 서명의 안전성은 "이산로그 문제는 풀 수 없다"에 기대요. 그런데 쇼어 알고리즘(Shor's algorithm) 을 돌릴 수 있는 대규모 양자컴퓨터는 이 문제를 효율적으로 풀어요. 공개키만 있으면 개인키를 역산할 수 있다는 뜻이에요.
해시(SHA-256, Keccak-256): 상대적으로 안전. 양자컴퓨터의 그로버 알고리즘(Grover's algorithm) 은 해시 역산을 빠르게 하지만, 보안 강도를 절반으로 줄이는 수준이에요(256비트 → 128비트 상당). 출력 길이를 늘리면 대응돼요. 3장의 블록 해시 연결 자체는 비교적 견고하다는 뜻이에요.
그러면 블록체인에서 공개키는 언제 노출될까요? 여기 미묘한 구조가 있어요.
- 2장에서 본 것처럼, 주소는 공개키의 해시예요. 받기만 한 주소는 공개키가 아직 드러나지 않은 상태예요.
- 그런데 한 번이라도 송금하면, 서명 검증을 위해 공개키가 체인에 공개돼요. 블록체인은 모든 기록이 영구 보존되니, 그 공개키는 영원히 거기 있어요.
즉 위협 시나리오는 이래요. 지금 공개돼 있는 수많은 공개키들을 수집해 두었다가, 양자컴퓨터가 완성되는 날 개인키를 역산해 자산을 탈취하는 것. 인터넷 보안에서 말하는 "지금 수집하고, 나중에 해독한다(Harvest now, decrypt later)"의 블록체인 버전이에요. 일반 통신은 암호를 바꾸면 과거 노출이 끊기지만, 블록체인은 과거가 지워지지 않는 장부라서 전환이 더 절실해요.
양자내성 알고리즘: Dilithium, XMSS, WOTS
양자내성 암호(PQC, Post-Quantum Cryptography) 는 양자컴퓨터로도 풀기 어려운 수학 문제 위에 서명 체계를 다시 세우는 거예요. 블록체인 맥락에서 자주 거론되는 세 가지를 볼게요.
Dilithium (표준명 ML-DSA): NIST가 2024년 확정한 표준 서명 알고리즘이에요. 격자(lattice) 문제, 쉽게 말해 고차원 공간에서 특정 점을 찾는 문제의 어려움에 기반해요. 쇼어 알고리즘이 통하지 않는 문제 계열이에요. 범용 서명의 표준 후보라서, 블록체인뿐 아니라 TLS·금융 인프라 전반의 전환 대상이에요.
WOTS (Winternitz One-Time Signature): 해시 함수만으로 만드는 서명이에요. 해시가 양자에 비교적 강하다는 성질을 그대로 물려받아요. 단, 이름대로 키 하나로 한 번만 서명할 수 있어요. 같은 키로 두 번 서명하면 개인키 정보가 누출되기 시작하거든요.
XMSS: WOTS의 일회성 한계를 풀기 위해, 일회용 키 수천 개를 머클 트리로 묶어 하나의 공개키로 만든 구조예요. 서명할 때마다 트리의 다른 잎(일회용 키)을 쓰고, "이 잎이 트리에 속한다"는 머클 증명을 함께 제출해요. 3장에서 본 머클 증명이 서명 체계 안으로 들어온 거예요. 대신 상태 관리가 필요해요. 어떤 잎을 썼는지 기록을 잃으면 키 재사용 사고로 이어져요.
| 알고리즘 | 기반 문제 | 특징 | 비고 |
|---|---|---|---|
| ECDSA (현재) | 타원곡선 이산로그 | 서명 ~70바이트 | 쇼어 알고리즘에 취약 |
| Dilithium (ML-DSA) | 격자 | 서명 ~2.4KB | NIST 2024 표준 |
| WOTS | 해시 | 일회용 | 단독으론 실용성 낮음 |
| XMSS | 해시 + 머클 트리 | 서명 ~2.5KB, 상태 관리 필요 | RFC 8391 |
표에서 눈에 띄는 게 서명 크기예요. 양자내성 서명은 현재 서명보다 수십 배 커요. 3장에서 본 것처럼 블록 공간은 희소 자원이고 모든 노드가 모든 서명을 영구 저장하니, 서명이 30배 커지면 처리량과 저장 비용에 그대로 부딪혀요. 양자내성 전환이 단순한 알고리즘 교체가 아니라 프로토콜 차원의 설계 문제인 이유예요.
핵심 요약
| 개념 | 내용 |
|---|---|
| 쇼어 알고리즘 | 양자컴퓨터로 이산로그를 풀어 ECDSA를 무력화 |
| 그로버 알고리즘 | 해시 보안 강도를 절반으로. 해시는 상대적으로 견고 |
| 공개키 노출 | 송금 시 공개키가 영구 공개. "수집 후 해독" 위협 |
| Dilithium (ML-DSA) | 격자 기반, NIST 2024 표준 서명 |
| WOTS / XMSS | 해시 기반 일회용 서명 / 머클 트리로 다회화 |
| 전환 과제 | 서명 크기 수십 배 증가, 자산 이전 경로 설계 |
📚 참고자료 보기
- NIST: Post-Quantum Cryptography Standardization: PQC 표준화 공식 페이지 (FIPS 204 = ML-DSA/Dilithium)
- RFC 8391: XMSS: XMSS 공식 명세
- ethereum.org 로드맵: Future-proofing: 이더리움의 양자 대응 방향
- BIS: Quantum-readiness for the financial system: 금융 시스템의 양자 전환 준비 (국제결제은행)