프로그램을 개발하다보면, 개인일 경우에는 상관이 없지만, 회사에서 회사로 상용으로 제공하는 컴포넌트나 라이브러리 같은 경우에는 최소한의 코드 보안은 필수입니다.
특히나 java의 경우에는 decompile이 잘 되는 구조이기 때문에, obfuscate는 꼭 필요하지는 않지만, 사용할 필요가 있습니다.
obfuscate 툴은 상용 버전들과 오픈소스 버전들이 있는데..
아래의 예제는 오픈소스인 proguard를 프로젝트 빌드파일인 build.xml에서 쉽게 사용하고 있는 예제입니다.
특히나 java의 경우에는 decompile이 잘 되는 구조이기 때문에, obfuscate는 꼭 필요하지는 않지만, 사용할 필요가 있습니다.
obfuscate 툴은 상용 버전들과 오픈소스 버전들이 있는데..
아래의 예제는 오픈소스인 proguard를 프로젝트 빌드파일인 build.xml에서 쉽게 사용하고 있는 예제입니다.
<taskdef="proguard" classname="proguard.ant.ProGuardTask" classpath="${lib-ext}/proguard.jar" />더 자세한 내용은 http://proguard.sourceforge.net/manual/examples.html 에서 참고를 하세요.. ^^
<task name="dist-with-obfuscate" depends="compile" >
<proguard>
-libraryjars ${java.home}/lib/rt.jar <-- java library
-injars maked-jar.jar <-- jar task로 만들어진 원본 jar 파일
-outjar maked.jar <-- 만들어질 jar 파일
-keep class net.sjava.obfuscate.TestMain { public *; } <-- main 클래스의 public은 예외
-verbose <-- 과정을 화면에 뿌림
</proguard>
</task>
'tools' 카테고리의 다른 글
| java decompiler (0) | 2008/07/24 |
|---|---|
| Sun xVM VirtualBox (0) | 2008/07/09 |
| Ant with proguard obfuscate tool (0) | 2008/07/09 |
| jad decompiler 사용하기.. (0) | 2008/06/26 |
| eclipse에서 ant ftp task 사용하기 (0) | 2008/06/26 |