Grøstl

Grøstl 是一款参与NIST散列函数竞赛的加密散列函数。Grøstl入选比赛最后五强。 它与AES一样使用相同的S盒结构。创造者声称在酷睿2处理器中其速度达到每字节21.4个周期。

根据提交的文件显示,Grøstl之名从德语而来。该名称原指一道奥地利菜,而该菜式的英语名称则称为哈希(中文称之为乞食牛肉)。

像其他MD5/SHA家庭的散列函数,Grøstl将输入资料分成资料块,再重复计算 hi = f(hi-1, mi). 然而,Grøstl在每次计算后都保留至少相等于最终哈希值两倍大小的数值(512位或1024位),直至计算完成再将尾端数值截尾。压缩函数f 被定义为:

f(h, m)= P(hm)⊕ Q(m)⊕ h

PQ之置换函数都基于Rijndael(AES)研发而成,但该函数分别处理8×8或8×16的字节,而非4×4字节组。每次压缩皆牵涉四个操作。

最后数值经由以下函数算出哈希值:Ω(h)= hP(h),然后截断至所需之长度。

Grøstl函数例子

空字串的Grøstl值:

Grøstl-224("")
0x f2e180fb5947be964cd584e22e496242c6a329c577fc4ce8c36d34c3
Grøstl-256("")
0x 1a52d11d550039be16107f9c58db9ebcc417f16f736adb2502567119f0083467
Grøstl-384("")
0x ac353c1095ace21439251007862d6c62f829ddbe6de4f78e68d310a9205a736d8b11d99bffe448f57a1cfa2934f044a5
Grøstl-512("")
0x 6d3ad29d279110eef3adbd66de2a0345a77baede1557f5d099fce0c03d6dc2ba8e6d4a6633dfbd66053c20faa87d1a11f39a7fbe4a6c2f009801370308fc4ad8

即使字串发生小小的改变,雪崩效应会使哈希值大大改变。 例如:

Grøstl-256("The quick brown fox jumps over the lazy dog")
0x 8c7ad62eb26a21297bc39c2d7293b4bd4d3399fa8afab29e970471739e28b301
Grøstl-256("The quick brown fox jumps over the lazy dog.")
0x f48290b1bcacee406a0429b993adb8fb3d065f4b09cbcdb464a631d4a0080aaf

外部链接

常用函数
  • MD5
  • SHA-1
  • SHA-2
  • SHA-3/Keccak
  • BLAKE2
SHA-3入围英语NIST hash function competition
  • BLAKE
  • Grøstl
  • JH英语JH (hash function)
  • Skein英语Skein (hash function)
  • Keccak(胜出)
其他函数
  • ECOH英语Elliptic curve only hash
  • FSB英语Fast Syndrome Based Hash
  • GOST英语GOST (hash function)
  • HAS-160英语HAS-160
  • HAVAL英语HAVAL
  • Kupyna英语Kupyna
  • LM hash英语LM hash
  • MD2英语MD2 (cryptography)
  • MD4
  • MD6
  • MDC-2英语MDC-2
  • N-Hash英语N-Hash
  • RIPEMD
  • RadioGatún英语RadioGatún
  • SWIFFT英语SWIFFT
  • SipHash英语SipHash
  • Snefru英语Snefru
  • Streebog英语Streebog
  • Tiger英语Tiger (cryptography)
  • VSH英语Very smooth hash
  • WHIRLPOOL英语Whirlpool (cryptography)
  • SM3
  • X11
密码散列/
密钥延伸函数
  • Argon2
  • Balloon
  • bcrypt
  • Catena英语Catena (cryptography)
  • crypt(3)英语Crypt (C) (DES)
  • LM散列英语LAN Manager#LM hash details
  • Lyra2
  • Makwa英语Makwa (cryptography)
  • PBKDF2
  • scrypt
  • yescrypt
通用
密钥派生函数
  • HKDF
  • KDF1/KDF2
MAC算法
  • DAA英语Data Authentication Algorithm
  • CBC-MAC英语CBC-MAC
  • HMAC
  • OMAC英语One-key MAC/CMAC英语CMAC
  • PMAC英语PMAC (cryptography)
  • VMAC英语VMAC
  • UMAC英语UMAC
  • Poly1305
认证加密模式
攻击
设计
  • 雪崩效应
  • 碰撞
  • 默克尔-达姆加德结构英语Merkle–Damgård construction
标准化
  • CRYPTREC英语CRYPTREC
  • NESSIE英语NESSIE
  • NIST散列函数竞赛英语NIST hash function competition
实际应用