BLAKEBLAKE2是基于丹尼尔·J·伯恩斯坦ChaCha流密码密码散列函数。与SHA-2一样,有两种不同大小的变体。BLAKE-256和BLAKE-224使用32位字,分别产生256位和224位的摘要大小,而BLAKE-512和BLAKE-384分别使用64位字,产生512位和384位的摘要大小。[1]在64位的x64ARM体系结构上运行时,BLAKE2b比SHA-3,SHA-2,SHA-1和MD5更快。[2]BLAKE2的安全性提供类似于SHA-3,优于SHA-2:免疫长度扩展攻击,来自隨機預言機的无差异性等。[3]

BLAKE
概述
设计者Jean-Philippe Aumasson, Luca Henzen, Willi Meier, Raphael C.-W. Phan
继承算法BLAKE2
认证SHA-3决赛算法英语NIST hash function competition
细节
摘要长度224、256、384、512位
结构HAIFA construction英语HAIFA construction
重复回数14 或 16
速度8.4 cpb英语cycles per byte on Core 2 for BLAKE-256; 7.8 cpb for BLAKE-512

BLAKE2

编辑
BLAKE2
概述
设计者Jean-Philippe Aumasson, Samuel Neves, Zooko Wilcox-O'Hearn英语Zooko Wilcox-O'Hearn, Christian Winnerlein
衍生自BLAKE
细节
摘要长度最多64个字节(BLAKE2b);最多32个字节(BLAKE2s);任意长度(BLAKE2X)
重复回数10 or 12
速度3.5 cpb英语cycles per byte on Core i5 (Ivy Bridge) for BLAKE2b[4]

BLAKE的改进版本BLAKE2于2012年12月21日宣布推出。它由Jean-Philippe Aumasson、Samuel Neves、Zooko Wilcox-O'Hearn和Christian Winnerlein设计。[5]参考实施代码在CC0下发布。[2]

概述

编辑

BLAKE2 是在 RFC 7693 中定义的加密哈希函数,它有两种形式:

  • BLAKE2b
  • BLAKE2s

应用

编辑

实现

编辑

除了参考实现以外,[18] 以下密码库提供了 BLAKE2 的实现:

BLAKE3

