2011-03-07 3 views
0

Google에서 작성하는 앱은 인앱 구매 API를 사용하여 다운로드 가능한 '패키지'로 곧 개선 될 예정입니다. 따라서 우리는 사용자가 메모리 카드에 다운로드/추출 할 수 있도록 (우리의 대형 응용 프로그램을 위해 내부 메모리를 사용하지 않기 위해) 우리가 원하는 콘텐츠를 확보하기를 원합니다. 그러나 우리는 파일을 어떻게 든 보호해야합니다. 그들은 단순히 SD에서 가져갈 수 없습니다.내 응용 프로그램에서 일부 파일을 난독 화하고 싶습니다. 어떻게해야합니까?

누구나 Android에서 그렇게 할 수있는 가능한/간단하고 일반적인 기술을 제안 할 수 있습니까?

답변

0

고유 한 기기 식별자와 강력한 키를 기반으로 해시를 생성하고 싶을 것입니다. this answer에서 설명한 기술을 사용하여 장치의 고유 식별자를 생성 할 수 있습니다. 앱이 해시를 서버에 전송하도록하고이 해시를 키로 사용하기 전에 패키지를 암호화해야합니다. 앱은 요청에 따라 키를 생성하여 데이터를 읽을 때 데이터를 해독합니다 (처음 생성 된 것과 동일한 방식으로). API에서 MessageDigest 클래스와 javax.crypto 패키지를 살펴보십시오.

+0

감사합니다. 이것들이 더 적합한 해결책 인 것 같습니다. – Hamid

1

ProGuard을 살펴 보려면 ADT와 잘 통합되어 있어야합니다. 좋은 ProGuard 구성 파일을 얻는 쉬운 방법은 Eclipse에서 새로운 Android 프로젝트를 만드는 것입니다. 최신 버전의 ADT가 자동으로이 프로젝트를 만듭니다. 프로젝트를 마우스 오른쪽 버튼으로 클릭하고 Android 도구> 내보내기를 사용할 때 사용됩니다.

+0

ProGuard는 코드를 난독 화하지만 다른 종류의 데이터는 이해하지 못한다는 것을 알고 있습니다. – Ori

+1

@Ori 맞아요. 다른 종류의 데이터를 보호 할 방법이 없습니다. apk와 함께 패키지 된 모든 비밀은 디버거를 통해 얻을 수 있습니다. – rook

+0

감사하지만, 내가 정확히 무엇을 요구하지 않습니다. 우리가 보호하고자하는 비 코드 리소스입니다. – Hamid

관련 문제