Protector4J 6 / P4JX
바이트코드의 전체 수명 주기를 보호
P4JX는 아카이브 접근, 클래스 파싱, 보호된 링킹, 인터프리터 실행, JIT 컴파일, 런타임 무결성 검사를 맞춤화된 HotSpot 보안 경계 안에 통합합니다.
보호된 클래스 수명 주기
JAR / WAR → .p4jx → VLX HotSpot → encrypted Metaspace → interpreter / JIT
Metaspace 바이트코드 상태: 암호문 유지
기존 클래스 암호화
먼저 복호화한 뒤 평문을 JVM에 전달
사용자 정의 ClassLoader는 디스크의 파일을 숨길 수 있지만, 표준 클래스 정의 경계와 런타임 검사 메커니즘은 그대로 노출됩니다.
- 클래스 로더가 집중된 가로채기 지점이 됩니다.
- 평문 클래스 구조가 표준 JVM 파이프라인으로 다시 들어갑니다.
P4JX 아키텍처
암호화 아카이브와 런타임이 하나의 보안 경계를 형성
보호는 인증된 아카이브 접근부터 파싱, 링킹, 인터프리터 실행, JIT 컴파일, 런타임 무결성 검사까지 계속 유지됩니다.
- VM 내부에 닫힌 아카이브 접근
- 메서드별 임시 적재와 즉시 재마스킹
- 인터프리터 및 JIT 복호화 체인
7개 보호 계층, 하나의 연속된 신뢰 체인
- L1 · 인증 암호화 아카이브
- L2 · 단계별 클래스 로딩
- L3 · 보호된 링킹
- L4 · 보호된 인터프리터 실행
- L5 · 컴파일 실행 보호
- L6 · 런타임 무결성
- L7 · 안티 인젝션 경계
모든 상태 전환을 보호
.p4jx 배포부터 VM 내부 실행까지 하나의 런타임 체인이 보호를 이어갑니다.
- 봉인
JAR, WAR 또는 라이브러리 콘텐츠를 보호된 .p4jx 아카이브로 패키징합니다. - 로딩
로딩 단계에서 보호된 콘텐츠를 VM 런타임으로 가져옵니다. - 링킹
VM 보안 경계 안에서 검증과 보호된 링킹을 완료합니다. - 실행
실행 단계는 런타임 보호 경계 안에 유지됩니다.
실제 Java 애플리케이션을 위해 설계
기존 배포 형태를 보호하면서 프레임워크와 스캐너가 의존하는 런타임 동작을 유지합니다.
Java: 8 · 11 · 17 · 21 · 25
운영체제: Windows · macOS · Linux
아키텍처: x64 · x86 · Arm64