
تسلسل هرمي PKI ثنائي المستوى نقي PQC باستخدام ML-DSA-65 (NIST FIPS 204) على EJBCA Community Edition — Root CA + Sub CA مع CRL وOCSP
تطبيق عملي لمعيار المعهد الوطني للمعايير والتقنية (NIST) FIPS 204 (ML-DSA) في هيكل PKI ذو مستويين باستخدام إصدار EJBCA المجتمعي.
📖 دليل كامل: بناء PKI بعد الكم: كيف وقعت على Root CA و Sub CA باستخدام ML-DSA على EJBCA
هيكل PKI نقي بالكامل يعمل بعد الكم (PQC) على جهازين افتراضيين منفصلين، كل منهما يحتوي على حاوية EJBCA الخاصة به:
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
جميع الشهادات في السلسلة — Root CA و Sub CA — موقعة حصريًا باستخدام ML-DSA-65 (NIST FIPS 204). لا RSA. لا ECDSA. PQC نقي من البداية إلى النهاية.
ML-DSA (المعروف سابقًا باسم CRYSTALS-Dilithium) هو خوارزمية التوقيع الرقمي بعد الكم (PQC) المعيارية من NIST بموجب FIPS 204. تم اختيار مجموعة معاملات Dilithium3 (ML-DSA-65) لهذا المختبر — فهي توفر أمانًا بعد الكم بمستوى 128 بت، وهي الخيار الأمثل للأغراض العامة لمعظم النشرات.
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
chmod +x setup-lab.sh
sudo ./setup-lab.sh
بعد الانتهاء، قم بالوصول إلى واجهة الإدارة في:
https://<VM1_IP>:8443/ejbca/adminweb/
قم باستيراد superadmin.p12 من الحاوية إلى متصفحك:
docker cp ejbca:/opt/ejbca/p12/superadmin.p12 ~/superadmin.p12
كلمة المرور الافتراضية: ejbca
ثم اتبع المقال على Medium لتكوين Root CA يدويًا.
chmod +x setup-lab.sh
sudo ./setup-lab.sh
بعد الانتهاء، قم بالوصول إلى واجهة الإدارة في:
https://<VM2_IP>:8443/ejbca/adminweb/
قم باستيراد superadmin.p12 بنفس الطريقة، ثم اتبع المقال على Medium لتكوين Sub CA.
ejbca-datadocker-compose.ymlيتم تنفيذ جميع تكوينات EJBCA يدويًا من خلال واجهة الإدارة — ملفات تعريف الشهادات، ورموز التشفير، وإنشاء المرجع المصدري (CA)، وإعدادات قائمة الإلغاء (CRL)، وبروتوكول الاستعلام عن حالة الشهادة (OCSP). هذا مقصود. يقوم السكربت بتشغيل المنصة. بينما يوثق المقال على Medium كل قرار يدوي ولماذا تم اتخاذه.
| المكون | المرجع المصدري (CA) |
|---|
ACME — لا يدعم بروتوكول ACME (RFC 8555) ML-DSA لمصادقة مفتاح الحساب. فقط RSA و ECDSA مسموح بهما. تضمين ACME سيتطلب مفتاح حساب تقليدي، مما يكسر قصة PQC النقية. يعمل فريق IETF حاليًا على مسودة ACME خاص بـ PQC. سيتم تحديث هذا المختبر عند الانتهاء من ذلك.
ثقة المتصفح — لا يوجد أي مخزن ثقة رئيسي في المتصفحات يتعرف على ML-DSA حتى الآن. هذا مختبر PKI خاص، وليس هيكلًا موثوقًا بشكل عام. هذا متوقع وصحيح.
محمد أمين ككش مهندس أمن GitHub · Medium
MIT
| الحالة |
|---|
| CRL | Root CA | ✅ |
| CRL | Sub CA | ✅ |
| OCSP | Sub CA | ✅ |
| OCSP | Root CA | ❌ غير قابل للتطبيق |