0

重複の可能性:
アプリ内購入で完全版のロックを解除する安全な方法

アプリ内購入後にダウンロードされたコンテンツが別のデバイスにコピーされないように保護するための推奨される方法は何ですか? 典型的なプロセスは、コンテンツを「Application Support」フォルダーにコピーし、NSUserDefaults にフラグを設定するようです。これらは両方とも、誰かが Finder などを介して iOS デバイスにアクセスすることによって更新される可能性があります。取引の領収書を保存すれば、それもコピーできます。

デバイスがオンラインの場合、restoreTransactions 機能を使用して検証できる可能性がありますが、ユーザーはパスワードを入力する必要があるため、サイレント バックグラウンド チェックではなく、デバイスがオフラインの場合は明らかに機能しません。

ダウンロード時にデバイス ID を使用してコンテンツをデバイスに結び付けたいと思っていますが、Apple はこれを使用しないようにアドバイスしています。

何か不足していますか?

4

1 に答える 1

0

状態をに保存するNSUserDefaultsと簡単に編集できますが、状態をKeyChainに保存すると、ユーザーがダウンロードのフラグ状態を変更するのが難しくなります。

すべてのIAPダウンロード状態をKeyChainに保存します。これにより、でキーをtrueに設定できないようにしますNSUserDefaults

私たちが開発したゲームでは、ユーザーがゲームアイテムを購入したかどうかをサーバー側でチェックします(レシピチェックも含みます)。

リーダーでは、名前といくつかの秘密のものに基づいた一種のランダムなコードを介して、PDFをパスワードで保護しました;)

私の推測では、これによりクラッカーの頭を維持することもできないことを覚えておいてください。しかし、あなたは間違いなくそれらを遅くすることができます。

于 2013-01-16T13:17:24.797 に答える