1

自己破壊オプションが必要な iPhone アプリがあります。このアプリは、機密性の高い場所で使用される予定であり、iPod ホルダー以外には知られてはならないいくつかのアルゴリズムを保持しています。

アプリを削除する最も「完全な」方法は何ですか?

nibファイルにゼロを書き込む方法を考えていました。または実際のapplication.appですが、このフォルダーは書き込み保護され、サンドボックス化されていると思います。

これを達成するためのより良い方法のアイデアはありますか?

詳細(元のポスターのコメントから取得):

これはジェイルブレイクされたiPhone用です。

これらの装置は軍関係者に提供される予定であり、この装置が敵の手に落ちることは私の懸念事項ではありません。ボタンがあるので、アプリがゼロまたはそれ以上に書き込まれたらアプリを消去しますが、「exe」全体がゴミで破損しているため、アプリは機能しません。間違った人が持っていないことを 100% 知っている

4

8 に答える 8

3

このアルゴリズムを含むコードをアプリケーション内に公然と保存している場合、「不正な人」がデバイスを脱獄し、「ワイプ」プロセスを実行する前にデバイスの完全なファイル構造をコピーするのを止めることはできません。

さらに、米国政府の顧客と取引している場合、そのようなデバイスのベンダーがジェイルブレイクは違法であると主張していることを考えると、彼らがジェイルブレイクされたデバイスの購入を承認するかどうかは疑わしい. これが法廷で持ちこたえるかどうかにかかわらず、政府はこれらの問題に関して保守的であり、注意を怠る傾向があります. Apple は米国の大企業であり、政府のベンダーであるため、政府の調達者が脱獄者の側に立つとは思えません。

アプリケーションのバンドル内のファイル内の特定のアルゴリズムを暗号化し、このアプリケーションのユーザーが正しい (難しい) パスワードを使用してこのファイルをメモリに復号化するように要求することをお勧めします。そうすれば、「悪者」がアプリケーションにアクセスできたとしても、これらのアルゴリズムにアクセスするために必要なすべてのものを手に入れることはできず、暗号化された部分でパスワードを総当たり攻撃する必要があります。これは、脱獄されていない標準のデバイスで実行できます。

米軍はカスタム アプリケーションを搭載した iPod を現場で展開しているので、この課題に直面するのはあなたが最初ではないはずです。この作業が国防総省の SBIR 助成金 (または同様のもの) を通じて資金提供されている場合は、契約担当官に連絡して、適切な機関の担当者と連絡を取り合うことができるかどうかを確認することもできます。これで解決します(または、そもそも問題であるかどうかを判断することさえできます)。

于 2009-11-14T01:04:19.667 に答える
1

ここでは、この種のアプリに iPhone を使いたくないかもしれないと言います。iphone とスプリングボードでのこの正確なタイプのアクションには、意図的な制限があります。権限のない人の手に渡ることができないほど機密性の高いことをしている場合は、別のよりカスタマイズ可能/制御可能なプラットフォームを使用することをお勧めします。

于 2009-11-13T21:47:06.163 に答える
1

ジェイルブレイクされたデバイスで作業していない限り、おそらくここで問題に遭遇するでしょう.

アプリを自動的に削除する方法を見つけたとしても、それらのアルゴリズムが悪者の手に渡るリスクは依然としてあります。デバイスが誰かの中にあると、Apple がジェイルブレイクで抱えているのと同じ問題に本質的に遭遇することになります。他人の手では、データにアクセスするための適切な量の動機だけが必要です。

アルゴリズムを保護する唯一の方法は、データをリモート サーバーに渡して結果を取得することです。セキュリティ違反の可能性はまだありますが、はるかに低いです。

于 2009-11-13T22:05:29.807 に答える
1

これがどれほどうまく機能するかはわかりませんが、アルゴリズムをアプリケーションバンドル内のファイルとして保存し、おそらくスクリプト言語などを使用してそのファイルからアルゴリズムを実行し、必要に応じてそのファイルを削除できます。

于 2009-11-13T22:23:55.200 に答える
0

組み込みの暗号化を使用してデータを保存し、ユーザーが入力して復号化する必要があるキーを使用します。キーがなければ、データ BLOB がデバイスから復元されても問題ありません。

于 2009-11-14T03:53:40.777 に答える
0

フォルダーはサンドボックス化されていますが、アプリケーションはそこにあります。私のジェイルブレイクされたiPhoneでは、すべての権限がモバイルによって所有されていることがわかります。そのため、すべてのファイルをゼロで上書きしてから削除できない理由はわかりません。

于 2009-11-13T21:48:17.103 に答える
0

アプリケーション バンドルは実質的に読み取り専用です。おそらく、情報の一部をネットワーク上のどこかに暗号化された形式で保存する必要があります。

于 2009-11-13T21:59:57.673 に答える
0

フラッシュ メモリにアプリを上書きする方法を見つけたとしても、実際にはアプリを消去していません。フラッシュ メモリ チップは、ウェア レベリング アルゴリズムを使用して同じブロックへの書き込みを減らすため、ゼロを書き出すと、通常、以前に使用された同じブロックではなく、新しいメモリ ブロックに書き込まれるため、実際には何も消去されません。データはまだフラッシュ チップから復元できます (プロによる)。

もう 1 つのオプションは、アルゴリズムのパラメーターを分離して、アルゴリズムが機密性を持たないように (または少なくとも使用できないように)、ファイルで暗号化されたパラメーターを提供することです。次に、ネットワーク経由で許可されたユーザーにキーを提供し、そのキーをフラッシュに保存せず、RAM のみに保存します。アプリを起動するたびにキーを取得する必要があります。許可されたユーザーにのみ鍵を与えてください。もちろん、ネットワークを介して別のキーで送信するためにそのキーを暗号化する必要もあります...これを行うためのシステムがあります。独自のものを発明しないでください。いずれにせよ、これを行うには暗号の専門家が必要です右。

于 2009-11-13T22:21:20.660 に答える