System.ArgumentOutOfRangeException: 索引和长度必须引用该字符串内的位置。 参数名: length 在 System.String.Substring(Int32 startIndex, Int32 length) 在 zhuanliShow.Bind()
【技术实现步骤摘要】
本申请涉及数据安全,尤其涉及基于risc-v的安全分支预测器及运行方法。
技术介绍
1、risc-v是一种基于精简指令集的开源指令集架构,risc-v的设计目标是提供一种灵活、可扩展、高性能、低功耗的处理器架构。然而,微架构侧信道攻击是一种利用处理器微架构状态开展侧信道攻击的方式,其中,基于分支预测器的侧信道攻击是微架构侧信道攻击的一种方式,基于分支预测器的侧信道攻击是一种利用条件分支错误预测的变体,主要攻击对象为分支预测器的分类历史表(branch history table,简称bht),从而窃取安全关键信息,这种攻击对系统安全构成了高度威胁,同时面临数据泄露等安全威胁。
2、综上,相关技术中存在的技术问题有待得到改善。
技术实现思路
1、本申请实施例旨在至少在一定程度上解决相关技术中的技术问题之一。为此,本申请实施例的主要目的在于提出基于risc-v的安全分支预测器及运行方法,能够有效避免攻击者对饱和计数器状态的感知,降低恶意攻击和数据泄露的风险,提高了系统的安全性和可靠性。
2、为实现上述目的,本申请实施例的一方面提出了基于risc-v的安全分支预测器,所述安全分支预测器为risc-v处理器上的预测模块,所述安全分支预测器包括攻击模块和防御模块,其中:
3、所述攻击模块用于采用侧信道攻击程序对所述安全分支预测器中的初始条件分支指令进行模拟攻击训练,以得到目标条件分支指令;
4、所述防御模块用于根据所述目标条件分支指令生成目标状
5、在一些实施例中,所述防御模块包括存储单元、状态机单元和随机数生成单元,其中:
6、所述存储单元用于存储所述目标条件分支指令对应的第一置信数据;其中,所述第一置信数据包括第一置信状态和第一置信度;
7、所述状态机单元用于更新所述第一置信数据,得到所述目标条件分支指令对应的第二置信数据;其中,所述第二置信数据包括第二置信状态和第二置信度;
8、所述随机数生成单元用于根据所述第二置信数据生成所述目标状态更新值。
9、在一些实施例中,所述目标状态更新值用于更新所述目标条件分支指令的当前跳转方向值,以更新所述目标条件分支指令的当前跳转方向。
10、在一些实施例中,所述ri sc-v处理器包括指令提取单元、指令译码单元和分支跳转单元,所述指令提取单元包括所述安全分支预测器,其中:
11、所述指令提取单元用于对所述目标条件分支指令进行预译码得到目标条件分支指令信息,并根据所述目标条件分支指令信息读取所述目标条件分支指令在所述分支历史表中对应的当前饱和计数器状态,以根据所述当前饱和计数器状态预测所述目标条件分支指令的当前预测跳转方向,将所述当前预测跳转方向传输给所述分支跳转单元;
12、所述指令译码单元用于获取所述指令提取单元中的预译码指令信息,并对所述预译码指令信息进行分析得到目标指令信息,以将所述目标指令信息传输给所述分支跳转单元;
13、所述分支跳转单元用于根据所述目标指令信息进行分支计算得到目标跳转方向,并将所述目标跳转方向和所述当前预测跳转方向进行比对以判断是否更新所述目标条件分支指令对应的所述当前饱和计数器状态。
14、为实现上述目的,本申请实施例的另一方面提出了基于ri sc-v的安全分支预测器的运行方法,应用于如上述所述的基于ri sc-v的安全分支预测器,所述安全分支预测器为ri sc-v处理器上的预测模块,所述安全分支预测器包括攻击模块和防御模块,所述方法包括以下步骤:
15、通过所述攻击模块采用侧信道攻击程序对所述安全分支预测器中的初始条件分支指令进行模拟攻击训练,得到目标条件分支指令;
16、通过所述防御模块根据所述目标条件分支指令生成目标状态更新值;
17、通过所述防御模块根据所述目标状态更新值对所述目标条件分支指令对应的当前饱和计数器状态进行更新,并基于更新后的所述当前饱和计数器状态优化所述安全分支预测器;其中,所述当前饱和计数器状态存储于所述安全分支预测器中的分支历史表;
18、通过优化后的所述安全分支预测器对所述ri sc-v处理器上的待预测条件分支指令进行预测,得到目标安全分支预测结果。
19、在一些实施例中,所述ri sc-v处理器包括指令提取单元、指令译码单元和分支跳转单元,所述指令提取单元包括所述安全分支预测器,在所述通过所述防御模块根据所述目标条件分支指令生成目标状态更新值之前,所述方法还包括:
20、将所述目标条件分支指令输入所述ri sc-v处理器的所述指令提取单元,通过所述指令提取单元对所述目标条件分支指令进行预译码,得到所述目标条件分支指令对应的目标条件分支指令信息;
21、通过所述指令提取单元根据所述目标条件分支指令信息读取所述目标条件分支指令在所述分支历史表中对应的当前饱和计数器状态,并根据所述当前饱和计数器状态预测所述目标条件分支指令的当前预测跳转方向,将所述当前预测跳转方向传输给所述分支跳转单元;
22、通过所述指令译码单元获取所述指令提取单元中的预译码指令信息,并对所述预译码指令信息进行分析得到目标指令信息,以将所述目标指令信息传输给所述分支跳转单元;
23、通过所述分支跳转单元根据所述目标指令信息进行分支计算得到目标跳转方向,并将所述目标跳转方向和所述当前预测跳转方向进行比对以判断是否更新所述目标条件分支指令对应的所述当前饱和计数器状态。
24、在一些实施例中,所述防御模块包括存储单元、状态机单元和随机数生成单元,所述存储单元用于存储所述目标条件分支指令对应的第一置信数据;其中,所述第一置信数据包括第一置信状态和第一置信度,所述通过所述防御模块根据所述目标条件分支指令生成目标状态更新值,包括:
25、通过所述状态机单元根据所述第一置信状态和所述分支跳转单元输出的所述目标跳转方向更新所述第一置信数据,得到所述目标条件分支指令对应的第二置信数据;其中,所述第二置信数据包括第二置信状态和第二置信度;
26、通过所述随机数生成单元根据所述第二置信数据生成所述目标状态更新值。
27、在一些实施例中,所述通过所述防御模块根据所述目标状态更新值对所述目标条件分支指令对应的当前饱和计数器状态进行更新,并基于更新后的所述当前饱和计数器状态优化所述安全分支预测器,包括:
28、通过所述防御模块根据所述目标状态更新值更新所述目标条件分支指令的当前跳转方向值,并根据所述当前跳转方向值更新所述目标条件分支指令的当前跳转方向;
29、通过所述防御模块根据更新后的所述当前跳转方向对所述目标条件分支指令对本文档来自技高网...
【技术保护点】
1.基于RISC-V的安全分支预测器,所述安全分支预测器为RISC-V处理器上的预测模块,其特征在于,所述安全分支预测器包括攻击模块和防御模块,其中:
2.根据权利要求1所述的基于RISC-V的安全分支预测器,其特征在于,所述防御模块包括存储单元、状态机单元和随机数生成单元,其中:
3.根据权利要求1所述的基于RISC-V的安全分支预测器,其特征在于,所述目标状态更新值用于更新所述目标条件分支指令的当前跳转方向值,以更新所述目标条件分支指令的当前跳转方向。
4.根据权利要求1所述的基于RISC-V的安全分支预测器,其特征在于,所述RISC-V处理器包括指令提取单元、指令译码单元和分支跳转单元,所述指令提取单元包括所述安全分支预测器,其中:
5.基于RISC-V的安全分支预测器的运行方法,应用于如权利要求1-4任一项所述的基于RISC-V的安全分支预测器,所述安全分支预测器为RISC-V处理器上的预测模块,其特征在于,所述安全分支预测器包括攻击模块和防御模块,所述方法包括以下步骤:
6.根据权利要求5所述的方法,其特征在于
7.根据权利要求6所述的方法,其特征在于,所述防御模块包括存储单元、状态机单元和随机数生成单元,所述存储单元用于存储所述目标条件分支指令对应的第一置信数据;其中,所述第一置信数据包括第一置信状态和第一置信度,所述通过所述防御模块根据所述目标条件分支指令生成目标状态更新值,包括:
8.根据权利要求5所述的方法,其特征在于,所述通过所述防御模块根据所述目标状态更新值对所述目标条件分支指令对应的当前饱和计数器状态进行更新,并基于更新后的所述当前饱和计数器状态优化所述安全分支预测器,包括:
9.一种电子设备,其特征在于,所述电子设备包括存储器和处理器,所述存储器存储有计算机程序,所述处理器执行所述计算机程序时实现权利要求5至8任一项所述的方法。
10.一种计算机可读存储介质,所述计算机可读存储介质存储有计算机程序,其特征在于,所述计算机程序被处理器执行时实现权利要求5至8中任一项所述的方法。
...【技术特征摘要】
1.基于risc-v的安全分支预测器,所述安全分支预测器为risc-v处理器上的预测模块,其特征在于,所述安全分支预测器包括攻击模块和防御模块,其中:
2.根据权利要求1所述的基于risc-v的安全分支预测器,其特征在于,所述防御模块包括存储单元、状态机单元和随机数生成单元,其中:
3.根据权利要求1所述的基于risc-v的安全分支预测器,其特征在于,所述目标状态更新值用于更新所述目标条件分支指令的当前跳转方向值,以更新所述目标条件分支指令的当前跳转方向。
4.根据权利要求1所述的基于risc-v的安全分支预测器,其特征在于,所述risc-v处理器包括指令提取单元、指令译码单元和分支跳转单元,所述指令提取单元包括所述安全分支预测器,其中:
5.基于risc-v的安全分支预测器的运行方法,应用于如权利要求1-4任一项所述的基于risc-v的安全分支预测器,所述安全分支预测器为risc-v处理器上的预测模块,其特征在于,所述安全分支预测器包括攻击模块和防御模块,所述方法包括以下步骤:
6.根据权利要求5所述的方法,其特征在于,所述risc-v处理器...
还没有人留言评论。发表了对其他浏览者有用的留言会获得科技券。