1)zuc算法简介

zuc(祖冲之密码算法〉是我国发布的商用密码算法中的序列密码算法,该算法以中国古代数学家祖冲之的拼音(ZU Chongzhi )首字母命名,可用于数据保密性保护、完整性保护等。 zuc算法密钥长度为 12 8 比特, 由 128 比特种子密钥和128 比特初始向量共同作用产生 32 比特位宽的密钥流 。

zuc算法标准包括三个部分, 相对应的 国家和密码行业标准分别为 GB/T33133 .1 -2016 《 信息安全技术祖冲之序列密码算法第 1 部分 : 算法描述》 、 GM/T0001.2-2012 《祖冲之序列密码算法第 2 部分:基于祖冲之算法的机密性算法 》 、GM厅 0001.3-2012 《祖冲之序列密码算法第 3 部分:基于祖冲之算法的完整性算法》。

2011 年 9 月,在第 53 次第 三代合作伙伴计划 C3GPP )系统架构组会议上,我国以 zuc算法为核心的加密算法 128-EEA3 和完整性保护算法 128-EIA3 ,与美国 AES 、 欧洲 SNOW 3G 共同成为了 4G 移动通信密码算法国际标准 。 这是我国商用密码算法首次走出国门参与国际标准竞争,并取得重大突破。目前,我国正推动256 比特版本的 zuc算法进入 5G 通信安全标准,这一版本算法采用 256 比特密钥与 184 比特的初始 向量,可产生 32/64/1 28 比特三种不同长度的认证标签,从而保障后量子时代较长时期内移动通信的保密性与完整性。

2)zuc算法的使用

在生成密钥流时, zuc算法采用 1 28 比特的初始密钥和 1 28 比特的 IV作为输入参数,共同决定 LFSR 里寄存器的初始状态。随着电路时钟的变化, LFSR 的状态被比特重组之后输入非线性函数 F,每一拍时钟输出一个 32 比特的密钥流 Z。随后,密钥流与明文按位异或生成密文。

3)基于 zuc的两种算法

基于 zuc的两种算法包括机密性算法 128-EEA3 和完整性算法 128-EIA3。

(1)基于 zuc的机密性算法 128-EEA3。主要用于 4G 移动通信中移动用户设备和无线网络控制设备之间的无线链路上通信信令和数据的加密和解密 。

(2)基于 zuc的完整性算法 128-EIA3。主要用于 4G 移动通信中移动用户设备和无线网络控制设备之间的无线链路上通信信令和数据的完整性校验,并对信令源进行鉴别 。 其主要技术手段是利用完整性算法 128-EIA3 产生 MAC,通过对MAC 进行验证,实现对消息的完整性校验 。

4) zuc算法的安全性

zuc算法在设计中引入了素数域运算、比特重组、最优扩散的线性变换等先进理念和技术,体现了序列密码设计上的发展趋势 。 通过对其三层结构的综合运用,zuc算法具有很高的理论安全性,能够有效抵抗目前己知的攻击方法,具有较高的安全冗余,并且算法速度快,软/硬件实现性能都比较好 。