2016-11-07 157 views
1

我正在使用Ionic 2客户端和具有RESTful服务的Java Server(Java8)。当用户登录当前,我发送一个请求从客户端到RESTful服务。这会将一个javascript Person对象传递给java Person对象。客户端服务器消息加密

问题1

这是否意味着密码不被暴露。或者是?

问题2

一旦服务器接收到该Person对象时,它检索password字符串并将其保存到MySQL数据库。

我想加密这个密码,所以当有人看着数据库时,他们无法读取密码。然后当从数据库中读取时,我需要再次解密。

任何人都可以请为上述2个问题推荐最好和最简单的策略。

谢谢

+0

为了客户端和服务器之间的安全传输,使用HTTPS。 – zaph

回答

1

Q1。为了客户端和服务器之间的安全传输,使用HTTPS。 Q2302。 不要加密密码,当攻击者获取数据库时,他也会得到加密密钥。使用随机盐在HMAC上迭代大约100毫秒的持续时间,并用散列表保存盐。使用诸如password_hash,PBKDF2,Bcrypt和类似函数的函数。关键是要让攻击者花费大量时间通过强力查找密码。