gpt4 book ai didi

encryption - 分组密码 SALT : clear text or secret?

转载 作者:行者123 更新时间:2023-12-04 01:31:39 26 4
gpt4 key购买 nike

网上有很多文章和引述都说“盐”必须保密。甚至维基百科条目 Salt :

For best security, the salt value is kept secret, separate from the password database. This provides an advantage when a database is stolen, but the salt is not. To determine a password from a stolen hash, an attacker cannot simply try common passwords (such as English language words or names). Rather, they must calculate the hashes of random characters (at least for the portion of the input they know is the salt), which is much slower.



因为我碰巧知道加密盐(或初始化向量)可以与加密文本一起存储在明文中,所以我想问 为什么这种误解会长期存在 ?

我的观点是,问题的根源在于加密盐(分组密码的 初始化向量 )和散列“盐”之间的常见混淆。在存储散列密码时添加随机数或“盐”是一种常见做法,并且(在一定程度上)这种“盐”最好保密。这反过来又使它根本不是盐,而是一个键,类似于名称很明确的 secret HMAC .如果你看文章 Storing Passwords - done right!这是从维基百科“盐”条目链接的,你会看到它在谈论这种“盐”,即密码哈希。我碰巧不同意这些方案中的大多数,因为我相信密码存储方案也应该允许 HTTP Digest authentication ,在这种情况下,唯一可能的存储是用户名:领域:密码的 HA1 摘要,参见 Storing password in tables and Digest authentication .

如果您对此问题有意见,请在此处发表作为回复。
  • 你认为分组密码加密的盐应该隐藏吗?解释原因和怎么样 .
  • 您是否同意“盐应该被隐藏”的笼统声明源自加盐散列并且不适用于加密?
  • 我们是否应该在讨论中包括流密码(RC4)?
  • 最佳答案

    如果你在谈论分组密码中的 IV,它绝对应该是明确的。大多数人通过使用 secret IV 使他们的密码更弱。

    IV 应该是随机的,每个加密都不同。管理随机 IV 非常困难,因此有些人只是使用固定的 IV,从而违背了 IV 的目的。

    我曾经使用密码使用 secret 固定 IV 加密的数据库。相同的密码总是加密为相同的密文。这很容易发生彩虹表攻击。

    关于encryption - 分组密码 SALT : clear text or secret?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/1591315/

    26 4 0
    Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
    广告合作:1813099741@qq.com 6ren.com