当前位置: 首页 > 专利查询>英特尔公司专利>正文

使用密码式计算的精细粒度式栈保护制造技术

技术编号:34003831 阅读:29 留言:0更新日期:2022-07-02 12:50
一种使用密码式计算的精细粒度式栈保护。一种处理器,包括:寄存器,其用于存储指向栈存储器中变量的已编码指针。所述已编码指针包括受加密部分和对应于所述变量的存储器地址的固定明文部分。所述处理器还包括用于以下操作的电路:响应于与所述变量关联的存储器存取请求,对所述已编码指针的所述受加密部分进行解密,以获得所述存储器地址的第一高地址比特和用于变量的存储器分配大小;对所述已编码指针进行解码,以获得所述存储器地址;至少部分地基于所述存储器分配大小验证所述存储器地址是有效的;以及响应于确定所述存储器地址是有效的,允许所述存储器存取请求。允许所述存储器存取请求。允许所述存储器存取请求。

【技术实现步骤摘要】
使用密码式计算的精细粒度式栈保护


[0001]本公开总体上涉及计算机系统的领域,更具体而言,涉及密码式计算。

技术介绍

[0002]密码式计算可以指代计算机系统安全解决方案,其在处理器组件的内部采用密码机制以保护由计算系统存储的数据。密码式机制可以用以使用密钥、细调或其他安全机制对数据自身和/或指向数据的指针进行加密。密码式计算是计算行业中的重要趋势,其中,计算自身的真正基础从根本上变为密码式的。密码式计算代表浩瀚的改变,对系统安全性的根本性重新思考,对行业具有广泛影响。
附图说明
[0003]为了更完整地理解本公开及其特征和优点,结合附图参考以下描述,其中,相同的附图标记代表相同的部分,其中:
[0004]图1是根据本公开的至少一个实施例的被配置有安全存储器存取逻辑的示例计算设备的简化框图;
[0005]图2是示出根据本公开的至少一个实施例的图1的安全存储器存取逻辑的应用的简化环境图;
[0006]图3A是示出根据本公开的至少一个实施例的将广义化的已编码指针绑定到由该指针引用的数据的加密的过程的流程图;本文档来自技高网...

【技术保护点】

【技术特征摘要】
1.一种处理器,包括:寄存器,其用于存储指向栈存储器中的变量的已编码指针,所述已编码指针包括:受加密部分;和存储器地址的固定明文部分,其对应于所述变量;电路,其用于:响应于与所述变量关联的存储器存取请求,对所述已编码指针的所述受加密部分进行解密,以获得所述存储器地址的第一高地址比特和用于所述变量的存储器分配大小;对所述已编码指针进行解码,以获得所述存储器地址;至少部分地基于所述存储器分配大小验证所述存储器地址是有效的;以及响应于确定所述存储器地址是有效的,允许所述存储器存取请求。2.如权利要求1所述的处理器,其中,所述电路进一步用于:接收对所述变量的存储器分配请求;确定用于所述栈存储器的所述存储器分配大小;至少部分地基于栈指针获得用于所述变量的所述存储器地址;将所述存储器地址的所述第一高地址比特存储在存储器位置中;以及基于地址密钥和地址细调对所述存储器分配大小和所述存储器地址的所述第一高地址比特进行加密。3.如权利要求1所述的处理器,其中,所述电路进一步用于将第二高地址比特与所述第一高地址比特存储在存储器位置中,其中,所述第一高地址比特和所述第二高地址比特对于所述栈存储器是固定的。4.如权利要求3所述的处理器,其中,验证所述存储器地址是有效的包括:确定从对所述已编码指针的所述受加密部分进行解密获得的所述第一高地址比特与所述存储器位置中存储的所述第一高地址比特匹配。5.如权利要求4所述的处理器,其中,验证所述存储器地址是有效的包括:确定所述存储器地址小于所述存储器分配大小和所述变量的变量基址之和。6.如权利要求1

5中任一项所述的处理器,所述电路进一步用于:使用地址密钥和地址细调作为输入,用分组密码对所述已编码指针的所述受加密部分进行解密。7.如权利要求6所述的处理器,其中,所述已编码指针包括以2的幂指示的幂元数据、表示固定偏移的所述已编码指针中的第一数量的比特和表示不定偏移的所述已编码指针中的第二数量的比特。8.如权利要求7所述的处理器,其中,所述地址细调包括所述固定偏移和所述幂元数据。9.如权利要求1

8中任一项所述的处理器,其中,所述存储器地址是部分地基于所述固定明文部分和所述第一高地址比特从所述已编码指针解码的。10.如权利要求9所述的处理器,其中,所述电路进一步用于:基于解码自所述已编码指针的所述存储器地址,加载所述栈存储器的所述变量中存储的第一数据;以及基于至少部分地从所述已编码指针导出的第一数据密钥和数据细调对所述第一数据
进行解密。11.如权利要求9所述的处理器,其中,所述电路进一步用于:基于至少部分地从所述已编码指针导出的第一数据密钥和数据细调对第一数据进行加密;以及使用解码自所述已编码指针的所述存储器地址,以将加密的第一数据存储在对应于所述存储器地址的所述变量中。12.一种方法,包括:在寄存器中存储指向栈存储器中的变量的已编码指针,其中,所述已编码指针包括受加密部分和对应于所述变量的存储器地址的固定明文部分;响应于与所述变量关联的存储器存取请求,对所述已编码指针的所述受加密部分进行解密,以获得所述存储器地址的第一高地址比特和用于所述变量的存储器分配大小;对所述已编码指针进行解码,以获得所述存储器地址;至少部分地基于所述存储器分配大小验证所述存储器地址是有效的;以及基于验证所述存储器地址是有效的,允许所述存储器存取请求。13.如权利要求12所述的方法,还包括:接收对所述变量的存储器分配请求;确定用于所述栈存储器的所...

【专利技术属性】
技术研发人员:D
申请(专利权)人:英特尔公司
类型:发明
国别省市:

网友询问留言 已有0条评论
  • 还没有人留言评论。发表了对其他浏览者有用的留言会获得科技券。

1