java客户机服务器消息加密
我使用的是一个Ionic 2客户机和一个Java服务器(Java8),它提供RESTful服务。当用户当前登录时,我从客户端向RESTful服务发送请求。这会将javascript Person
对象传递给java Person
对象
问题1
这是否意味着密码没有公开。还是这样
问题2
一旦服务器接收到Person
对象,它就会检索password
字符串并将其保存到MySQL数据库中
我想加密这个密码,所以当有人查看数据库时,他们无法读取密码。然后,当从数据库读取数据时,我需要再次解密它
有谁能为以上两个问题推荐最好最简单的策略吗
谢谢!
# 1 楼答案
问题1。为了在客户端和服务器之间进行安全传输,请使用HTTPS
问题2不要加密密码,当攻击者获得数据库时,他也将获得加密密钥。用随机盐在HMAC上迭代大约100毫秒,并用散列保存盐。使用诸如password_hash、PBKDF2、Bcrypt等函数和类似函数。重点是让攻击者花费大量时间用暴力寻找密码