Algorithm 如何使用UMAC?(UHash24)
我正在尝试用一种算法对消息进行身份验证,该算法将在消息中给我一个小的额外输出。在我的搜索过程中,我最终得到了只有3个字节输出的UMAC 我正在使用中介绍的实现Algorithm 如何使用UMAC?(UHash24),algorithm,hash,cryptography,hmac,Algorithm,Hash,Cryptography,Hmac,我正在尝试用一种算法对消息进行身份验证,该算法将在消息中给我一个小的额外输出。在我的搜索过程中,我最终得到了只有3个字节输出的UMAC 我正在使用中介绍的实现 我的问题是,密钥必须比消息长。如果我有一个16字节的密钥,并通过复制这16个字节来创建一个新的密钥,那么我是否会使算法受到可能的攻击 在RFC4418中没有提到UMAC-24,只有32、64、96和128——这让我想知道维基百科到底在那里实现了什么,可以使用吗 3字节意味着只有16777216种可能性可以尝试。即使是在小型计算机上,也可以
3字节意味着只有16777216种可能性可以尝试。即使是在小型计算机上,也可以通过暴力攻击轻松做到这一点。由于使用了密钥,无需利用任何可能的弱点。请阅读维基百科中的标题:“示例”。正如@Henry指出的那样,这不是一个完整(安全)实现。为什么不试着给自己编写32…128版本的代码呢?3字节的Mac本身就很弱,因为你有1600万分之一的机会猜到正确的身份验证标签。对于多项式散列,这样一个正确的猜测不仅会给你一个伪造的消息,而且还能让你恢复部分密钥。=>不要将多项式MAC用于短标记,它们甚至比其他短标记MAC(如截断的HMAC)更弱