iphoneアプリを開発している初心者です。
端末側デバイスから生成したデータをDBやファイルで暗号化して保存しユーザからのデータ改ざん防止を行いたいと考えております。
しかし端末側のセキュリティは本質的には安全でないとの指摘をネットで拝見します。
一方で、C言語、Swift等ネイティブコードにコンパイルされる言語については、リバースエンジニアリングが困難であるから一定の安全性を担保できるとの指摘もありました。
そこでiphone,Swift,Realm,httpsを利用したアプリを制作する際、端末側で保存されるユーザによるデータの改ざん防止対策の実装構成で現実的に利用可能なものはどのようなものなのか、お詳しい方のご意見をお願いいたします。
現在私としては、
1)Realmの暗号化を使用。暗号化キーはキーチェーンに格納
2)Swiftでのデータ生成時にデータを暗号化ライブラリ(C言語ブリッジ)で暗号化。
暗号化キーな共通鍵方式とし、キーチェーンに格納またはハードコーディングする。
3)データ生成の際、一定の規則で特定の数値を埋め込むようなアルゴリズムを紛れ込ませておき、サーバー側で端末側の正規コードで生成されたデータなのかチェックする。
4)一定期間で2)ハードコーディングした暗号化キー部や3)を強制アップロードする。
5)Jailbreak端末検知して不正使用者はユーザー権限を停止
等考えてみたのですが、当該対策の効果やその他の対策の他、どの程度効果があるのか等のご意見もお伺いできればありがたいです。よろしくお願いいたします。
回答1件
あなたの回答
tips
プレビュー