당신이 가리키는 FAQ는 NetBeans 모듈을 난독 화하기위한 것입니다. 이것은 매우 복잡한 사용 사례이므로 정규 애플리케이션 인이 아닌 것으로 가정합니다.
매우 간략하게 : 난독 처리 프로세스가 클래스, 메소드 및 필드의 이름을 변경하여 더 어렵게 만듭니다. 응용 프로그램을 리버스 엔지니어링하십시오.
이
은 몇 가지 문제가 발생합니다
이
- JVM이 public 클래스의 공용 정적 무효 메인 (문자열 인수 [])를 가지고 응용 프로그램을 필요로를, 그래서 당신은이 이름을 변경하지 않는 난독을 알려야합니다
당신은 자기 반성의 어떤 종류를 사용하는
- 경우 수동
Additionall에서 설명한 바와 같이, 당신은
other cases 변경되는 관련 이름을 보호해야 proguard는 사용하지 않는 코드를 제거합니다. 사용되었지만 직접 참조되지 않은 클래스가있는 경우
-keep
도 필요합니다.
proguard 설명서에는 간단한 응용 프로그램을 난독 화하는 방법에 대한 example이 포함되어 있습니다. 당신이 -dontshrink
를 지정 난독 화는 코드가 유지되지 또는 코드를 유지에서 참조되지 제거하지 않는 한
-injars application.jar # obfuscate all the classes in the named jars
-outjars obfuscated.jar # save all the obfuscated classes to the named jar
-libraryjars <java.home>/lib/rt.jar # these are all the libraries that the application uses
-printmapping obfuscation.map # save a file linking the original names to the obfuscated ones
# this helps understanding stack traces from the obfuscated application
# we need to keep our main class and the application entry point
-keep public class com.mycompany.Application {
public static void main(java.lang.String[]);
}
: 여기에 (일부 덜 혼란 이름) 설명의 예입니다. 따라서 위의 구성에서는 main 메소드에서 (간접적으로) 참조되지 않은 코드는 제거됩니다.
Proguard에는 NetBeans 작업 과정과 통합하는 데 사용할 수있는 Ant 작업이 포함되어 있습니다. Ant를 사용하지 않고 직접 수동으로 실험 해 보길 권합니다. 그 과정에서 복잡한 요소 중 하나가 필요합니다. NetBeans로 응용 프로그램 jar를 빌드 한 다음 위의 구성으로 난독 화하려고 시도합니다 (필요한 경우 fleshed). 무수한 것들이 잘못 될 수 있으므로 난독 화 된 응용 프로그램을 테스트하십시오. Proguard 설정이 끝나면 빌드 파일에 Ant 태스크를 추가하여 NetBeans 내에서 난독 처리 프로세스를 자동화하십시오.
해당 페이지의 어느 부분을 이해하지 못합니까? 개미를 이해합니까? –