2016-11-07 5 views
1

Ionic 2クライアントとRESTfulサービスを持つJavaサーバー(Java8)を使用しています。ユーザーが現在ログインすると、クライアントからRESTfulサービスに要求が送信されます。これにより、javacript PersonオブジェクトがJava Personオブジェクトに渡されます。 1クライアントサーバーのメッセージ暗号化

質問は、このパスワードが公開されていないことを意味します。またはそれは?

質問2

サーバはPersonオブジェクトを受信すると、それはpassword文字列を検索し、MySQLデータベースに保存します。

私はこのパスワードを暗号化したいので、誰かがデータベースを見るとパスワードを読み取ることができません。その後、データベースから読み込むときに、私はそれを再度解読する必要があります。

誰でも上記の2つの質問に対して最も簡単で簡単な戦略をお勧めしますか?

ありがとうございます

+0

クライアントとサーバー間の安全な転送のために、HTTPSを使用します。 – zaph

答えて

1

Q1。クライアントとサーバー間の安全な転送のためにHTTPSを使用します。

Q2。 パスワードを暗号化しないでください。攻撃者がDBを取得すると、暗号化キーも取得されます。約100msの間、ランダムな塩でHMACを繰り返し、塩をハッシュで保存します。 password_hash、PBKDF2、Bcryptなどの関数を使用します。要点は、攻撃者が無差別にパスワードを見つけるのに多くの時間を費やすことです。