问题标签 [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.

0 投票
0 回答
376 浏览

cmake - 英特尔 SGX 的示例 CMakeList.txt

有人会有 CMakeList.txt 文件的示例来编译简单的“hello world”英特尔 SGX 应用程序吗?

GitHub 上有一些示例(如这里),但它们都是非常高级的应用程序。


编辑

更具体地说,有人可以帮我将以下 makefile 转换为CMakeList.txt

(以上是来自英特尔的示例 Makefile:https ://github.com/intel/linux-sgx/blob/master/SampleCode/SampleEnclave/Makefile )

0 投票
1 回答
119 浏览

openssl - 我想知道 SGX 的函数中使用了哪个椭圆曲线,比如 sgx_ecc256_compute_shared_dhkey()?

我尝试使用openssl通过ecc与SGX交换密钥,但不知道SGX使用的是哪个椭圆曲线,所以无法设置openssl的参数。

0 投票
1 回答
107 浏览

c++ - 将 2D 矢量转换为 C 类型的最佳方法(用于 SGX 飞地)

我正在尝试编写一个接收 int 的 2D 向量(表示灰度图像)的 SGX 飞地,但 edger8r 仅接受 C 类型。

我知道thisthis,但有人可以提供一个关于如何转换类型的示例,例如:

转换成 C 类型以便我可以将其传递给 SGX 飞地?

0 投票
1 回答
240 浏览

opencv - 在 SGX-Enclave 项目中添加 OpenCV 库

我正在尝试在我的 enclave 项目中添加 OpenCV。我可以在 Visual Studio 2015 中将 OpenCV 项目作为独立的 win32 控制台应用程序运行。但是当我在我的 enclave 项目中开始这样做时,我遇到了错误。我尝试在 enclave 项目中从 opencv 添加以下库:

但是我遇到了很多错误。我还需要在我的项目中包含 windows.h 文件。这些库是否允许包含在 enclave 项目中?

在项目中添加 opencv 静态库时,我按照以下步骤操作:-

  1. 使用 CMake 生成 OpenCV 静态库,

  2. 在 inlucde 目录中添加了以下值:-

    C:\Program Files (x86)\Intel\IntelSGXSDK\include C:\Program Files (x86)\Intel\IntelSGXSDK\include\libc++ C:\Program Files (x86)\Intel\IntelSGXSDK\include\tlibc C:\Users \fs5ve\Downloads\Opencv-static\static\opencv\include C:\Users\fs5ve\Downloads\Opencv-static\static\opencv\build-32-extra\install\include C:\Users\fs5ve\Downloads\Opencv -static\static\opencv\build-32-extra\install\include\opencv C:\Users\fs5ve\Downloads\Opencv-static\static\opencv\build-32-extra\install\include\opencv2 C:\Program文件 (x86)\Microsoft Visual Studio 14.0\VC\include %(AdditionalIncludeDirectories)

  3. 在其他库目录中添加了以下值:-

    $(SGXSDKInstallPath)bin\$(Platform)\Debug;C:\Users\fs5ve\Downloads\Opencv-static\static\opencv\build-32-extra\install\x86\vc14\staticlib

  4. 在附加依赖项中添加了以下值:-

    sgx_trts_sim.lib sgx_tstdc.lib sgx_tservice_sim.lib sgx_tcrypto.lib sgx_tcxx.lib sgx_urts_sim.lib sgx_uae_service_sim.lib opencv_calib3d400d.lib opencv_core400d.lib opencv_highgui400d.lib opencv_face400d.lib opencv_features2d400d.lib opencv_flann400d.lib opencv_imgcodecs400d.lib opencv_imgproc400d.lib opencv_ml400d.lib opencv_objdetect400d. lib opencv_photo400d.lib opencv_shape400d.lib opencv_stitching400d.lib opencv_superres400d.lib opencv_video400d.lib opencv_videoio400d.lib opencv_videostab400d.lib

我收到以下错误:- 无法打开包含文件:'emmintrin.h':没有这样的文件或目录

我在 Include 目录中添加了“C:\Program Files (x86)\Microsoft Visual Studio 14.0\VC\include”。但之后我收到以下错误:- 无法打开包含文件:'malloc.h':没有这样的文件或目录

0 投票
2 回答
169 浏览

c++ - 在没有动态加载库的情况下使用 Chaiscript

我正在与英特尔 SGX 合作,并希望在飞地内使用 Chaiscript。SGX 禁止在 enclave 内使用动态加载的库。有没有办法以这种方式使用 Chaiscript(我无法使用“-ldl”参数进​​行编译)?

0 投票
3 回答
536 浏览

linux - Azure SGX 支持

我正在尝试在 Windows Azure 上使用 SGX,如本文Azure 机密计算简介中所示。但我认为 SGX 它不再受 Azure 支持。除了 Azure,还有其他方法可以在云上运行 SGX 应用程序吗?

0 投票
2 回答
891 浏览

operating-system - 在 BIOS 中启用英特尔 SGX

我想在我的 Lenovo Tower S510 10L3-000JFM 上测试 Intel SGX 技术。我通过https://github.com/ayeks/SGX-hardware检查了我的 CPU Intel Core i7-6700 支持 SGX,但 BIOS 不支持,或者可能未启用(在 BIOS 中)。BIOS 更新可以解决此问题。但是,联想最近的 BIOS 更新在https://pcsupport.lenovo.com/us/en/products/desktops-and-all-in-ones/lenovo-s-series-all-in-ones/s510-desktop /10kw/downloads/ds112505没有明确说明,因为我不想在不确定的情况下继续进行这个有风险的操作。

我的问题是:此 BIOS 更新是否支持 Intel SGX?或不?欢迎任何帮助或资源。

最后一次 BIOS 更新是 01/09/2016,最后一次 CPU 微码更新是 07/01/2016。

0 投票
1 回答
654 浏览

intel - 如何从英特尔 SGX Enclave 获取报价

最近,我在英特尔 SGX Enclave 的帮助下开发了一个可信计算项目。

要验证 Enclave,我需要由 Quoting-Enclave 生成​​的 Quote。我知道它在理论上是如何工作的以及如何启动一个 Enclave。但是我找不到任何代码示例或有关如何接收 Enclave 的报价并将其发送到调用程序的详细说明。

有人可以通过一个例子向我解释一下吗?

谢谢!

0 投票
0 回答
210 浏览

android - 如何在 Ubuntu 和 Android 上使用英特尔 SGX 服务提供商证书?

我已经在英特尔论坛上发布了这个问题,但我的日程安排有限,我需要一个快速的答案,所以我正在联系所有可用的媒体。

我正在开发一个小型英特尔 SGX 应用程序,该应用程序通过 Android 服务提供商进行远程证明。我需要您的帮助,以了解如何使用我在英特尔注册的证书向 IAS 发出 HTTPS 请求(如文档中所引用)。

我有一个小型测试 Java 程序,它向 IAS 发出一个简单的 Retreive SigRL GET 请求,只是为了测试它是否有效。但是当它尝试执行 HTTPS 请求时,我不断收到 SSLHandshakeException。

Java 代码:

控制台输出:

本教程生成一个 client.pfx 文件,可用于将证书导入其他平台。我已将此文件复制到运行我的 Java 程序的 Ubuntu 系统并双击它以导入它。一切似乎都很成功,但是在运行程序时我仍然不断收到这些异常。

我还使用(设置)>(锁屏和安全)>(其他安全设置)>(凭据存储/从设备存储安装)中的选项在 Android 上安装了 client.crt 文件。当我尝试从 Android Activity 运行此代码时(仅通过复制粘贴该方法),我得到完全相同的错误。

我需要能够从 Ubuntu 和 Android(7.0,API 24)发出 IAS 请求。我使用本教程生成的证书已经在英特尔注册(我收到了来自英特尔开发人员服务的电子邮件确认和服务提供商 ID)。

原则上,我唯一需要知道的是如何正确使用/安装我在 Ubuntu 和 Android 上生成的证书,以及我是否在程序中正确发出 HTTP 请求。我仍然是一名学生,我需要与新交所合作完成一个项目,所以请以我有限的知识为基础。我将不胜感激。

0 投票
1 回答
81 浏览

corda - 当 Corda 全面实施 SGX 时,是否会解决以下潜在的数据隐私和机密性泄漏?

有人可以确认 SGX 将解决以下问题吗?如果 SGX 的功能正在 Corda 中逐步推出,预计何时解决?

  1. 非验证公证人可以查看交易各方是谁,而无需查看实际交易数据。这是隐私泄露,但数据机密性保持不变。
  2. 验证公证人可以查看交易各方是谁以及交易数据。这是数据隐私和数据机密性泄露。
  3. 交易的任何一方都将读取任何相关交易的所有交易数据和交易方。这可能是数据隐私和数据机密性泄露。