可鉴别加密工作模式-同时保护数据机密性和完整性(OCB、CCM、KeyWrap、EAX和GCM)第二部分

当算法用于同时保护数据的机密性和完整性时,应选取合适的可鉴别加密工作模式,例如OCB、CCM、KeyWrap、EAX和GCM等工作模式。以下总结来自GBT36624-2018国标文本(修改采用ISO/IEC 19772-2009)。

对于加密工作模式上篇(可鉴别加密工作模式-同时保护数据机密性和完整性(OCB、CCM、KeyWrap、EAX和GCM)第一部分_搞搞搞高傲的博客-CSDN博客)有过介绍,这里就直接记录可鉴别加密工作模式。

(1)OCB(Online/Offline Authenticated Encryption and Bearer Cryptography)

OCB是瑞士的安全专家Gligor和Duan于2012年提出,是对之前AES-GCM(竞态安全身份验证和加密算法)和CCM (计数器模式)的改进。

OBC技术结合了对称加密和公钥加密,利用消息认证码 (MAC) 对数据进行认证,并使用令牌 (token) 实现数据的授权和访问验证。OBC技术的一个主要创新点是引入了"蓝牙" (Bluetooth) 等低带宽无线传输技术,从而可以将数据的安全性与传输效率相结合。通过使用 OBC 技术,可以保证通信和数据存储的安全性和完整性,同时支持在线和离线模式的数据交换。OBC 技术已经被广泛地应用于物联网 (IoT)、无线传感器网络 (WSN)、智能交通系统和金融安全领域等多个领域。

(2)CCM(Counter with CBC-MAC),结合了CBC-MAC(Cipher Block Chaining---Message Authentication Code)和 Counter(计数器)模式。它主要用于具有较低数据传输率和有限内存的嵌入式设备中。CCM 组合了加密、认证和计数器模式,既保证了安全性,又减小了数据尺寸。

CCM模式中主要包含三个部分:加密、认证和计数器。其中,加密和计数器使用快速的SM4算法,认证则采用CBC-MAC模式,使得CCM模式具有高度的安全性和运行效率。具体而言,CCM加密模式采用交替分组方式,对数据进行加密和认证,同时通过计数器模式来生成加密的密钥流,最后与原始数据进行异或操作,得到最终的密文。在使用CCM模式时,需要指定明文长度、密钥长度以及MAC(消息认证码)的长度等参数。CCM模式也会根据选择的参数来划分计数器块和MAC块的大小。此外,CCM模式的安全性还依赖于计数器值,在实际使用过程中需要仔细考虑计数器溢出等问题。

(3)KeyWrap,用于保护密钥在网络上的安全传输。此模式使用SM2公钥密钥对对密钥进行封装,并使用对称加密算法对其进行加密。Keywrap可以保护密钥,同时还可以确保传输期间数据的机密性。

(4)EAX,使用SM4加密算法的基础上结合了OMAC (Offset MAC)算法,可以快速和可靠地加密和验证数据。EAX具有非常高的性能,是一种常用的可鉴别加密模式。

EAX模式的核心原理是使用加密算法和OMAC算法两种技术相结合,并使用计数器块来生成密钥流。具体而言,在将数据加密时,EAX模式会使用加密算法将消息分成若干个数据块并加密,随后使用OMAC算法生成MAC值,最后通过将MAC值和计数器块进行异或得到最终的密文。而在解密数据时,EAX模式会首先使用计数器块生成与加密过程中相同的密钥流,然后将密文与对应的密钥流异或得到明文,同时使用OMAC算法验证MAC值是否正确。

在使用EAX模式时,需要提供一个长度为16个字节的初始向量(IV),并且要求IV是唯一的。此外,EAX模式还需要明确数据块大小和加密算法的种类等参数。如果这些参数被正确地选择和使用,EAX模式可以提供很强的安全性和性能,并且可以扩展到更大的数据块。

(5)GCM(Galois/Counter Mode)是一种经典的可鉴别加密模式,是目前广泛使用的块加密密码协议的一部分,例如TLS、IPsec和SSH。GCM模式结合了加密算法和GHASH哈希函数的特性,实现了高效的加密、认证和完整性保护,可以抵御密码分析和相关密钥攻击等多种安全攻击。

GCM模式的核心原理是对数据进行加密和认证,其中加密使用计数器模式,认证使用GHASH哈希函数。GCM模式将数据分成若干个数据块,并使用计数器模式生成每个数据块的密钥流,将密钥流与明文异或后,使用GHASH哈希函数生成认证数据(MAC值),MAC值与密文一起发送。在接收端,首先使用计数器模式生成相同的密钥流,然后使用GHASH函数生成MAC值,再将MAC值与接收到的MAC值进行比较,以验证数据的完整性和认证性。如果MAC值匹配,那么数据就可以被认为是完好无损且确认其来源的。

在使用GCM模式时,需要指定的参数包括密钥长度、明文长度、加密算法、初始向量和MAC长度等,同时要求初始向量和密钥必须是唯一的。特别地,由于GCM模式继承了计数器模式的长处,可以支持并行加密和认证,从而进一步提高了效率和性能。

相关推荐
Alfadi联盟 萧瑶1 小时前
安全生态与职业跃迁
安全
大咖分享课1 小时前
谷歌宣布推出 Android 的新安全功能,以防止诈骗和盗窃
安全
Blossom.1181 小时前
量子传感器:开启微观世界的精准探测
大数据·人工智能·深度学习·安全·机器学习·计算机视觉·量子计算
Bypass--2 小时前
《云原生安全攻防》-- K8s日志审计:从攻击溯源到安全实时告警
安全·docker·云原生·容器·kubernetes
0xCC说逆向2 小时前
Windows逆向工程提升之IMAGE_IMPORT_DESCRIPTOR
c语言·汇编·windows·安全·逆向·pe结构
2501_915909063 小时前
一次复杂接口故障的抓包全过程:四款工具协同作战实录(含 Charles)
websocket·网络协议·tcp/ip·网络安全·https·udp
c30%003 小时前
内网渗透——红日靶场四
学习·安全
玉笥寻珍6 小时前
数字政务安全实战:等保2.0框架下OA系统防护全解析
python·安全·政务
测试工程喵10 小时前
如何测试JWT的安全性:全面防御JSON Web Token的安全漏洞
前端·网络·功能测试·安全·json·接口测试·token
禾木KG12 小时前
网络安全-等级保护(等保) 2-7 GB/T 25058—2019 《信息安全技术 网络安全等级保护实施指南》-2019-08-30发布【现行】
网络安全