gpt4 book ai didi

hash - 这种哈希技术有多强?

转载 作者:行者123 更新时间:2023-11-30 23:54:56 24 4
gpt4 key购买 nike

  • 使用 AES/Rijndael 或任何对称加密。
  • 使用自身作为 key 和随机 IV 加密隐藏值。
  • 存储密文+IV。丢弃所有其他东西。
  • 检查哈希:尝试使用提供的明文解密。如果提供 == 解密,那么就可以了。
  • 忽略密文长度问题。

  • 这安全吗?

    最佳答案

    有一种使用块密码(如 AES)生成散列或 MAC 的现有方法。它叫做 CBC-MAC .它的操作非常简单。只需在 CBC 模式下使用 AES 加密要散列的数据并输出密文的最后一个块,丢弃所有先前的密文块。 CBC 的 IV 通常保留为零,并且 AES key 可用于生成 MAC。

    CBC-MAC 确实有一些限制。不要使用相同的 key 和 IV 对您的数据进行加密和 MAC,否则 MAC 将仅等于密文的最后一个块。此外,散列/MAC 的大小受限于分组密码的大小。将 AES 与 CBC-MAC 结合使用会产生 128 位 MAC,而 MAC 通常预计至少是这个大小。

    值得注意的是,CBC-MAC 是一种非常低效的生成 MAC 的方式。更好的方法是在 HMAC 中使用 SHA2-256 或 SHA2-512。在我最近的测试中,在 HMAC 中使用 SHA256 产生的结果大约与 CBC-MAC 中的 AES 一样快,并且在这种情况下 HMAC 的宽度是其两倍。但是,新的 CPU 将通过 AES 的硬件加速来生产,允许使用 CBC-MAC 模式下的 AES 非常快速地生成 128 位 MAC。

    关于hash - 这种哈希技术有多强?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/4456460/

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