多链式哈希栈的硬件开销优化方法及系统

    公开(公告)号:CN110348250B

    公开(公告)日:2020-12-29

    申请号:CN201910559199.4

    申请日:2019-06-26

    Abstract: 本发明实施例提供一种多链式哈希栈的硬件开销优化方法及系统,该方法包括:在硬件上添加发射队列;其中,发射队列包括顺序排列的多个项目,每一个项目代表一条链式哈希栈,每一条链式哈希栈用于存储一次哈希运算的输入及输出;当哈希运算的输入送入发射队列中对应的项目时,将该项目置为排队计算状态;当哈希模块结束计算状态后,查询发射队列中是否还存在处于排队计算状态的项目;若存在,则哈希模块根据排队顺序计算下一个项目中的哈希运算。本发明实施例相比于现有技术中使用N倍哈希模块的技术方案减少了硬件开销,起到了多链和影子缓存的加速效果。

    一种细粒度控制流完整性保护实现方法及系统

    公开(公告)号:CN111898130A

    公开(公告)日:2020-11-06

    申请号:CN202010600005.3

    申请日:2020-06-28

    Abstract: 本发明实施例提供一种细粒度控制流完整性保护实现方法及系统。该方法包括:获取目标程序中若干代码片段的合法间接控制流;基于所述合法间接控制流,将对应于每一个代码片段的跳转地址替换为控制流指令地址的预设低位编码;为每一个代码片段添加预设空指令作为间接控制流的合法跳转目的标记。本发明实施例通过将程序运行中的代码片段之间的跳转地址标签替换为跳转指令自身地址的低位编码,使得内存运行的硬件开销大幅降低,同时提升了安全性。

    多链哈希栈结构及检测函数返回地址被篡改的方法

    公开(公告)号:CN110363006A

    公开(公告)日:2019-10-22

    申请号:CN201910559217.9

    申请日:2019-06-26

    Abstract: 本发明实施例提供一种多链哈希栈结构及检测函数返回地址被篡改的方法,所述多链哈希栈结构包括:N条链式结构,每条链式结构对应一个用于存储哈希值的top寄存器,多链哈希栈结构的任一帧中存储了当前帧所对应的函数体的返回地址和当前帧所在链式结构所对应的top寄存器中的哈希值;其中,当前帧所在的链式结构是根据当前帧所对应的函数体在多链哈希栈结构中的深度来确定的;当前帧所在链式结构所对应的top寄存器存储的是所述当前帧所在链式结构上的最新的哈希值;N为大于1的自然数。本发明实施例有效地缓解了由于相近的哈希运算的冲突造成的流水线停顿,减少了链式哈希栈的性能损耗。

    链式哈希栈的影子缓存优化方法和装置

    公开(公告)号:CN110362502A

    公开(公告)日:2019-10-22

    申请号:CN201910559287.4

    申请日:2019-06-26

    Abstract: 本发明实施例提供的链式哈希栈的影子缓存优化方法和装置,添加了一个影子缓存表,当调用子函数时,保存子函数头部哈希运算的输入(返回地址和哈希值),记录该项为有效,然后指针指向最近更新的缓存项的下一项。当函数返回时,查询最近一次有效的缓存项。如果此时的输入(从栈中取出的返回地址和哈希值)与影子缓存最新的有效项相同,则不需要进行哈希计算,而是直接用影子缓存表中的缓存项来更新top寄存器,然后将影子缓存表中的该项缓存置为无效。这种方法能够加速函数体尾部对栈中返回地址和哈希值的校验,减少流水线停顿。

Patent Agency Ranking