Skip to content
KitploitKITPLOIT
도구블로그
제출
도구블로그
제출

해킹, 침투 테스트 및 사이버 보안 도구를 당신의 보안 무기고에!

Kitploit은 해킹, 사이버 보안 및 침투 테스트 도구 디렉토리입니다. 최신 프로젝트 업데이트를 발견하여 취약점을 찾고, 시스템을 분석하고, 테스트를 자동화하고, 보안을 강화하세요.

··피드·문의·개인정보·© 2026 Kitploit

도구 디렉토리

카테고리

모든 카테고리 보기
Loading categories
ejbca-pqc-lab — ML-DSA-65 (NIST FIPS 204)를 사용한 순수 PQC 2계층 PKI 계층 구조 — EJBCA Community Edition 기반 Root CA + Sub CA 및 CRL과 OCSP | Kitploit
도구/GitHubGitHub/mokokash/ejbca-pqc-lab
CryptographyCloud SecurityPapers & ResearchLearning & EducationLabs & Practice
GitHubmokokash/ejbca-pqc-lab

ejbca-pqc-lab

ML-DSA-65 (NIST FIPS 204)를 사용한 순수 PQC 2계층 PKI 계층 구조 — EJBCA Community Edition 기반 Root CA + Sub CA 및 CRL과 OCSP

저장소 보기
5개월 전아직 검토되지 않음

인기

모두 보기 →

커뮤니티에서 가장 많이 사용되는 도구를 찾아보세요.

모든 도구 탐색

도구 컬렉션을 둘러보세요

모든 도구 보기 →
공유

EJBCA Pure PQC Lab — ML-DSA-65 2계층 PKI 계층구조

EJBCA Community Edition을 사용하여 NIST FIPS 204 (ML-DSA)를 2계층 PKI 계층구조에서 실습하는 구현입니다.

📖 전체 연습 가이드: 포스트퀀텀 PKI 구축: EJBCA에서 ML-DSA를 사용하여 루트 CA 및 서브 CA에 서명한 방법


이 랩에서 구축하는 것

두 개의 개별 가상 머신(각각 자체 EJBCA 컨테이너 보유)에서 실행되는 완전한 순수 PQC PKI 계층구조입니다.

root@kitploit:~
VM 1 — Root CA
  └─ ML-DSA-65 self-signed Root CA
  └─ CRL published and reachable

VM 2 — Sub CA
  └─ ML-DSA-65 Sub CA signed by Root CA
  └─ CRL published and reachable
  └─ OCSP responder active

체인의 모든 인증서(루트 CA, 서브 CA)는 ML-DSA-65 (NIST FIPS 204)로만 서명됩니다. RSA 없음, ECDSA 없음. 완전한 PQC 엔드투엔드.


ML-DSA-65를 선택한 이유

ML-DSA(이전 CRYSTALS-Dilithium)는 FIPS 204에 따른 NIST 표준 포스트퀀텀 디지털 서명 알고리즘입니다. 이 랩에서는 Dilithium3 매개변수 세트(ML-DSA-65)를 선택했습니다. 128비트 포스트퀀텀 보안을 제공하며 대부분의 배포에 권장되는 범용 옵션입니다.


저장소 구조

root@kitploit:~
ejbca-pqc-lab/
├── README.md
├── root-ca/
│   └── setup-lab.sh     # Run on VM1 — sets up the Root CA machine
└── sub-ca/
    └── setup-lab.sh     # Run on VM2 — sets up the Sub CA machine

사전 요구 사항

  • 두 개의 Linux VM (Ubuntu 22.04 또는 24.04 권장)
  • 두 VM이 동일한 네트워크에 있고 서로 도달 가능해야 함
  • 두 머신 모두에서 sudo 액세스
  • EJBCA Community Edition 9.3.7 이상 (스크립트가 자동으로 다운로드)

빠른 시작

VM 1 — 루트 CA 머신

root@kitploit:~
chmod +x setup-lab.sh
sudo ./setup-lab.sh

완료되면 다음 주소에서 관리 UI에 접속하세요:

root@kitploit:~
https://<VM1_IP>:8443/ejbca/adminweb/

컨테이너에서 superadmin.p12를 브라우저로 가져오세요:

root@kitploit:~
docker cp ejbca:/opt/ejbca/p12/superadmin.p12 ~/superadmin.p12

기본 비밀번호: ejbca

그런 다음 Medium 기사를 따라 수동으로 루트 CA를 구성하세요.


VM 2 — 서브 CA 머신

root@kitploit:~
chmod +x setup-lab.sh
sudo ./setup-lab.sh

완료되면 다음 주소에서 관리 UI에 접속하세요:

root@kitploit:~
https://<VM2_IP>:8443/ejbca/adminweb/

동일한 방식으로 superadmin.p12를 가져온 후 Medium 기사를 따라 서브 CA를 구성하세요.


스크립트가 수행하는 작업

  1. Docker 설치
  2. Docker Compose 설치
  3. 영구적인 ejbca-data 볼륨 생성
  4. docker-compose.yml 생성
  5. EJBCA 컨테이너 시작
  6. EJBCA 초기화를 최대 5분 동안 대기
  7. 접속 URL 및 다음 단계 출력

스크립트가 수행하지 않는 작업

모든 EJBCA 구성은 관리 UI를 통해 수동으로 수행됩니다(인증서 프로필, 암호화 토큰, CA 생성, CRL 설정, OCSP). 이는 의도적인 것입니다. 스크립트는 플랫폼을 실행 상태로 만듭니다. Medium 기사는 모든 수동 결정과 그 이유를 문서화합니다.


폐지 인프라

구성 요소CA상태

제외된 사항과 이유

ACME — ACME 프로토콜(RFC 8555)은 계정 키 인증에 ML-DSA를 지원하지 않습니다. RSA와 ECDSA만 허용됩니다. ACME를 포함하려면 기존 계정 키가 필요하여 순수 PQC 스토리가 깨집니다. IETF는 PQC ACME 초안을 작업 중입니다. 이 랩은 최종 확정되면 업데이트될 예정입니다.

브라우저 신뢰 — 아직 주요 브라우저 신뢰 저장소에서 ML-DSA를 인식하지 않습니다. 이는 공개적으로 신뢰되는 계층구조가 아닌 개인 PKI 랩입니다. 이는 예상된 것이며 올바릅니다.


저자

Mohammad Amin Kokash 보안 엔지니어 GitHub · Medium


라이선스

MIT

도구 다운로드
CRL루트 CA✅
CRL서브 CA✅
OCSP서브 CA✅
OCSP루트 CA❌ 해당 없음