首页
学习
活动
专区
圈层
工具
发布
首页
学习
活动
专区
圈层
工具
MCP广场
社区首页 >问答首页 >使用sgx enclave的http安全呼叫

使用sgx enclave的http安全呼叫
EN

Stack Overflow用户
提问于 2021-02-15 23:07:41
回答 2查看 67关注 0票数 1

我有一个情况:

我有一个场景,我必须连接到一个web服务器,并且我需要保证响应数据的安全:我连接到一个将返回信用卡数据的REST API。我在受信任的代码中对密钥进行签名,在不受信任的部分使用签名via和OCALL发送HTTP请求。应用程序在不受信任部分接收HTTP响应,并通过ECALL立即发送到受信任部分。然而,从我的角度来看,我在应用程序中有一个安全漏洞:用户信用数据应该在不受信任的部分接收。

根据我的研究,也因为这里的一些帖子,我认为没有办法从enclave进行HTTP调用。@JesusG_Intel在https://community.intel.com/t5/Intel-Software-Guard-Extensions/Rest-API-or-HTTP-API-call-from-inside...上写道

无法从enclave内部直接调用外部世界。您必须创建从enclave到应用程序的调用,然后应用程序才能代表enclave发出REST API或HTTP请求。

我是sgx技术的新手,我知道这是否是真正的安全漏洞。我认为英特尔不会允许这种安全风险。我错过了什么?您能指导我如何使用sgx技术发出安全的HTTP请求吗?

谢谢

EN

回答 2

Stack Overflow用户

发布于 2021-02-17 11:18:59

拥有可信执行环境(例如,在您的案例中为SGX )的全部意义在于,在enclave外部对数据进行加密,而仅在enclave内部解密数据。

我不知道您到底想要实现什么,如果我正确理解了您的要求,那么REST API将以明文形式将信用卡(CC)信息发送到您的应用程序。如果是,那么REST API应该首先加密CC信息,将其发送到您的应用程序(不可信任部分),不可信任部分将加密的数据编组到您的可信任部分( enclave ),然后enclave在enclave内部解密CC信息。

票数 1
EN

Stack Overflow用户

发布于 2021-05-25 03:29:09

我可能会晚一点,但我认为这个问题应该有更多细节。

使用Imte;SGX创建T形三通时,您的应用程序分为两个部分:

不受信任的部分,又称应用本身

  • trusted part,又称enclave。

后者是最安全的。由于其有限的资源(128/256Mb的RAM),它应该保留给需要大量安全性的进程:加密、匿名化等。

更清楚的是: enclave不是进行HTTP调用的地方。

例如,假设您的应用程序调用API,检索加密数据,然后对其进行解密。流程如下(T =可信= enclave,U=不可信=应用程序)

  • U:进行

调用,检索数据

  • U:启动enclave
  • U:将加密数据传递到enclave
  • T:接收加密数据,对其进行处理<

>F215

换句话说,enclave必须为流程的敏感部分预留,其余部分留给应用程序中不受信任的部分。

票数 0
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/66210468

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档