CN103260154B - 一种基于128-eia3的完整性保护增强方法 - Google Patents
一种基于128-eia3的完整性保护增强方法 Download PDFInfo
- Publication number
- CN103260154B CN103260154B CN201310039781.0A CN201310039781A CN103260154B CN 103260154 B CN103260154 B CN 103260154B CN 201310039781 A CN201310039781 A CN 201310039781A CN 103260154 B CN103260154 B CN 103260154B
- Authority
- CN
- China
- Prior art keywords
- bit
- message
- group
- input
- filling
- Prior art date
- Legal status (The legal status is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the status listed.)
- Expired - Fee Related
Links
Landscapes
- Mobile Radio Communication Systems (AREA)
Abstract
本发明公开一种基于128-EIA3的完整性保护增强方法,其特征在于:填充原始消息,消息输入按分组顺序进行循环,在每组内部再按低位到高位循环。Mi为输入消息第i组比特串,Mi[j]代表输入消息的第i组第j比特信息,Zi为输入第i组流密码串,Mi和Zi对应位异或运算产生新的比特串,再在高位接上下一组流密码串Zi+1,组成新的64比特串Wi,对于每次输入Mi,判断消息的位数是否超过补1的位数,若超过,则所有循环结束,若未超过,则再判断Mi的第j比特是否为1,若为1,则T将会赋值为所有循环结束后,将计算结果再与下一时钟周期生成的32比特流密码串进行异或,将结果作为输出MAC值。
Description
技术领域
本发明涉及一种4G无线接口安全的标准密码算法,,具体地说,涉及的是一种基于128-EIA3的完整性保护增强方法。
背景技术
祖冲之密码算法(ZUC)由中国科学院数据保护和通信安全研究中心(DACAS)研制。LTE算法的核心是一种称为ZUC的流密码;由ZUC定义的LTE加密算法,称为128-EEA3;由ZUC定义的LTE完整性保护算法,称为128-EIA3;目前这3种算法已成为国内TD-LTE行业标准,经中国通信标准化协会和工业和信息化部电信研究院推荐给第三代合作伙伴计划3GPP国际标准组织,并在2011年9日本福岗召开的3GPP第53次系统架构组(SA)会议上被3GPP批准成为LTE系统中的安全算法标准。这是我国商用密码算法首次走出国门参与国际标准竞争的里程碑。在3GPP国际标准上,它是继SNOW3G(EEA1/EIA1)和AES(EEA2/EIA2)之后的第三个加密算法和完整性保护算法标准。
128-EIA3已于2012年8月21日中华人民共和国行业标准备案公告,行业标准为《GM/T0001.3-2012祖冲之序列密码算法第3部分:基于祖冲之算法的完整性算法》。第27次全国计算机安全学术交流会论文集2012年08期《祖冲之序列密码算法IP核的设计与实现》中记录的128-EIA3的算法解释为:128-EIA3采用的是通用Hash算法原则生成MAC值,输入原始消息在216比特以内,最后产生32比特的输出作为结果。
假设ZUC(祖冲之序列密码算法)生成了长度为L=[LENGTH/32]+2个字的密钥流,将其用比特串表示为z[0],z[l],…,Z[32x L-l],Z[0]为密钥流第一个字的最高有效位。T定义为32比特,初始化为T=0;M为输入原始消息比特串,M[i]代表原始消息的第i比特信息;Zi为32比特,Zi=z[i]||z[i+l]…||Z[i+31]。
迭代步骤如下:
l)For i=0,1,2…LENGTH–1
2){If M[i]=1
3)then }
4)
5)
对于每次输入的原始消息M,如果第i比特是1,则T将会赋值为其中Zi为ZUC输出流密码的从第i位开始的一个字(32比特)。FOR循环结束后,将计算结果异或上填充比特对应的一组流密码,最后将该结果再与下一时钟周期新生成的流密码进行异或,将结果作为输出MAC值。
上述过程在IP核中是通过迭代选通模块实现的,在计算MAC值的过程中,将原始消息和产生的ZUC流密码输入至EIA3中特有的迭代选通模块,经过一系列迭代计算生成最后的M AC值。现有的选通迭代模块结构图如图1所示,在迭代过程中,先将移位寄存器左移32位,将本周期新生成的流密码存入寄存器32位,然后将当前原始消息组Mi(Mi[0]||Mi[1]……||Mi[31]))的32个比特作为选通器的判定信号输入。经选通后,将32个选通器的输出值与前一轮的Ti进行异或后得到本轮迭代的结果,记为Ti+1。当输入最后一组原始消息时,即最后信号变1为时,需要对该组原始消息进行比特填充,填充后依然按照上述方法计算迭代结果。填充规则为:当有效位长度小于32位时,直接在最低有效位后填充比特“1”;当原始消息有效位长度等于32位时,不作填充处理,只需对最后结果异或上当前的流密码值即可。当迭代结束后,再与下一时钟周期产生的流密码进行异或,结果作为MAC值输出。
Hash算法原则中规定,强抗碰撞的Hash函数表现为:找到消息m1和消息m2满足消息摘要h(m1)=h(m2)在计算上是不可行的。公布的128-EIA3完整性保护算法应该属于强抗碰撞的Hash函数。
但是在公布的128-EIA3完整性保护算法中,由于ZUC序列密码算法生成的长度为L=[LENGTH/32]+2个字的密钥流与输入的原始消息无关,假设M为输入原始消息比特串,M[i]代表原始消息的第i比特信息;Zi为从第i比特开始的32比特密钥流,Zi=z[i]||z[i+l]…||z[i+31],Zj为从第j比特开始的32比特密钥流,可以通过变换ZUC算法的输入参数预先获取不同的流密码串,若存在Zi=0,则对应的原始消息的第i比特信息无论是0或1,其产生的MAC值是一样的,也可以一定量(非巨大)的计算找到一定比例的Zm=Zn(m,n属于i集合),则将会导致对应原始消息的第m比特和第n比特信息无论是同为“0”或“1”,其产生的MAC值是一样的,若存在两个以上的相同Zi,则原始消息对应位变化组合更多,但其产生的MAC值还是一样的。这种现象显然是不满足Hash算法原则的。128-EIA3更多的是用于无线通信领域,无线通信过程中位流被干扰的现象是很普遍的,由于与128-EIA3组合使用的128-EEA3加密算法是同步流密码,其密钥流与输入原始消息也是无关的,只是对应位异或运算,其优点是其中有被干扰的位,但不影响后面位的正确解密。因此这就要求有很强抗碰撞的Hash函数作为完整性验证保护,128-EIA3的表现是不满足要求的。
发明内容
本发明的目的在于解决现有技术中的上述不足,提供一种基于128-EIA3的完整性保护增强方法,增强抗碰撞能力,使之符合Hash原则,满足4G高速通信数据完整性保护要求。
为实现上述的目的,本发明采用以下技术方案:
本发明提供一种基于128-EIA3的完整性保护增强方法,包括如下步骤:
1)原始消息填充,填充方法是在原始消息后面先填充一个位1,然后再填充一些位0,填充后的消息按32比特为一组进行划分,填充0使得消息包含有已填充1的最后一组成为完整的32比特串。
2)ZUC序列密码算法生成比填充后的消息长度多2个字的流密码串。
3)T定义为32比特,初始化为T=0;
4)Mi为输入消息第i组比特串,Mi[j]代表输入消息的第i组第j比特信息,Zi为输入第i组流密码串,Mi和Zi对应位异或运算产生新的比特串,再在高位接上下一组流密码串Zi+1,组成新的64比特串Wi,Wij=wi[j]||wi[j+1]||…||wi[j+31],其中wi[j]为Wi比特串第i组第j比特位。
5)对于每次输入Mi,判断消息的位数是否超过补1的位数,若超过,则所有循环结束,若未超过,则再判断Mi的第j比特是否为1,若为1,则T将会赋值为所有循环结束后,将计算结果再与下一时钟周期生成的32比特流密码串进行异或,将结果作为输出MAC值。
本发明还提供一种用于实现上述方法的选通迭代模块,所述模块包括:
32个选通器;
两个32位的移位寄存器,用于存放相邻两周期生成的流密码;
一个32位的移位寄存器,用于存放输入32比特消息组;
32个异或门电路,用于输入32比特流密码和输入32比特消息对应位异或运算;
在迭代过程中,先将移位寄存器左移32位,将本周期新生成的流密码存入对应移位寄存器32位,将输入32比特消息组存入对应移位寄存器32位,然后将当前输入32比特消息组Mi的32个比特作为选通器的判定信号输入;经选通后,将32个选通器的输出值与前一轮的Ti进行异或后得到本轮迭代的结果,记为Ti+1;当输入最后一组消息时,即最后信号变1为时,需要对原始消息进行比特填充,填充后依然按照上述方法计算迭代结果。
本发明通过变换ZUC算法的输入参数预先获取不同的流密码串,若找到Zi=0或Zm=Zn(m,n属于i集合)存在,如果使得对应的原始消息比特位信息发生变化,将会导致包含该对应位原始消息参与组合和异或运算的所有32比特串Wij集合群发生变化,由于原始信息的总有一定的离散性,包含与m位对应的原始消息参与组合和异或运算的所有32比特串Wij集合群和包含与n位对应的原始消息参与组合和异或运算的所有32比特串Wij集合群完全相同的碰撞是极其弱的,所以对于不同原始信息变化所产生的MAC值将发生较大变化。因此,基于128-EIA3的完整性保护增强方法拟补了原128-EIA3算法的不足,使其符合强抗碰撞的Hash函数原则,即找到消息m1和消息m2满足消息摘要h(m1)=h(m2)在计算上是不可行的。
与现有技术相比,本发明有益效果:
由于采用了上述方法,让输入消息参与到了异或运算中,而不仅仅只作为选通条件值,这样消息的变化将直接导致运算结果的变化,解决了原128-EIA3算法的问题,达到了强抗碰撞能力的Hash算法原则规定。
附图说明
图1为现有技术中选通迭代模块结构示意图;
图2为本发明选通迭代模块结构示意图。
具体实施方式
以下结合附图和实施例对本发明的技术方案作进一步的解释,但是以下的内容不用于限定本发明的保护范围。
本实施例提供一种基于128-EIA3的完整性保护增强方法,在本实施例中,所述方法的流程可以采用以下程序表示:
基于上述流程,所述方法详细步骤为:
1)原始消息填充,填充方法是在原始消息后面先填充一个位1,然后再填充一些位0,填充后的消息按32比特为一组进行划分,填充0使得消息包含有已填充1的最后一组成为完整的32比特串。
2)ZUC序列密码算法生成比填充后的消息长度多2个字的流密码串。
3)T定义为32比特,初始化为T=0;
4)Mi为输入消息第i组比特串,Mi[j]代表输入消息的第i组第j比特信息,Zi为输入第i组流密码串,Mi和Zi对应位异或运算产生新的比特串,再在高位接上下一组流密码串Zi+1,组成新的64比特串Wi,Wij=wi[j]||wi[j+1]||…||wi[j+31],其中wi[j]为Wi比特串第i组第j比特位。
对于每次输入Mi,判断消息的位数是否超过补1的位数,若超过,则所有FOR循环结束,若未超过,则再判断Mi的第j比特是否为1,若为1,则T将会赋值为所有FOR循环结束后,将计算结果再与下一时钟周期生成的32比特流密码串进行异或,将结果作为输出MAC值。
基于128-EIA3的完整性保护增强方法IP核中选通迭代模块的结构如图2所示,包含32个选通器,两个32位的移位寄存器用于存放相邻两周期生成的流密码,一个32位的移位寄存器用于存放输入32比特消息组,32个异或门电路用于输入32比特流密码和输入32比特消息对应位异或运算。在迭代过程中,先将移位寄存器左移32位,将本周期新生成的流密码存入对应移位寄存器32位,将输入32比特消息组存入对应移位寄存器32位,然后将当前输入32比特消息组Mi(表示为Mi[0]||Mi[1]……||Mi[31])的32个比特作为选通器的判定信号输入。经选通后,将32个选通器的输出值与前一轮的Ti进行异或后得到本轮迭代的结果,记为Ti+1。当输入最后一组消息时,即最后信号变1为时,需要对原始消息进行比特填充,填充后依然按照上述方法计算迭代结果。填充规则为:当有效位长度小于32位时,直接在最低有效位后填充比特一个位“1”和一些位“0”使输入比特串组完整;当原始消息有效位长度等于32位时,增加一个32比特组输入,该输入比特组最低有效位后填充比特一个位“1”其余填“0”。当超过补充的一位“1”后,迭代结束,再与下一时钟周期产生的流密码进行异或,结果作为MAC值输出。
采用上述技术之后,可以原128-EIA3算法的问题,增强抗碰撞能力,使之符合Hash原则,满足4G高速通信数据完整性保护要求。
尽管本发明的内容已经通过上述优选实施例作了详细介绍,但应当认识到上述的描述不应被认为是对本发明的限制。在本领域技术人员阅读了上述内容后,对于本发明的多种修改和替代都将是显而易见的。因此,本发明的保护范围应由所附的权利要求来限定。
Claims (3)
1.一种基于128-EIA3的完整性保护增强方法,其特征在于包括如下步骤:
1)原始消息填充,填充方法是在原始消息后面先填充一个位1,然后再填充位0,填充后的消息按32比特为一组进行划分,填充0使得消息包含有已填充1的最后一组成为完整的32比特串;
2)ZUC序列密码算法生成比填充后的消息长度多2个字的流密码串;
3)T定义为32比特,初始化为T=0;
4)Mi为填充后的消息第i组比特串,Mi[j]代表填充后的消息的第i组第j比特信息,Zi为输入第i组流密码串,Mi和Zi对应位异或运算产生新的比特串,再在高位接上下一组流密码串Zi+1,组成新的64比特串Wi,Wij=wi[j]||wi[j+1]||…||wi[j+31],其中wi[j]为Wi比特串第j比特位;
5)对于每个Mi,针对Mi中的每个比特位j,判断Mi的第j比特在填充后的消息中的位数是否超过所填充的1在填充后的消息中的位数,若超过,则针对i和j的迭代结束;若未超过,则再判断Mi的第j比特是否为1,若为1,则T将会赋值为T⊕Wij;对j的取值加1,重复上述操作;当当前的Mi的所有比特均迭代结束后,对i的取值加1,重复上述操作;针对i和j的迭代结束后,将计算结果再与下一时钟周期生成的32比特流密码串进行异或,将结果作为输出MAC值。
2.一种用于实现权利要求1所述方法的选通迭代模块,其特征在于:所述选通迭代模块包括:
32个选通器;
两个32位的移位寄存器,用于存放相邻两周期生成的流密码;
一个32位的移位寄存器,用于存放输入32比特消息组;
32个异或门电路,用于对输入32比特流密码和输入32比特消息组的对应位异或运算;
在迭代过程中,先将移位寄存器左移32位,将本周期新生成的流密码存入对应32位的移位寄存器,将输入32比特消息组存入对应32位的移位寄存器,然后将当前输入32比特消息组Mi的32个比特作为选通器的判定信号输入;经选通后,Wij分别送入32个选通器,其中j=0,1,……31,将32个选通器的输出值与前一轮的Ti进行异或后得到本轮迭代的结果,记为Ti+1;当输入最后一组消息时,即最后信号变为1时,需要对原始消息进行比特填充,填充后依然按照上述方法计算迭代结果。
3.根据权利要求2所述的选通迭代模块,其特征在于:所述选通迭代模块填充规则为:当有效位长度小于32位时,直接在最低有效位后填充比特一个位“1”和一些位“0”使32比特消息组完整;当原始消息有效位长度等于32位时,增加一个32比特消息组输入,该32比特消息组最低有效位后填充比特一个位“1”其余填“0”;当超过填充的一位“1”后,迭代结束,迭代得到的结果再与下一时钟周期产生的流密码进行异或,结果作为M A C值输出。
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN201310039781.0A CN103260154B (zh) | 2013-01-31 | 2013-01-31 | 一种基于128-eia3的完整性保护增强方法 |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN201310039781.0A CN103260154B (zh) | 2013-01-31 | 2013-01-31 | 一种基于128-eia3的完整性保护增强方法 |
Publications (2)
Publication Number | Publication Date |
---|---|
CN103260154A CN103260154A (zh) | 2013-08-21 |
CN103260154B true CN103260154B (zh) | 2015-09-16 |
Family
ID=48963796
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
CN201310039781.0A Expired - Fee Related CN103260154B (zh) | 2013-01-31 | 2013-01-31 | 一种基于128-eia3的完整性保护增强方法 |
Country Status (1)
Country | Link |
---|---|
CN (1) | CN103260154B (zh) |
Families Citing this family (3)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN106304054B (zh) * | 2016-08-29 | 2019-06-07 | 西安电子科技大学 | 一种lte系统中的保护数据完整性的方法及装置 |
CN112152607A (zh) * | 2020-09-15 | 2020-12-29 | Oppo广东移动通信有限公司 | 完整性保护电路及其数据处理方法和原始数据校验装置 |
CN114553424B (zh) * | 2022-02-21 | 2024-03-15 | 南京航空航天大学 | Zuc-256流密码轻量级硬件系统 |
Citations (1)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN102684870A (zh) * | 2012-04-26 | 2012-09-19 | 重庆重邮信科通信技术有限公司 | 祖冲之算法密钥生成装置及方法 |
-
2013
- 2013-01-31 CN CN201310039781.0A patent/CN103260154B/zh not_active Expired - Fee Related
Patent Citations (1)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN102684870A (zh) * | 2012-04-26 | 2012-09-19 | 重庆重邮信科通信技术有限公司 | 祖冲之算法密钥生成装置及方法 |
Non-Patent Citations (8)
Title |
---|
A Forgery Attack on the Candidate LTE Integrity Algorithm 128-EIA3;Thomas Fuhr等;《IACR Cryptology ePrint Archive 2010》;20101231;全文 * |
Analysis of indirect message injection for MAC generation using stream ciphers;Mufeed ALMashrafi等;《Information Security and Privacy(LNCS),Springer,Universiyt of Wollongong》;20121231;全文 * |
Analysis of the Initial and Modified Versions of the Canaidate 3GPP Integrity Algorithm 128-EIA3;Thomas Fuhr等;《Selected Areas in Cryptography,18th International Conference,SAC2011》;20111231;全文 * |
ETSI/SAGE.Specification of the 3GPP Confidentiality and Integrity Algorithms 128-EEA3 128-EIA3. Document 1: 128-EEA3 and 128-EIA3 Specification.《ETSI/SAGE Specification Version 1.7,Specification of the 3GPP Confidentiality and Integrity Algorithms 128-EEA3 128-EIA3. Document 1: 128-EEA3 and 128-EIA3 Specification》.2011, * |
ETSI/SAGE.Specification of the 3GPP Confidentiality and Integrity Algorithms 128-EEA3 128-EIA3. Document 2: ZUC Specification.《ETSI/SAGE Specification Version 1.6,Specification of the 3GPP Confidentiality and Integrity Algorithms 128-EEA3 128-EIA3. Document 2: ZUC Specification》.2011, * |
ETSI/SAGE.Specification of the 3GPP Confidentiality and Integrity Algorithms 128-EEA3 128-EIA3. Document 4:Design and Evaluation Report.《ETSI/SAGE Specification Version 2.0,Specification of the 3GPP Confidentiality and Integrity Algorithms 128-EEA3 128-EIA3. Document 4:Design and Evaluation Report》.2011, * |
The Initialization Stage Analysis of ZUC v1.5;Chunfang Zhou等;《10th International Conference,CANS2011》;20111231;全文 * |
祖冲之算法的国际标准化进展和终端一致性测试;陈珺等;《电信网技术Telecommunications Network Technology》;20120815(第8期);全文 * |
Also Published As
Publication number | Publication date |
---|---|
CN103260154A (zh) | 2013-08-21 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
CN104838617B (zh) | 整合安全装置及整合安全装置中使用的信号处理方法 | |
CN101364171B (zh) | 动态真随机数发生器 | |
CN103019648A (zh) | 一种带有数字后处理电路的真随机数发生器 | |
CN107154836A (zh) | 一种基于fpga的并行循环冗余crc校验方法 | |
CN103905182B (zh) | 基于动态改变中间数据存储位置的抗攻击方法及电路实现 | |
CN105871536B (zh) | 一种基于随机延时的面向aes算法的抗功耗攻击方法 | |
CN106656459A (zh) | 一种针对sm3‑hmac的侧信道能量分析方法和装置 | |
CN105933108A (zh) | 一种对sm4算法实现破解的方法 | |
CN103260154B (zh) | 一种基于128-eia3的完整性保护增强方法 | |
CN113078996A (zh) | Sm4密码算法的fpga优化实现方法、系统及应用 | |
CN103731822A (zh) | 一种祖冲之算法的实现系统及其方法 | |
CN105939190A (zh) | 基于fpga的离线生成密钥的aes数据加密方法 | |
CN105959100B (zh) | 一种基于fpga的在线生成密钥的aes数据加密方法 | |
Lan | The AES encryption and decryption realization based on FPGA | |
CN103763064A (zh) | 适用于超高速通讯系统的循环冗余校验码生成方法与电路 | |
CN103684655B (zh) | 译码校验装置和方法、译码装置和方法以及接收端 | |
CN204347817U (zh) | 集成crc校验电路的伪随机数发生器 | |
CN104219043B (zh) | 一种可预置和重构的密钥装置及运行方法 | |
CN109039608B (zh) | 一种基于双S核的8-bitAES电路 | |
Zhao et al. | Design of a New Lightweight Stream Cipher VHFO Algorithm | |
CN105897408B (zh) | 一种基于随机延时的面向des算法的抗功耗攻击方法 | |
Shengiian et al. | A fast hybrid data encryption for FPGA based edge computing | |
CN104199635A (zh) | 集成crc校验电路的伪随机数发生器 | |
Zhou et al. | Matrix encryption based anti-machine learning attack algorithm for strong PUF | |
Wang et al. | Differential power analysis attack and countermeasures on MCrypton |
Legal Events
Date | Code | Title | Description |
---|---|---|---|
C06 | Publication | ||
PB01 | Publication | ||
C10 | Entry into substantive examination | ||
SE01 | Entry into force of request for substantive examination | ||
C14 | Grant of patent or utility model | ||
GR01 | Patent grant | ||
CF01 | Termination of patent right due to non-payment of annual fee | ||
CF01 | Termination of patent right due to non-payment of annual fee |
Granted publication date: 20150916 Termination date: 20220131 |