加密货币百科
KECCAK 的海绵构造:SHA-3 吸收再挤压的那台压面机
SHA-3 不是对旧哈希打补丁,而是一种全新骨架:把消息吸进一个固定容量的状态,靠置换函数反复搅拌,再从状态里挤出任意长度的输出。本文拆解海绵构造的 rate 与 capacity 分工、为什么同一个状态既能当哈希又能当流加密和密钥派生,以及 Keccak 与 SHA-3 的命名差别和以太坊的坚持。
汇总与「哈希函数」相关的文章,帮助你系统了解该主题。
SHA-3 不是对旧哈希打补丁,而是一种全新骨架:把消息吸进一个固定容量的状态,靠置换函数反复搅拌,再从状态里挤出任意长度的输出。本文拆解海绵构造的 rate 与 capacity 分工、为什么同一个状态既能当哈希又能当流加密和密钥派生,以及 Keccak 与 SHA-3 的命名差别和以太坊的坚持。
生日悖论说明:找碰撞的难度远比直觉以为的低——256 位哈希也要约 2 的 128 次方次运算才有五成碰撞机会。本文用教室同生日的例子讲清碰撞攻击的原理,以及 MD5、SHA-1 是怎么倒下的。
SHA-256 这类基于 Merkle–Damgård 结构的哈希函数存在长度扩展性质:知道一段消息的哈希值,无需知道原文,就能算出这段消息再接一段可控尾巴之后的哈希。本文解释这一性质的结构成因、它如何让 hash(secret‖message) 这种简陋校验被绕过,以及 HMAC 和 SHA-3 各自如何终结这个问题。