问题标签 [sgx]
For questions regarding programming in ECMAScript (JavaScript/JS) and its various dialects/implementations (excluding ActionScript). Note JavaScript is NOT the same as Java! Please include all relevant tags on your question; e.g., [node.js], [jquery], [json], [reactjs], [angular], [ember.js], [vue.js], [typescript], [svelte], etc.
openssl - 带有 OpenSSL 的 Linux SGX 飞地
我在英特尔网站上看到这里有一个可用于 SGX 的 OpenSSL 库,但仅在 Windows 上可用。
有谁知道 Linux SGX SDK 是否也有这样的扩展?
json - 新交所报价证明与 IAS
我能够在硬件模式下使用运行 SGX 并从 IAS 成功检索 SigRL。但是我在尝试使用他们的 REST API 执行 Quote 证明时遇到了困难。我在这里使用了 REST API 接口描述。我使用 HTTP POST 请求成功连接到服务器
但我总是收到一个错误:400 Bad request!?
在客户端我得到 msg3 如下
返回SGX_SUCCESS
。然后我在 p_msg3 结构中准备报价
最后我把引号放在 JSON 字符串中,结果是
现在作为有效载荷发送到 IAS。
visual-studio - 创建和执行英特尔 SGX Enclave 时遇到问题
我对新交所很陌生,想从简单的事情开始。幸运的是,我找到了这个非常基础的教程。不幸的是,尽管它很简单,但我无法让它工作。代码执行,但输出中有错误。
该教程说:
如果您收到错误,SGX 找不到 enclave 文件。解决方案是将 enclave_test_save.signed.dll 移动到 app_test_save.exe 所在的同一文件夹中。
我已经尝试过了,但它并没有解决问题。
当我尝试使用以下方法创建飞地时:
它返回:SGX_ERROR_ENCLAVE_FILE_ACCESS
问题可能是使用不同版本的 Visual Studio 造成的吗?(本教程使用 VS 2012,而我使用的是 VS 2015)
tpm - SGX 和 TPM 接口
我正在查看 SGX 的文档,但找不到任何关于如何访问 TPM 内容的描述。根据他们的说法,这应该是可能的!?有没有人有这方面的经验?
c++ - SGX Enclave 边缘函数的 C++ 参数
我正在尝试编写一个简单的 SGX 飞地,它接受一个布尔向量,但显然 edger8r 创建了 c 代码;所以edl代码
产生一个编译错误(有趣的是,英特尔编译器在标题“灾难性错误”下报告它)说vector
找不到标头。
在我看来,这个问题可以通过使用 c++ 标志编译输出边缘代码来解决。那行得通吗?即使是这样,是否有更简洁的方法来做到这一点(即具有带有 C++ 标准类型参数的边缘函数)?
PS:我没有足够的代表来添加新标签,有人会用'edger8r'标记这个吗?我认为这会有所帮助。
c++ - 加载 Enclave 时出错:无法使用 CreateFile() 打开文件
我正在尝试编写一个简单的 SGX 项目作为开始。所以我有这个主要的主机应用程序例程,我几乎从Lars Richter 的博客中复制了它:
它编译得很好(我正在使用带有 Visual Studio 2015 的 Intel C++ 17.0 编译器),但它不会加载 enclave。我收到以下错误消息:
linux - 我们可以在 sgx-enclave 中运行 Linux 命令吗?
我们可以在 sgx enclave 中编写代码来执行 Linux 命令,如下所示:
我想在 sgx enclave 中添加一些加密代码。如何在 enclave 内进行文件 IO。
c++ - sgx_ecc256_create_key_pair 失败
我编写了一个非常简单的测试来学习在飞地内使用椭圆曲线密码学。但密钥创建方法因 SGX_ERROR_UNEXPECTED 而失败。
这是我的飞地:
这是我的主机应用程序:
结果是 step = 2 上的 error = 1。
任何想法我做错了什么或我可能配置不正确?我正在使用 Visual Studio Community 2015 和 Intel C++ Compiler 17.0。
PS:这是我在英特尔论坛上的帖子的复制品。如果在每个平台上都得到了正确的回答,我会将答案发布给另一个,同时引用它的作者。
docker - 如何将设备添加到所有 docker 容器
要使用 SGX 飞地,应用程序必须与通过/dev/isgx
主机公开的 SGX 驱动程序通信。我们使用命令行选项在 Docker 容器映射/dev/isgx
内部执行此类应用程序。--device
是否可以选择将设备(/dev/isgx
在这种情况下)添加到由 docker 引擎启动的任何容器中?
编辑:
到目前为止,我这边的进展:
Docker 在启动之前使用containerd
&runc
来创建容器配置。Docker 的配置文件 /etc/docker/daemon.json
有一个字段runtimes
,可以在其中提供任意参数runc
:
可悲的是,它接缝runc
并没有消耗很多有用的论据,因为我的手段(runc --help
并且runc spec --help
<-- 创建了配置)。
我在的代码库中发现了有趣的源代码。该文件的最后一次提交说“默认情况下不创建 /dev/fuse”,这是有希望的,但会涉及构建我自己的. 我希望通过配置选项提供通用解决方案。DefaultSimpleDevices
DefaultAllowedDevices
runc
runc
sgx - 无法在 SGX Helloworld 中创建 Enclave
为什么“[sgx_create_enclavew ..\urts\win\urts.cpp:195] 无法使用 CreateFile() 打开文件”在我将工作目录从 $(ProjectDir) 设置为 $(OutDir) 飞地和应用程序之后仍然发生?
我在我的 VS 工作目录中找不到文件“sample_enclave.signed.dll”。
我跟着这个教程:https ://software.intel.com/zh-cn/SGX-Development-Guide-Part-2
我使用“VS 2015 Pro”和“SGX SDK 1.7”。