[发明专利]轻量级密码算法SCENERY实现方法、装置及存储介质有效
| 申请号: | 201911070142.4 | 申请日: | 2019-11-05 |
| 公开(公告)号: | CN110784307B | 公开(公告)日: | 2020-06-09 |
| 发明(设计)人: | 李浪;冯景亚 | 申请(专利权)人: | 衡阳师范学院 |
| 主分类号: | H04L9/06 | 分类号: | H04L9/06 |
| 代理公司: | 长沙市融智专利事务所(普通合伙) 43114 | 代理人: | 龚燕妮 |
| 地址: | 421002 湖南省*** | 国省代码: | 湖南;43 |
| 权利要求书: | 查看更多 | 说明书: | 查看更多 |
| 摘要: | |||
| 搜索关键词: | 轻量级 密码 算法 scenery 实现 方法 装置 存储 介质 | ||
本发明公开了一种轻量级密码算法SCENERY实现方法、装置及存储介质,其中方法包括获取待加密明文,并依此进行IP1初始置换,轮函数、密钥扩展、IP2置换,其中轮函数包括依次对数据进行轮密钥加运算、S盒置换、M矩阵置换,密钥扩展包括依次对密钥进行S盒置换、循环左移、轮常量加运算、DP动态置换。轮函数采用SPN结构的F函数,设计F函数线性层时以实现高依赖性为目的构造了一种二进制矩阵M;密钥扩展选用轮常量和密钥扩展中间结果作为控制信号,对当前轮密钥扩展中间结果进行DP动态置换获取轮密钥,这是一种新密钥扩展方式,其降低了单一密钥迭代对前轮输入的关联性,增加了破译难度,提高了安全性,能特别有效的抵抗差分与线性攻击、代数攻击。
技术领域
本发明涉及计算机加密领域,尤其涉及一种轻量级密码算法SCENERY实现方法、装置及存储介质。
背景技术
近年来,小型嵌入设备(如无线传感器、智能卡、射频标签)被广泛应用到许多领域。这些设备通常具有强大的成本限制,比如面积、功率、硬件方面的能耗等。由于AES等传统密码算法不适用这种极端受限的设备,所以适应于资源约束环境的轻量级分组密码算法引起了广大学者的高度重视。
从2007年开始,国际学术界一些有关轻量级分组密码算法论文被陆续提出。目前已有一些轻量级分组密码算法,典型代表如PRESETNT、Twine、Piccolo、LED、LBlock、RECTANGLE、KLEIN等。
目前轻量级算法存在如下的问题:
1)有些轻量级分组密码算法解密过程复杂,实现解密时,不能完全复用加密过程的模块,需要消耗额外的资源;有些加密算法资源占用仍然很大,加密性能低,不便于在资源受限的设备中实现;
2)轻量级分组密码算法存在安全性不高的问题。目前一些轻量级分组密码算法为了追求更小的实现资源面积,算法加密过程设计简单,同时密钥扩展方式简单化甚至不进行扩展,采用上述方法设计出的算法存在安全隐患。最近很多研究表明一些算法抵抗攻击能力较弱,特别是抵抗常见的差分、线性以及代数攻击。
发明内容
本发明提供了一种轻量级密码算法SCENERY实现方法、装置及存储介质,以解决现有技术中轻量级分组密码算法加密性能低及密钥扩展运算相对简单,灵活性不高且易受攻击的问题。
本发明第一方面,提供了一种轻量级密码算法SCENERY实现方法,包括以下步骤:
步骤A1:获取64位明文作为待加密数据P,进行加密运算;
其中,待加密数据P从高位到低位每16位一组依次排序形成4×16的数据矩阵,记作P=P0P1P2P3;
步骤A2:对步骤A1所述的数据P进行IP1初始置换,并依据密钥位数确定轮数Nr,轮数控制信号初始值为1;当密钥位数是64位时,轮数为28;
步骤A3:将步骤A2的运算结果划分为左右两部分,即4×8的矩阵数据块Lr、Rr;
其中,r表示当前轮数,数据块Lr由步骤A2的运算结果的每行的前8位从高位到低位依次排列获得,数据块Rr由步骤A2的运算结果的每行的后8位从高位到低位依次排列获得;
步骤A4:将步骤A3中32位数据块Lr和Rr按照Feistel结构进行F轮函数运算,每一轮F轮函数运算包括:
a)对Rr进行轮密钥加运算;
b)对a)得到的运算结果进行S盒置换;
c)对b)得到的运算结果进行M矩阵置换;
该专利技术资料仅供研究查看技术是否侵权等信息,商用须获得专利权人授权。该专利全部权利属于衡阳师范学院,未经衡阳师范学院许可,擅自商用是侵权行为。如果您想购买此专利、获得商业授权和技术合作,请联系【客服】
本文链接:http://www.vipzhuanli.com/pat/books/201911070142.4/2.html,转载请声明来源钻瓜专利网。





