GB/T 33133.1-2016 信息安全技术 祖冲之序列密码算法 第1部分:算法描述

GB/T 33133.1-2016 Information security technology—ZUC stream cipher algorithm—Part 1:Algorithm description

国家标准 中文简体 现行 页数:17页 | 格式:PDF

基本信息

标准号
GB/T 33133.1-2016
相关服务
标准类型
国家标准
标准状态
现行
中国标准分类号(CCS)
国际标准分类号(ICS)
发布日期
2016-10-13
实施日期
2017-05-01
发布单位/组织
中华人民共和国国家质量监督检验检疫总局、中国国家标准化管理委员会
归口单位
全国信息安全标准化技术委员会(SAC/TC 260)
适用范围
GB/T 33133的本部分给出了祖冲之序列密码算法的一般结构,基于该结构可实现本标准其他各部分所规定的密码机制。本部分适用于祖冲之序列密码算法相关产品的研制、检测和使用,可应用于涉及非国家秘密范畴的商业应用领域。

发布历史

研制信息

起草单位:
北京信息科学技术研究院、中国科学院软件研究所、中国科学院数据与通信保护研究教育中心、北京创原天地科技有限公司
起草人:
冯登国、林东岱、冯秀涛、周春芳、刘辛越
出版信息:
页数:17页 | 字数:28 千字 | 开本: 大16开

内容描述

ICS35.040

L80GB

中华人民共和国国彖标准

GB/T33133.1—2016

信息安全技术祖冲之序列密码算法

第1部分:算法描

Informationsecuritytechnology——ZUCstreamcipheralgorithm—

Part1:Algorithmdescription

2016-10-13发布2017-05-01实施

GB/T33133.1—2016

目次

前言m

引言N

1范围1

2规范性引用文件1

3术语和定义1

4符号和缩略语2

4.1运算符2

4.2符号2

4.3缩略语2

5算法流程2

5.1算法结构2

5.2线性反馈移位寄存器LFSR3

5.3比特重组BR4

5.4非线性函数F4

5.5密钥装入4

5.6算法运行5

附录A(规范性附录)S盒6

附录B(资料性附录)模沪一1乘法和模2汉一1加法的实现8

附录C(资料性附录)算法计算实例9

参考文献13

T

GB/T33133.1—2016

■ir■■i

刖吕

GB/T33133«信息安全技术祖冲之序列密码算法》分为以下3部分:

——第1部分:算法描;

——第2部分:保密性算法;

——第3部分:完整性算法。

本部分为GB/T33133的第1部分。

本部分按照GB/T1.1—2009给出的规则起草。

本部分由国家密码管理局提出°

本部分由全国信息安全标准化技术委员会(SAC/TC260)归口。

本部分起草单位:北京信息科学技术研究院、中国科学院软件研究所、中国科学院数据与通信保护

研究教育中心、北京创原天地科技有限公司。

本部分主要起草人:冯登国、林东岱、冯秀涛、周春芳、刘辛越。

m

GB/T33133.1—2016

引言

本部分的目标是保证祖冲之序列密码算法使用的正确性,为国内企业正确研发使用祖冲之算法的

相关设备提供指导。

本部分修改采用如下国际标准:

ETSI/SAGETS35.221.Specificationothe3GPPConfidentialityandIntegrityAlgorithms128-

EEA3&128-EIA3.Document1:128-EEA3and128-EIA3Specification.

ETSI/SAGETS35.222.Specificationothe3GPPConfidentialityandIntegrityAlgorithms128-

EEA3&128-EIA3.Document2:ZUCSpecification.

ETSI/SAGETS35.223.Specificationothe3GPPConfidentialityandIntegrityAlgorithms128-

EEA3&128-EIA3.Document3:Implementor^sTestData.

ETSI/SAGETR35.924.Specificationothe3GPPConfidentialityandIntegrityAlgorithms128-

EEA3&128-EIA3.Document4:DesignandEvaluationReport.

本文件的发布机构请注意,声明符合本文件时,可能涉及《一种序列密码实现方法和装置》(专利号:

ZL2C0910086409.9)和《一种完整性认证方法》(专利号:ZL200910243440.9)相关专利的使用。

本文件的发布机构对于该专利的真实性、有效性和范围无任何立场。

该专利的持有人已向本文件的发布机构保证,他愿意同任何申请人在合理且无歧视的条款和条件

下,就该专利授权许可进行谈判。该专利的持有人已在本文件的发布机构备案。相关信息可以通过以

下联系方式获得:

专利持有人姓名:中国科学院数据与通信保护研究教育中心、中国科学院软件研究所

地址:北京市海淀区闵庄路甲89号邮编:100093、北京市中关村南四街4号邮编:100190

请注意除上述专利外,本文件的某些内容仍可能涉及专利。本文件的发布机构不承担识别这些专

利的责任。

IV

GB/T33133.1—2016

信息安全技术祖冲之序列密码算法

第1部分:算法描

1范围

GB/T33133的本部分给出了祖冲之序列密码算法的一般结构,基于该结构可实现本标准其他各

部分所规定的密码机制。

本部分适用于祖冲之序列密码算法相关产品的研制、检测和使用,可应用于涉及非国家秘密范畴的

商业应用领域。

2规范性引用文件

下列文件对于本文件的应用是必不可少的。凡是注日期的引用文件,仅注日期的版本适用于本文

件。凡是不注日期的引用文件,其最新版本(包括所有的修改单)适用于本文件。

