2011-12-08 11 views
0

Androidアプリ内課金のサンプルコードでは、検証ロジックがアプリに書き込まれており、市場サーバから返されたjson文字列は人間が理解できるプレーンテキストは暗号化されません。 誰かがコンパイルに非常に堪能であれば、全体の検証は非常に脆弱です。さらに、検証は、市場サーバーにお金を支払うの取引プロセスを保証するだけでなく、トランザクションやアプリケーションの間の請求のセキュリティ検証を保証する方法についての問題を引き出す仮想商品の配信を無視し、マーケットサーバーから返された購入状態を意図的に変更して自社のサーバーに送信することを防ぐなど、独自のサーバーを使用していますか?Androidアプリ内課金確認メカニズムについて

答えて

0

Androidマーケットから購入する場合は、ノンスを入力する必要があります。このノンスはランダムな長い値です。ノンスに基づいたノンスがJSONに含まれています。

+0

アプリは公開鍵で署名されます。ユーザーは市場とのコミュニケーションのためにこれを知っている必要があります。 –

+0

ハッカーが他の情報を変更するとどうなりますか?アプリのJSON文字列の「購入状態」ですか?自分のサーバーはその妥当性を理解できません。そして、私のアプリのAPKを逆コンパイルした後、私のサーバーから公開鍵を受け取っても、ハッカーはその公開鍵をキャプチャする可能性がありますか? – Shadow

+0

私はあなたのapkを逆コンパイルした後にapkを公開鍵で再度署名する必要があることを意味していませんでした。そうすれば、市場はそれをvalid.andとして識別し、公開鍵を送る必要はありません。 Googleのsample.Allロジックsecurity.javaはサーバー側でなければなりません。 –

関連する問題