미안하지만 ... 같은 것에 관해서는 너무 많은 질문이 있지만 어떤 것도 작동하지 않는다는 것을 알고 있습니다.
jar 또는 클래스를 암호화하여 아무도 검색 할 수 없도록하려고합니다.
실제로 응용 프로그램에는 서버 데이터베이스의 사용자 이름과 암호가 있습니다. 따라서 누군가 검색하면 데이터베이스에 무단으로 액세스 할 수 있습니다.
많은 소프트웨어를 사용해 봤는데, exe 파일을 만든 후 쉽게 추출 할 수 있습니다.
내가 무엇을 할 수 있는지 말해주세요.리버스 엔지니어링을 피하기 위해 .class 또는 .jar 파일 암호화
답변
해결책을 얻었습니다.
ProGuard는 리버스 엔지니어링에서 클래스 또는 jar를 안전하게 지키는 최고의 소프트웨어입니다.
사용 후 누구나 암호 해독을 시도하면 암호가 변경되어 이해할 수 없습니다.
@vincent가 말했듯이 접근법은 문제를 해결하기에 좋은 방법이 아닙니다. ProGoard 사이트에서 "프로그램과 라이브러리를 리버스 엔지니어링하기가 더 어려워진다." 그건 안전 할 것 같지 않아. –
속성 파일을 사용할 수 있습니다. 병 밖으로 외부화하십시오. "getResourceAsStream"또는 이와 유사한 정보를 통해 정보를 검색하십시오.
두 번째 해결 방법은 JNDI 구성을 사용하는 것입니다. 따라서 jar 파일에서 이름을 정의하면 웹 서버가 연결의 모든 속성을 선언합니다.
예를 들어 설명해주십시오 ... 좋은 것처럼 들리지만 ... 속성 파일에 어떤 형식으로 작성해야합니까? JNDI 구성에 대해 잘 모르는 경우에도 설명하십시오. –
http://stackoverflow.com/questions/4085420/how-do-i-read-a-properties-file-and-connect-a-mysql-database 스프링을 사용하면 더 쉬울 수도 있고, 클래스 패스에 파일을 추가하는 것을 잊지 마십시오. JNDI의 경우 응용 프로그램 서버에 따라 다르므로 검색을 허용합니다. tomcat에 대한 정보는 다음과 같습니다. http://tomcat.apache.org/tomcat-7.0-doc/jndi-resources-howto.html – vincent
if i .properties 또는 .config에 사용자 이름과 암호를 입력하면 메모장에서 쉽게 열 수 있습니다. 기밀 데이터를 숨기거나 암호화하는 것으로는 충분하지 않다고 생각합니다. –
- 1. 리버스 엔지니어링을 위해 핵심을 만들기 위해 ProGuard 규칙을 설정하는 방법
- 2. 리버스 엔지니어링을 시작하려면 무엇이 필요합니까? ?
- 3. 문자열을 암호화하고 iOS에서 리버스 엔지니어링을 방지합니다.
- 4. JavaEE 6 .war 파일의 리버스 엔지니어링을 방지하려면 어떻게합니까?
- 5. 디버그 빌드는 어떻게 리버스 엔지니어링을 쉽게합니까?
- 6. 코드를 보호하기 위해 Android APK 파일의 리버스 엔지니어링을 방지하려면 어떻게해야하나요?
- 7. 키로 알고리즘 리버스 엔지니어링을 시작하는 방법
- 8. 리버스 엔지니어링을 시작하는 방법 스트리밍 서비스
- 9. 리버스 엔지니어링을 학습하는 데 가장 유용한 도구
- 10. 리버스 엔지니어링을 사용하는 간단한 C++ UML
- 11. s40의 DRM 암호화 JAR 파일
- 12. 개인 키의 리버스 엔지니어링을 방지하는 스토리지 클래스는 무엇입니까?
- 13. localhost와 cors 오류를 피하기 위해 nginx 리버스 프록시
- 14. Appcelerator를 사용하여 apk 빌드의 리버스 엔지니어링을 피하는 방법은 무엇입니까?
- 15. 리버스 엔지니어링 간단한 암호화 알고리즘
- 16. 자바 : .jar 패키지의 JPG 파일 암호화
- 17. BlackBerry - 암호화 피하기
- 18. Java/Gradle - .class 파일에서 .jar 파일 만들기
- 19. Hibernate 리버스 엔지니어링을 사용하면 mappingResources 스타일이 생성되지만 annotatedClasses가 필요합니다.
- 20. 안드로이드 리버스 엔지니어링을 중지하려면 Pro-guard 파일에 무엇을 써야합니까?
- 21. asp.net 응용 프로그램의 리버스 엔지니어링을 중지 asp.net 코드를 작성하는 방법
- 22. .class 파일/s를 .jar 파일의 .jar 파일로 변환합니다.
- 23. 기본 리버스 엔지니어링을 방지하기 위해 C++에서 변수 및 함수 이름을 난독 화합니다.
- 24. 경고를 피하기 위해 simplexml_load_file 파일 검사
- 25. BIS의 수출 제한을 피하기 위해 iPhone 앱에서 56 비트 암호화
- 26. 데이터베이스 암호화 또는 파일 시스템 암호화?
- 27. 파일 정렬 사용을 피하기 위해 인덱스 최적화
- 28. 자바 왕복 - 엔지니어링을 위해 어떤 도구를 권장합니까?
- 29. 자체 서명 된 JAR 피하기
- 30. 리버스 엔지니어링?
데이터베이스에 직접 연결하는 대신 웹 서비스를 사용하십시오. –
컴파일 된 코드에 자격 증명을 넣지 않아야합니다. 항상 속성 (환경 변수 또는 구성 또는 응용 프로그램 매개 변수)으로 런타임에 전달하십시오. – mwhs
암호 만 암호화하십시오. –