5

HTTPリクエストを使用してWebサーバーから見積もりデータを取得するiPhone用のアプリケーションを開発しています。

Webサービスを管理している別の開発者と協力しています。iPhoneとWebサーバー間でデータを渡すためにMD5暗号化(単純なxor)を使用しています。

彼は今朝私に質問をしましたが、それは私の知識のプールからかなり率直に言って外れています。

「アップルバイナリはどれくらい安全ですか?」

彼は、誰かがiTunes経由で.appバンドルを取得し、そのバンドルをデコードして私のソースコードに直接アクセスし、データのエンコードに使用している秘密鍵を取得できるかどうかを心配しています。

個人的にはどこから始めればいいのかわからないのですが、もっと知識が豊富で狡猾な仲間がいると思います。

それで、それは可能ですか?もしそうなら、私のソースを安全に守るために何ができますか?

4

1 に答える 1

8

バイナリはリモートでも安全ではありません。iTunesをダウンロードする場合でも、ジェイルブレイクされたiPhoneを使用する場合でも、難読化以外にできることはありません。クライアントアプリケーションに埋め込まれているものの「秘密」に頼らないでください。それは秘密ではありません。これまで。あらゆるプラットフォーム、あらゆる言語、あらゆる技術で。

システムにアクセスできるユーザーを制限する必要がある場合は、ユーザーごとのアカウントが必要です。他に安全なメカニズムはありません。Appleは、iTunesアカウントを介してユーザーを「認証」する方法を提供しています。それを調べてみてください。

また、「MD5暗号化」は何の意味もありません。MD5は暗号化アプリケーションのハッシュ関数ですが、「MD5暗号化」と「単純なXOR」を実行していると言っても意味がありません。XORとMD5を使用して、意味のある暗号化スキームとして機能するものはほとんどなく、AESなどの専門家によって設計された実際のアルゴリズムに勝る利点はありません。

HTTPS(HTTP over SSL)を使用します。そうしない理由はありません、iPhoneはそれを完全にサポートしています。必要に応じて、少なくともhttp://www.startssl.com/からサーバーの無料のSSL証明書を取得できます。最近、安価なSSL証明書プロバイダーもたくさんあります。グーグル少し。

あなたとあなたの共同開発者は、理論と実践の両方で情報セキュリティについて読み始めることを強くお勧めします。なぜなら、あなたは主題にほとんど根拠がなく、おそらくシステムが簡単に壊れることにつながるいくつかの重大な誤解があるからです。

于 2011-05-31T12:23:14.873 に答える