입력

난독화 해제된 출력

Java 난독화 해제기란?

Java 난독화 해제기는 일반적인 난독화 패턴을 역변환하고 Java 코드를 정리합니다. 난독화되거나 축소된 Java를 붙여넣으면 디버깅 및 분석을 위한 읽기 쉬운 출력을 얻을 수 있습니다. Java는 엔터프라이즈 애플리케이션, Android 개발 및 백엔드 시스템에서 널리 사용됩니다.

이 도구는 완전히 브라우저에서 실행됩니다. 코드는 서버에 전송되지 않습니다. 유니코드 이스케이프 디코딩, 문자열 연결 해결, Java 클래스와 메서드 구조에 대한 적절한 들여쓰기 복원 등 일반적인 난독화 기술을 처리합니다.

이 도구 사용 방법

1

붙여넣기 또는 업로드

난독화되거나 축소된 Java 코드를 왼쪽 패널에 붙여넣거나 .java 또는 .txt 파일을 업로드합니다. 샘플을 클릭하여 예제를 로드합니다.

2

난독화 해제된 출력 보기

오른쪽 패널에 깔끔하고 포맷된 Java 코드가 표시됩니다. 유니코드 이스케이프가 디코딩되고, 문자열 연결이 해결되며, 들여쓰기가 복원됩니다.

3

복사 또는 다운로드

복사 또는 다운로드를 사용하여 추가 분석 또는 디버깅을 위해 결과를 .java 파일로 저장합니다.

Java 난독화 해제기 예제

가장 일반적인 Java 난독화 기술 중 하나인 유니코드 이스케이프 시퀀스를 사용한 Java 코드의 난독화 해제 예제입니다.

예제: 유니코드 이스케이프 난독화

난독화된 입력:

입력

난독화 해제된 출력:

출력

Java 난독화 해제기가 도움이 되는 경우

Java는 Android 앱, 엔터프라이즈 백엔드 및 임베디드 시스템에서 사용됩니다. 난독화된 Java 코드는 Android APK 리버스 엔지니어링, 악성코드 분석, 라이선스 보호 연구 및 레거시 코드 복구에서 일반적입니다. ProGuard와 같은 도구는 식별자를 변명합니다—완전한 역변환에는 전문 디컴파일러가 필요합니다. 이 도구는 더 간단한 소스 수준 난독화 패턴을 자동으로 처리합니다.

자주 묻는 질문

이 도구는 ProGuard 난독화를 역변환할 수 있나요?

ProGuard는 클래스, 메서드, 필드를 짧고 의미 없는 이름으로 변명합니다. 완전한 역변환에는 매핑 파일이 필요합니다. 이 도구는 유니코드 이스케이프와 문자열 연결과 같은 소스 수준 패턴을 처리하지만, ProGuard 매핑 없이는 식별자를 원래 이름으로 되돌릴 수 없습니다.

Java 코드가 서버에 전송되나요?

아니요. 모든 난독화 해제는 브라우저에서 완전히 실행됩니다. 코드는 어떤 서버에도 업로드되지 않습니다.

이 Java 난독화 해제기는 어떤 난독화 패턴을 처리하나요?

유니코드 이스케이프 시퀀스(\u0041 → A)를 디코딩하고, 문자열 연결("hel" + "lo" → "hello")을 해결하며, Java 블록(class, interface, if, for, while, try/catch/finally)에 대한 들여쓰기를 복원하고, 공백을 정규화합니다.

Android 코드에서 동작하나요?

이 도구는 Java 소스 텍스트(.java, .txt)를 처리합니다. Android APK의 경우 먼저 jadx 또는 apktool과 같은 디컴파일러를 사용하여 바이트코드를 Java 소스로 변환한 다음, 이 도구로 디컴파일된 출력을 정리할 수 있습니다.

.class 또는 .jar 파일을 업로드할 수 있나요?

이 도구는 Java 소스 텍스트(.java, .txt)를 처리합니다. 바이너리 .class 및 .jar 파일에는 바이트코드 디컴파일러가 필요한 컴파일된 바이트코드가 포함되어 있습니다. 먼저 jadx 또는 CFR을 사용하여 바이트코드를 디컴파일하세요.

관련 도구

Oracle Java 문서Android 개발자 참조에서 Java에 대해 자세히 알아보세요.