【问题标题】:Hashing algorithm that meet FISMA / other federal informations systems requirements满足 FISMA/其他联邦信息系统要求的散列算法
【发布时间】:2013-04-24 00:59:49
【问题描述】:

我所在的组织必须满足启用 FIPS 的系统的 FISMA 要求。我正在尝试做的一件事是为我们的密码实现哈希算法。我有很多选择:SHA-2、MD5、bcrypt(使用 Blowfish)、RIPE 等。

通读 NIST 的各种出版物,FISMA 没有说我必须使用特定的算法来满足他们的要求。

但是,FIPS 180-4 指定根据 FISMA 认为哪种哈希算法是安全的,即 SHA-1 到 SHA-512/256。 NIST SP 800-132 也推荐使用 PBKDS2。

这是否意味着: 一个)。我必须使用 SHA 作为哈希算法才能通过 FISMA 审核/要求?

...或...

b)。我可以使用任何算法,只要它比 SHA 更好? IE。不用MD5,但是bcrypt或者RIPE都可以。

【问题讨论】:

    标签: fips


    【解决方案1】:

    两者如何?使用 bcrypt 对您的密码进行哈希/加盐处理,以利用其工作因素功能来提供面向未来的大规模并行蛮力攻击。然后对 bcrypt 的结果进行 SHA-512 处理并存储。

    您从 bcrypt 获得保护,并选中 FISMA/FIPS 框,因为您正在存储使用他们接受的算法生成的哈希。

    即使有人可以暴力破解 SHA-512 以找到生成与您存储在数据库中的相同哈希值的输入,该输入也不是可以让用户登录系统的有效密码。

    【讨论】:

      【解决方案2】:

      是的,您必须使用 SHA。 SP 800-53 到处引用 FIPS 140-2,暗示您必须使用 SHA-256 或 SHA-512。 (Avoid SHA-1)。

      总统办公厅的MEMORANDUM FOR HEADS OF EXECUTIVE DEPARTMENTS AND AGENCIES 里写得很清楚:

      11.是否使用美国国家标准与技术研究院 (NIST) 的出版物 需要吗?

      是的。对于非国家安全计划和信息系统,机构 必须遵循 NIST 标准和指南。 ...

      12. NIST 指南是否灵活?

      是的。虽然要求各机构遵循 NIST 标准和指南 根据 OMB 政策,NIST 的指导方针具有灵活性 (特别是在 800 系列中)机构如何应用它们。 但是, 联邦信息处理标准 (FIPS) 是强制性的。 ...

      (想想看。NIST 没有将 SHA 作为标准发布,以便您可以使用其他东西来代替......)

      此外,SHA 和 Bcrypt 并不能真正直接比较。 SHA 是一组散列算法。 Bcrypt 更像是一个以 Blowfish 算法为核心生成哈希的过程。 Bcrypt 的 FIPS 等价物是 PBKDF2,它使用 SHA 作为其核心算法。

      【讨论】:

        猜你喜欢
        • 1970-01-01
        • 1970-01-01
        • 1970-01-01
        • 1970-01-01
        • 1970-01-01
        • 1970-01-01
        • 1970-01-01
        • 2011-03-19
        • 2014-08-20
        相关资源
        最近更新 更多