首页
学习
活动
专区
圈层
工具
发布
社区首页 >问答首页 >基于海绵结构的散列函数可以作为可扩展的输出函数吗?

基于海绵结构的散列函数可以作为可扩展的输出函数吗?
EN

Cryptography用户
提问于 2019-02-27 14:14:33
回答 1查看 320关注 0票数 2

Keccak提供了一种非常有用的<>XOFs。

  • 海绵体这样的海绵结构散列函数可以作为XOF工作吗?
  • 是否有任何用于硬件或软件实现的轻量级XOF
EN

回答 1

Cryptography用户

回答已采纳

发布于 2019-03-07 18:29:59

基于海绵结构的散列函数可以作为可扩展的输出函数吗?

是。

选择任何排列\pi\colon \{0,1\}^n \to \{0,1\}^n和容量c < n。例如,您可以选择Keccak-p,比如SHA-3用途,使用状态大小n = 1600和容量c = 2\lambda作为\lambda-bit安全级别--也就是说,SHAKE128使用c = 256来抵抗128位冲突(当然,输出至少是256位)。让r = n - c作为利率。

  1. 从初始状态x_0 = 0^n开始,即n零位的字符串。将填充的输入消息m分解为r-bit块m_1 \mathbin\| m_2 \mathbin\| \cdots \mathbin\| m_\ell
  2. 吸收.对于每个块m_i,更新状态x_i = \pi(x_{i-1} \oplus (m_i \mathbin\| 0^c));也就是说,用c = n - r零填充r-bit块m_i,然后将其转换为状态,并更改状态。
  3. 挤压。显示x_\ell的第一个D26比特、\pi(x_\ell)的第一个r比特、\pi^2(x_\ell)的第一个r比特、\pi^3(x_\ell)的第一个r比特等等,直到生成所需的输出比特数为止。

是否有任何用于硬件或软件实现的轻量级XOF?

现在有很多基于排列的设计。

Keccak有很多种大小: SHA-3使用Keccak-p的参数部分出于偏执,部分出于政治原因,但KangarooTwelve使用Keccak-p,即SHA-3回合数的一半,以及更高的r率,并且对最好的碰撞攻击仍有很好的安全裕度。您甚至可以调优Keccak参数,如果碰撞电阻对您的应用程序不重要的话,那么Keccak参数就会更小,而且还可以为更小的字大小提供其他选项。

NORX是一种512位或1024位的排列,它的设计类似于ARX网络,但采用了近似a + b \approx a \oplus b \oplus ((a \wedge b) \mathbin\ll 1),以使硬件设计更加便宜,因为整数加法对进位传播有很高的成本;金利是一种更新的设计,具有384bit的置换,改进了NORX。凯撒胜利者阿斯康使用另一个320位排列.

票数 1
EN
页面原文内容由Cryptography提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://crypto.stackexchange.com/questions/67648

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档