首页
学习
活动
专区
圈层
工具
发布
首页
学习
活动
专区
圈层
工具
MCP广场
社区首页 >问答首页 >在服务器端处理密码?

在服务器端处理密码?
EN

Security用户
提问于 2016-04-25 08:16:37
回答 1查看 174关注 0票数 0

所以当我在做我的个人项目的时候。

当某人在任何web服务/社交媒体上创建帐户时,他们提供所需的用户名和密码,然后由服务器处理,用户名存储在BD中,密码被散列,然后存储,但这意味着密码以纯文本接收密码,然后在存储前应用算法。

当任何人登录时也会发生同样的事情,对吗?当然,这可以通过SSL/HTTPS发送,但是服务器仍然会显示表示密码的明文,对其进行散列,并将其与存储的散列密码进行比较。

为什么这个过程没有完成客户端呢?对于客户机来说,使用JS在浏览器中散列密码非常简单--我确信必须有一些库专门用于使用流行的算法(如SHA-256 )进行散列。

也许我忽略了一些很明显的事情,或者我忽略了一些事情,所以我愿意改正。

EN

回答 1

Security用户

回答已采纳

发布于 2016-04-25 08:54:21

如果您在服务器端执行散列操作,服务器(以及具有访问权限的攻击者)可以读取您的明文密码,正确。

但是,如果有人设法访问服务器,对客户机上的密码进行散列并不会有任何帮助--因为攻击者可以很容易地更改javascript源,以获得明文密码或开始强制数据库。

如果服务器是可信的,那么如果它处理密码就没有问题--如果服务器不受信任,那么客户端散列不会给安全性增加多少。

对每个服务使用不同的密码将是解决此问题的更好和更安全的解决方案。

票数 2
EN
页面原文内容由Security提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://security.stackexchange.com/questions/121452

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档