一种用于抵御SGX侧信道攻击的密文加载方法技术

技术编号:31484022 阅读:27 留言:0更新日期:2021-12-18 12:18
本发明专利技术提供一种用于抵御SGX侧信道攻击的密文加载方法,首先对源程序进行加密并将加密程序传送到云提供商,云提供商加载密文代码和加载器程序,并根据这些信息初始化云环境的Enclave;用户与云环境之间进行远程认证,并构建安全的通信信道,用户通过密钥交换协议将加密时使用的密钥安全的传送到云环境中的Enclave中;最终Enclave使用密钥解密程序和加载器程序,加载器程序根据用户传递的参数执行程序;在传递到Enclave之前,程序都是以密文形式存在,恶意环境不能获取程序明文,保证了程序的机密性该方法充分利用了SGX中的远程认证机制,并结合密钥交换协议构建出的密钥来保护加密明文程序过程中使用到的加密密钥,在抵御侧信道攻击的同时,降低了方案的开销。降低了方案的开销。降低了方案的开销。

【技术实现步骤摘要】
一种用于抵御SGX侧信道攻击的密文加载方法


[0001]本专利技术涉及信息安全
,具体涉及一种用于抵御SGX侧信道攻击的密文加载方法。

技术介绍

[0002]目前,越来越多的计算任务被交由云服务器处理,导致用户的代码和数据受到云平台的控制,这严重影响了用户的信息安全,例如云提供商会通过特权来攻击用户的专有算法。SGX(software guard extensions)指令集扩展,旨在以硬件安全为强制性保障,不依赖于固件和软件的安全状态,提供用户空间的可信执行环境,通过一组新的指令集扩展与访问控制机制,实现不同程序间的隔离运行,保障用户关键代码和数据的机密性与完整性不受恶意软件的破坏。利用SGX能够在计算机中建立安全的计算区域,并为内部代码提供硬件级的安全隔离和保护。在支持SGX的设备中,用户可以利用指令在内存中创建一个安全容器(Enclave)来保护内部程序,即使恶意的特权软件(如,操作系统、虚拟监控器等)也无法破坏程序执行过程中的完整性和机密性。在SGX中实现程序的安全执行能够有效提高方案的通用性。然而,现有的SGX存在侧信道攻击问题本文档来自技高网...

【技术保护点】

【技术特征摘要】
1.一种用于抵御SGX侧信道攻击的密文加载方法,其特征在于,包括:步骤1:用户生成对称密钥并将加密后的密文托管给云服务提供商的应用程序;步骤2:根据远程认证协议验证云服务器中的安全容器Enclave是否可信,实现远程认证的过程;步骤3:在远程认证的过程中,利用ECDH算法为用户和服务器双方构建安全的通信信道;步骤4:将加密程序使用的密钥以及程序运行所需的参数传递给云环境的Enclave进行密文的解密。2.根据权利要求1所述的一种用于抵御SGX侧信道攻击的密文加载方法,其特征在于,所述步骤1包括:步骤1.1:用户使用Intel提供的AES

NI指令集实现的AES

GCM算法产生一对对称密钥k0;步骤1.2:利用产生的对称密钥k0对即将托管给云服务提供商的用户明文程序P
user
进行加密,得到加密后的应用程序{P
user
}k0;步骤1.3:将加密后的应用程序{P
user
}k0发送给云服务提供商,通过云服务器提供商将{P
user
}k0以及加载器程序P
loader
加载到平台的安全容器Enclave中;步骤1.4:通过云服务提供商将安全容器Enclave为{P
user
}k0分配的安全内存页面设置为具有读取、写入和执行权限的Enclave代码页。3.根据权利要求1所述的一种用于抵御SGX侧信道攻击的密文加载方法,其特征在于,所述步骤2包括:步骤2.1:SGX平台应用接收挑战者发送的挑战值;步骤2.2:通过SGX平台的应用程序将收到的挑战值和认证请求发送给要被认证的安全容器Enclave;步骤2.3:要被认证的安全容器Enclave根据报告密钥Report key、度量日志生成本地认证报告REPORT,并发送给应用程序;步骤2.4:应用程序接收到REPORT后发送给Quoting Enclave验证并签名;步骤2.5:Quoting Enclave调用报告密钥验证REPORT,然后使用认证密钥对REPORT进行签名生成远程认证报告QUOTE,并将其返回给应用程序;步骤2.6:应用程序将远程认证报告QUOTE发送给远程方;步骤2.7:远程方通过将QUOTE发送给Intel认证服务IAS进行验证,...

【专利技术属性】
技术研发人员:张建张建磊王庆豪史闻博鲁宁
申请(专利权)人:东北大学秦皇岛分校
类型:发明
国别省市:

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

1