qq_27614339
2018-12-28 09:55客户端服务器用户密码加盐加密,遇到的问题
5我是在一篇论文中看到的一种给密码加盐加密的方式,之前也有了解过一些加盐加密,下面是这篇论文中的加盐加密方式:
假定:注册阶段已完成,此时,客户端已拥有账号与密码;
服务器端已建立起用户密码库, 存储模式为( userid,
password_hash ) , 盐值单独存放, 防止拕库, 存储模式为
(userid,salt_hash,cost),其中cost 字段为慢哈希代价,用来挃定客户
端的慢哈希速度,cost 值越大,web 端运行越慢。
则登彔阶段的协议描述为:
(1)客户端以userid 収起登彔请求。
(2)服务器端响应,生成一随机盐值salt=random(),h(salt)存
储,选定cost 值,将cost、salt 収送。
(3)客户端计算r= PBKDF2( PRE, Password, Salt, cost, LEN),
収送。PRE 为随机函数,LEN 为辒出长度。
(4)服务端收到r,与自己计算的PBKDF2 (password, salt, cost)比较,若相等,则存储于password_hash 字段,通过认证。若不相等则丢弃。
想问第四步中服务器自己计算的password是从哪得到的,如果是上次存储的password_hash,那在password正确的情况下客户端计算出的r和服务器计算出的r应该不一样,因为每次登陆都会随机一个salt值,请各位大神帮忙看一下,这个方案具体是怎么考虑的,谢谢!
- 点赞
- 回答
- 收藏
- 复制链接分享
1条回答
为你推荐
- android用户密码一般在哪个环节加密
- spring
- java
- 4个回答
- 织梦CMS登录时用户名及密码加密与解密
- 解密
- 3个回答
- 使用apache、nginx等服务器还需要自己考虑加密问题吗?
- server
- 服务器
- 后端设计
- apache
- 加密
- 1个回答
- loadrunner 11 录制的脚本登录用户明或密码加密过怎样进行压力测试
- 压力测试
- 脚本
- loadrunner
- 密码
- 加密
- 1个回答
- 关于用户注册时的加密数据问题
- 数据库
- 密码
- 加密
- 数据
- md5
- 1个回答
换一换