4.4 CBC-MAC

 从定理4.6和定理4.8可以得出,可以通过固定长度的伪随机函数构造任意长度message的安全MAC。其基于block ciphers,但效率较低:对于长度为 d n dn dn的message,block ciphers需要计算 4 d 4d 4d次(每个分组的长度为 n n n,但是每个 m i m_i mi的长度为 n / 4 n/4 n/4,故分组的个数为 4 d 4d 4d个);tag t的长度超过 4 d n 4dn 4dn位(每一个block的长度为 n n n,这一点和前面定理中提到的不同)。

4.4.1 The Basic Construction

CBC-MAC是在实践中应用非常广泛的standard message MAC。当message的长度固定时,CBC-MAC是安全的,具体构造方法如下:
在这里插入图片描述
 Theorem 4.12如下:
在这里插入图片描述
Theorem4.12的证明将会在后面详细描述。由Theorem4.12可以得出,construction4.11是可以处理任意长度的message,但只有sender和receiver提前商量好message长度时,MAC方案才会是安全的。

construction4.5construction4.7
construction4.11可以验证更长的固定长度的messageconstruction4.11更有效,tag仅为 n n n位( n n n是分组的长度),仅需计算 d d d

CBC-MAC vs. CBC-mode encryption

CBC-MACCBC操作模式是相似的但还是存在一些重要的区别:
  1. CBC操作模式使用的初始化向量 I V IV IV,这是其安全性的主要保证;但是CBC-MAC却没有用到 I V IV IV(使用随机向量 I V IV IV会变得不安全)。
  2.在CBC操作模式中所有的中间值 c i c_i ci都被输出作为密文的一部分;而CBC-MAC则只输出最终的tag t d t_d td d d d是分组数)。如果CBC-MAC输出每一个 t i t_i ti则就不再安全。
 在Exercise 4.14中将会对上面所说的修改进行证明。

Secure CBC-MAC for arbitrary-length messages

 接下来将要介绍的是任意长度messages的CBC-MAC,这是基于construction4.11进行的修改(假设所有的messages都是 n n n的倍数, n n n是block的长度)。修改主要由以下两点:
  1.把初始化随机向量 I V IV IV修改为 ∣ m ∣ |m| m,具体参考Figure4.2;注: ∣ m ∣ |m| m后置会使得CBC-MAC不再安全。(破坏prefix-free这个条件? m + ∣ m ∣ m+|m| m+m形式中,短的 m m m可能是长的 m m m的前缀,而 ∣ m ∣ + m |m|+m m+m形式则不会,因为前 n n n位就不同)
  2.分别定义两个密钥 k 1 , k 2 , k_1,k_2, k1,k2,其中 t = M a c k 1 ( m ) , t ^ = F k 2 ( t ) t=Mac_{k_1}(m),\hat{t}=F_{k_2}(t) t=Mack1(m),t^=Fk2(t)
在这里插入图片描述

4.4.2 *Proof of Security

  • 2
    点赞
  • 14
    收藏
    觉得还不错? 一键收藏
  • 2
    评论
### 回答1: 4.4BSD-Lite是计算机操作系统BSD的一个版本,它是由加州大学伯克利分校(UCB)开发的。它是BSD的一个重要分支,由于它的开放源代码,许多其他操作系统都从中获益。 4.4BSD-Lite于1994年首次发布,它是首个被公开发布的BSD版本。它采用了一种新的开放源代码许可证,使得开发者可以自由地修改和分发该系统。这一许可证被称为"BSD许可证",它后来成为了许多其他开源软件的基础。 4.4BSD-Lite在许多方面进行了改进。它引入了对IPv6和安全性的支持,增强了网络功能和性能。它还引入了更好的多处理器支持,提高了系统的并发性能。此外,它还改进了系统的稳定性和可靠性。 4.4BSD-Lite在许多方面对其他操作系统产生了巨大的影响。它的网络协议栈成为互联网的基础,并被很多其他操作系统所采用。它的开源模式也为其他开源软件项目提供了范例。4.4BSD-Lite开创了一个新的时代,使得操作系统和软件开发能够更加灵活和创新。 总结来说,4.4BSD-Lite是一个开源的操作系统版本,它在网络功能、安全性、多处理器支持等方面进行了改进,对其他操作系统产生了深远的影响,并且开辟了开源软件开发的新时代。 ### 回答2: 4.4BSD-Lite是一个UNIX操作系统的版本,它是从BSD UNIX衍生出来的。BSD是Berkeley Software Distribution的缩写,它是由加州大学伯克利分校开发和发布的一个UNIX操作系统的分支。 4.4BSD-Lite是在原始的4.4BSD版本上进行的一次改进和精简。它采用了许多先进的技术和特性,提高了操作系统的性能和可靠性。其中一些特性包括多线程支持、TCP/IP网络协议栈、虚拟内存管理、文件系统支持以及安全性增强等。 这个版本的BSD操作系统被广泛应用于许多领域,特别是在科研和学术界。它提供了开放源代码的灵活性和可定制性,使得用户可以根据自己的需求进行修改和扩展。许多大学和研究机构使用4.4BSD-Lite作为基础,开展各种研究和实验项目。 4.4BSD-Lite对于现代操作系统的发展具有重要意义。它不仅为后续的BSD版本(如FreeBSD、NetBSD和OpenBSD)提供了基础,还对其他操作系统的设计和开发起到了影响。其先进的技术和架构为后续的操作系统引入了许多创新和改进,提高了系统的性能和可用性。 总的来说,4.4BSD-Lite是一个重要的UNIX操作系统版本,它为后续的操作系统提供了基础,并在科研和学术界发挥了重要作用。它的技术和特性对于现代操作系统的设计和开发具有深远影响。 ### 回答3: 4.4BSD-Lite是一个操作系统内核,它是从早期的4.4BSD操作系统中剥离出来的一个精简版本。BSD(Berkeley Software Distribution)是加利福尼亚大学伯克利分校开发的Unix操作系统分发版本。 4.4BSD-Lite是基于免费软件开源模型开发的,因此它具有开放源代码的特点。与传统的Unix操作系统相比,4.4BSD-Lite不包含商业许可证和专有代码,可以被用户自由地使用、修改和分发。 4.4BSD-Lite采用了一些新的技术,如虚拟内存、网络文件系统(NFS)、套接字(socket)接口等。这些技术使得4.4BSD-Lite在性能、可靠性和网络支持方面都有了显著的提升。 4.4BSD-Lite的出现促进了开源软件的发展和普及。它为后来的操作系统,如FreeBSD、NetBSD和OpenBSD提供了重要的基础。这些操作系统在4.4BSD-Lite的基础上进行了改进和扩展,成为了现代开源操作系统的重要组成部分。 总之,4.4BSD-Lite是一个具有开放源代码和精简功能的操作系统内核。它的出现推动了开源软件的发展,并为后来的操作系统提供了基础。
评论 2
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值