5

私のアプローチでは、ユーザーが初めてクレジットカードで支払いたい場合、ログインパスワードと完全なクレジットカード情報を再入力する必要があります。

成功した後、ランダムなキーを生成し、キーストアとしてパックし、最終的にキーストア ファイルを内部ストレージに保存します。このキーストア ファイルは、ユーザーのログイン パスワードによってロックされます。一方、クレジット カード情報はこのキーによって暗号化され、Base64 でエンコードされた文字列に変換され、最終的に内部ストレージのファイルに書き込まれます。

次回クレジットカードで支払うときに、ユーザーはログインパスワードも再入力する必要があるため、それを使用してキーストアファイルのロックを解除し、キーを抽出できます。この時点で、ユーザーのクレジット カード情報を解読できます。

上記は、デバイスに保存されているクレジットカード情報を保護するための私のアプローチですが、安全ですか?

4

3 に答える 3

2

私の投稿での私のアプローチが最終的に私の答えのようです。

Android は内部ストレージにアクセス制限を設けているため (このリンクを参照)、デバイスを紛失したり盗まれたりしても、ハッカーはキーストアにアクセスしてブルート フォース方式で破壊することはできません。

しかし、別の問題があります。

根ざした携帯では「悪いプログラム」でソフトキーボードが聴けるので、他にやるべき勉強がいくつかあります。

于 2012-10-24T13:55:39.267 に答える
2

ユーザーのクレジット カード データをデバイスに保存しないでください。それを安全にする方法はありません。ルート化された電話は、アプリが機密データにアクセスするためのさらに簡単な方法になる可能性があります. デバイスは紛失または盗難に遭う可能性があります。サーバーへの安全なユーザー ログインを実装し、そこに CC データを保存する必要があります。

このhttp://developer.authorize.net/downloads/を使用してみてください

于 2012-10-24T10:40:13.487 に答える
0

ユーザー デバイスにクレジット カード番号を保存しないでください。

PCI では、暗号化された要素のキーを四半期ごとに変更する必要があります。ユーザーに 3 か月ごとにパスワードを変更するように強制しますか? ログインして変更しない場合はどうなりますか?

あなたの方法は、攻撃者がシステムを壊そうとするために「顧客」になることに対して非常に脆弱です.彼は、攻撃が検出されたり抵抗されたりすることなく、自分のデバイスでそれを行うことができます. その後、彼は学んだことを使用して、他の顧客のアカウントを攻撃することができます. あなたが取り組んでいる Web サイトを教えてください。このデザイン方法に従えば、作業が完了したら、そこから遠く離れたいと思います。

于 2012-10-25T05:58:24.160 に答える