我是Intel SGX和Docker的新手。我正在尝试确定是否可以将“敏感”程序和数据放在Docker容器中,并将该容器作为SGX硬件中的可信(enclave)组件运行。我计划使用SGX平台的最新Linux版本。
我一直在阅读SGX开发人员指南、参考资料、编程参考等,我不确定如何使用Enclave定义语言来调用容器,因为trusted component.The SCONE项目有一种技术方法,但它似乎没有使用Enclave定义语言、ECALLS、OCALLS、英特尔软件开发工具包和secure C库以及我正在阅读的Intel文档中的其他指南。此外,我之前发现的关于将SGX与Docker容器一起使用的问题也是混合的。
所以,答案是:
不能,您不能使用英特尔SGX开发指南将Docker容器作为受信任的enclave组件运行
“是的,您可以使用英特尔SGX开发指南,将Docker容器作为受信任的enclave组件运行,下面将介绍如何执行此操作...”
相关问题: SGX似乎只运行C/C++程序。因此,像Python (不使用Ctypes)或Java (不使用JNI)这样的语言不会作为可信组件运行,对吧?
此外,除了SCONE之外,还有什么是在SGX中将Docker容器作为可信组件运行的可行示例吗?我在StackOverflow上看到一个答案,它有一个指向dockerfile的链接,但这个链接被打破了。谢谢你的帮忙!
发布于 2018-10-18 16:00:03
可以,您可以使用iExec将Docker容器作为受信任的enclave组件运行。您可以在this post中了解更多信息。
发布于 2021-10-11 02:01:47
https://gramine-gsc.readthedocs.io/en/latest/
docker run --device=/dev/sgx_enclave \
-v /var/run/aesmd/aesm.socket:/var/run/aesmd/aesm.socket \
gsc-python -c 'print("HelloWorld!")'https://stackoverflow.com/questions/52560554
复制相似问题