[發明專利]一種基于總線的H2-MAC消息認證IP核硬件裝置有效
| 申請號: | 201610061043.X | 申請日: | 2016-01-28 |
| 公開(公告)號: | CN105721161B | 公開(公告)日: | 2018-10-23 |
| 發明(設計)人: | 李冰;劉洋;劉玉翠;郭安;劉勇;陳帥;董乾;趙霞;王剛 | 申請(專利權)人: | 東南大學 |
| 主分類號: | H04L9/32 | 分類號: | H04L9/32 |
| 代理公司: | 南京蘇高專利商標事務所(普通合伙) 32204 | 代理人: | 柏尚春 |
| 地址: | 214135 江*** | 國省代碼: | 江蘇;32 |
| 權利要求書: | 查看更多 | 說明書: | 查看更多 |
| 摘要: | |||
| 搜索關鍵詞: | 一種 基于 總線 sup mac 消息 認證 ip 硬件 裝置 | ||
1.一種基于總線的H2-MAC消息認證IP核硬件裝置,其特征在于,包括解析模塊、MD5密鑰模塊、padding模塊、SHA-1密鑰模塊、初始摘要寄存器、中間摘要寄存器、H2-MAC控制模塊、MD5運算模塊、SHA-1運算模塊和后封裝模塊;
解析模塊的輸入端為整個裝置的輸入端,解析模塊的輸入端接收來自總線的數據,解析模塊輸出端同時連接padding模塊、MD5密鑰模塊和SHA-1密鑰模塊的輸入端;padding模塊和MD5密鑰模塊的輸出端連接MD5運算模塊的輸入端,padding模塊和SHA-1密鑰模塊的輸出端連接SHA-1運算模塊的輸入端;MD5運算模塊接受H2-MAC控制模塊的控制進行MD5運算,在第一輪運算中H2-MAC控制模塊首先讀取初始摘要寄存器的信息傳遞給MD5運算模塊,并將第一輪MD5運算模塊的結果存入中間摘要寄存器,在隨后的第二輪運算中由H2-MAC控制模塊讀取中間摘要寄存器的信息傳遞給MD5運算模塊,最后將MD5認證運算得到的最終認證摘要傳輸至后封裝模塊;SHA-1運算模塊接受H2-MAC控制模塊的控制進行SHA-1運算,在第一輪運算中H2-MAC控制模塊首先讀取初始摘要寄存器的信息傳遞給SHA-1運算模塊,并將第一輪SHA-1運算模塊的結果存入中間摘要寄存器,在隨后的第二輪運算中由H2-MAC控制模塊讀取中間摘要寄存器的信息傳遞給SHA-1運算模塊,最后將SHA-1認證運算得到的最終認證摘要傳輸至后封裝模塊;中間摘要寄存器的輸入端同時連接MD5運算模塊和SHA-1運算模塊,輸出端連接H2-MAC控制模塊;H2-MAC控制模塊的輸入端同時連接初始摘要寄存器和中間摘要寄存器,輸出端同時連接MD5運算模塊和SHA-1運算模塊;后封裝模塊的輸入端同時連接MD5運算模塊和SHA-1運算模塊的輸出端,后封裝模塊的輸出端將含最終認證摘要的數據包要發送回總線;
所述解析模塊包括順序連接的總線接入模塊、字段解析判斷模塊和三個緩存模塊:首先,解析模塊通過總線接入模塊接收總線數據,總線接入模塊通過判斷所接收總線數據中的Control控制信息和Addr地址信息是否對應本IP核來判斷本IP核是否被選中,若本IP核沒被選中則不進行處理;若本IP核被選中,則首先通過總線接入模塊接收總線數據中的Data數據,并解析Data數據中的經過上層加密模塊的同步數據包,將解析得到的MD5認證秘鑰存入第一緩存模塊,將解析得到的SHA-1認證密鑰存入第三緩存模塊;隨后,由字段解析判斷模塊接收總線接入模塊處理過的同步數據包并進一步解析同步數據包中的解釋域字段,將解析得到的解釋域字段存入第二緩存模塊;最后,當同步數據包接收完畢后通過判斷所接收數據包的長度是否與數據長度幀的數值相對應來確認解析得到的數據報文是否完整;若完整,則本次操作有效;若不完整,則本次操作無效,字段解析判斷模塊將清空緩存并發出無效信號;
所述MD5密鑰模塊在數據包采用MD5認證方式時接收解析模塊緩存的MD5認證密鑰,在接收的MD5認證密鑰后填充“0”,直至填充后的MD5認證密鑰長度為512bit,存儲長度為512bit的MD5認證密鑰;
SHA-1密鑰模塊在數據包采用SHA-1認證方式時接收解析模塊解析出的SHA-1認證密鑰,在接收的SHA-1認證密鑰后填充“0”,直至填充后的SHA-1認證密鑰長度為512bit,存儲長度為512bit的SHA-1認證密鑰;
所述padding模塊,第一步先判斷解析模塊傳遞過來的數據報文的長度,若數據報文的長度對512取模后余數為448則不對數據報文進行處理,否則先在數據報文后補一個“1”;第二步,判斷補位后的數據報文長度對512取模后余數是否為448,若是則不繼續對數據報文進行處理,否則在第一步補入的“1”后繼續補“0”,直至補位后的數據報文的長度對512取模后余數為448;第三步,補長度字段,將原先的消息長度值增加512bit;第四步,將處理后的數據報文按照所采用的認證方式送入相應的認證運算模塊;
所述初始摘要寄存器,用于存儲MD5運算模塊和SHA-1運算的鏈接變量;
所述中間摘要寄存器,用于接收H2-MAC算法中第一輪MD5運算或者SHA-1運算所產生的鏈接變量;
所述H2-MAC控制模塊,首先判斷采用的是MD5運算還是SHA-1運算;若采用MD5運算則首先判斷MD5運算模塊運算的輪數,若是第一輪MD5運算則查詢初始摘要寄存器,讀出鏈接變量傳送至MD5運算模塊,在MD5運算模塊完成第一輪MD5運算結束后改變MD5運算輪數為第二輪,并控制MD5運算模塊將第一輪輸出的中間摘要進行512bit填充,即在得到的128bit、256bit或384bit中間摘要后面添加“0”,使其長度變為512bit;若是第二輪MD5運算則先傳輸MD5運算的鏈接變量以及中間摘要寄存器中的中間摘要至MD5運算模塊,之后控制MD5運算模塊進行MD5運算,將運算得到的最終認證摘要送入后封裝模塊,同時改變MD5運算輪數為第一輪;若采用SHA-1運算則首先判斷SHA-1運算模塊運算的輪數,若是第一輪SHA-1運算則查詢初始摘要寄存器,讀出鏈接變量傳送至SHA-1運算模塊,在SHA-1運算模塊完成第一輪SHA-1運算結束后改變SHA-1運算輪數為第二輪,并控制SHA-1運算模塊將第一輪輸出的中間摘要進行512bit填充,即在得到的128bit、256bit或384bit中間摘要后面添加“0”,使其長度變為512bit,將填充后的中間摘要存入中間摘要寄存器;若是第二輪SHA-1運算則先傳輸SHA-1運算的鏈接變量以及中間摘要寄存器中的中間摘要至SHA-1運算模塊,之后控制SHA-1運算模塊進行SHA-1運算,將運算得到的最終認證摘要送入后封裝模塊,同時改變SHA-1運算輪數至第一輪,控制SHA-1運算模塊將運算得到的最終認證摘要送入后封裝模塊;
所述MD5運算模塊的運算步驟如下,先判斷運算輪數,若進行的是第一輪MD5運算,則首先讀取MD5密鑰模塊中的MD5認證密鑰,讀取初始化摘要模塊存儲的MD5運算的鏈接變量,然后以“MD5認證密鑰||數據報文||padding模塊填充字段”的數據格式進行MD5運算,產生128bit摘要;第二步,在第一輪MD5運算結束后,在第一輪MD5運算產生的中間摘要后補“0”,將第一輪MD5運算產生的中間摘要填充為512bit的長度,將填充過的中間摘要存入中間摘要寄存器;若進行的是第二輪MD5運算,則先讀取MD5運算的鏈接變量以及中間摘要寄存器中的中間摘要,然后查詢MD5密鑰模塊,讀取MD5認證密鑰,然后以“MD5認證密鑰||數據報文||padding模塊填充字段”的數據格式進行MD5認證運算,產生最終認證摘要,最后將MD5運算得到的128bit的最終認證摘要送入后封裝模塊;
所述SHA-1運算模塊的運算步驟如下,先判斷運算輪數,若進行的是第一輪SHA-1運算,則首先讀取SHA-1密鑰模塊中的SHA-1認證密鑰,讀取初始化摘要模塊存儲的SHA-1運算的鏈接變量,然后以“SHA-1認證密鑰||數據報文||padding模塊填充字段”的數據格式進行SHA-1運算,產生160bit摘要;第二步,在第一輪SHA-1運算結束后,在第一輪SHA-1運算產生的中間摘要后補“0”,將第一輪SHA-1運算產生的中間摘要填充為512bit的長度,將填充過的中間摘要存入中間摘要寄存器;若進行的使第二輪SHA-1運算,則先讀取SHA-1運算的鏈接變量以及中間摘要寄存器中的中間摘要,然后查詢SHA-1密鑰模塊,讀取SHA-1認證密鑰,然后以“SHA-1認證密鑰||數據報文||padding模塊填充字段”的數據格式進行SHA-1認證運算,產生最終認證摘要,最后將SHA-1運算得到的160bit的最終認證摘要送入后封裝模塊;
所述后封裝模塊,由順序串聯的封裝模塊和總線接口模塊組成,其中封裝模塊同時連接MD5運算模塊和SHA-1運算模塊,封裝模塊首先通過解釋域字段判斷應接收SHA-1運算模塊傳輸來的最終認證摘要還是接收MD5運算模塊傳輸來的最終認證摘要,然后接收最終認證摘要并將最終認證摘要整理為“起始位||解釋域幀||認證秘鑰||數據報文||最終認證摘要||結束位”的格式,封裝模塊隨后將整理好的最終認證摘要發送給總線接口模塊,總線接口模塊向總線發出認證數據處理完畢信號,并將整理好的最終認證摘要發送回總線。
該專利技術資料僅供研究查看技術是否侵權等信息,商用須獲得專利權人授權。該專利全部權利屬于東南大學,未經東南大學許可,擅自商用是侵權行為。如果您想購買此專利、獲得商業授權和技術合作,請聯系【客服】
本文鏈接:http://www.szxzyx.cn/pat/books/201610061043.X/1.html,轉載請聲明來源鉆瓜專利網。
- 上一篇:一種樹結構網絡的管理結構分裂方法
- 下一篇:用于多載波網絡操作的系統和方法
- <100>N<SUP>-</SUP>/N<SUP>+</SUP>/P<SUP>+</SUP>網狀埋層擴散拋光片
- 零50電力L<SUP>2</SUP>C<SUP>2</SUP>專用接口<SUP></SUP>
- 高保真打印輸出L<SUP>*</SUP>a<SUP>*</SUP>b<SUP>*</SUP>圖像的方法
- 在硅晶片上制備n<sup>+</sup>pp<sup>+</sup>型或p<sup>+</sup>nn<sup>+</sup>型結構的方法
- <sup>79</sup>Se、<sup>93</sup>Zr、<sup>107</sup>Pd聯合提取裝置
- <sup>79</sup>Se、<sup>93</sup>Zr、<sup>107</sup>Pd聯合提取裝置
- <sup>182</sup>Hf/<sup>180</sup>Hf的測定方法
- 五環[5.4.0.0<sup>2</sup>,<sup>6</sup>.0<sup>3</sup>,<sup>10</sup>.0<sup>5</sup>,<sup>9</sup>]十一烷二聚體的合成方法
- 含煙包裝袋中Li<sup>+</sup>、Na<sup>+</sup>、NH<sub>4</sub><sup>+</sup>、K<sup>+</sup>、Mg<sup>2+</sup>、Ca<sup>2+</sup>離子的含量測定方法
- <base:Sup>68





