2016-06-28 4 views
0

StackOverflow는 특정 질문에 대답하고 주관적인 의견을 회피하기위한 것임을 알고 있습니다. 내 질문에 단 하나의 정답이 있으므로 여기에 게시 할 것입니다.순서는? ProGuard + JWrapper + Launch4J

상업용으로 배포 할 Java 데스크톱 앱 (JavaFX)을 만들었습니다. Java 코드는 쉽게 리버스 엔지니어링되어 있으므로 ProGuard와 같은 것을 사용하여 난독 화하는 것이 중요합니다. 사용자가 .exe (내 사이트에서 다운로드)를 두 번 클릭 한 다음 설치 프로그램이 표준 소프트웨어처럼 실행되도록 내 응용 프로그램을 패키징하고 싶습니다. 이것은 ProGuard의 범위를 벗어나는 것으로 보이지만 JWrapper와 Launch4J는 비슷한 기능을 제공하는 것으로 보인다. 두 사람은 Windows 기본 실행 파일로 항아리를 포장하고 스플래시 화면을 표시하며 JRE를 포함한다고 주장하지만 차이점은 혼란 스럽습니다.

  • 설치 마법사 (즉, 바탕 화면에 바로 가기를 만들 + 안전한 곳에 EXE 파일을 배치하고, 또한 어딘가에 EULA를 추가) :

    는 특히, 나는 다음이 필요합니다.

  • 웹 업데이트 응용 프로그램에 대한 사용자의 제한을 지정 EULA (최종 사용자 사용권 계약)를 추가 (라이선스를 사용하여 (다소) 응용 프로그램을 보호하기 위해
  • 능력을 (JWrapper이 사용하는 URL이 + 경로를 구축 제공하는 것) License3j는 유망 해 보인다.)

이들의 특징은 herehere을 발견 할 수 있지만 단지 (나는 또한 어딘가에서는 Eula.txt을 작성할 수 있습니다 가정) 바탕 화면 바로 가기를 perform web updates 할 수있는 능력을 언급하고 언급 JWrapper.

ProGuard, JWrapper 및 Launch4j 순서로 코드 작성을 마친 후에는 어떻게해야합니까? ProGuard를 먼저 (축소, 최적화 및 난독 화) 한 다음 JWrapper와 Launch4j를 추측하고 있습니까? 아니면 3/2 만?

누락 된 추가 방법, 도구 또는 개념을 제안해도 좋습니다. 고맙습니다!

+0

JWrapper 사람들은 매우 효과적인 코드 보호라고 주장하는 JWCrypt를 제공하지만 무료는 아닙니다. – nyholku

+0

유망 해 보입니다. 감사합니다. 그래도 무료 대안이 항상 선호되는데 500 달러/년처럼 보입니다. 그렇다고 현실적이지는 않습니다. 민감한 데이터를 서버 측에 모두 처리하고 보호 서비스를 제공하는 평판 좋은 회사에 비용을 지불하면 JWCrypt보다 좋지 않을까요? 내 응용 프로그램은 대부분 스켈레톤 코드 만 포함하고 실행중인 프로세스에서 서버 코드의 "내장"을 요청합니다. 이견있는 사람? TY. – Mathomatic

+0

서버 측에서 보호하고자하는 코드를 유지할 수 있다면 서버가 손상되지 않았다고 가정하면 확실히 보호됩니다. 그러나 마지막 문장은 서버에서 클라이언트 측으로 코드를 가져 오는 것이 좋습니다. 물론 리버스 엔지니어링을 사용하면 먼저 클라이언트 응용 프로그램에서 코드를 가져 오는 것이 안전합니다. – nyholku

답변

1

이 질문에 유래에 대한 범위를 벗어나 보이지만, 그것을 대답 :

  1. 이 먼저 응용 프로그램에 ProGuard를 적용 응용 프로그램
  2. (launch4j 또는 jwrapper 중 하나를 적용의 주요 방법을 유지하는 당신까지 선택) ProGuard에 의해 처리 된 항아리에서
+0

의견을 보내 주셔서 감사합니다. – Mathomatic