首页
学习
活动
专区
圈层
工具
发布
社区首页 >问答首页 >使用blake2置换作为分组密码

使用blake2置换作为分组密码
EN

Cryptography用户
提问于 2022-07-18 15:15:18
回答 1查看 176关注 0票数 0

Blake2(1024位状态)置换(压缩函数核)基本上是一种改进的ChaCha置换。修改之一是混合消息位(密钥调度?)。考虑到blake2是一个哈希函数,它旨在抵抗相关消息(相关的密钥攻击?)难道它也不会成为一个好的1024位分组密码吗?

我对由此产生的建筑提出的一些问题是:

  1. 它会是一个安全的分组密码吗?
  2. 考虑到结果将是一个1024块密码,它似乎是一个1024位密钥(以前是消息块),您是否能够期望达到2^1024的安全级别?(在实践中,密钥可能来自某个安全级别较低的PRNG,而不是选择这种过度杀害)

用例是加密AD中的AD。使AEAD数据包(大的,不一定是网络)显示为完全随机的比特。AD还将包括包的加密参数以及当前的参数。

EN

回答 1

Cryptography用户

发布于 2022-07-19 02:11:25

要回答问题1,我们不知道这是否是一个安全的建筑。仅仅因为哈希函数的压缩函数在用作哈希函数时是安全的,并不意味着它在用作块密码时是安全的。例如,对SHA-1和SHA-2底层的块密码的攻击并不适用于哈希算法本身。

作为理论上可能出现的弱点的一个例子,例如,BLAKE2排列的前半部分被发现是弱的,但是后半部分是独立的,并且与随机没有区别。那么BLAKE2b很可能仍然是安全的,但是作为分组密码的置换可能不会。

为了确定此设计是否安全,您必须对设计进行正常的密码分析,而对ChaCha的密码分析可能不适用,因为在那里置换并不用作分组密码。如果没有充分的研究,我不会推荐这种方法。

一种更有可能是安全的方法(但您也不应该使用它,因为它已经看到了零密码分析)是一个四轮Feistel密码,以键控BLAKE2b作为F 函数。这将产生一个1024位的分组密码,密钥最多255个字节.至少,这种方法可以根据一些关于键控BLAKE2b的假设进行安全性验证,尽管它可能不是特别的性能。

虽然推测这个设计在理论上是有趣的,但我鼓励您使用一种更标准的方法,它已经看到了大量的真实世界密码分析,并且仍然被认为是安全的。

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

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

复制
相关文章

相似问题

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