Skip to content
KitploitKITPLOIT
ToolsBlog
Einreichen
ToolsBlog
Einreichen

Hacking-, PenTest- und Cybersicherheits-Tools für Ihr Sicherheitsarsenal!

Kitploit ist ein Verzeichnis von Hacking-, Cybersicherheits- und Pentesting-Tools. Entdecken Sie die neuesten Projekt-Updates, um Schwachstellen zu finden, Systeme zu analysieren, Tests zu automatisieren und Ihre Sicherheit zu stärken.

··Feeds·Kontakt·Datenschutz·© 2026 Kitploit

Tool-Verzeichnis

Kategorien

Alle Kategorien anzeigen
Loading categories
camel-pqc-tls — Post-Quanten-Kryptographie (PQC) TLS-1.3-Beispiele mit Apache Camel unter Verwendung des X25519MLKEM768-Hybrid-Schlüsselaustauschs auf JDK 21 (BouncyCastle) und JDK 27 (nativ) | Kitploit
Tools/GitHubGitHub/oscerd/camel-pqc-tls
NetzwerksicherheitKryptographieLernen & BildungKuratierte Ressourcen
GitHuboscerd/camel-pqc-tls

camel-pqc-tls

Post-Quanten-Kryptographie (PQC) TLS-1.3-Beispiele mit Apache Camel unter Verwendung des X25519MLKEM768-Hybrid-Schlüsselaustauschs auf JDK 21 (BouncyCastle) und JDK 27 (nativ)

Repository anzeigen
21vor 3 MonatenNoch nicht geprüft

Beliebteste

Alle anzeigen →

Entdecken Sie die meistgenutzten Tools unserer Community.

Alle Tools erkunden

Durchsuchen Sie unsere Tool-Sammlung

Alle Tools anzeigen →
Teilen

Post-Quanten-TLS mit Apache Camel

Dieses Repository enthält drei Beispiele, die Post-Quanten-Kryptografie (PQC) TLS 1.3-Handshakes mit Apache Camel unter Verwendung des X25519MLKEM768-Hybridschlüsselaustauschs demonstrieren.

X25519MLKEM768 kombiniert klassisches X25519-Elliptische-Kurven-Diffie-Hellman mit ML-KEM-768, einem Post-Quanten-gitterbasierten Schlüsselverkapselungsmechanismus (NIST FIPS 203). Beide Algorithmen laufen zusammen, sodass die Sicherheit auch dann gewahrt bleibt, wenn einer von ihnen gebrochen wird.

Beispiele

BeispielJDKTLS-AnbieterAnsatz
pqc-ssl-contextJDK 27SunJSSE (JDK-nativ)JEP 527 fügt dem integrierten TLS-Stack des JDK PQC-Named-Groups hinzu
pqc-kem-jdk24JDK 24BouncyCastle JSSE 1.83BCJSSE für PQC-TLS, JDK verfügt über native ML-KEM-Primitive via JEP 496
pqc-ssl-context-jdk21JDK 21BouncyCastle JSSE 1.83BCJSSE ersetzt SunJSSE, um PQC-TLS-Unterstützung bereits heute bereitzustellen

Alle drei Beispiele werden vollständig über camel.ssl.*-Eigenschaften konfiguriert und führen einen eigenständigen TLS 1.3-Handshake unter Verwendung von X25519MLKEM768 für den Post-Quanten-Schlüsselaustausch durch, der beim Start verifiziert und bei Bedarf über REST-Endpunkte verfügbar ist.

Wie sie sich unterscheiden

JDK 27 nativ (pqc-ssl-context)

Verwendet den in das JDK integrierten SunJSSE-Anbieter, der in JDK 27 durch JEP 527 PQC-TLS-Unterstützung erhält.

  • PQC konfiguriert über camel.ssl.namedGroups=X25519MLKEM768,x25519
  • Selbstsigniertes Zertifikat wird automatisch erzeugt (camel.ssl.selfSigned=true)
  • REST-Endpunkte werden über HTTPS auf Port 8443 bereitgestellt
  • Named Groups werden über SSLParameters.setNamedGroups() gesetzt (Standard-JDK-API)

JDK 24 mit BouncyCastle (pqc-kem-jdk24)

