[发明专利]面向资源受限的设备通信的轻量级认证加解密方法与装置在审
申请号: | 202211435426.0 | 申请日: | 2022-11-16 |
公开(公告)号: | CN115801403A | 公开(公告)日: | 2023-03-14 |
发明(设计)人: | 崔婷婷;奚铁琦;郑秋华;吴铤;周迪;刘效国;翁天翎;葛轩一 | 申请(专利权)人: | 杭州电子科技大学 |
主分类号: | H04L9/40 | 分类号: | H04L9/40 |
代理公司: | 杭州君度专利代理事务所(特殊普通合伙) 33240 | 代理人: | 朱亚冠 |
地址: | 310018 浙*** | 国省代码: | 浙江;33 |
权利要求书: | 查看更多 | 说明书: | 查看更多 |
摘要: | |||
搜索关键词: | 面向 资源 受限 设备 通信 轻量级 认证 解密 方法 装置 | ||
1.一种面向资源受限的设备通信的轻量级认证加解密方法,其特征在于包括数据变换流程、中间状态预处理流程、加密处理流程、解密处理流程;
所述数据变换流程,用于对数据进行数据变换,具体是:
步骤S11:数据三维化
给定一维数据串D,按公式(1)的坐标映射关系构建出一个3×16×4的三维数据矩阵SD:
SD[x,y,z]=D[48z+3y+x] (1)
其中,x,y,z表示三维矩阵SD中一个数据的三轴坐标;D[]表示原一维数据中该数据的位置;
步骤S12:三维数据矩阵变换处理;
步骤S13:数据Sxyz按照原一维数据串D的数据坐标对应关系进行更新,得到经过变换后的数据Perm(D);
所述中间状态预处理流程,用于根据通信双方设备提前制定好的初始向量、密钥、新鲜值与通信发起方设定的相关数据A相结合处理,并生成用于通信双方各自的加密处理流程与解密处理流程的第三中间状态G3;
所述加密处理流程,是资源受限的发信方设备Se用于根据其从中间状态预处理流程得到的第三中间状态G3,对所要发送给资源受限的发信方设备Se的数据进行加密,同时获得认证标签,具体是:
步骤S31:发信方设备Se按公式(9)判断需要加密发送的明文P长度是否为0,若是则认为明文P为空,反之则继续判断明文P是否为64的相关倍数,若明文P的长度不为64的倍数,则在明文P的末位附加上一个1以及数个0使得P的长度是64的倍数,若数据P的长度为64的倍数,则不对数据P作处理;最后对处理后长度为64倍数的明文P进行分块处理,得到t块明文块P1,…,Pt:
步骤S32:发信方设备Se利用初始向量IV,新鲜值N以及密钥K,以及通信数据A使用所述中间状态预处理流程处理得到第三中间状态G3,并按公式(10)将G3与零填充至192位的常数2异或,由此可得到第四中间状态S0:
步骤S33:发信方设备Se对前t-1个明文分块Pi获取中间状态Si和密文块Ci;
步骤S331:初始化对第四中间状态S0利用所述数据变换流程进行数据变换,得到数据变换后的第四中间状态Perm(S0);
步骤S332:发信方设备Se对每一个明文分块Pi尾部填充128个0,然后将其与上一个明文分块对应的数据变换后的第四中间状态Perm(Si-1)相异或,得到当前明文分块Pi对应的更新后第四中间状态Si;
步骤S333:截取更新后第四中间状态Si的最高64位数据作为密文块Ci(i=1,…,t-1);
其中,mbs64(Si)表示取截Si的最高64位;
步骤S34:发信方设备Se对最后一个明文分块Pt获取中间状态St和密文块Ct;
步骤S341:为了获得发信方设备Se需要发送的数据的最后一个密文块Ct,发信方设备Se按公式(12)得到中间状态St;
步骤S342:判断Pt的长度是否为64的相关倍数,若是则截取中间状态St的最高|P|mod64位数据作为最后一个密文块Ct,若否则截取中间状态St的最高64位数据作为最后一个密文块Ct,即公式(13);
步骤S35:将中间状态St按公式(14)处理后得到认证标签T;
步骤S36:将由步骤S33和步骤S34得到的密文块按序拼接得到发信方设备Se需发送数据加密后的密文C,最后将密文C与认证标签T发送给收信方设备Re;
所述解密模块,用于收信方Re利用中间状态初始化模块得到的第三中间状态G3,与从发信方Se收到的密文C进行解密,并根据收到的认证标签T是否正确进而判断收到的信息是否正确,具体是:
步骤S41:收信方设备Re按公式(15)判断接收到的密文C长度是否为0,若是则认为密文C为空,反之则继续判断密文C的长度是否为64的相关倍数,若密文C的长度不为64的倍数,则在密文C的末位附加上一个1以及数个0使得密文C的长度是64的倍数,若密文C的长度为64的倍数,则不对密文C作处理;最后对处理后长度为64的倍数的密文C进行分块处理,得到r块明文块C1,…,Cr:
步骤S42:收信方Re利用初始向量IV,新鲜值N以及密钥K,以及通信数据A,使用中间状态初始化模块得到的第三中间状态G3,将第三中间状态G3按公式(16)与零填充至192位后的常数2按位异或处理,获得第四中间状态S0;
步骤S43:按公式(17),除了最后一个密文分块,每一个密文分块都在尾部填充128个0后与经过数据变换后的第四中间状态Perm(Si-1)相异或,并截取S的最高64位数据作为明文块Pi(i=1,…,r-1);
步骤S44:收信方Re对最后一个密文块Cr获取中间状态Sr和明文块Pr:
步骤S441:收信方Re按公式(18)得到中间状态Sr;
步骤S44:判断C的长度是否为64的相关倍数,若是则截取中间状态Sr的最高|C|mod 64位数据作为最后一个明文块Pr,若否则截取中间状态Sr的最高64位数据作为最后一个明文块Pr,即公式(19);
步骤S45:将中间状态Sr按公式(20)处理后得到一个认证标签T*,将其与发信方设备Se所发送的认证标签T相比较获得认证结果,如果相同则通过认证,前往步骤S46,否则拒收;
步骤S46:将步骤S43与步骤S44的明文块按序拼接即可得到发信方设备Se所发送的数据。
该专利技术资料仅供研究查看技术是否侵权等信息,商用须获得专利权人授权。该专利全部权利属于杭州电子科技大学,未经杭州电子科技大学许可,擅自商用是侵权行为。如果您想购买此专利、获得商业授权和技术合作,请联系【客服】
本文链接:http://www.vipzhuanli.com/pat/books/202211435426.0/1.html,转载请声明来源钻瓜专利网。