2011-12-08 4 views
0

Android 인앱 결제의 샘플 코드에서 인증 논리가 앱에 기록되며 시장 서버에서 반환 된 json 문자열은 단지 인간이 이해할 수있는 평야 형식입니다 텍스트를 암호화하지 않아도됩니다. 누군가가 컴파일을 능숙하게 수행하면 전체 검증이 매우 취약해질 수 있습니다. 또한 검증은 마켓 서버에 돈을 지불하는 거래 프로세스 만 보증하지만 거래 또는 가상 상품의 제공을 무시하므로 앱과 애플리케이션 사이의 결제 보안 확인을 보장하는 방법에 대한 문제가 발생합니다. 우리 자신의 서버, 예를 들어 의도적으로 시장 서버에서 반환 된 구매 상태를 우리 서버에 보내기 전에 변경하는 것을 방지 할 수 있습니까?Android 인앱 결제 인증 메커니즘 정보

답변

0

안드로이드 마켓에서 구매하려면 nonce를 제공해야합니다.이 nonce는 임의의 long 값입니다. JSON에는 nonce를 기반으로 한 nonce가 포함되어 있으며, 귀하가 보낸 것인지 확인할 수 있습니다.

+0

앱은 공개 키로 서명해야합니다. 사용자는 시장과 통신하려면이 정보를 알아야합니다. –

+0

해커가 다른 정보를 변경하면 어떻게됩니까? 응용 프로그램의 JSON 문자열에서 "구매 상태"? 내 서버는 그 유효성을 알 수 없습니다. 해커가 내 앱의 apk을 디 컴파일 한 후에 내 서버에서 앱을 전송하더라도 공개 키를 캡처 할 수 있습니까? – Shadow

+0

아니요 내가 apk를 decompiling 한 후에도 apk가 다시 공개 키로 서명해야합니다. 그러면 공개 키로 인증해야합니다. 그러면 시장 만이이를 valid.and로 식별하고 공개 키를 보내지 않아도됩니다. Google의 견본. 모든 logic security.java는 서버 측이어야합니다. –