Skip to content
KitploitKITPLOIT
أدواتالمدونة
إرسال
أدواتالمدونة
إرسال

أدوات الاختراق واختبار الاختراق والأمن السيبراني لترسانتك الأمنية!

Kitploit هو دليل لأدوات الاختراق والأمن السيبراني واختبار الاختراق. اكتشف آخر تحديثات المشاريع للعثور على الثغرات وتحليل الأنظمة وأتمتة الاختبارات وتعزيز أمنك.

··الخلاصات·اتصال·الخصوصية·© 2026 Kitploit

دليل الأدوات

الفئات

عرض جميع الفئات
Loading categories
camel-pqc-tls — أمثلة على التشفير ما بعد الكمي (PQC) مع TLS 1.3 باستخدام Apache Camel وتبادل المفاتيح الهجين X25519MLKEM768 على JDK 21 (BouncyCastle) وJDK 27 (أصلي) | Kitploit
أدوات/GitHubGitHub/oscerd/camel-pqc-tls
أمن الشبكاتالتشفيرالتعلم والتعليمموارد منسقة
GitHuboscerd/camel-pqc-tls

camel-pqc-tls

أمثلة على التشفير ما بعد الكمي (PQC) مع TLS 1.3 باستخدام Apache Camel وتبادل المفاتيح الهجين X25519MLKEM768 على JDK 21 (BouncyCastle) وJDK 27 (أصلي)

عرض المستودع
21منذ 3 أشهرلم تتم المراجعة بعد

الأكثر شعبية

عرض الكل →

اكتشف الأدوات الأكثر استخدامًا من قبل مجتمعنا.

استكشف جميع الأدوات

تصفح مجموعتنا من الأدوات

عرض جميع الأدوات →
مشاركة

TLS ما بعد الكم مع Apache Camel

يحتوي هذا المستودع على ثلاثة أمثلة توضح عمليات مصافحة TLS 1.3 بالتشفير ما بعد الكم (PQC) مع Apache Camel، باستخدام تبادل المفاتيح الهجين X25519MLKEM768.

يجمع X25519MLKEM768 بين خوارزمية X25519 الكلاسيكية لتبادل مفاتيح Diffie-Hellman على المنحنيات الإهليلجية وML-KEM-768، وهي آلية تغليف مفاتيح ما بعد الكم قائمة على الشبكات (NIST FIPS 203). يعمل الخوارزميان معًا، لذلك يظل الأمان محفوظًا حتى لو تم كسر أحدهما.

الأمثلة

المثالJDKمزود TLSالنهج
pqc-ssl-contextJDK 27SunJSSE (مدمج في JDK)يضيف JEP 527 مجموعات PQC المسماة إلى حزمة TLS المدمجة في JDK
pqc-kem-jdk24JDK 24BouncyCastle JSSE 1.83BCJSSE لـ TLS ما بعد الكم، مع بدائيات ML-KEM أصلية في JDK عبر JEP 496
pqc-ssl-context-jdk21JDK 21BouncyCastle JSSE 1.83يستبدل BCJSSE مزود SunJSSE لتوفير دعم TLS ما بعد الكم اليوم

تم ضبط الأمثلة الثلاثة بالكامل عبر خصائص camel.ssl.* وتنفذ مصافحة TLS 1.3 قائمة بذاتها باستخدام X25519MLKEM768 لتبادل المفاتيح ما بعد الكم، مع التحقق منها عند بدء التشغيل وإتاحتها عند الطلب عبر نقاط نهاية REST.

أوجه الاختلاف

JDK 27 الأصلي (pqc-ssl-context)

يستخدم مزود SunJSSE المدمج في JDK، الذي يكتسب دعم TLS ما بعد الكم عبر JEP 527 في JDK 27.

  • يتم ضبط PQC عبر camel.ssl.namedGroups=X25519MLKEM768,x25519
  • يتم إنشاء شهادة موقّعة ذاتيًا تلقائيًا (camel.ssl.selfSigned=true)
  • تُخدم نقاط نهاية REST عبر HTTPS على المنفذ 8443
  • تُضبط المجموعات المسماة عبر SSLParameters.setNamedGroups() (واجهة برمجة JDK قياسية)

JDK 24 مع BouncyCastle (pqc-kem-jdk24)

