天津网站定制,嘉兴网站模板建站,酒店线上推广方案有哪些,河北省住房与建设厅网站一、ZUC算法简介
ZUC算法#xff08;祖冲之算法#xff09;是中国自主研发的一种流密码算法#xff0c;2011年被3GPP批准成为4G国际标准#xff0c;主要用于无线通信的加密和完整性保护。ZUC算法在逻辑上采用三层结构设计#xff0c;包括线性反馈移位寄存器#xff08;L…一、ZUC算法简介
ZUC算法祖冲之算法是中国自主研发的一种流密码算法2011年被3GPP批准成为4G国际标准主要用于无线通信的加密和完整性保护。ZUC算法在逻辑上采用三层结构设计包括线性反馈移位寄存器LFSR、比特重组BR和非线性函数F。ZUC算法集包括祖冲之算法、加密算法128-EEA3和完整性算法128-EIA3已被国际组织3GPP推荐为4G无线通信的第三套国际加密和完整性标准的侯选算法。
二、ZUC算法流程
关键步骤Operation LFSR线性反馈移位寄存器生成一系列的内部状态。分为2种模式初始化模式和工作模式 1.初始化模式:LFSR接收1个31比特字“的输人,对寄存器单元变量s0,s1…s15进行更新。 2.工作模式:LFSR无输人,直接对寄存器单元变量s0,s1…s15进行更新。 比特重组BR从LFSR的寄存器单元中抽取128比特组成4个32比特字。 输入为LFSR寄存器单元变量s0,s2,s5,s7,s9,s11,s14,s15,输出为4个 32 比特字 X0、X1、X2、X3 非线性函数F将LFSR生成的状态进行复杂的非线性变换增强密钥流的随机性。把一个96比特压缩为32比特的一个非线性压缩函数。 F的输人为3个32比特字X0、X1、X2,输出为一个32比特字W。 密钥装入密钥载入过程将128比特的初始密钥k和128比特的初始向量iv扩展为16个31比特长的整数作为LFSR寄存器单元s0,s1…s15的初始状态。
2.算法运行
祖冲之算法的输入参数为初始密钥k、初始向量iv和正整数L输出参数为L 个密钥字Z。算法运行过程包括初始化步骤和工作步骤。
初始化Key and IV Setup 调用密钥装载过程将128比特的初始密钥k和128比特的初始向量iv装入到FSR的寄存器单元变量S0S1S2…S15中作为LFSR的初态;并置非线性函数F中的32比特存储单元R1和R2全为0。然后重复循环过程32次。 以下是ZUC算法的特点以表格形式呈现
特点描述算法类型流密码算法密钥长度128位IV长度128位输出生成32位的密钥流结构由LFSR、BR比特重组和F非线性函数三部分组成LFSR16级线性反馈移位寄存器基于素域GF(2^31 - 1)的m序列BR比特重组破坏LFSR在素域上的线性结构增强随机性F非线性函数包含S盒提供非线性确保算法安全的关键部分S盒由4个8x8的S盒并置而成其中S2S0S3S1