Protector4J는 어떻게 작동하나요?
현재 자바 코드 보호 솔루션의 문제점
Protector4J의 작동 방식을 이해하기 전에, 다른 자바 코드 보호 솔루션에 존재하는 문제점들을 먼저 살펴보겠습니다.
코드 난독화
JVM 바이트코드는 의미론적 특성이 매우 강하기 때문에 분석 및 판독이 매우 쉽습니다. 동적 디버깅을 통해 실행 로직을 쉽게 분석할 수 있으므로 난독화는 신뢰할 수 있는 보호 솔루션이 아닙니다.
더 자세한 내용은 해당 기사를 참조하십시오. https://protector4j.com/articles/the-issues-of-code-obfuscation/
클래스 파일 암호화
JVM 첨부 메커니즘의 존재로 인해 일반 JRE에서 분리되지 않은 모든 소위 암호화된 코드는 첨부 도구를 통해 쉽게 얻을 수 있습니다. 따라서 이는 가장 비효과적인 보호 솔루션입니다.
더 자세한 내용은 해당 기사를 참조하십시오. https://protector4j.com/articles/the-issues-of-class-encryption/
VMP 보호
가상화 보호는 가장 안전한 코드 보호 방식이지만, 성능에 심각한 영향을 미치기 때문에 프로그램의 핵심 코드에만 적용할 수 있습니다. 다른 코드는 여전히 노출 위험에 노출되어 있습니다. 해커는 코드의 다른 부분을 공격하여 가상화된 코드의 기능 정보를 탈취할 수 있습니다.
자세한 내용은 해당 기사를 참조하십시오. https://protector4j.com/articles/the-issues-of-vm-protection/
AOT 컴파일
AOT 컴파일의 구성 및 컴파일 과정은 매우 어렵고, 컴파일 실패 확률이 높습니다. 컴파일이 성공하더라도 코드 로직은 바이트코드 표현에서 기계어 표현으로 변환될 뿐, 내재된 로직은 특별한 보호 장치 없이 그대로 남아 있습니다. 따라서 컴파일 및 실행 메커니즘을 이해할 수 있다면, 읽기 쉬운 코드라도 역설계가 가능합니다.
더 자세한 내용은 해당 기사를 참조하십시오. https://protector4j.com/articles/the-issues-of-aot-protection/
Protector4J는 어떻게 작동하나요?
우리는 JARX라는 자체 압축 패키지 형식을 정의했습니다.
Java 코드를 보호하기 위해 JARX라는 자체 압축 문서 형식을 개발하여 JVM 런타임에 통합했습니다. Protector4J로 처리된 JAR 파일은 JARX 형식으로 변환됩니다.
우리는 JVM에 대한 심층적인 맞춤 설정 및 수정을 진행했습니다.
저희는 JVM에 대한 심층적인 연구를 통해 심도 있는 맞춤 설정 및 수정을 진행했습니다. 모든 추가적인 메커니즘을 제거하고 바이너리 보안 수준에서 많은 강화 및 최적화를 적용했습니다. 이를 통해 크래커가 기존 방법을 이용하여 클래스 정보를 추출하는 것을 방지합니다. 현재의 기술력으로 Protector4J로 보호되는 암호화 애플리케이션은 높은 수준의 보안을 제공한다고 확신합니다. 하지만 크래킹과 안티크래킹 간의 싸움은 끊임없이 발전하고 있습니다. 저희는 애플리케이션의 보안을 지속적으로 강화하기 위해 암호화 및 보호 솔루션을 지속적으로 개선해 나갈 것입니다.