iOSアプリで悪意あるユーザーに値を改ざんされないために
有料アプリなどを作っていると、脱獄などを行ったユーザーに値を書き換えられるとまずいことがあります。
対処法はざっくり3つかなと
ファイル暗号化
UserDefaultsを使用していると、iExplorerなどのアプリを使えばiPhoneのファイルシステム内部を見ることができ、
脱獄してなくてもファイルの書き換えができちゃうみたいです。
保存する前にデータを暗号化すると良さそう。
Keychain accessを使う
UserDefaultsを使うのではなく、Keychain Accessを使うのもよさそう。
そもそもユーザーがアクセスできない領域のようなので安心。
だが、脱獄したiPhoneですらアクセスできないのかは未確認。
このへんの情報、ややディープなのでなかなか出てきません。
知ってる方いたら教えていただけると助かります。
keychain accessの詳しい解説
Cocoaの日々: [iOS] Keychain Services とは
重要な情報はサーバーに保存して都度問い合わせ
まぁこれが一番安心といえば安心です。