Protector4J 6 / P4JX
バイトコードのライフサイクル全体を保護
P4JXは、アーカイブアクセス、クラス解析、保護されたリンク、インタプリタ実行、JITコンパイル、ランタイム整合性検査を、カスタマイズされたHotSpotのセキュリティ境界内に統合します。
保護されたクラスのライフサイクル
JAR / WAR → .p4jx → VLX HotSpot → encrypted Metaspace → interpreter / JIT
Metaspaceバイトコードの状態: 暗号化を維持
従来のクラス暗号化
先に復号し、平文をJVMへ渡す
カスタムClassLoaderはディスク上のファイルを隠せますが、通常のクラス定義境界とランタイム検査機構は引き続き利用できます。
- クラスローダーが集中的なインターセプトポイントになります。
- 平文のクラス構造が標準JVMパイプラインに戻ります。
P4JXアーキテクチャ
暗号化アーカイブとランタイムが一つのセキュリティ境界を形成
保護は認証付きアーカイブへのアクセスから始まり、解析、リンク、インタプリタ実行、JITコンパイル、ランタイム整合性検査まで継続します。
- VM内部に閉じたアーカイブアクセス
- メソッド単位の一時展開と即時再マスク
- インタプリタとJITの復号チェーン
7つの保護層、1本の連続した信頼チェーン
- L1 · 認証付き暗号化アーカイブ
- L2 · 段階的なクラスロード
- L3 · 保護されたリンク
- L4 · 保護されたインタプリタ実行
- L5 · コンパイル実行の保護
- L6 · ランタイム整合性
- L7 · アンチインジェクション境界
すべての状態遷移を保護
.p4jxの配布からVM内実行まで、一貫したランタイムチェーンが保護を引き継ぎます。
- 封入
JAR、WAR、ライブラリの内容を保護された.p4jxアーカイブに格納します。 - ロード
ロード段階で保護された内容をVMランタイムへ取り込みます。 - リンク
VMのセキュリティ境界内で検証と保護されたリンクを完了します。 - 実行
実行段階はランタイムの保護境界内に保たれます。
実際のJavaアプリケーションのために設計
既存の配布形態を保護しながら、フレームワークやスキャナが必要とするランタイム動作を維持します。
Java: 8 · 11 · 17 · 21 · 25
OS: Windows · macOS · Linux
アーキテクチャ: x64 · x86 · Arm64