-mac消息认证ip核硬件装置的制造方法_4

文档序号:9931101阅读:来源:国知局
寄存 器中的中间摘要,然后查询SHA-1密钥模块,读取SHA-1认证密钥,然后以"SHA-1认证密钥| 数据报文I I padding模块填充字段"的数据格式进行SHA-1认证运算,运算过程同上。运算结 果即最终认证摘要,SHA-1运算模块将SHA-1运算得到的160bit的最终认证摘要送入后封装 模块。
[0057]初始摘要寄存器,寄存MD5和SHA-1运算模块所需要的链接变量,对于MD5运算模块 需要的四个链接变量分别为:A = 0x01234567,B = 0x89abcdef,C = 0xfedcba98,D = 0x76543210,其中Ox表示16进制。对于SHA-1运算模块需要五个链接变量分别为:HO = 0x67452301,Hl=0xefcdab89,H2 = 0x98badcfe,H3 = 0xl0325476,H4 = 0xc3d2elf0。
[0058]中间摘要寄存器,用于寄存H2-MAC运算中第一轮MD5或SHA-1运算所产生的结果, 即链接变量。新的消息报文(即"MD5或SHA-1认证密钥| |原消息报文| | padding模块填充字 段")对应进入MD5或者SHA-1运算模块后,产生相应的中间摘要。其中,MD5运算模块产生 128bit中间摘要,而如采用256位SHA-1运算,则产生256bit中间摘要,384位SHA-1运算产生 384bit中间摘要。中间摘要寄存器存储这些中间摘要。
[0059] H2_MAC控制模块,用于控制相应运算模块完成H2-MAC运算。H2_MAC控制模块首先判 断米用的是MD5运算还是SHA-1运算;若米用MD5运算则首先判断MD5运算模块运算的轮数, 若是第一轮MD5运算则查询初始摘要寄存器,读出链接变量传送至MD5运算模块,在MD5运算 模块完成第一轮MD5运算结束后改变MD5运算轮数为第二轮,并控制MD5运算模块将第一轮 输出的中间摘要进行512bit填充,即在得到的非5121^七(1281^125613^、3841^〇中间摘要 后面添加若干个"0",使其长度变为512bit,将填充后的中间摘要存入中间摘要寄存器;若 是第二轮MD5运算则先传输MD5运算的链接变量以及中间摘要寄存器中的中间摘要至MD5运 算模块,之后控制MD5运算模块进行MD5运算,将运算得到的最终认证摘要送入后封装模块, 同时改变MD5运算轮数为第一轮;若采用SHA-1运算则首先判断SHA-1运算模块运算的轮数, 若是第一轮SHA-1运算则查询初始摘要寄存器,读出链接变量传送至SHA-1运算模块,第一 轮SHA-1运算结束后,在SHA-1运算模块完成第一轮SHA-1运算结束后改变SHA-1运算轮数为 第二轮,并控制SHA-1运算模块将第一轮输出的中间摘要进行512bit填充,即在得到的非 51213^(12813^、25613^、3841^〇中间摘要后面添加若干个"0",使其长度变为51213^,将填 充后的中间摘要存入中间摘要寄存器;若是第二轮SHA-1运算则先传输SHA-1运算的链接变 量以及中间摘要寄存器中的中间摘要至SHA-1运算模块,之后控制SHA-1运算模块进行SHA-1运算,将运算得到的最终认证摘要送入后封装模块,同时改变SHA-1运算轮数至第一轮,控 制SHA-1运算模块将运算得到的最终认证摘要送入后封装模块。
[0060]后封装模块,由顺序串联的封装模块和总线接口模块组成,其中封装模块同时连 接MD5运算模块和SHA-1运算模块,封装模块首先通过解释域字段判断应接收SHA-1运算模 块传输来的最终认证摘要还是接收MD5运算模块传输来的最终认证摘要,然后接收最终认 证摘要并将最终认证摘要整理为"起始位I I解释域帧I I认证秘钥I I数据报文I I最终认证摘 要I I结束位"的格式,封装模块随后将整理好的最终认证摘要发送给总线接口模块,总线接 口模块向总线发出认证数据处理完毕信号,并将整理好的最终认证摘要发送回总线。
[0061]图2显示了本发明的基于总线的H2-MAC消息认证IP核硬件装置中解析模块的一种 具体结构,如图2所示,该解析模块包括顺序串联的总线接入模块、字段解析判断模块和缓 存模块。
[0062]总线接入模块,用于匹配总线的各种接口,包括地址线、控制线、数据线等,接收地 址、控制信号、数据,并将数据转入字段解析判断模块解析。通过判断所接收总线数据中的 Control控制信息和Addr地址信息是否对应本IP核并判断本IP核是否被选中,若本IP核没 被选中则不进行处理;若本IP核被选中,则首先通过总线接入模块接收总线数据中的Data 数据,并控制整个H2-MAC消息认证IP核开始认证消息。
[0063]字段解析判断模块,用于解析数据包的起始字段、数据长度字段、解释域字段、认 证密钥字段、数据报文字段、结束位字段,长度验证字段。具体而言,第一步,若本IP核被选 中,则判断起始位是否为预设的起始位,若是则表明数据包接收正确,开始存储数据;如果 不符合,接收数据但不存储。当判断起始位正确以后,解析数据长度(帧),根据所指长度,来 接收相应长度的数据,通过总线接入模块接收总线数据中的Data数据,并解析Data数据中 的经过上层加密模块的同步数据包,将解析得到的MD5认证秘钥存入第一缓存模块,将解析 得到的SHA-1认证密钥存入第三缓存模块;第二步,由字段解析判断模块接收总线接入模块 处理过的同步数据包并进一步解析同步数据包中的解释域字段,将解析得到的解释域字段 存入第二缓存模块。虽然解释域字段包括:封装模式位、NAT位、协议类型位、技术类型位、传 输协议位、加密算法编号位、认证算法位、IV标识位、IP数据报文字段、结束字段和数据长度 验证字段,但此处只需解析认证算法位,通过解析认证算法位判定认证方式以及密钥长度。 例如若判定采用MD5认证,则认定MD5密钥长度为128bit,并在下面解析认证密钥字段的时 候将相应长度的MD5认证密钥存入第一缓存模块中,以便发送到后面MD5密钥模块;如若采 用SHA-1认证,则可以通过判定确定SHA-1密钥长度为256bit或384bit或512bit中的某一 个,在解析认证密钥字段的时候将相应长度的SHA-1认证密钥存入第三缓存模块中,以便发 送到后面SHA-1密钥模块。解析IPdnternet Protocol,因特网互联协议)数据报文字段,可 以通过计算得出数据报文长度,接收相应长度IP数据报文,并将IP数据报文暂存于第二缓 存模块中,以便传输到padding模块中。第三步,解析结束位字段,记录从起始位字段接收数 据到结束位字段接收数据长度,当同步数据包接收完毕后通过判断所接收数据包的长度是 否与数据长度帧的数值相对应来确认解析得到的数据报文是否完整;若完整,则本次操作 有效;若不完整,则本次操作无效,字段解析判断模块将清空缓存并发出无效信号。
[0064]缓存模块,用于缓存MD5密钥、SHA-1密钥、IP数据报文,作分流处理。
[0065]图3显示了发明的基于总线的H2_MAC消息认证IP核硬件装置中后封装模块的一种 具体结构,如图3所示,该后封装模块进一步包括顺序串联的封装模块和总线接口模块。 [0066]后封装模块,通过解释域字段判断接收的最终认证摘要是H 2_MAC-MD5还是H2-MAC-SHA-1产生的最终认证摘要,并存储。其中,H2-MAC-MD5和H 2-MAC-SHA-1产生的最终 认证摘要的长度分别为128bit和160bit。接收过最终认证摘要后,将各数据字段排序,将最 终认证摘要封装成"起始位I I解释域帧I I认证密钥I I数据报文I I最终认证摘要I I结束位" 的格式,并传递给总线接口模块。
[0067]后封装模块中的封装模块同时连接MD5运算模块和SHA-1运算模块,封装模块首先 通过解释域字段判断应接收SHA-1运算模块传输来的H2-MAC-SHA-1运算产生的160bit的 最终认证摘要还是接收MD5运算模块传输来的H 2-MAC-MD5运算产生的128bit的最终认证 摘要,然后接收最终认证摘要并将最终认证摘要整理为"起始位I I解释域帧I I认证秘钥I 数据报文I I最终认证摘要I I结束位"的格式,封装模块随后将整理好的最终认证摘要发送 给总线接口模块,总线接口模块向总线发出认证数据处理完毕信号,并将整理好的最终认 证摘要发送回总线。
[0068]所述总线接口模块,用于匹配总线的Data数据总线接口,Control控制总线接口, Addr地址总线接口,发出认证数据处理完毕信号,并将封装好的最终认证摘要送回总线。 [0069]图4显示了基于总线的H 2_MAC消息认证IP核硬件装置从总线接收的同步数据包的 格式。如图4所示,从总线接收的同步数据包包括:起始字段,数据长度字段,解释域字段,认 证密钥字段,IP数据报文字段,结束字段和数据长度验证字段;其中解释域字段进一步包 括:封装模式位、NAT位、协议类型位、技术类型位、传输协议位、加密算法编号位、认证算法 位、IV标识位。在本设计中解释域字段只使用加密算法编号位,其余字段使用可参考IPSEC 协议,本文不再详述,起始字段、结束字段长度数值可由用户自行定义,如:可使用前8bi t数 值为10101010表示起始字段,后24bit表示数据长度。
【主权项】
1. 一种基于总线的H2-MAC消息认证IP核硬件装置,其特征在于,包括解析模块、MD5密钥 模块、padding模块、SHA-1密钥模块、初始摘要寄存器、中间摘要寄存器、H 2-MAC控制模块、 MD5运算模块、SHA-1运算模块和后封装模块; 解析模块的输入端为整个装置的输入端,解析模块的输入端接收来自总线的数据,解 析模块输出端同时连接pa
当前第4页1 2 3 4 5 
网友询问留言 已有0条留言
  • 还没有人留言评论。精彩留言会获得点赞!
1