---
title: "개요"
slug: "hsm-vpc-pqc"
updated: 2026-07-23T09:02:56Z
published: 2026-07-23T09:02:56Z
canonical: "guide-fin.ncloud-docs.com/hsm-vpc-pqc"
---

> ## Documentation Index
> Fetch the complete documentation index at: https://guide-fin.ncloud-docs.com/llms.txt
> Use this file to discover all available pages before exploring further.

# 개요

양자내성암호(PQC, Post-Quantum Cryptography)는 네이버 클라우드 플랫폼 Hardware Security Module(HSM) 서비스에서 NIST 표준 PQC 알고리즘을 사용하는 기능입니다.

이 문서는 Ncloud HSM 서비스에서 사용 가능한 PQC 관련 기능을 정리하고, 목적에 맞는 상세 가이드(Java 예제, C++ 예제)로 안내합니다.

참고

이 문서에서 인용한 출처는 다음과 같습니다.

- [ML-KEM Programming Guide (Luna SDK Reference)](https://www.thalesdocs.com/gphsm/luna/7/docs/network/Content/sdk/extensions/pqc/ML-KEM_programming_guide.htm)
- [ML-DSA Programming Guide (Luna SDK Reference)](https://www.thalesdocs.com/gphsm/luna/7/docs/network/Content/sdk/extensions/pqc/ML-DSA_programming_guide.htm)
- [LMS and HSS (Luna SDK Reference)](https://www.thalesdocs.com/gphsm/luna/7/docs/network/Content/sdk/extensions/pqc/LMS_and_HSS.htm)
- [Post-Quantum Algorithms 색인 페이지](https://www.thalesdocs.com/gphsm/luna/7/docs/network/Content/sdk/extensions/pqc/post_quantum_algorithms.htm)

## 지원 환경

지원 환경을 설명합니다.

### 지원 버전

Ncloud HSM 서비스는 2026-07-03 기준 펌웨어 버전 7.9.3을 제공합니다.

| 구성 요소 | 버전 | 비고 |
| --- | --- | --- |
| HSM 클라이언트(Luna Client) | 10.9.3 | [LunaClient 설치 가이드](/docs/hsm-client) |
| JDK (Java 예제 사용 시) | OpenJDK 또는 Oracle JDK 24 LTS / 25 LTS 이상 | [Luna HSM Client 10.9.1 Customer Release Notes](https://www.thalesdocs.com/gphsm/luna/7/docs/network/Content/CRN/Luna/client/10-9-1.htm)에 명시된 지원 버전 |

## PQC 기능

HSM 서비스에서 사용 가능한 PQC 관련 기능과 각각의 사용 방법은 다음과 같습니다.

| 알고리즘/기능 | 분류 | 용도 | 사용 방법 |
| --- | --- | --- | --- |
| ML-KEM (FIPS 203) | 키 캡슐화(KEM) | ML-KEM을 이용한 키 캡슐화·역캡슐화 mechanism(`CKM_ML_KEM`)이며, FIPS 203에 정의되어 있습니다. | Java(LunaProvider) 코드 또는 C++(Cryptoki) 코드 — [Java 예제](/docs/hsm-vpc-pqc-java), [C++ 예제](/docs/hsm-vpc-pqc-cpp) |
| ML-DSA (FIPS 204) | 전자서명 | ML-DSA를 이용한 서명 생성·검증 mechanism(`CKM_ML_DSA`)이며, FIPS 204에 정의되어 있습니다. Luna HSM 펌웨어 7.9.0 이상에서 사용할 수 있습니다. | Java(LunaProvider) 코드 또는 C++(Cryptoki) 코드 — [Java 예제](/docs/hsm-vpc-pqc-java), [C++ 예제](/docs/hsm-vpc-pqc-cpp) |
| HSS/LMS (NIST SP 800-208) | 전자서명(상태 유지형) | RFC 8554 및 NIST SP 800-208에 정의된 상태 유지형 해시 기반 서명 생성·검증 방식입니다. | C++(Cryptoki) 코드만 — Java Provider 미노출 — [C++ 예제](/docs/hsm-vpc-pqc-cpp) |

주의

HSS/LMS는 상태를 유지하는(stateful) 서명 방식으로, 개인키가 남은 서명 가능 횟수를 내장하고 매 서명마다 소진됩니다. Thales 공식 문서에 따르면 HSS 개인키는 복제(clone)할 수 없어 백업/복원이 불가능하고 고가용성(HA) 그룹에도 포함시킬 수 없습니다. 백업 스크립트나 HA 파티션 구성에 HSS 키를 포함시키지 않도록 주의하십시오. 자세한 제약 사항은 [C++ 예제 가이드](/docs/hsm-vpc-pqc-cpp)를 참고하십시오.

## 가이드 선택

사용하려는 알고리즘과 언어에 따라 아래 가이드를 참조해 주십시오.

- ML-KEM 필요시 사용 중인 언어에 따라 [Java 예제 가이드](/docs/hsm-vpc-pqc-java) 또는 [C++ 예제 가이드](/docs/hsm-vpc-pqc-cpp)를 참조해 주십시오.
- ML-DSA 필요시 사용 중인 언어에 따라 [Java 예제 가이드](/docs/hsm-vpc-pqc-java) 또는 [C++ 예제 가이드](/docs/hsm-vpc-pqc-cpp)를 참조해 주십시오.
- HSS/LMS 필요시 [C++ 예제 가이드](/docs/hsm-vpc-pqc-cpp)를 참조해 주십시오. HSS/LMS는 Java Provider로 노출되지 않아 PKCS#11(Cryptoki) C++ 예제로만 제공됩니다.

## 다음 단계

- ML-KEM/ML-DSA를 Java로 사용하려면 [Java 예제 가이드](/docs/hsm-vpc-pqc-java)를 참조해 주십시오.
- ML-KEM/ML-DSA/HSS/LMS를 C++(PKCS#11/Cryptoki)로 사용하려면 [C++ 예제 가이드](/docs/hsm-vpc-pqc-cpp)를 참조해 주십시오.
