首页
学习
活动
专区
圈层
工具
发布
社区首页 >问答首页 >CBC-MAC使用什么分组密码?

CBC-MAC使用什么分组密码?
EN

Cryptography用户
提问于 2013-10-21 19:14:22
回答 3查看 2.1K关注 0票数 2

CBC-MAC使用什么分组密码?DES,AES,3 DES?还是没什么关系?

EN

回答 3

Cryptography用户

回答已采纳

发布于 2013-10-21 19:36:39

嗯,是的,这确实很重要;但是术语‘CBC’并没有指定哪一个。

CBC-MAC是一种通用结构,它接受任意块密码,并将其转化为对固定长度消息起类似MAC作用的对象(与CBC模式非常类似,CBC模式是接受任意块密码并将其转换为加密可变长度消息的对象的通用结构)。而且,就像"CBC“不一定用于特定的分组密码一样,CBC也不一定。

注意:如果您尝试将CMAC与可变长度消息一起使用,则会出现问题;CMAC和XCBC是两种类似CMAC的模式,可以避免此问题。

票数 7
EN

Cryptography用户

发布于 2013-10-21 19:37:05

CBC-MAC是一种基于分组密码的MAC结构。任何分组密码都可以,但该方案的安全性可归结为分组密码的安全性。更准确地说,只要分组密码是一个安全的伪随机排列,任何分组密码都将构成一个安全的CBC-MAC。

票数 1
EN

Cryptography用户

发布于 2014-12-08 01:49:47

首先,在满足一定条件的前提下,分组密码可以采取多种通用形式,包括:分组密码、Fk、安全CBC,当然还有CBC模式。伪随机生成元和置换作为对上述问题的响应,在反演方面具有很强的相关性。符号F:K*X--> PRP。如果给定的分组密码是安全的,这并不会使MAC受到保护,相反,安全的CBC-MAC/CBC-模式不会产生安全的分组密码。在MAC工程和密码学中,通常有许多开发途径。虽然维基百科和其他网站得到了PRP和PRG的一些正确和暗示,或简短地提到前,他们做了一个糟糕的工作,实际上解释更好的要点,在这次讨论。只要分组密码满足一定的最小要求,那么它就适合于CBC。

代码语言:javascript
复制
                     Please see below for more details:

CBC处理任意长度的消息,更具体地说,处理消息要比单个块长度长得多。消息可以是任意的,但长度是固定的。发送方和接收方都必须在理论上事先就消息的长度达成一致,但这在实践中是不现实的,因此可以通过几种方法更改消息的长度,但一种实用的方法是准备结束消息的长度:验证l可以接受任何值的消息M1-ml,将其编码为一个单独的块,使用n个比特(可能填充到左边),然后运行CBC-MAC系统m1--ml消息,并处理任意长度的任意消息。

给定一个消息m1--ml,其中每个Mi表示消息的一个块,其长度=某个底层块密码的块长度,我们可以通过将块密码Fk (effs of k)应用于初始块M1值来计算一个标记,然后将它作为链接值使用,并将其作为一个链接值,并对M2进行所有操作,直到得到一个结果:消息m1--到ml.CB-MAC的标记t也是确定性的,而CBC模式本身具有IV =初始向量,如果使用CBC-MAC insecure.However,则CBC和模式都是安全的。最后,必须将元素t映射为通过密钥space.Without中的单独密钥k设置x--这是最终的加密函数,这个函数称为级联函数,它是不安全的。然而,fpad在末端匹配模式功能,以保护分组密码。

有趣的是,散列函数与CBC/CBC模式相关,它们是对某些MAC问题的工程化响应。

参考文献:

Dan密码学I古瑟尔/斯坦福。

乔纳森·卡茨密码学课程/马里兰大学

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

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

复制
相关文章

相似问题

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