Skip to content
KitploitKITPLOIT
ツールブログ
提出
ツールブログ
提出

ハッキング、侵入テスト、サイバーセキュリティツールをあなたのセキュリティアーセナルに!

Kitploitはハッキング、サイバーセキュリティ、ペネトレーションテストのツールディレクトリです。最新のプロジェクトアップデートを見つけて、脆弱性の発見、システム分析、テストの自動化、セキュリティの強化を行いましょう。

··フィード·お問い合わせ·プライバシー·© 2026 Kitploit

ツールディレクトリ

カテゴリ

すべてのカテゴリを見る
Loading categories
camel-pqc-tls — JDK 21(BouncyCastle)およびJDK 27(ネイティブ)上で、X25519MLKEM768ハイブリッド鍵交換を使用したApache Camelによる耐量子暗号(PQC)TLS 1.3の例 | Kitploit
ツール/GitHubGitHub/oscerd/camel-pqc-tls
ネットワークセキュリティ暗号化学習と教育厳選リソース
GitHuboscerd/camel-pqc-tls

camel-pqc-tls

JDK 21(BouncyCastle)およびJDK 27(ネイティブ)上で、X25519MLKEM768ハイブリッド鍵交換を使用したApache Camelによる耐量子暗号(PQC)TLS 1.3の例

リポジトリを見る
213ヶ月前未レビュー

人気

すべて見る →

コミュニティで最も使われているツールを見つけましょう。

すべてのツールを探索

ツールコレクションを閲覧

すべてのツールを見る →
共有

Apache Camel によるポスト量子 TLS

このリポジトリには、X25519MLKEM768 ハイブリッド鍵交換を使用し、Apache Camel で ポスト量子暗号 (PQC) TLS 1.3 ハンドシェイク を実演する3つの例が含まれています。

X25519MLKEM768 は、古典的なX25519楕円曲線ディフィー・ヘルマンと、ポスト量子の格子ベース鍵カプセル化メカニズムである ML-KEM-768 (NIST FIPS 203) を組み合わせたものです。両アルゴリズムが連携して動作するため、片方が破られてもセキュリティは維持されます。

例

ExampleJDKTLS ProviderApproach
pqc-ssl-contextJDK 27SunJSSE (JDK native)JEP 527 が JDK 組み込みの TLS スタックに PQC 名前付きグループを追加
pqc-kem-jdk24JDK 24BouncyCastle JSSE 1.83PQC TLS 用の BCJSSE。JDK には JEP 496 によるネイティブの ML-KEM プリミティブが含まれる
pqc-ssl-context-jdk21JDK 21BouncyCastle JSSE 1.83BCJSSE が SunJSSE を置き換え、今すぐ PQC TLS サポートを提供

3つの例はすべて camel.ssl.* プロパティだけで構成され、X25519MLKEM768 を使用した自己完結型の TLS 1.3 ハンドシェイクをポスト量子鍵交換として実行します。起動時に検証され、REST エンドポイント経由でオンデマンドに利用できます。

相違点

JDK 27 ネイティブ (pqc-ssl-context)

JDK 27 の JEP 527 を通じて PQC TLS サポートを獲得した、JDK 組み込みの SunJSSE プロバイダーを使用します。

  • PQC は camel.ssl.namedGroups=X25519MLKEM768,x25519 で構成
  • 自己署名証明書を自動生成 (camel.ssl.selfSigned=true)
  • REST エンドポイントはポート 8443 で HTTPS 経由で提供
  • 名前付きグループは SSLParameters.setNamedGroups() (標準の JDK API) で設定

JDK 24 + BouncyCastle (pqc-kem-jdk24)

BouncyCastle の JSSE プロバイダー (BCJSSE) を使用して、JDK 24 に PQC TLS サポートをもたらします。JDK 24 にはスタンドアロンの暗号プリミティブとしてネイティブの ML-KEM (JEP 496) が含まれていますが、TLS スタックでは PQC 名前付きグループを公開していません。BCJSSE がそのギャップを埋めます。

  • PQC は camel.ssl.provider=BCJSSE と camel.ssl.namedGroups=X25519MLKEM768,secp256r1 で構成
  • 自己署名証明書を自動生成 (camel.ssl.selfSigned=true)
  • REST エンドポイントはポート 8443 で HTTPS 経由で提供
  • 追加の /api/verify-kem エンドポイントは、クロスプロバイダー相互運用テストで JDK 24 のネイティブな javax.crypto.KEM API を実演
  • BouncyCastle プロバイダーを登録するためのブートストラップクラスが必要

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

JDK 27 を待たずに、BouncyCastle の JSSE プロバイダー (BCJSSE) を使用して JDK 21 に PQC TLS サポートをもたらします。

  • PQC は camel.ssl.provider=BCJSSE と camel.ssl.namedGroups=X25519MLKEM768,secp256r1 で構成
  • 自己署名証明書を自動生成 (camel.ssl.selfSigned=true)
  • REST エンドポイントはポート 8443 で HTTPS 経由で提供
  • BouncyCastle プロバイダーを登録し、jdk.tls.disabledAlgorithms から ECDH を削除するためのブートストラップクラスが必要

横並び比較

前提条件

  • 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

3つとも、PQC TLS ハンドシェイクが成功すると "pqcVerified": true を返します。

JDK 互換性

ヘルプと貢献

Camel の使用中に問題が発生した場合やフィードバックがある場合は、お知らせください。

コントリビューターも大歓迎です。ぜひ参加してください :-)

Camel ライダーズ!

ツールをダウンロード
項目JDK 27 ネイティブJDK 24 + BouncyCastleJDK 21 + BouncyCastle
JDK 要件JDK 27 EAJDK 24+JDK 21+
TLS プロバイダーSunJSSEBCJSSE 1.83BCJSSE 1.83
PQC メカニズムJEP 527 (組み込み)BouncyCastle TLS ライブラリBouncyCastle TLS ライブラリ
ネイティブ ML-KEM (KEM API)ありあり (JEP 496)なし
構成camel.ssl.* プロパティcamel.ssl.* プロパティcamel.ssl.* プロパティ
証明書管理camel.ssl.selfSigned=truecamel.ssl.selfSigned=truecamel.ssl.selfSigned=true
REST ポート8443 (HTTPS)8443 (HTTPS)8443 (HTTPS)
追加の依存関係なし (JDK ネイティブ)bcprov, bctlsbcprov, bctls
JDK バージョンML-KEM KEM APITLS での PQCアプローチ
21なしあり (BouncyCastle 経由)pqc-ssl-context-jdk21 - BCJSSE が PQC TLS サポートを提供
24あり (JEP 496)あり (BouncyCastle 経由)pqc-kem-jdk24 - TLS 用の BCJSSE。JDK にはネイティブの ML-KEM プリミティブが含まれる
27ありあり (ネイティブ)pqc-ssl-context - JEP 527 が SunJSSE に PQC を追加