2012-01-21 14 views
3

基本的にテキストメッセージのサブスクリプションサービスであるアプリを構築したいと考えています。保存されたユーザーデータを保護する方法:電話番号?

ユーザーが自分のサイトから電話番号を送信します。私はそれらに確認用のテキストをキーで送り、正しくキーを入力すれば購読され、その後毎晩、購読を解除するまで、特定のメッセージのテキストを送信します。

質問:私(開発者またはストレージレイヤ管理者)がプライバシーを保護するためにこれらの電話番号を表示できないように、これらの電話番号を保存します。私はちょうどそれらをハッシュして保存することはできません、その後、どのように私のアプリはテキストメッセージを送信するためにそれらを読んでいますか?これはどうすればいいですか?

編集:これはセキュリティ上の問題とプライバシーに関する質問です。システムに侵入して誰かが電話番号を取得できないようにしてください。

答えて

3

私は暗号化があなたの唯一の賭けだと思っています。あなたは電話番号を暗号化する必要がありますが、ソフトウェア/サービスアプリケーションは鍵にアクセスすることができます。あなたはオフサイトシステムにキーを保存し、SSHまたはSSLを介してキーを取得してメモリに保存することができます。それは、キーが管理者から100%安全だと言うわけではありませんが、電話番号だけで、誰かが細胞番号のために多くの努力を費やしているイメージを作れません。

+0

私は電話番号を暗号化して別のサーバーに置くことができますが、私は(私のシステムに侵入している人)が他のサーバーに行くのを止めたり、データ。 電話番号よりもはるかに機密性の高いデータがありますが、少なくとも学術目的では、誰も_これらの電話番号にアクセスできないようにアプリを設定する方法はありますか? – Tim

+0

私が見る問題は、プロセスのある時点で、暗号化された番号をSMSメッセージの送信のための暗号化されていない状態に戻す必要があるということです。そのファイルを解読する鍵は、ソフトウェアに知らされていなければなりません。それは、あなたが毎回または設定されたレートでキーを変更するキーローテーションシステムを実装できないというわけではありません。ソフトウェアは、所定の間隔で鍵を作成し、その鍵の暗号化に使用する鍵を暗号化することができる。しかし、キーを書いていない場合は、そのアプリがクラッシュした場合に、他のアプリのメモリをSOLにします。 – Jordan

+0

はい、それも私が見る問題です。業界標準の慣行が大部分のアプリがこの問題を克服するかどうか、または電話番号(またはパスワード以外の他のデータ)をプランテキストに保存するだけですか? – Tim

4

システム上のソフトウェアがそれらを復号化できる場合、システムに十分アクセスできる人は誰でもアクセスできます。あなたができることは、実際のメッセージング部分に専用のシステムを使用することによってリスクを減らすことです。このシステムでは、メッセージングだけを行うことで、システムにハッキングするオプションを制限することができます。次に、公開鍵/秘密鍵の暗号化を使用することによって、メッセージング・システムは復号鍵を必要とする唯一のシステムになります。実際にユーザーを登録したり、電話番号を変更したりするためのシステムでは、暗号化キーが必要です。

復号キーをそれ以上保護したい場合は、誰も知らないパスワードを設定してこのシステムに管理者がアクセスできないようにし、すべてのログイン方法を無効にすることができます。ああ、キーがディスク上のメモリにのみ存在することを確認してください!

このメッセージングシステムがダウンすると、キーが必要な新しいメッセージングシステムを起動する必要があります。そのため、複数のロックの背後にある安全な場所に鍵のコピーを作成して、別の人がその鍵を持っているようにしたいとします。これらの人々は、そのキーが新しいシステムに適切に入力されたことを監督することができ、他の誰もそれらのキーのコピーを作成せず、その後、すべてのログインが適切に無効にされます。

+1

+1ですが、電話番号などのパブリック/プライベートキーの暗号化には注意が必要です。 _public_キーと暗号化された番号を持つ人は、電話番号の表とそれに対応する暗号化されたバージョンを作成し、これを使って加入者が誰であるかを知ることができます。 –

関連する問題