2017-04-04 15 views
-8

私はアンドロイドのパスワード文字列を暗号化してデータベースに保存しています。これは "パスワードを忘れたパスワード"を実装するために、暗号化されたパスワード "をjavaに入れます。アンドロイドでAESを使用した暗号化とJavaでの復号化

はアンドロイドで暗号化/復号化のために、このライブラリを使用: com.scottyab:aescrypt:0.0.1

をすべてのヘルプは高く評価されます。 ありがとうございます。

+2

既存のパスワードを解読するのではなく、次のいずれかを行うことをお勧めします。1.新しいパスワードを生成し、ログイン時に変更する必要があるユーザーに送信します。 2.新しいパスワードを入力し、これを暗号化し、dbに置き換えるためのインターフェースをユーザーに提供します。 –

+1

_hash_パスワードを暗号化しない方がよい。 – GriffeyDog

+1

パスワードを暗号化することは本当に悪いことですが、暗号化/復号化の代わりにパスワードセキュリティのために何をお勧めしますか? –

答えて

2

あなたは間違っています(不確実に)。

  1. クライアントでパスワードを暗号化しないで、POSTリクエストでHTTPS経由でプレーンテキストでサーバーに送信します。

  2. サーバー上のパスワードを暗号化しないでください。ハッシュする時間が〜100msであるようにsaltとiterationを含むパスワードの安全なハッシュ方法(私のコメントを参照)を使用してください。あなたは元のパスワードにアクセスすることはできません。それは、攻撃者がどちらもしないためです。はい、攻撃者が存在し、管理者のアクセス権を得て、計画を立てます。

  3. パスワードリセットでは、新しいパスワードの作成に使用する時間制限リセットトークンをユーザーに送信します。

注意:サーバーで2要素認証を使用し、アクセス権を持つユーザーの数を制限します。

関連する問題