[發(fā)明專(zhuān)利]一種基于Sponge結(jié)構(gòu)的輕量級(jí)哈希函數(shù)構(gòu)造方法有效
| 申請(qǐng)?zhí)枺?/td> | 201711240500.2 | 申請(qǐng)日: | 2017-11-30 |
| 公開(kāi)(公告)號(hào): | CN107769911B | 公開(kāi)(公告)日: | 2020-07-28 |
| 發(fā)明(設(shè)計(jì))人: | 趙太飛;尹航;郭嘉文;李永明;雷洋飛 | 申請(qǐng)(專(zhuān)利權(quán))人: | 西安理工大學(xué) |
| 主分類(lèi)號(hào): | H04L9/06 | 分類(lèi)號(hào): | H04L9/06 |
| 代理公司: | 西安弘理專(zhuān)利事務(wù)所 61214 | 代理人: | 羅磊 |
| 地址: | 710048*** | 國(guó)省代碼: | 陜西;61 |
| 權(quán)利要求書(shū): | 查看更多 | 說(shuō)明書(shū): | 查看更多 |
| 摘要: | |||
| 搜索關(guān)鍵詞: | 一種 基于 sponge 結(jié)構(gòu) 輕量級(jí) 函數(shù) 構(gòu)造 方法 | ||
本發(fā)明公開(kāi)了一種基于Sponge結(jié)構(gòu)的輕量級(jí)哈希函數(shù)構(gòu)造方法,該Sponge結(jié)構(gòu)為迭代結(jié)構(gòu),其內(nèi)部操作為壓縮函數(shù),具體方法為:將預(yù)處理后的消息通過(guò)多輪壓縮函數(shù)迭代完成吸收操作,即將不定長(zhǎng)的消息變?yōu)槎ㄩL(zhǎng)的中間狀態(tài);再將中間狀態(tài)通過(guò)多輪壓縮函數(shù)迭代,每輪輸出一個(gè)子串,拼接成定長(zhǎng)的消息摘要。本發(fā)明的一種基于Sponge結(jié)構(gòu)的輕量級(jí)哈希函數(shù)構(gòu)造方法所構(gòu)造的哈希函數(shù)既有安全保證又滿足輕量化需求。
技術(shù)領(lǐng)域
本發(fā)明屬于信息安全技術(shù)領(lǐng)域,涉及一種基于Sponge結(jié)構(gòu)的輕量級(jí)哈希函數(shù)構(gòu)造方法。
背景技術(shù)
隨著物聯(lián)網(wǎng)技術(shù)(Internet of Things, IOT)的高速發(fā)展,其存在的安全隱私問(wèn)題也越發(fā)受到人們重視。作為應(yīng)對(duì)安全威脅及進(jìn)行身份識(shí)別、鑒定消息完整性的Hash函數(shù)在射頻識(shí)別系統(tǒng)(Radio Frequency Identification,RFID),無(wú)線傳感器網(wǎng)絡(luò)(WirelessSensor Network, WSN)等資源受限場(chǎng)景下也面臨著新的要求與挑戰(zhàn)。資源受限環(huán)境下的硬件只有很小的存儲(chǔ)空間和有限的計(jì)算能力,這就要求應(yīng)用其中的Hash算法除了提供一定的安全保證外還需要滿足輕量化需求。
Hash函數(shù)的輕量化可以是設(shè)計(jì)全新的Hash函數(shù)也可以是對(duì)現(xiàn)有Hash的輕量化改進(jìn),其中將輕量化加密算法應(yīng)用到Hash函數(shù)的設(shè)計(jì)中也是密碼學(xué)領(lǐng)域中的一個(gè)重要方向。
發(fā)明內(nèi)容
本發(fā)明的目的是提供一種基于Sponge結(jié)構(gòu)的輕量級(jí)哈希函數(shù)構(gòu)造方法,所構(gòu)造的哈希函數(shù)既有安全保證又滿足輕量化需求。
本發(fā)明所采用的技術(shù)方案是,一種基于Sponge結(jié)構(gòu)的輕量級(jí)哈希函數(shù)構(gòu)造方法,該Sponge結(jié)構(gòu)為迭代結(jié)構(gòu),其內(nèi)部操作為壓縮函數(shù),具體方法為:將預(yù)處理后的消息通過(guò)多輪壓縮函數(shù)迭代完成吸收操作,即將不定長(zhǎng)的消息變?yōu)槎ㄩL(zhǎng)的中間狀態(tài);再將中間狀態(tài)通過(guò)多輪壓縮函數(shù)迭代,每輪輸出一個(gè)子串,拼接成定長(zhǎng)的消息摘要。
本發(fā)明的特征還在于,
Sponge結(jié)構(gòu)的具體參數(shù)設(shè)置為:吞吐率r=8bit,容量c=56bit,置換長(zhǎng)度b=64bit,消息摘要長(zhǎng)度為64bit,擁有64bit的內(nèi)存狀態(tài)。
具體方法按照以下步驟實(shí)施:
步驟1、消息預(yù)處理
首先將輸入的文本消息轉(zhuǎn)換為對(duì)應(yīng)的ASCII碼,再將對(duì)應(yīng)的ASCII碼轉(zhuǎn)換為對(duì)應(yīng)的二進(jìn)制數(shù)據(jù),然后進(jìn)行填充操作:在消息后面填充一個(gè)1,然后填充若干個(gè)0,使消息長(zhǎng)度為r的最小整數(shù)倍,并將內(nèi)存狀態(tài)的初始值設(shè)為0;
步驟2、消息吸收處理
將經(jīng)步驟1預(yù)處理后的消息通過(guò)壓縮函數(shù)的多輪迭代完成吸收,具體為:
步驟2.1、首先將預(yù)處理后的消息分為r=8bit一組,共S組,第一個(gè)分組的r=8bit位數(shù)據(jù)與初始內(nèi)存狀態(tài)的前r=8bit位0進(jìn)行異或運(yùn)算,與剩下初始內(nèi)存狀態(tài)的c=56bit位0拼接在一起通過(guò)壓縮函數(shù)運(yùn)算得到64bit中間狀態(tài);
步驟2.2、將中間狀態(tài)的前8位與預(yù)處理消息的第二個(gè)分組進(jìn)行異或運(yùn)算,與剩下中間狀態(tài)的56bit數(shù)據(jù)拼接在一起再次通過(guò)壓縮函數(shù)進(jìn)行運(yùn)算,依次進(jìn)行計(jì)算直到S組預(yù)處理消息運(yùn)算完畢,完成吸收操作,將不定長(zhǎng)的消息變?yōu)槎ㄩL(zhǎng)的中間狀態(tài);
步驟3、壓縮函數(shù)處理
每輪壓縮處理時(shí)首先將輸入的定長(zhǎng)的中間狀態(tài)與產(chǎn)生的輪密鑰進(jìn)行輪密鑰加AddRoundKey(·)操作,再通過(guò)非線性置換層Substitution(·)進(jìn)行非線性置換,然后進(jìn)行移位操作RotateNibbles(·),再通過(guò)線性置換層Permutation(·)進(jìn)行線性置換,最后將輪密鑰與本輪輪數(shù)通過(guò)密鑰生成算法進(jìn)行輪密鑰的更新,本輪處理結(jié)束,進(jìn)入下輪迭代,依次迭代i輪,i表示輪數(shù),完成壓縮函數(shù)處理,得到經(jīng)壓縮函數(shù)處理的中間狀態(tài)。
該專(zhuān)利技術(shù)資料僅供研究查看技術(shù)是否侵權(quán)等信息,商用須獲得專(zhuān)利權(quán)人授權(quán)。該專(zhuān)利全部權(quán)利屬于西安理工大學(xué),未經(jīng)西安理工大學(xué)許可,擅自商用是侵權(quán)行為。如果您想購(gòu)買(mǎi)此專(zhuān)利、獲得商業(yè)授權(quán)和技術(shù)合作,請(qǐng)聯(lián)系【客服】
本文鏈接:http://www.szxzyx.cn/pat/books/201711240500.2/2.html,轉(zhuǎn)載請(qǐng)聲明來(lái)源鉆瓜專(zhuān)利網(wǎng)。
- 同類(lèi)專(zhuān)利
- 專(zhuān)利分類(lèi)
- 卡片結(jié)構(gòu)、插座結(jié)構(gòu)及其組合結(jié)構(gòu)
- 鋼結(jié)構(gòu)平臺(tái)結(jié)構(gòu)
- 鋼結(jié)構(gòu)支撐結(jié)構(gòu)
- 鋼結(jié)構(gòu)支撐結(jié)構(gòu)
- 單元結(jié)構(gòu)、結(jié)構(gòu)部件和夾層結(jié)構(gòu)
- 鋼結(jié)構(gòu)扶梯結(jié)構(gòu)
- 鋼結(jié)構(gòu)隔墻結(jié)構(gòu)
- 鋼結(jié)構(gòu)連接結(jié)構(gòu)
- 螺紋結(jié)構(gòu)、螺孔結(jié)構(gòu)、機(jī)械結(jié)構(gòu)和光學(xué)結(jié)構(gòu)
- 螺紋結(jié)構(gòu)、螺孔結(jié)構(gòu)、機(jī)械結(jié)構(gòu)和光學(xué)結(jié)構(gòu)
- 高速高帶寬AHB總線到低速低帶寬AHB總線的雙向轉(zhuǎn)換橋
- 可拆裝換鉤頭的1輕量級(jí)的鋁制手柄及十四枚鋼鉤針組合
- 一種輕量級(jí)節(jié)點(diǎn)的數(shù)據(jù)傳輸方法、裝置、設(shè)備和介質(zhì)
- 一種輕量級(jí)節(jié)點(diǎn)的數(shù)據(jù)傳輸方法、裝置、設(shè)備和介質(zhì)
- 輕量級(jí)請(qǐng)求的并發(fā)處理方法及相關(guān)設(shè)備
- 一種輕量級(jí)深度卷積神經(jīng)網(wǎng)絡(luò)的FPGA實(shí)現(xiàn)方法
- 一種小區(qū)選擇方法、輕量級(jí)終端及網(wǎng)絡(luò)設(shè)備
- 授權(quán)簽名生成方法、節(jié)點(diǎn)管理方法、裝置、設(shè)備和介質(zhì)
- 輕量級(jí)桌面機(jī)械臂底座及輕量級(jí)桌面機(jī)械臂
- 輕量級(jí)機(jī)械臂束線結(jié)構(gòu)、輕量級(jí)機(jī)械臂及機(jī)器人





