SHA-3的获胜者:keccak - 在 3GPP TS 35.231FIPS 202 和 SP 800-185 中标准化

Posted rtoax

tags:

篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了SHA-3的获胜者:keccak - 在 3GPP TS 35.231FIPS 202 和 SP 800-185 中标准化相关的知识,希望对你有一定的参考价值。

https://keccak.team/keccak.html

目录

技术细节

标准实例


Keccak是一种通用的加密函数。最著名的是散列函数,但它也可用于身份验证、(经过身份验证的)加密和伪随机数生成。它的结构是极其简单的海绵结构,内部使用了创新的Keccak -f 密码排列。

在被选为 SHA-3 竞赛的获胜者后,Keccak已在移动电话 (TUAK) 的3GPP TS 35.231以及 NIST 标准FIPS 202SP 800-185 中进行了标准化。因此,它受到了广泛的公众监督和第三方密码分析。

我们源自Keccak的方案Ketje,Keyak和KangarooTwelve,在这些页面还列出。Kravette方案使用不同的结构,但使用相同的Keccak - f排列。Keccak还启发了许多第三方设计。

技术细节

概要该Keccak海绵功能
设计者吉多·贝尔托尼、琼·戴门、迈克尔·皮特斯和吉尔斯·范阿舍
工具可扩展输出函数(XOF),即具有任意输出长度的密码散列函数的泛化
建造海绵建设
原始其中一个的Keccak - ˚F [ b ]排列,其中,b是25,50,100,200,400,800或1600比特。在 FIPS 202 和 SP 800-185 标准的范围内,使用了最大的排列Keccak - f [1600]。然而,在受限环境中可以使用更小(或更“轻量级”)的排列。
参数化容量c和比特率r
实例这些实例表示为Keccak [ r , c ]。容量c决定了针对一般攻击的经证实的安全强度,即对于n位的安全级别,容量必须是c = 2 n。求和时,r + c必须是 25、50、100、200、400、800 和 1600 位之间的排列宽度。下列出了标准实例。
地位SHA-3 竞赛的获胜者,在 3GPP TS 35.231、FIPS 202 和 SP 800-185 中标准化

我们指的Keccak参考为规范Keccak,包括我们的设计理念和自己的密码分析。它也在FIPS 202标准中定义。

欲了解更多信息,请参阅:

标准实例

Instanceused in FIPS 202 and SP 800-185 by
Keccak[r=1344, c=256]SHAKE128 [FIPS 202], cSHAKE128, KMAC128, KMACXOF128, TupleHash128, TupleHashXOF128, ParallelHash128, ParallelHashXOF128 [SP 800-185]
Keccak[r=1152, c=448]SHA3-224 [FIPS 202]
Keccak[r=1088, c=512]SHAKE256, SHA3-256 [FIPS 202], cSHAKE256, KMAC256, KMACXOF256, TupleHash256, TupleHashXOF256, ParallelHash256, ParallelHashXOF256 [SP 800-185]
Keccak[r=832, c=768]SHA3-384 [FIPS 202]
Keccak[r=576, c=1024]SHA3-512 [FIPS 202]

以上是关于SHA-3的获胜者:keccak - 在 3GPP TS 35.231FIPS 202 和 SP 800-185 中标准化的主要内容,如果未能解决你的问题,请参考以下文章

Solidity Keccak256与SHA3-256

以太坊 Input Data 解析

Polygon zkEVM哈希状态机——Keccak-256和Poseidon

BLAKE 哈希函数 及 ChaCha20流密码

如何为 Solidity 生成的整数值生成 sh3_keccak256?

区块链Ethereum使用keccak256生成公私钥以及消息签名