cryptography - 使用 md5 或 sha1 仍然有效的密码散列吗?

标签 cryptography md5 sha1 password-hash cryptographic-hash-function

刚才我在做一个金融项目。在这里,团队正在考虑将 MD5 用于 password hashing
但是,今天很容易复制 SHA1MD5 密码进行解密,如果它们是复杂的密码,则包括:My$uper$ecur3PAS$word+448 ,您可能会使用在线页面对其进行解密,然后就可以了。
中小型开发人员(包括我)使用那些 hashing methods ,但我认为还不足以为数据库提供安全性。
(不包括 firewallsnetwork securityiptables 等)。

有人可以告诉我解决此漏洞的更好方法是什么吗?

最佳答案

你的想法是正确的,MD5 和 SHA1 永远不应该用于密码散列。我会按优先顺序推荐以下内容:

  • 氩气2
  • bcrypt
  • scrypt
  • PBKDF2

  • 如果您使用正在使用的语言/框架标记您的问题,我可以推荐特定的库或方法。

    另请注意,此处使用加密不是正确的词。这些是密​​码 散列 算法,而不是加密算法。

    关于cryptography - 使用 md5 或 sha1 仍然有效的密码散列吗?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/54431028/

    相关文章:

    c# - 在 C#/.Net 中使用异步套接字安全地传输二进制数据

    vb.net 大于十进制的数据类型

    swift - 如何使用 CommonCrypto 在 Swift 中生成 RSA key ?

    binary - 如何在python中对字符串进行二进制编码?

    android - 如何使用 Java 10 获取 SHA 1 证书?

    algorithm - 有了哈希和密码,我可以重新创建算法吗?

    c# - 如何创建持久唯一的 MD5 哈希

    database - 使用 URI 的 md5 散列作为数据库主键的优缺点

    c# - 如何在不读取同一个文件两次的情况下计算两个哈希值?

    openssl生成指纹的Ruby代码