赞
踩
##sgx-sdk
https://github.com/apache/incubator-teaclave-sgx-sdk.git
##Teaclave:通用安全计算平台
https://github.com/apache/incubator-teaclave
##或使用cpuid命令
cpuid |grep -i sgx
##或使用脚本测试
下载:https://github.com/ayeks/SGX-hardware
编译test-sgx.c:gcc test-sgx.c -o test-sgx
名称 | 意思 |
---|---|
Enclave | Intel SGX一种高等级的秘密保护技术,它在硬件的受保护内存区域存储代码和数据,这个受保护的内存区域叫做Enclave。Enclave的内存区域只能被Enclave内存区域内的代码访问。 |
ECALL | Enclave Call.进入Enclave的函数调用 |
OCALL | Outside Call.从Enclave调用不受信任的函数的函数调用 |
EDL | Enclave Definition Language |
SP | 服务提供者 |
Inter SGX SSL | Intel SGX SSL加密库是基于OpenSSL的,它给SGX Enclave提供加密服务 |
TCS | 线程控制结构 |
uRTS | 不可信任的运行时系统 |
支持sgx的CPU的芯片截至发文起,目前有如下,具体列表请参看https://github.com/ayeks/SGX-hardware.git:
总体环境安装顺序为:先安装SGX Driver,再安装SGX PSW,最后安装SGX SDK
看了网上一大圈教程,感觉他们安装的时候都不说自己的环境是怎么样的,直接堆教程…
我的环境是11代i5不带sgx功能的CPU,操作系统是Windows10的,BISO我就不介绍了反正没得sgx芯片,我只图一个开发环境方便我开发。
总的来说需要安装三部分东西:
Intel ME:也就是英特尔引擎管理,上网一查好像是因为‘SGX部分功能需要单调计数器和其它一些组件,需要安装Intel Management Engine Driver’所以需要装这个(https://www.intel.com/content/www/us/en/download/19406/28679/intel-management-engine-driver-for-windows-8-1-and-windows-10.html?wapkw=Intel%25C2%25AE%2520Management%2520Engine%2520Driver),下载后解压进入目录’me_sw_1909.12.0.1236\ME_SW_1909.12.0.1236\Corp\ME_SW_MSI’,直接执行SetupME.exe文件,如果出现平台不支持的问题,请在桌面左下角的Windows键右键打开设备管理器,选择系统设备如果有‘Intel® Management Engine Interface’,这就是系统自己已经安装过这个东西了。
Visual studio 2017:目前是我唯一看到支持sgx开发格式的idea,最好是下载专业版,版本在2015和2017之间选择,地址:https://visualstudio.microsoft.com/zh-hans/search/?query=Visual+Studio+2017&lang=zh-hans
Intel SGX SDK for Windows和:这玩意是sgx的sdk,有这玩意才能干活,地址:https://registrationcenter.intel.com/en/products/postregistration/?sn=CCXS-ZSSJ7GG5&encEma=U3tdVrOFt/AHArVlnRggdgGOepYOlziBlze+bky1k1iIu/0qmxv7pCDQ15uBhD31Jft01zcdZ2Q=&Sequence=2444010&ret=n&pass=yes
最好按我上面从上到下的顺序装,因为可能导致visual studio新建项目的时候没有Intel sgx project的快捷键(其他博客说的我也不确定)
第三步下载sgx sdk和sgx psw的时候下载下图这两个序号的东西,但是会发现下不了,原因是什么license过期了(有一说一我觉得Intel的官方是真的垃圾不友好),想获取这个文件的可以私聊我:
我的电脑的cpu由于不是sgx的,所以安装PSW平台的时候会报如下错误,不过我的目的是有个sgx的idea所以到这儿我也就算了。不过有些人可能会安装失败而且只报第二个惊叹号后面的错误,网上的解决方案是:点击图中链接会进入到微软商店安装一个叫Intel® Software Guard Extensions Activation APP的软件,安装后以管理员身份执行,点击Active并重启即可。
[外链图片转存失败,源站可能有防盗链机制,建议将图片保存下来直接上传(img-3aP188ch-1647345030094)(E:\天河国云\学习\sgx应用开发\Windows安装PSW遇到的问题.jpg)]
下载完成并安装后,打开visual studio,在新建项目的列表里面就可以看到Intel的sgx enclave project选项了,如下图:
在创建项目的时候又出现了问题,SEWizardVS2017.SGXWizard“在程序 集“SEWizardVS2017这样的问题,好在网上有解决方案:你的visual安装目录\Common7\IDE\Extensions\ajyuvscx.hbt\ProjectTemplates\EnclaveTemplate下找到SGXWizard.vstemplate这个文件,然后打开他将文件中以下两行代码删除即可:
SEWizardVS2017, Version=1.0.0.0, Culture=Neutral, PublicKeyToken=1c03693ccb8cf428
SEWizardVS2017.SGXWizard
on=1.0.0.0, Culture=Neutral, PublicKeyToken=1c03693ccb8cf428
SEWizardVS2017.SGXWizard
Copyright © 2003-2013 www.wpsshop.cn 版权所有,并保留所有权利。