0

機密情報をアプリケーションに保存する最も安全な方法を知っている人はいますか? 内部ストレージと共有設定を使用すると、その情報が必要な人がルート化された電話を持っている場合に脆弱になるためです.

ケースは、サーバー側とのさらなる通信と認証のために電話内のどこかに(サーバー上ではなく)保存する必要があるある種のアクティベーションコードを持っていることです。そのコードは保護する必要があり、他のアプリやユーザーが使用できないようにする必要があります。ルート化された電話。また、ユーザーは追加の検証に煩わされることはありません (アプリケーションに入るときに PIN コードを入力し、認証のためにそのコードをサーバー側に送信します)。

要するに、ルート化された電話でも、何かを安全に保存し、隠したままにしておく方法はありますか?

4

1 に答える 1

0

残念ながら、コメント者は正しいです。アクティベーション コードがハッキングされないという 100% のセキュリティを保証する方法はありません。Microsoft はこれに何百万ドルも費やしましたが、依然として Windows の海賊版が存在します。結局のところ、クライアントのコードを制御することはできません。クライアントにこの保存された認証コードを復号化するか、別の方法でアクセスできるようにすると (サーバーにアクセスする必要はありません)、誰かがアプリをリバース エンジニアリングして保護を取り消すことができます。これは、サーバーから復号化キーを取得した場合にも当てはまります。

これを行う最善の方法はユース ケースによって異なりますが、いくつかのアイデアを次に示します。

  1. クライアントに「アクティベーション コード」をサーバーに送信してもらいます。盗まれたと思われる場合は、サーバーでブラックリストに登録できます。これが Windows の仕組みです。アクティベーション コードを使用し、ユーザーに迷惑をかけたくない場合は、これが唯一のオプションです。

  2. ユーザーにアカウントを登録してもらい、アプリを実行するたびにユーザーの資格情報を再送信させます。これにより、著作権侵害の疑いがある場合に非アクティブ化するユーザー アカウントを取得できます。

  3. サーバーに復号化キーを提供してもらいます。これは、アクティベーション コードが安全であることを保証するものではありませんが、潜在的なリバース エンジニアの基準を引き上げます。

  4. DRM のアイデア全体を完全に破棄し、優れた製品を作ることに注意を集中してください。音楽会社の調査によると、DRM を廃止しても、製品を購入する人の数に違いはありません。

于 2013-06-15T19:10:22.697 に答える