Verwendet den JSSE-Anbieter von BouncyCastle (BCJSSE), um PQC-TLS-Unterstützung in JDK 24 zu bringen. Während JDK 24 natives ML-KEM als eigenständiges Krypto-Primitiv enthält (JEP 496), stellt es keine PQC-Named-Groups in seinem TLS-Stack bereit. BCJSSE schließt diese Lücke.

  • PQC konfiguriert über camel.ssl.provider=BCJSSE und camel.ssl.namedGroups=X25519MLKEM768,secp256r1
  • Selbstsigniertes Zertifikat wird automatisch erzeugt (camel.ssl.selfSigned=true)
  • REST-Endpunkte werden über HTTPS auf Port 8443 bereitgestellt
  • Ein zusätzlicher /api/verify-kem-Endpunkt demonstriert die native javax.crypto.KEM-API von JDK 24 mit providerübergreifenden Interop-Tests
  • Erfordert eine Bootstrap-Klasse, um die BouncyCastle-Anbieter zu registrieren

JDK 21 mit BouncyCastle (pqc-ssl-context-jdk21)

Verwendet den JSSE-Anbieter von BouncyCastle (BCJSSE), um PQC-TLS-Unterstützung in JDK 21 zu bringen, ohne auf JDK 27 warten zu müssen.

  • PQC konfiguriert über camel.ssl.provider=BCJSSE und camel.ssl.namedGroups=X25519MLKEM768,secp256r1
  • Selbstsigniertes Zertifikat wird automatisch erzeugt (camel.ssl.selfSigned=true)
  • REST-Endpunkte werden über HTTPS auf Port 8443 bereitgestellt
  • Erfordert eine Bootstrap-Klasse, um die BouncyCastle-Anbieter zu registrieren und ECDH aus jdk.tls.disabledAlgorithms zu entfernen

Gegenüberstellung

Voraussetzungen

  • Maven 3.9+
  • Apache Camel 4.19.0-SNAPSHOT (oder neuer) im lokalen Maven-Repository installiert
  • JDK 27 EA für das native Beispiel, JDK 24 für das JDK-24-Beispiel oder JDK 21+ für das JDK-21-Beispiel

Schnellstart

JDK-27-Beispiel

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-Beispiel

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-Beispiel

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

Alle drei geben "pqcVerified": true zurück, wenn der PQC-TLS-Handshake erfolgreich ist.

JDK-Kompatibilität

Hilfe und Beiträge

Wenn du auf ein Problem mit Camel stößt oder Feedback hast, dann bitte lass es uns wissen.

Wir lieben auch Mitwirkende, also mach mit :-)

Die Camel-Reiter!

Tool herunterladen
AspektJDK 27 nativJDK 24 + BouncyCastleJDK 21 + BouncyCastle
JDK-AnforderungJDK 27 EAJDK 24+JDK 21+
TLS-AnbieterSunJSSEBCJSSE 1.83BCJSSE 1.83
PQC-MechanismusJEP 527 (integriert)BouncyCastle-TLS-BibliothekBouncyCastle-TLS-Bibliothek
Natives ML-KEM (KEM-API)JaJa (JEP 496)Nein
Konfigurationcamel.ssl.*-Eigenschaftencamel.ssl.*-Eigenschaftencamel.ssl.*-Eigenschaften
Zertifikatsverwaltungcamel.ssl.selfSigned=truecamel.ssl.selfSigned=truecamel.ssl.selfSigned=true
REST-Port8443 (HTTPS)8443 (HTTPS)8443 (HTTPS)
Zusätzliche AbhängigkeitenKeine (JDK-nativ)bcprov, bctlsbcprov, bctls
JDK-VersionML-KEM KEM-APIPQC in TLSAnsatz
21NeinJa (über BouncyCastle)pqc-ssl-context-jdk21 - BCJSSE bietet PQC-TLS-Unterstützung
24Ja (JEP 496)Ja (über BouncyCastle)pqc-kem-jdk24 - BCJSSE für TLS, JDK verfügt über native ML-KEM-Primitive
27JaJa (nativ)pqc-ssl-context - JEP 527 fügt SunJSSE PQC hinzu