[發(fā)明專利]低功耗并行哈希計算電路在審
| 申請?zhí)枺?/td> | 201610599300.5 | 申請日: | 2016-07-27 |
| 公開(公告)號: | CN107666387A | 公開(公告)日: | 2018-02-06 |
| 發(fā)明(設(shè)計)人: | 許靜雯;馮博凌;徐浩然;金玉川;趙暾 | 申請(專利權(quán))人: | 北京計算機技術(shù)及應(yīng)用研究所 |
| 主分類號: | H04L9/32 | 分類號: | H04L9/32;H04L9/06 |
| 代理公司: | 中國兵器工業(yè)集團公司專利中心11011 | 代理人: | 張然 |
| 地址: | 100854*** | 國省代碼: | 北京;11 |
| 權(quán)利要求書: | 查看更多 | 說明書: | 查看更多 |
| 摘要: | |||
| 搜索關(guān)鍵詞: | 功耗 并行 計算 電路 | ||
技術(shù)領(lǐng)域
本發(fā)明涉及一種哈希計算電路,特別是一種低功耗和并行哈希計算電路。
背景技術(shù)
哈希算法被廣泛應(yīng)用于各種密碼學(xué)應(yīng)用中,如信息認證、數(shù)字簽名、口令認證等。在PKI系統(tǒng)中,也構(gòu)成輔助函數(shù)使用。高性能的哈希算法是研究熱點,目前高性能的哈希算法一般采用改進關(guān)鍵路徑、流水線、擴大計算規(guī)模等方式實現(xiàn),但是這些方法不能大幅度的提高哈希算法的計算速度。同時由于哈希算法的特殊性,同一條消息在計算過程中存在數(shù)據(jù)相關(guān),即下一消息分組要等待上一消息分組計算完畢后才能開始計算,因此采用并行計算的方式較少。
發(fā)明內(nèi)容
本發(fā)明的目的在于提供一種并行哈希計算電路,用于解決上述現(xiàn)有技術(shù)的問題。
本發(fā)明一種并行哈希計算電路,其中,包括:控制模塊、消息填充模塊、哈希算法迭代模塊、消息暫存模塊和初始值寄存器;該控制模塊連接消息暫存模塊、該消息填充模塊以及該哈希算法迭代模塊,該初始值寄存器連接該哈希算法迭代模塊;該控制模塊用于控制讀取數(shù)據(jù)發(fā)送使能信號;該消息暫存模塊用于對輸入的信息暫存;該消息填充模塊用于根據(jù)消息的長度,對該消息暫存模塊的輸出消息進行比特填充;該哈希算法迭代模塊包含多個哈希算法IP核,用于進行哈希運算;該初始值寄存器用于提供給哈希算法迭代模塊初始值。
根據(jù)本發(fā)明的并行哈希計算電路的一實施例,其中,該控制模塊的該使能信號包含用于讀取消息暫存模塊中存儲數(shù)據(jù)的讀使能信號和地址信號,用于哈希算法迭代模塊的計算使能信號和用于消息填充模塊的填充使能信號。
根據(jù)本發(fā)明的并行哈希計算電路的一實施例,其中,該消息暫存模塊是32比特位寬,深度16的靜態(tài)隨機存取存儲器。
根據(jù)本發(fā)明的并行哈希計算電路的一實施例,其中,該消息填充模塊用于根據(jù)消息的長度,判斷消息在該消息暫存模塊中的最后一位所在的位置,在消息最后一位后面補充一比特1,若干比特0和64比特的消息長度信息,使得填充后的消息是512比特的整數(shù)倍。
根據(jù)本發(fā)明的并行哈希計算電路的一實施例,其中,每個該哈希算法IP核中包含8個32比特寄存器、8條加法器和移位寄存器組成的數(shù)據(jù)通路以及消息擴展單元。
根據(jù)本發(fā)明的并行哈希計算電路的一實施例,其中,該初始值寄存器為256比特的寄存器。
根據(jù)本發(fā)明的并行哈希計算電路的一實施例,其中,該控制模塊的輸出端與消息暫存模塊的輸入端讀使能信號以及地址信號相連,該消息暫存模塊的輸出端與該消息填充模塊的輸入端相連;該控制模塊的輸出端與消息填充模塊的填充使能信號相連,該消息填充模塊的輸出端與哈希算法迭代模塊的輸入端連接,該控制模塊的輸出端與該哈希算法迭代模塊輸入端計算使能信號相連;哈希算法迭代模塊輸出端與初始值寄存器的輸入端相連,初始值寄存器的輸出端與哈希算法迭代模塊輸入端相連。
根據(jù)本發(fā)明的并行哈希計算電路的一實施例,其中,該控制模塊通過數(shù)據(jù)總線讀取哈希算法中共用消息的64比特的消息長度信息,根據(jù)消息長度信息讀取共用消息并存入該消息暫存模塊,當(dāng)該消息暫存模塊的SRAM存滿一個512比特消息分組后,通過該消息填充模塊將填充后的結(jié)果輸給哈希算法迭代模塊。
根據(jù)本發(fā)明的并行哈希計算電路的一實施例,其中,該控制模塊控制一個哈希算法IP核進行計算,哈希算法迭代模塊對512比特的消息分組進行消息擴展產(chǎn)生64個32比特的字,每個字被用在哈希算法的每一輪迭代中,重復(fù)進行64輪迭代,得到256比特的計算結(jié)果,重復(fù)上述過程直到不同消息的相同部分計算完畢,將計算結(jié)果作為初始值輸入到該初始值寄存器。
根據(jù)本發(fā)明的并行哈希計算電路的一實施例,其中,當(dāng)計算不同消息的不同部分時,該控制模塊讀取該初始值寄存器中的初始值,并將初始值賦給哈希算法迭代模塊的各個哈希算法IP核,在后續(xù)的計算中,這個計算結(jié)果值作為初始值使用。
綜上,本發(fā)明的低功耗并行哈希計算電路針對不同消息采用了并行計算的方法,并在計算不同消息的相同部分時,只使用一個哈希算法IP核進行計算,節(jié)省了電路的功耗。本文中所述電路可以應(yīng)用于非對稱密碼算法的輔助函數(shù),密鑰派生函數(shù)(KDF)中,也可以應(yīng)用于區(qū)塊鏈等技術(shù)中。
附圖說明
圖1所示為本發(fā)明的一種低功耗并行哈希計算電路圖;
圖2所示為本發(fā)明的哈希算法迭代模塊的模塊圖。
具體實施方式
為使本發(fā)明的目的、內(nèi)容、和優(yōu)點更加清楚,下面結(jié)合附圖和實施例,對本發(fā)明的具體實施方式作進一步詳細描述。
該專利技術(shù)資料僅供研究查看技術(shù)是否侵權(quán)等信息,商用須獲得專利權(quán)人授權(quán)。該專利全部權(quán)利屬于北京計算機技術(shù)及應(yīng)用研究所,未經(jīng)北京計算機技術(shù)及應(yīng)用研究所許可,擅自商用是侵權(quán)行為。如果您想購買此專利、獲得商業(yè)授權(quán)和技術(shù)合作,請聯(lián)系【客服】
本文鏈接:http://www.szxzyx.cn/pat/books/201610599300.5/2.html,轉(zhuǎn)載請聲明來源鉆瓜專利網(wǎng)。
- 上一篇:一種超高溫端片平貼式薄膜電容器
- 下一篇:一種電容串電阻的防潮塑盒電容





