BLAKE3 一种安全、快速且可并行的加密哈希函数

布莱克3 es 加密哈希函数 它的特点是比 MD5、SHA-1、SHA-2、SHA-3 和 BLAKE2 快得多,而且它更安全,不像 MD5 和 SHA-1。 与 SHA-2 不同,可安全防止长度扩展。

它可以跨任意数量的线程和 SIMD 通道高度并行化,因为它内部是一个 Merkle 树,并且具有无变量算法,在 x86-64 和较小的体系结构上都很快。

布莱克3 依赖于已建立的哈希函数 BLAKE2 的优化实例 并在原始的宝树模式下。 BLAKE3 论文中提供了规范和设计论证。 默认输出大小为 256 位。

在 16 KB 文件的哈希生成测试中,BLAKE3 使用 256 位密钥 超过 SHA3-256 17 倍,超过 SHA-256 14 倍, SHA-512 9 次,SHA-1 6 次和 BLAKE2b 5 次。

这是一个即使在处理大量数据时仍然存在的重大差距,例如,在计算 3GB 随机数据的哈希时,BLAKE8 比 SHA-256 快 1 倍。

通过将轮数从 10 轮减少到 7 轮并将块分别散列到 1 KB 块中,实现了性能提升。 根据创作者的说法,他们找到了令人信服的数学证明,证明你可以用 7 轮而不是 10 轮来完成,同时保持相同水平的可靠性。

同时,也有研究人员表示怀疑,认为即使目前 7 轮足以应对所有已知的哈希攻击,如果未来检测到新的攻击,额外的 3 轮可能会有用。

关于 BLAKE3

哈希函数 专为文件完整性验证等应用而设计,加密数字签名的消息认证和数据生成。 BLAKE3 不是为散列密码而设计的,因为它旨在尽可能快地计算散列(对于密码,建议使用慢散列和 escrypt、bcrypt、scrypt 或 Argon2 函数)。

所讨论的散列函数对正在处理的数据大小不敏感,并且可以防止冲突搜索和原像攻击。

该算法是 由著名密码学家开发并继续开发 BLAKE2 算法 并使用 Bao 机制对区块链树进行编码。 与 BLAKE2(BLAKE2b、BLAKE2s)不同,BLAKE3 为所有平台提供单一算法 这与位宽和哈希大小无关。

至于 块拆分,在 BLAKE3 中,流被拆分为 1 KB 块 每个哈希片段都是独立的。 大哈希是在基于 Merkle 二叉树的碎片哈希的基础上形成的。

这种分离可以解决并行化数据处理的问题 计算散列时; 例如,您可以使用 4 线 SIMD 指令同时计算 4 块哈希。 传统的 SHA-* 哈希函数按顺序处理数据。

其他的 BLAKE3 的特点是:

  • 在 PRF、MAC、KDF、XOF 模式和普通哈希中的应用;
  • 适用于所有体系结构的算法,在 x86-64 系统和 32 位 ARM 处理器上都很快。

关于BLAKE3和BLAKE2的主要区别:

  • 在哈希计算中使用二叉树结构实现无限并行。
  • 将回合数从 10 减少到 7。
  • 三种操作模式:散列、键控散列 (HMAC) 和密钥生成 (KDF)。
  • 由于使用了先前由密钥的参数块占用的区域,因此在对密钥进行散列时没有额外的开销。
  • 以可扩展输出函数 (XOF) 的形式工作的内置机制,允许它
  • 并行化和定位(搜索)。

最后 如果您有兴趣了解更多有关它的信息,您可以查看详细信息 在下面的链接中。


发表您的评论

您的电子邮件地址将不会被发表。 必填字段标有 *

*

*

  1. 负责资料:AB Internet Networks 2008 SL
  2. 数据用途:控制垃圾邮件,注释管理。
  3. 合法性:您的同意
  4. 数据通讯:除非有法律义务,否则不会将数据传达给第三方。
  5. 数据存储:Occentus Networks(EU)托管的数据库
  6. 权利:您可以随时限制,恢复和删除您的信息。