logo好方法网

SM4-GCM算法及在网络安全协议中的应用


技术摘要:
一种SM4‑GCM算法,其是基于伽罗瓦/计数器模式算法,并将其中的加密算法更换成SM4,采用国密SM4作为网络数据的认证加密算法,拥有自主知识产权,SM4采用128比特密钥长度对分组数据进行32轮迭代加密,安全高效。SM4算法设计简洁,实现起来较为简单,密钥调度和加密的算法  全部
背景技术:
网络安全是一个关系国家安全和主权、社会的稳定、民族文化的继承和发扬的重 要问题。其重要性,正随着全球信息化步伐的加快而变到越来越重要。“家门就是国门”,安 全问题刻不容缓。从用户(个人、企业等)的角度来说,他们希望涉及个人隐私或商业利益的 信息在网络上传输时受到机密性、完整性和真实性的保护,避免其他人或对手利用窃听、冒 充、篡改、抵赖等手段侵犯用户的利益和隐私,访问和破坏用户的数据。 目前国际上主要的网络信息传输安全协议有电气和电子工程师协会(IEEE)定义 于IEEE802 .1AE的媒体访问控制安全(MACsec)和国际互联网工程任务组(IETF)定义于 RFC4301的互联网安全协议(IPsec)体系结构。 媒体访问控制安全(MACsec)定义了基于IEEE  802局域网络的数据安全通信的方 法。MACsec可为用户提供安全的MAC层数据发送和接收服务,包括用户数据加密、数据帧完 整性检查及数据源真实性校验。MACsec通常与802.1X认证框架配合使用,工作在802.1X认 证过程成功之后,通过识别出已认证设备发送的报文,并使用MKA(MACsec  Key  Agreement, MACsec密钥协商)协议协商生成的密钥对已认证的用户数据进行加密和完整性检查,避免 端口处理未认证设备的报文或者未认证设备篡改的报文。 互联网安全协议(IPsec),是一个协议包,透过对IP协议的分组进行加密和认证来 保护IP协议的网络传输协议族(一些相互关联的协议的集合)。IPsec主要由以下协议组成: 一、身份验证标头(AH),为IP数据报提供无连接数据完整性、消息认证以及防重放攻击保 护;二、封装安全负载(ESP),提供机密性、数据源认证、无连接完整性、防重放和有限的传输 流(traffic-flow)机密性;三、安全关联(SA),提供算法和数据包,提供AH、ESP操作所需的 参数。IPsec使用两种协议来提供流量安全服务-身份验证标头(AH)和封装安全负载(ESP)。 两种协议都在它们各自的RFC[RFC4302,RFC4303]中详细描述。这些协议可以单独应用或相 互组合应用,以提供IPv4和IPv6安全服务。但是,通过单独使用ESP可以满足大多数安全要 求。每种协议都支持两种使用模式:传输模式和隧道模式。在传输模式中,AH和ESP主要提供 保护下一层协议;在隧道模式下,应用AH和ESP隧道IP数据包。 伽罗瓦/计数器模式(GCM)是对称密钥加密分组密码的一种操作模式,由于其效率 和性能而被广泛采用于媒体访问控制安全(MACsec)和互联网安全协议(IPsec)中。通过合 理的硬件资源,可以实现最先进的高速通信信道的GCM吞吐率。该操作是经过验证的加密算 法,旨在提供数据真实性(完整性)和机密性。GCM是为块密码为128位的块密码定义的。伽罗 瓦消息认证码(GMAC)是GCM的仅认证变体,可用作增量消息认证码。GCM和GMAC都可以接受 任意长度的初始化向量。即使与相同的分组密码一起使用,不同的分组密码操作模式也可 以具有不同的性能和效率特性。GCM可以充分利用并行处理,实现GCM可以有效利用指令流 4 CN 111555859 A 说 明 书 2/8 页 水线或硬件流水线。 目前国际上通常采用AES-128-GCM算法作为媒体访问控制安全(MACsec)和互联网 安全协议(IPsec)的认证加密算法。AES-128-GCM算法的基本操作正如在正常计数器模式中 一样,数据块按顺序编号,然后将该块编号与初始化向量(IV)组合,并用块密码E(Advanced  Encryption  Standard(AES),高级加密标准,128位密钥长度)加密。然后将该加密的结果与 明文进行异或运算以产生密文。与所有计数器模式一样,这本质上是一个流密码,因此必须 为每个加密的流使用不同的IV。密文块被视为多项式的系数,然后使用有限域算法在密钥 相关点H处对其进行评估。然后对结果进行加密,生成可用于验证数据完整性的身份认证标 签。然后,加密文本包含IV,密文和身份认证标签。AES-128-GCM算法采用AES-128作为网络 数据的认证加密算法,AES-128算法是由美国政府发布,采用128比特密钥长度对分组数据 进行10轮加密。AES算法使用了复杂的密钥调度算法,并且解密算法也需要另外编写代码, 实现起来较为复杂。 另外,SM4-HMAC-SM3算法也可以应用在网络数据的认证加密中,其加密采用的是 SM4计数器模式与上面的AES-128类似,身份验证采用的是哈希消息验证码HMAC-SM3算法, HMAC-SM3运算利用SM3哈希算法,以一个密钥和一个消息(SM4加密后的密文块)为输入,生 成一个消息摘要作为输出,网络数据包最后一个消息块生成的消息摘要输出作为身认证标 签。SM4-HMAC-SM3算法采用哈希消息验证码HMAC-SM3来生成身份认证标签,SM3算法每64个 时钟周期处理64字节的消息块,每个时钟周期处理1个字节的消息,并且HMAC在消息最后需 要处理额外的输出填充(OPAD)块,这样需要额外的64个时钟周期的时间,假定其工作在 125MHz的时钟频率,其处理速度达不到1G网络的线速。
技术实现要素:
针对上述
分享到:
收藏