预览加载中,请您耐心等待几秒...
1/10
2/10
3/10
4/10
5/10
6/10
7/10
8/10
9/10
10/10

在线预览结束,喜欢就下载吧,查找使用更方便

如果您无法下载资料,请参考说明:

1、部分资料下载需要金币,请确保您的账户上有足够的金币

2、已购买过的文档,再次下载不重复扣费

3、资料包下载后请先用软件解压,在使用对应软件打开

(19)国家知识产权局(12)发明专利申请(10)申请公布号CN114499826A(43)申请公布日2022.05.13(21)申请号202210182532.6(22)申请日2022.02.25(71)申请人江苏大学地址212013江苏省镇江市学府路301号(72)发明人张星汤少雨李天宁李晓薇(74)专利代理机构北京睿智保诚专利代理事务所(普通合伙)11732专利代理师杜娟(51)Int.Cl.H04L9/06(2006.01)H04W12/041(2021.01)权利要求书2页说明书5页附图2页(54)发明名称一种可灵活序列化的轻量级分组密码实现方法(57)摘要本发明公开了一种可灵活序列化的轻量级分组密码实现方法,属于信息加密技术领域。本发明提出了一种硬件资源消耗小且安全性高的轻量级分组密码加密方法FRX,该方法通过将明文分为4分支明文数据组后经过两种具有不同非线性组件的ARX结构处理,使得加密算法的结构更具灵活性,硬件实现效率更高,并且安全性更强。此外,该密码算法在硬件上可灵活的序列化实现,可以根据不同情况下的硬件要求和吞吐量要求实现不同级别的序列化程度,在硬件实现上拥有较大的灵活性可以适用于复杂的环境。CN114499826ACN114499826A权利要求书1/2页1.一种可灵活序列化的轻量级分组密码实现方法,其特征在于,包括以下步骤:构建加密结构,初始化移位参数;获取明文,将所述明文作为待加密数据进行加密运算;获取初始密钥,通过密钥编排函数生成本轮所需的轮密钥;对待加密数据进行第一结构函数运算,并进行异或操作,得到经过第一结构函数处理之后的加密数据;对经过第一结构函数处理之后的加密数据进行第二结构函数运算,得到第二函数处理之后的加密数据;对第二函数处理之后的加密数据进行RT变换生成一轮加密之后的密文;重复R次加密过程,生成密文C。2.根据权利要求1所述的一种可灵活序列化的轻量级分组密码实现方法,其特征在于,所述加密结构是4分支Feistel结构与ARX结构的混合;在Feistel结构中包含了4个大小相同的明文分支,从左至右依次记为p1、p2、p3、p4分别对应着明文P的高位至低位;在ARX结构中包含着两种具有不同非线性操作的ARX结构,分别记为AND‑RX和ADD‑RX,AND‑RX中包含移位参数a、b、c对应的均为循环左移的bit数;ADD‑RX中包含移位参数d、e对应的分别为循环右移、左移的bit数。3.根据权利要求1所述的一种可灵活序列化的轻量级分组密码实现方法,其特征在于,轮密钥的生成包括以下步骤:构建密钥编排函数结构,初始化轮常数c以及伪随机序列z;关系如下:c=2n‑1;其中n为明文的长度;伪随机序列z由LFSR产生,对于不同的密钥长度取不同的序列;记密钥长度为L,将初始密钥K从高位到低位均分为两部分,分别记为kl、kr;将kl、kr按照明文分支大小分为kl0、kl1…kl2L/n、kr0、kr1…kr2L/n;每轮加密时轮密钥k0=kl0,k2=kl1,k1=kr0;将密钥K整体循环左移f位;将密钥kl0、kl1经过ADD‑RX结构处理,生成新的kl0、kl1;使用来替换ADD‑RX结构中引入密钥的部分;将密钥kr0、kr1经过AND‑RX结构处理,生成新的kr0;使用来替换AND‑RX结构中引入密钥的部分;重复R轮产生加密过程中所需的全部轮密钥。4.根据权利要求1所述的一种可灵活序列化的轻量级分组密码实现方法,其特征在于,RT变换包括以下步骤:将p1值赋给p3,将p3的原值赋给p4;将p2值赋给p1,将p4的原值赋给p2;其中,p1、p2、p3、p4为经过第一函数和第二函数处理之后的数据。5.根据权利要求1所述的一种可灵活序列化的轻量级分组密码实现方法,其特征在于,还包括将明文从高位到低位分为大小相同的四个部分,作为待加密数据p1、p2、p3、p4,进行加密运算。2CN114499826A权利要求书2/2页6.根据权利要求1所述的一种可灵活序列化的轻量级分组密码实现方法,其特征在于,所述第一结构函数运算包括循环左移以及逻辑与操作。7.根据权利要求1所述的一种可灵活序列化的轻量级分组密码实现方法,其特征在于,所述第二结构函数运算包括循环右移、循环左移以及模加操作。8.根据权利要求1所述的一种可灵活序列化的轻量级分组密码实现方法,其特征在于,对待加密数据进行第一结构函数运算,并进行异或操作,计算公式如下:其中,F表示第一结构函数,p1、p2、p3、p4为待加密数据,每轮加密时轮密钥k0=kl0,k2=kl1,k1=kr0。9.根据权利要求1所述的一种可灵活序列化的轻量级分组密码实现方法,其特征在于,对待加密数据进行第二结构函数运算,计算公式如下:其中,RORd表示循环右移d位,ROLe表示循环左移e位