Cryptography Skein作为散列的安全性是否意味着Threefish作为分组密码的安全性?

Cryptography Skein作为散列的安全性是否意味着Threefish作为分组密码的安全性?,cryptography,theory,sha-3,skein,Cryptography,Theory,Sha 3,Skein,提议的SHA-3具有一些令人印象深刻的速度结果,我怀疑这将适用于其核心的Threefish分组密码-但是,如果Skein被批准用于SHA-3,这是否意味着Threefish也被认为是安全的?也就是说,Threefish中的任何漏洞是否意味着SHA-3中的漏洞?(因此,缺乏已知问题和对SHA-3的普遍信任意味着三条鱼也是如此)忽略我之前的回答。我误解了Skein和Threefish之间的关系。我仍然不认为Skein被批准绝对证明Threefish通常是安全的(Threefish可能只在以特定方式使

提议的SHA-3具有一些令人印象深刻的速度结果,我怀疑这将适用于其核心的Threefish分组密码-但是,如果Skein被批准用于SHA-3,这是否意味着Threefish也被认为是安全的?也就是说,Threefish中的任何漏洞是否意味着SHA-3中的漏洞?(因此,缺乏已知问题和对SHA-3的普遍信任意味着三条鱼也是如此)

忽略我之前的回答。我误解了Skein和Threefish之间的关系。我仍然不认为Skein被批准绝对证明Threefish通常是安全的(Threefish可能只在以特定方式使用时才安全),但这将是一个指示。

不。Skein的安全并不意味着三条鱼的安全。积极地说,如果有人发现三条鱼的弱点,那么这并不意味着斯金也不安全

然而,问题是,一个应用于其他哈希函数的函数也很有趣。 Skein使用了Davis Meyer结构,并进行了一些修改。MD5、SHA1和许多其他哈希函数也使用这种Davis-Meyer构造,因此它们原则上基于分组密码。以MD5或SHA1为例,分组密码没有名称,我也不知道这些构造有多合适

对一个好的分组密码和一个好的散列函数的要求是不同的。稍微简化一下,如果E是一个分组密码,并且不可能找到两个密钥K,K'和两个消息M,M',使得EK(M)xor M=EK'(M’)xor M',那么E适合使用Davis Meyer构造散列函数。但要像分组密码一样安全,E需要其他属性。E必须抵抗选择的密文攻击、选择的明文攻击等

此外,如果E是一个好的分组密码,那么这并不意味着它提供了一个好的散列函数。微软不得不通过他们在XBOX中使用的散列来了解这一点。这个散列是基于分组密码TEA的,TEA有一个弱点,对于分组密码来说是无关紧要的,但是在用于散列函数时被证明是致命的

公平地说,作为一个好的分组密码和适用于散列函数之间有一些关系。例如,在这两种情况下都需要避免差异攻击。因此,一些用于构造好的分组密码的设计方法可以用来构造好的散列函数


我还要补充一点,SHA-3的一些提案是基于AES的。到目前为止,我还没有看到对基于AES的哈希函数的支持,只是因为AES已经是一种标准。这些散列函数的分析与任何其他SHA-3方案一样。

我认为这不一定成立。如果在Skein中使用Threefish是不安全的,那么这并不一定意味着Threefish的另一个用法。此外,有很多关于Skein在Threefish方面的安全性的证明,但我不确定这在实际层面上对Threefish在加密应用程序中的安全性意味着什么。谢谢-这很有意义:)