يستخدم مزود JSSE الخاص بـ BouncyCastle (BCJSSE) لجلب دعم TLS ما بعد الكم إلى JDK 24. بينما يتضمن JDK 24 بدائية ML-KEM أصلية كمكوّن تشفير مستقل (JEP 496)، فإنه لا يعرض مجموعات PQC المسماة في حزمة TLS الخاصة به. يسد BCJSSE هذه الفجوة.

  • يتم ضبط PQC عبر camel.ssl.provider=BCJSSE و camel.ssl.namedGroups=X25519MLKEM768,secp256r1
  • يتم إنشاء شهادة موقّعة ذاتيًا تلقائيًا (camel.ssl.selfSigned=true)
  • تُخدم نقاط نهاية REST عبر HTTPS على المنفذ 8443
  • تعرض نقطة النهاية الإضافية /api/verify-kem واجهة برمجة javax.crypto.KEM الأصلية في JDK 24 مع اختبارات التوافق البيني بين المزودات
  • يتطلب فئة إقلاع (bootstrap) لتسجيل مزودات BouncyCastle

JDK 21 مع BouncyCastle (pqc-ssl-context-jdk21)

يستخدم مزود JSSE الخاص بـ BouncyCastle (BCJSSE) لجلب دعم TLS ما بعد الكم إلى JDK 21، دون انتظار JDK 27.

  • يتم ضبط PQC عبر camel.ssl.provider=BCJSSE و camel.ssl.namedGroups=X25519MLKEM768,secp256r1
  • يتم إنشاء شهادة موقّعة ذاتيًا تلقائيًا (camel.ssl.selfSigned=true)
  • تُخدم نقاط نهاية REST عبر HTTPS على المنفذ 8443
  • يتطلب فئة إقلاع (bootstrap) لتسجيل مزودات BouncyCastle وإزالة ECDH من jdk.tls.disabledAlgorithms

مقارنة جنبًا إلى جنب

المتطلبات الأساسية

  • Maven 3.9+
  • Apache Camel 4.19.0-SNAPSHOT (أو أحدث) مثبّت في مستودع Maven المحلي
  • JDK 27 EA للمثال الأصلي، وJDK 24 لمثال JDK 24، أو JDK 21+ لمثال JDK 21

بدء سريع

مثال JDK 27

root@kitploit:~
cd pqc-ssl-context
sdk use java 27.ea.11-open
mvn clean compile exec:exec
curl -k https://localhost:8443/api/verify-pqc

مثال JDK 24

root@kitploit:~
cd pqc-kem-jdk24
sdk use java 24.0.1-tem
mvn clean compile exec:exec
curl -k https://localhost:8443/api/verify-pqc
curl -k https://localhost:8443/api/verify-kem

مثال JDK 21

root@kitploit:~
cd pqc-ssl-context-jdk21
sdk use java 21.0.10-tem
mvn clean compile exec:exec
curl -k https://localhost:8443/api/verify-pqc

ستُرجع الأمثلة الثلاثة "pqcVerified": true عند نجاح مصافحة TLS ما بعد الكم.

توافق JDK

المساعدة والمساهمات

إذا واجهت أي مشكلة أثناء استخدام Camel أو كان لديك أي ملاحظات، فيرجى إخبارنا.

كما أننا نحب المساهمين، لذا شارك معنا :-)

فرسان Camel!

تنزيل الأداة
الجانبJDK 27 الأصليJDK 24 + BouncyCastleJDK 21 + BouncyCastle
متطلبات JDKJDK 27 EAJDK 24+JDK 21+
مزود TLSSunJSSEBCJSSE 1.83BCJSSE 1.83
آلية PQCJEP 527 (مدمج)مكتبة TLS من BouncyCastleمكتبة TLS من BouncyCastle
ML-KEM أصلي (API KEM)نعمنعم (JEP 496)لا
التهيئةخصائص camel.ssl.*خصائص camel.ssl.*خصائص camel.ssl.*
إدارة الشهاداتcamel.ssl.selfSigned=truecamel.ssl.selfSigned=truecamel.ssl.selfSigned=true
منفذ REST8443 (HTTPS)8443 (HTTPS)8443 (HTTPS)
التبعيات الإضافيةلا شيء (مدمج في JDK)bcprov, bctlsbcprov, bctls
إصدار JDKAPI KEM الخاص بـ ML-KEMPQC في TLSالنهج
21لانعم (عبر BouncyCastle)pqc-ssl-context-jdk21 - يوفر BCJSSE دعم TLS ما بعد الكم
24نعم (JEP 496)نعم (عبر BouncyCastle)pqc-kem-jdk24 - BCJSSE لـ TLS، مع بدائيات ML-KEM أصلية في JDK
27نعمنعم (أصلي)pqc-ssl-context - يضيف JEP 527 دعم PQC إلى SunJSSE