The invention discloses a lightweight hash function construction method based on Sponge structure, the Sponge structure for the iterative structure, its internal operation for the compression function, concrete method is as follows: after pretreatment of the message through several rounds of iterative compression function complete absorption operation, will not set long messages into the intermediate state of fixed length; in the middle state through several rounds of iterative compression function, each round of output substring, spliced into a fixed length message digest. The hash function constructed by the lightweight hash function based on the Sponge structure has both security and lightweight requirements.
【技术实现步骤摘要】
一种基于Sponge结构的轻量级哈希函数构造方法
本专利技术属于信息安全
,涉及一种基于Sponge结构的轻量级哈希函数构造方法。
技术介绍
随着物联网技术(InternetofThings,IOT)的高速发展,其存在的安全隐私问题也越发受到人们重视。作为应对安全威胁及进行身份识别、鉴定消息完整性的Hash函数在射频识别系统(RadioFrequencyIdentification,RFID),无线传感器网络(WirelessSensorNetwork,WSN)等资源受限场景下也面临着新的要求与挑战。资源受限环境下的硬件只有很小的存储空间和有限的计算能力,这就要求应用其中的Hash算法除了提供一定的安全保证外还需要满足轻量化需求。Hash函数的轻量化可以是设计全新的Hash函数也可以是对现有Hash的轻量化改进,其中将轻量化加密算法应用到Hash函数的设计中也是密码学领域中的一个重要方向。
技术实现思路
本专利技术的目的是提供一种基于Sponge结构的轻量级哈希函数构造方法,所构造的哈希函数既有安全保证又满足轻量化需求。本专利技术所采用的技术方案是,一种基于Sponge结构的轻量级哈希函数构造方法,该Sponge结构为迭代结构,其内部操作为压缩函数,具体方法为:将预处理后的消息通过多轮压缩函数迭代完成吸收操作,即将不定长的消息变为定长的中间状态;再将中间状态通过多轮压缩函数迭代,每轮输出一个子串,拼接成定长的消息摘要。本专利技术的特征还在于,Sponge结构的具体参数设置为:吞吐率r=8bit,容量c=56bit,置换长度b=64bit,消息摘要长度为6 ...
【技术保护点】
一种基于Sponge结构的轻量级哈希函数构造方法,其特征在于,该Sponge结构为迭代结构,其内部操作为压缩函数,具体方法为:将预处理后的消息通过多轮压缩函数迭代完成吸收操作,即将不定长的消息变为定长的中间状态;再将中间状态通过多轮压缩函数迭代,每轮输出一个子串,拼接成定长的消息摘要。
【技术特征摘要】
1.一种基于Sponge结构的轻量级哈希函数构造方法,其特征在于,该Sponge结构为迭代结构,其内部操作为压缩函数,具体方法为:将预处理后的消息通过多轮压缩函数迭代完成吸收操作,即将不定长的消息变为定长的中间状态;再将中间状态通过多轮压缩函数迭代,每轮输出一个子串,拼接成定长的消息摘要。2.根据权利要求1所述的一种基于Sponge结构的轻量级哈希函数构造方法,其特征在于,所述Sponge结构的具体参数设置为:吞吐率r=8bit,容量c=56bit,置换长度b=64bit,消息摘要长度为64bit,拥有64bit的内存状态。3.根据权利要求2所述的一种基于Sponge结构的轻量级哈希函数构造方法,其特征在于,所述具体方法按照以下步骤实施:步骤1、消息预处理首先将输入的文本消息转换为对应的ASCII码,再将对应的ASCII码转换为对应的二进制数据,然后进行填充操作:在消息后面填充一个1,然后填充若干个0,使消息长度为r的最小整数倍,并将内存状态的初始值设为0;步骤2、消息吸收处理将经步骤1预处理后的消息通过压缩函数的多轮迭代完成吸收,具体为:步骤2.1、首先将预处理后的消息分为r=8bit一组,共S组,第一个分组的r=8bit位数据与初始内存状态的前r=8bit位0进行异或运算,与剩下初始内存状态的c=56bit位0拼接在一起通过压缩函数运算得到64bit中间状态;步骤2.2、将中间状态的前8位与预处理消息的第二个分组进行异或运算,与剩下中间状态的56bit数据拼接在一起再次通过压缩函数进行运算,依次进行计算直到S组预处理消息运算完毕,完成吸收操作,将不定长的消息变为定长的中间状态;步骤3、压缩函数处理每轮压缩处理时首先将输入的定长的中间状态与产生的轮密钥进行轮密钥加Substitution(·)操作,再通过非线性置换层Substitution(·)进行非线性置换,然后进行移位操作RotateNibbles(·),再通过线性置换层Perm...
【专利技术属性】
技术研发人员:赵太飞,尹航,郭嘉文,李永明,雷洋飞,
申请(专利权)人:西安理工大学,
类型:发明
国别省市:陕西,61
还没有人留言评论。发表了对其他浏览者有用的留言会获得科技券。