[发明专利]基于NFSR和钟控双LFSR的流密码实现方法在审
| 申请号: | 202210942596.1 | 申请日: | 2022-08-08 |
| 公开(公告)号: | CN115314206A | 公开(公告)日: | 2022-11-08 |
| 发明(设计)人: | 韦永壮;陈艺文;武小年;李灵琛 | 申请(专利权)人: | 桂林电子科技大学 |
| 主分类号: | H04L9/26 | 分类号: | H04L9/26 |
| 代理公司: | 桂林市华杰专利商标事务所有限责任公司 45112 | 代理人: | 杨雪梅 |
| 地址: | 541004 广西*** | 国省代码: | 广西;45 |
| 权利要求书: | 查看更多 | 说明书: | 查看更多 |
| 摘要: | |||
| 搜索关键词: | 基于 nfsr 钟控双 lfsr 密码 实现 方法 | ||
1.基于NFSR和钟控双LFSR的流密码实现方法,其特征在于,包括如下步骤:
(1)设计流密码算法总体结构
采用LFSR和NFSR的串联结构,并与非线性的滤波函数结合混合两种寄存器的状态,在不同阶段设置不同函数进行状态更新并选择相应部件参与计算;
(2)设计LFSR部件
使用两个LFSR部件,其中,LFSR1为78比特,更新函数包括4个抽头;LFSR2为82比特,更新函数包含6个抽头;并设置钟控函数完成输出控制;
(3)使用Grain-128AEAD算法中的128比特状态的NFSR部件;
(4)设计算法结构输出函数
输出函数为非线性函数,混合两种寄存器的状态,以进一步增强密码的非线性性质、良好的相关性以及统计特性;
(5)算法初始化
初始化阶段,将初始向量和密钥加载到寄存器中,并在迭代过程中通过NFSR控制LFSR的选择;
(6)生成密钥流
通过初始化迭代,输出密钥比特;并以2个LFSR的状态比特作为钟控函数的输入完成对LFSR的选择;
(7)算法加解密
加密时,将密钥流逐比特和明文比特异或产生密文;解密时,将密钥流和密文异或恢复明文。
2.根据权利要求1所述的基于NFSR和钟控双LFSR的流密码实现方法,其特征在于:
步骤(1)所述设计流密码算法总体结构,具体方法如下:
(1.1)使用两个LFSR部件,提供生成有良好的统计特性的基础源序列;在算法运行过程中,通过钟控选择其中的一个LFSR部件;
(1.2)使用1个NFSR部件,NFSR为算法提供非线性,掩盖掉LFSR的线性特征;
(1.3)算法输出使用非线性的滤波函数,混合两个寄存器的状态,进一步提供算法的非线性;
(1.4)设置一个128比特的初始密钥,以及两个64比特的互补的初始向量;将128比特的初始密钥加载到NFSR,两个64比特的互补的初始向量分别加载到2个LFSR中,在初始化过程中,滤波函数输出的比特,参与到NFSR和LFSR的状态更新,并且由NFSR控制LFSR的选择,经过288次迭代后,开始密钥流的生成;密钥流生成过程中,钟控函数使用两个LFSR中的状态比特,控制选择LFSR的参与;每次迭代,算法输出1比特的密钥。
3.根据权利要求1所述的基于NFSR和钟控双LFSR的流密码实现方法,其特征在于:
步骤(2)所述LFSR部件的设计,具体方法如下:
(2.1)78比特的LFSR1以表示,其中表示t时刻LFSR1的第i个状态位,LFSR1的本原反馈多项式表示为f1(x);设置f1(x)=1+x+x2+x7+x78;LFSR1的更新函数为其中表示在t时刻LFSR1的更新函数产生的值;
(2.2)82比特的LFSR2以表示,其中表示t时刻LFSR2的第i个状态位,LFSR2的本原反馈多项式表示为f2(x);设置f2(x)=1+x+x4+x6+x7+x8+x82;LFSR2相应的更新函数为其中表示在t时刻LFSR2的更新函数产生的值;
(2.3)设置控制LFSR的选择的钟控函数为w(t),w(t)是以两个LFSR的状态比特为输入的5输入1输出的布尔函数,当w(t)的输出为0时,选择LFSR1参与运算;当w(t)的输出为1时,选择LFSR2参与运算。
该专利技术资料仅供研究查看技术是否侵权等信息,商用须获得专利权人授权。该专利全部权利属于桂林电子科技大学,未经桂林电子科技大学许可,擅自商用是侵权行为。如果您想购买此专利、获得商业授权和技术合作,请联系【客服】
本文链接:http://www.vipzhuanli.com/pat/books/202210942596.1/1.html,转载请声明来源钻瓜专利网。