编辑
BLAKE3
概述
设计者Jack O'Connor, Samuel Neves, Jean-Philippe Aumasson, Zooko Wilcox-O'Hearn
首次发布2020年1月9日,​6年前​(2020-01-09
衍生自Bao, BLAKE2
细节
摘要长度256 bits, arbitrarily extensible
结构Merkle tree
重复回数7
速度0.49 cpb on Cascade Lake-SP with AVX-512[19]

BLAKE3於2020年1月9日在 Real World Crypto 上宣布推出[20]BLAKE3 是基于 Bao 和 BLAKE2 的加密哈希函数,作者为 Jack O'Connor, Jean-Philippe Aumasson, Samuel Neves 和 Zooko Wilcox-O'Hearn.[21]

参考文献

编辑
  1. ^ Saarinen, M-J; Aumasson, J-P. The BLAKE2 Cryptographic Hash and Message Authentication Code (MAC). IETF. November 2015 [4 December 2015]. RFC 7693. 
  2. ^ 2.0 2.1 BLAKE2. blake2.net. [2018-10-27]. (原始内容存档于2018-11-01). 
  3. ^ Aumasson, Neves, Wilcox-O’Hearn, and Winnerlein. BLAKE2: simpler, smaller, fast as MD5 (PDF). Cryptology ePrint Archive. IACR. [2018-10-27]. (原始内容存档 (PDF)于2017-08-09). 
  4. ^ BLAKE2 – an alternative to MD5/SHA-1. [2018-10-27]. (原始内容存档于2015-04-30). 
  5. ^ O'Whielacronx, Zooko. introducing BLAKE2 – an alternative to SHA-3, SHA-2 and MD5. 21 December 2012 [2018-10-27]. (原始内容存档于2016-10-05). 
  6. ^ About Chef Habitat. docs.chef.io. [2022-08-30]. (原始内容存档于2022-08-10). 
  7. ^ coreutils/src/blake2/. github.com. [2022-08-30]. (原始内容存档于2022-07-21). 
  8. ^ librsync/src/blake2/. github.com. [2022-08-30]. (原始内容存档于2022-08-30). 
  9. ^ WhatsApp Security Whitepaper (PDF). [2022-08-30]. (原始内容存档 (PDF)于2016-04-05). 
  10. ^ WinRAR archiver, a powerful tool to process RAR and ZIP files. rarsoft.com. [2022-08-30]. (原始内容存档于2017-06-06). 
  11. ^ rmlint — rmlint (2.8.0 Maidenly Moose) documentation. rmlint.readthedocs.io. [2022-08-30]. (原始内容存档于2022-08-30). 
  12. ^ WireGuard: Next Generation Kernel Network Tunnel (PDF). [2022-08-30]. (原始内容存档 (PDF)于2018-03-04). 
  13. ^ work. docs.nano.org. [2022-08-30]. (原始内容存档于2022-08-30). 
  14. ^ signatures. docs.nano.org. [2022-08-30]. (原始内容存档于2022-08-30). 
  15. ^ key derivation. docs.nano.org. [2022-08-30]. (原始内容存档于2022-08-30). 
  16. ^ Autolykos: The Ergo Platform PoW Puzzle (PDF). ergoplatform.org. [2022-08-30]. (原始内容存档 (PDF)于2021-12-13). 
  17. ^ Linux 5.17 Random Number Generator Seeing Speed-Ups, Switching From SHA1 To BLAKE2s. www.phoronix.com. [2022-08-30]. (原始内容存档于2022-02-05). 
  18. ^ BLAKE2 official implementations. GitHub. [7 July 2019]. 
  19. ^ BLAKE3 – one function, fast everywhere (PDF). GitHub. 
  20. ^ JPA and I announced BLAKE3 at the RWC lightning talks..... Hacker News. [2022-08-30]. (原始内容存档于2022-01-10). 
  21. ^ An earlier version of Bao specified its own custom tree mode, which eventually grew into BLAKE3.. GitHub. [2022-08-30]. (原始内容存档于2022-08-30). 

外部链接

编辑

📚 Artikel Terkait di Wikipedia

完美散列

"Theory and practise of monotone minimal perfect hashing". In Proceedings of the Tenth Workshop on Algorithm Engineering and Experiments (ALENEX). SIAM, 2009

Murmur哈希

25 September 2010 [13 January 2012]. (原始内容存档于2019-04-15).  Which hashing algorithm is best for uniqueness and speed. stackexchange.com. [2013-04-24]

旋转哈希

滚动哈希值最多只能是成对独立(英语:pairwise independent)的或强通用(英语:universal hashing)的。例如,它们不能是三向独立(英语:k-independent hashing)的。 通常使用仅包含乘法和加法的滚动哈希函数来解释Rabin–Karp字符串搜索算法: H = c 1

Argon2

Argon2是一种密钥派生函数,是2015年密碼散列竞赛(英语:Password Hashing Competition)的获胜者。它由卢森堡大学的亚历克斯·比留科夫(英语:Alex Biryukov)、丹尼尔·迪努(Daniel Dinu)以及德米特里·霍夫拉托维奇(英语:Dmitry

数据结构与算法术语列表

虚拟可见地图(vertical visibility map) 虚拟散列法(virtual hashing) 能见度地图(visibility map) 可见 (几何学)(visible (geometry)) 维特比算法(Viterbi algorithm) VP树(VP-tree) 车辆路径问题(VRP) 道路 (图论)(walk)

线性探测

5-independent散列函数(英语:K-independent hashing)或tabulation散列函数(英语:Tabulation hashing),其用于搜索,插入或删除的预期时间是常数。不過,藉由其他像是私語雜湊的散列函數可以在實作中達到較好的結果。

Balloon hashing

Balloon hashing是一类现代密钥派生函数,具有内存困难特性,适用于密码散列场景,由斯坦福大学的丹·博内以及Henry Corrigan-Gibbs、来自微软研究院的Stuart Schechter共同设计。NIST在密码指导中推荐了该算法。 作者宣称Balloon: 已被证明具有内存困难性

节点 (电信网络)

of nodes. To address these issues, Dynamo uses a variant of consistent hashing: instead of mapping a node to a single point in the circle, each node gets