我在哪里对我的密码进行加盐和哈希处理?在客户端还是在主机?

2023-12-09

我认为直接在客户端计算机上对密码进行加盐和哈希处理会更明智。原因是,我实际上从来不想获取用户的密码。这个字符串应该对他保密,而不是对我们俩保密。现在有人争论说,你想对盐保密,所以你不能通过通道以明文形式发送它。显然,事实并非如此。所以现在我看不出有任何理由,为什么我不应该只从客户端请求哈希值。你怎么认为?

edit讨论向主机发送客户端密码的问题实际上并不是直接的问题。客户面临的问题是将密码从他的计算机中发送出来。乐观的客户可能会认为他的计算机是安全的。但从电缆(或天线)发出的所有东西都是 Eve 的领地。你永远不可能too在安全场景中偏执。再说一次:密码应该never离开客户电脑!


Sending either密码短语或其哈希值允许攻击者记录哈希值并在重放攻击中使用它。

您通常希望使用质询/响应协议,这意味着您发送一个随机数。客户端使用其密码短语的哈希作为密钥对该随机数进行加密(或进行密钥哈希),然后发回结果。你也做同样的事情,看看两者的匹配情况。

这使您可以验证匹配的密钥,而无需每次都通过不安全的通道发送密钥本身。

至于最初如何获取数据以便能够进行比较,是的,您通常希望客户端对密码进行哈希处理,然后使用服务器的公钥对其进行加密,并发送加密结果。

本文内容由网友自发贡献,版权归原作者所有,本站不承担相应法律责任。如您发现有涉嫌抄袭侵权的内容,请联系:hwhale#tublm.com(使用前将#替换为@)

我在哪里对我的密码进行加盐和哈希处理?在客户端还是在主机? 的相关文章

  • 哪些浏览器容易受到多个 x-frame-options 的影响

    我正在做一个网络应用程序测试 发现多个 x frame options 标头条目存在一些漏洞 哪些浏览器容易受到多个 x frame options 的攻击 Multiple x frame options 标头条目可能受到哪些攻击 点击劫
  • PHP cookie 和会员安全

    我创建了一个论坛 该论坛在登录时使用 PHP 会话来确定用户 ID 并使用 cookie 来进行日志登录 我想我有两个问题 这是最好 最安全的方法吗 可以使用javascript通过地址栏手动添加cookie 这是一个巨大的安全风险 有没有
  • JSON 响应周围的注释块

    我注意到一些 Web 应用程序返回 AJAX 响应 并在注释块中嵌入 JSON 数据 例如 这是一个示例响应 firstName John lastName Smith address streetAddress 21 2nd Street
  • 信任所有将文件发送到 https Web 服务的 java 类

    我需要编写自己的类来告诉 mule 与服务 wsdl 的 https 连接已验证 我的 mule 项目已经接近完成 但最后一块丢失了 在特定的 url 发送文件 我想要实现的目标 建立连接并将 xml 发送到目标 url 读取 xml 格式
  • Rfc2898DeriveBytes 与密码的 Sha2 哈希生成

    我最近知道使用 SHA256 为加盐密码生成密码哈希 在阅读了一些有关加盐密码和安全性的内容后 我看到rfc2898derivebytes and passwordderivebytes NET 中的类 使用有什么好处吗rfc2898der
  • 如何在 C# 中创建 PKCS12 .p12 文件?

    这可能是一个n00b问题 但我在这方面确实没有任何经验 我需要创建一个包含 X509 证书和私钥的 p12 捆绑包 我当前有两个对象 X509Certificate2 和包含关键信息的 RSAParameters 对象 如何将它们合并到 p
  • Symfony 5.4 Security Bundle,注册后无法登录

    我在 5 4 版本上构建空的新项目 我使用这些命令来构建项目 composer create project symfony skeleton 5 4 testapp54 cd testapp54 composer require weba
  • JavaScript 中的安全数据

    我必须为 Web 测试创建生成器 使用 HTML 和 JavaScript 测试必须离线和在线进行 正确答案和分数评估必须是生成的测试的一部分 最终用户的分数仅发送到服务器 无法在服务器上进行评估 并且服务器对问题一无所知 它只保存最终分数
  • 非加密用途的最快哈希值?

    我本质上是在准备要放入数据库的短语 它们可能格式错误 所以我想存储它们的简短散列 我将简单地比较它们是否存在 所以散列是理想的 我假设 MD5 在处理 100 000 个请求时相当慢 所以我想知道散列短语的最佳方法是什么 也许推出我自己的散
  • 什么是 API 密钥? [关闭]

    Closed 这个问题需要多问focused help closed questions 目前不接受答案 如今 我几乎在每个跨服务应用程序中都看到这个词 API 密钥到底是什么以及它的用途是什么 另外 公共 API 密钥和私有 API 密钥
  • php 中的简单授权/登录功能

    我希望第一次实现用户登录到我的网站 我很高兴构建自己的解决方案 或者实现一些开源的东西 但是到目前为止 在我的搜索中没有任何包是明显的选择 同样 我完全意识到 作为一名中级 php 程序员 如果我推出自己的解决方案 并真正敞开大门 我很可能
  • python:API 令牌生成及其危险

    我正在按照 Flask Web Development 一书来实现基于令牌的身份验证 基本上 用户使用 HTTP 基本身份验证对其进行身份验证 并为其生成令牌 s Serializer app config SECRET KEY expir
  • PHP - hash_pbkdf2 函数

    我正在尝试使用此 php 函数执行一个函数来哈希密码 http be php net manual en function hash pbkdf2 php http be php net manual en function hash pb
  • 访问被拒绝(“java.io.FilePermission”“执行”)

    我是初学者 这是我写的第一个小程序 我想用小程序运行 exe 应用程序 java代码 package appletexample import java io import java awt import java applet Apple
  • 如何检查 NTAccount 对象代表组还是用户?

    使用返回的访问规则时 GetAccessRules True True GetType System Security Principal NTAccount 如何判断每个规则中引用的 NTAccount 对象是用户帐户还是组 Update
  • iPhone 和加密库

    我想我必须在我的 iPhone 应用程序中使用加密库 我想问你有关苹果公司实施的加密货币出口政策的影响 我需要做一些额外的事情吗 例如填写表格等 1 如果我使用 MD5 进行哈希处理 2 如果我使用对称加密 Thanks EDIT 2009
  • 保护 ASP.NET 网站中 Elmah RSS 源的安全

    我遵循了这个问题的答案在 ASP NET 网站中保护 Elmah 的安全 https stackoverflow com questions 1245364 securing elmah in asp net website限制对 elma
  • 使用内联样式有哪些风险?

    A 内容安全政策 https developer mozilla org en US docs Web HTTP CSP with a default src or style src指令将阻止内联样式应用于
  • 使用 PBKDF2 和 SHA256 生成 128 位 AES 密钥是否安全?

    我想使用 PBKDF2 和一些加密哈希函数来生成 128 位 AES 密钥 SHA1 也是 128 位 所以我想将其与 PBKDF2 一起使用 但它已损坏 所以我选择使用 SHA256 这是否安全 或者散列大小和生成的密钥大小之间的差异是否
  • Windows DPAPI - 如何处理熵?

    我正在使用 Windows DPAPI 来加密一些敏感数据 密码存储在注册表中 这一切都运行良好 但我想知道是否有人可以澄清我对 NET 中 可选 提供给 ProtectedData Protect 的 熵 字节的理解 熵 字节数组似乎类似

随机推荐