GB/T25069—2010信息安全技术术语

3术语和定义

GB/T25069—2010界定的以及下列术语和定义适用于本文件。

3.1

祖冲之序列密码算法ZUCStreamCipher

祖冲之序列密码算法是中国自主研制的流密码算法,是运用于下一代移动通信4G网络中的国际

标准密码算法,该算法包括祖冲之算法、保密性算法和完整性算法三个部分。

3.2

位bit

二进制数字binarydigit

二进制计数制中使用的数字0或1。

3.3

字节byte

一种由若干位组成的串,视作一个单位,通常代表一个字符或字符的一部分。

注1:对一个给定的数据处理系统,一个字节中的位数是固定的。

注2:—个字节通常是8位。

3.4

字word

由2个以上(包含2个)比特组成的比特串。

本部分主要使用31比特字和32比特字。

3.5

字表示wordrepresentation

本部分字默认采用十进制表示。当字采用其他进制表示时,总是在字的表示之前或之后添加指示

符。例如,前缀Ox指示该字采用十六进制表示,后缀下角标2指示该字采用二进制表示。

1

GB/T33133.1—2016

3.6

高低位顺序bitordering

本部分规定字的最高位总是位于字表示中的最左边,最低位总是位于字表示中的最右边。

4符号和缩略语

4.1运算符

下列运算符适用于本文件:

+算术加法运算

ab整数a和/丿的乘积

赋值操作符

mod整数模运算

㊉按比特位逐位异或运算

田模旷加法运算

II字符串或字节串连接符

・h取字的最高16比特

・i.取字的最低16比特

〈〈仏32比特字循环左移怡位

32比特字右移k位

Qfb向量a赋值给向量方,即按分量逐分量赋值

4.2符号

下列符号适用于本文件:

So小,S2,…,5线性反馈移位寄存器的16个31比特寄存器单元变量

X°,X|,X2,X:<比特重组输出的4个32比特字

Ri,R2非线性函数F的2个32比特记忆单元变量

非线性函数F输出的32比特字

昭乩与X】进行模2腔加法运算输出的32比特字

w2/?2与X2按比特位逐位异或运算输出的32比特字

Z算法每拍输出的32比特密钥字

k初始种子密钥

iv初始向量

d.15比特的字符串常量异=0,1,2,…,15

F非线性函数

L输出密钥字长度

4.3缩略语

下列缩略语适用于本文件:

LFSR线性反馈移位寄存器(LinearFeedbackShiftRegister)

BR比特重组(EitReorganization)

5算法流程

5.1算法结构

祖冲之算法由线性反馈移位寄存器(LFSR)、比特重组(BR)和非线性函数F组成,见图1。

2

GB/T33133.1—2016

5and2r一1

5.2线性反馈移位寄存器LFSR

5.2.1概

LFSR包括16个31比特寄存器单元变量,…,m。

LFSR的运行模式有2种:初始化模式和工作模式。

5.2.2初始化模式

LFSR接收1个31比特字"的输入,对寄存器单元变量*,.”,•••,$★进行更新,计算过程如下:

LFSRWithlnitialisationModeCw)

{

(1)刃=2"$",+2"st;+2刘sg+2"$4+(1+2*Is。mod(231—1);

(2).$“、=(©+")mod(231—1);

(3)如果S16=O,则置516=2^—1;

(4)(5,,比,…,515,s1“)f(5(;,5I,…,514,S",)o

}

模231-1乘法和模231-1加法的实现参见附录Bo

5.2.3工作模式

LFSR无输入,直接对寄存器单元变量我小,…,m进行更新,计算过程如下:

3

GB/T33133.1—2016

LFSRWithWorkModeO

{

(1)516=2155i5+2"s13+2"sio+2"s4+(1+2*)s°mod(231—1);

(2)如果.sI(S—0,则置s“=2"—1;

(3)(5I,.$2,S15,S16)(S(1,S1,…,Sl4,,5)。

}

5.3比特重组BR

输入为LFSR寄存器单元变量s。,S2,$5*7,5,,sn,514,515,输出为4个32比特字X。、X】XX。

计算过程如下:

BitRcconstruction()

{

(1)Ar;—.S'isTIII5141.;

(2)X|—5|II.||SMI;

(3)A2—.S'7i.||S5TI;

(4)X:•;—521.||5ono

}

5.4非线性函数F

F包含2个32比特记忆单元变量乩和尺2。

F的输入为3个32比特字输出为一个32比特字W。计算过程如下:

F(Xo,X1,X2)

{

(1)W=(X°㊉乩)田/?2;

(2)田X】;

(3)W,=R2㊉X2;

(4)W2H)];

(5)R2=SLL2(W2I.||W1H)]0

}

其中S为32比特的S盒变换,S盒定义见附录A;L]和匸2为32比特线性变换.定义如下:

L】(X)=X㊉(X〈〈〈2)㊉(X〈〈〈10)㊉(X〈〈〈18)㊉(X〈〈〈24),

L2(X)=X㊉(X〈〈〈8)㊉(X〈〈〈14)㊉(X〈〈〈22)㊉(X〈〈〈30)。

5.5密钥装入

将初始密钥k和初始向量怡分别扩展为16个31比特字作为LFSR寄存器单元变量5()小,…,s“

的初始状态。步骤如下:

a)设怡和i-v分别为

koIIkAIIII菇5

?V:J||ivA||...II?v15

定制服务

    推荐标准